@layer docusaurus.infima, docusaurus.theme-common, docusaurus.theme-classic, docusaurus.core, docusaurus.plugin-debug, docusaurus.theme-mermaid, docusaurus.theme-live-codeblock, docusaurus.theme-search-algolia.docsearch, docusaurus.theme-search-algolia;
@layer docusaurus.infima {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/* Common */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --ifm-color-scheme: light;

  /* Colors. */
  --ifm-dark-value: 10%;
  --ifm-darker-value: 15%;
  --ifm-darkest-value: 30%;
  --ifm-light-value: 15%;
  --ifm-lighter-value: 30%;
  --ifm-lightest-value: 50%;

  /*
  This seems like a lot, but we want to ensure enough contrast.
  Goal is to have a min score of 3 on https://www.myndex.com/APCA/fullmatrix
  For fontWeight 400 + score 3, the cell must show a value < 16px (fontsize we use in places like alerts)
  See also https://github.com/facebookincubator/infima/issues/55#issuecomment-884023075
   */
  --ifm-contrast-background-value: 90%;
  --ifm-contrast-foreground-value: 70%;
  /* Using slightly different values for dark mode */
  --ifm-contrast-background-dark-value: 70%;
  --ifm-contrast-foreground-dark-value: 90%;

  --ifm-color-primary: #3578e5;
  --ifm-color-secondary: #ebedf0;
  --ifm-color-success: #00a400;
  --ifm-color-info: #54c7ec;
  --ifm-color-warning: #ffba00;
  --ifm-color-danger: #fa383e;
    --ifm-color-primary-dark: rgb(48, 108, 206);
    --ifm-color-primary-darker: rgb(45, 102, 195);
    --ifm-color-primary-darkest: rgb(37, 84, 160);
    --ifm-color-primary-light: rgb(83, 140, 233);
    --ifm-color-primary-lighter: rgb(114, 161, 237);
    --ifm-color-primary-lightest: rgb(154, 188, 242);
    --ifm-color-primary-contrast-background: rgb(235, 242, 252);
    --ifm-color-primary-contrast-foreground: rgb(16, 36, 69);
    --ifm-color-secondary-dark: rgb(212, 213, 216);
    --ifm-color-secondary-darker: rgb(200, 201, 204);
    --ifm-color-secondary-darkest: rgb(164, 166, 168);
    --ifm-color-secondary-light: rgb(238, 240, 242);
    --ifm-color-secondary-lighter: rgb(241, 242, 245);
    --ifm-color-secondary-lightest: rgb(245, 246, 248);
    --ifm-color-secondary-contrast-background: rgb(253, 253, 254);
    --ifm-color-secondary-contrast-foreground: rgb(71, 71, 72);
    --ifm-color-success-dark: rgb(0, 148, 0);
    --ifm-color-success-darker: rgb(0, 139, 0);
    --ifm-color-success-darkest: rgb(0, 115, 0);
    --ifm-color-success-light: rgb(38, 178, 38);
    --ifm-color-success-lighter: rgb(77, 191, 77);
    --ifm-color-success-lightest: rgb(128, 210, 128);
    --ifm-color-success-contrast-background: rgb(230, 246, 230);
    --ifm-color-success-contrast-foreground: rgb(0, 49, 0);
    --ifm-color-info-dark: rgb(76, 179, 212);
    --ifm-color-info-darker: rgb(71, 169, 201);
    --ifm-color-info-darkest: rgb(59, 139, 165);
    --ifm-color-info-light: rgb(110, 207, 239);
    --ifm-color-info-lighter: rgb(135, 216, 242);
    --ifm-color-info-lightest: rgb(170, 227, 246);
    --ifm-color-info-contrast-background: rgb(238, 249, 253);
    --ifm-color-info-contrast-foreground: rgb(25, 60, 71);
    --ifm-color-warning-dark: rgb(230, 167, 0);
    --ifm-color-warning-darker: rgb(217, 158, 0);
    --ifm-color-warning-darkest: rgb(179, 130, 0);
    --ifm-color-warning-light: rgb(255, 196, 38);
    --ifm-color-warning-lighter: rgb(255, 207, 77);
    --ifm-color-warning-lightest: rgb(255, 221, 128);
    --ifm-color-warning-contrast-background: rgb(255, 248, 230);
    --ifm-color-warning-contrast-foreground: rgb(77, 56, 0);
    --ifm-color-danger-dark: rgb(225, 50, 56);
    --ifm-color-danger-darker: rgb(213, 48, 53);
    --ifm-color-danger-darkest: rgb(175, 39, 43);
    --ifm-color-danger-light: rgb(251, 86, 91);
    --ifm-color-danger-lighter: rgb(251, 116, 120);
    --ifm-color-danger-lightest: rgb(253, 156, 159);
    --ifm-color-danger-contrast-background: rgb(255, 235, 236);
    --ifm-color-danger-contrast-foreground: rgb(75, 17, 19);

  --ifm-color-white: #fff;
  --ifm-color-black: #000;

  --ifm-color-gray-0: var(--ifm-color-white);
  --ifm-color-gray-100: #f5f6f7;
  --ifm-color-gray-200: #ebedf0;
  --ifm-color-gray-300: #dadde1;
  --ifm-color-gray-400: #ccd0d5;
  --ifm-color-gray-500: #bec3c9;
  --ifm-color-gray-600: #8d949e;
  --ifm-color-gray-700: #606770;
  --ifm-color-gray-800: #444950;
  --ifm-color-gray-900: #1c1e21;
  --ifm-color-gray-1000: var(--ifm-color-black);

  --ifm-color-emphasis-0: var(--ifm-color-gray-0);
  --ifm-color-emphasis-100: var(--ifm-color-gray-100);
  --ifm-color-emphasis-200: var(--ifm-color-gray-200);
  --ifm-color-emphasis-300: var(--ifm-color-gray-300);
  --ifm-color-emphasis-400: var(--ifm-color-gray-400);
  --ifm-color-emphasis-500: var(--ifm-color-gray-500);
  --ifm-color-emphasis-600: var(--ifm-color-gray-600);
  --ifm-color-emphasis-700: var(--ifm-color-gray-700);
  --ifm-color-emphasis-800: var(--ifm-color-gray-800);
  --ifm-color-emphasis-900: var(--ifm-color-gray-900);
  --ifm-color-emphasis-1000: var(--ifm-color-gray-1000);

  /* Base. */
  --ifm-color-content: var(--ifm-color-emphasis-900);
  --ifm-color-content-inverse: var(--ifm-color-emphasis-0);
  --ifm-color-content-secondary: #525860;

  --ifm-background-color: transparent; /* Body's background. */
  --ifm-background-surface-color: var(--ifm-color-content-inverse);
  --ifm-global-border-width: 1px;
  --ifm-global-radius: 0.4rem;

  --ifm-hover-overlay: rgba(0, 0, 0, 0.05);

  /* Typography. */
  --ifm-font-color-base: var(--ifm-color-content);
  --ifm-font-color-base-inverse: var(--ifm-color-content-inverse);
  --ifm-font-color-secondary: var(--ifm-color-content-secondary);
  --ifm-font-family-base: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, BlinkMacSystemFont,
    'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji',
    'Segoe UI Emoji', 'Segoe UI Symbol';
  --ifm-font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas,
    'Liberation Mono', 'Courier New', monospace;
  --ifm-font-size-base: 100%;

  --ifm-font-weight-light: 300;
  --ifm-font-weight-normal: 400;
  --ifm-font-weight-semibold: 500;
  --ifm-font-weight-bold: 700;

  --ifm-font-weight-base: var(--ifm-font-weight-normal);
  --ifm-line-height-base: 1.65;

  /* Spacing. */
  --ifm-global-spacing: 1rem;
  --ifm-spacing-vertical: var(--ifm-global-spacing);
  --ifm-spacing-horizontal: var(--ifm-global-spacing);

  /* Transitions. */
  --ifm-transition-fast: 200ms;
  --ifm-transition-slow: 400ms;
  --ifm-transition-timing-default: cubic-bezier(0.08, 0.52, 0.52, 1);

  /* Shadows. */
  --ifm-global-shadow-lw: 0 1px 2px 0 rgba(0, 0, 0, 0.1);
  --ifm-global-shadow-md: 0 5px 40px rgba(0, 0, 0, 0.2);
  --ifm-global-shadow-tl: 0 12px 28px 0 rgba(0, 0, 0, 0.2),
    0 2px 4px 0 rgba(0, 0, 0, 0.1);

  /* Z-index. */
  --ifm-z-index-dropdown: 100;
  --ifm-z-index-fixed: 200;
  --ifm-z-index-overlay: 400;
  --ifm-container-width: 1140px;
  --ifm-container-width-xl: 1320px;
  --ifm-code-background: rgb(246, 247, 248);
  --ifm-code-border-radius: var(--ifm-global-radius);
  --ifm-code-font-size: 90%;
  --ifm-code-padding-horizontal: 0.1rem;
  --ifm-code-padding-vertical: 0.1rem;

  --ifm-pre-background: var(--ifm-code-background);
  --ifm-pre-border-radius: var(--ifm-code-border-radius);
  --ifm-pre-color: inherit;
  --ifm-pre-line-height: 1.45;
  --ifm-pre-padding: 1rem;
  --ifm-heading-color: inherit;
  --ifm-heading-margin-top: 0;
  --ifm-heading-margin-bottom: var(--ifm-spacing-vertical);
  --ifm-heading-font-family: var(--ifm-font-family-base);
  --ifm-heading-font-weight: var(--ifm-font-weight-bold);
  --ifm-heading-line-height: 1.25;

  --ifm-h1-font-size: 2rem;
  --ifm-h2-font-size: 1.5rem;
  --ifm-h3-font-size: 1.25rem;
  --ifm-h4-font-size: 1rem;
  --ifm-h5-font-size: 0.875rem;
  --ifm-h6-font-size: 0.85rem;
  --ifm-image-alignment-padding: 1.25rem;
  /* Leading is the distance between two baselines */
  /* TODO: add appropriate mobile leading */
  --ifm-leading-desktop: 1.25;
  --ifm-leading: calc(var(--ifm-leading-desktop) * 1rem);
  --ifm-list-left-padding: 2rem;
  --ifm-list-margin: 1rem;
  --ifm-list-item-margin: 0.25rem;
  --ifm-list-paragraph-margin: 1rem;
  --ifm-table-cell-padding: 0.75rem;

  --ifm-table-background: transparent;
  --ifm-table-stripe-background: rgba(0, 0, 0, 0.03);

  --ifm-table-border-width: 1px;
  --ifm-table-border-color: var(--ifm-color-emphasis-300);

  --ifm-table-head-background: inherit;
  --ifm-table-head-color: inherit;
  --ifm-table-head-font-weight: var(--ifm-font-weight-bold);

  --ifm-table-cell-color: inherit;
  /* Links. */
  --ifm-link-color: var(--ifm-color-primary);
  --ifm-link-decoration: none;
  --ifm-link-hover-color: var(--ifm-link-color);
  --ifm-link-hover-decoration: underline;

  /* Paragraphs. */
  --ifm-paragraph-margin-bottom: var(--ifm-leading);

  /* Blockquotes. */
  --ifm-blockquote-font-size: var(--ifm-font-size-base);
  --ifm-blockquote-border-left-width: 2px;
  --ifm-blockquote-padding-horizontal: var(--ifm-spacing-horizontal);
  --ifm-blockquote-padding-vertical: 0;
  --ifm-blockquote-shadow: none;
  --ifm-blockquote-color: var(--ifm-color-emphasis-800);
  --ifm-blockquote-border-color: var(--ifm-color-emphasis-300);

  /* Horizontal Rules. */
  --ifm-hr-background-color: var(--ifm-color-emphasis-500);
  --ifm-hr-height: 1px;
  --ifm-hr-margin-vertical: 1.5rem;
  --ifm-scrollbar-size: 7px;
  --ifm-scrollbar-track-background-color: #f1f1f1;
  --ifm-scrollbar-thumb-background-color: #c0c0c0;
  --ifm-scrollbar-thumb-hover-background-color: #a7a7a7;
  --ifm-alert-background-color: inherit; /* Set a default which will be overridden later. */
  --ifm-alert-border-color: inherit; /* Set a default which will be overridden later. */
  --ifm-alert-border-radius: var(--ifm-global-radius);
  --ifm-alert-border-width: 0px; /* For users that want to easily add a border */
  --ifm-alert-border-left-width: 5px;
  --ifm-alert-color: var(--ifm-font-color-base);
  --ifm-alert-padding-horizontal: var(--ifm-spacing-horizontal);
  --ifm-alert-padding-vertical: var(--ifm-spacing-vertical);
  --ifm-alert-shadow: var(--ifm-global-shadow-lw);
  --ifm-avatar-intro-margin: 1rem;
  --ifm-avatar-intro-alignment: inherit;
  --ifm-avatar-photo-size: 3rem;
  --ifm-badge-background-color: inherit; /* Set a default which will be overridden later. */
  --ifm-badge-border-color: inherit; /* Set a default which will be overridden later. */
  --ifm-badge-border-radius: var(--ifm-global-radius);
  --ifm-badge-border-width: var(--ifm-global-border-width);
  --ifm-badge-color: var(--ifm-color-white);
  --ifm-badge-padding-horizontal: calc(var(--ifm-spacing-horizontal) * 0.5);
  --ifm-badge-padding-vertical: calc(var(--ifm-spacing-vertical) * 0.25);
  --ifm-breadcrumb-border-radius: 1.5rem;
  --ifm-breadcrumb-spacing: 0.5rem;
  --ifm-breadcrumb-color-active: var(--ifm-color-primary);
  --ifm-breadcrumb-item-background-active: var(--ifm-hover-overlay);
  --ifm-breadcrumb-padding-horizontal: 0.8rem;
  --ifm-breadcrumb-padding-vertical: 0.4rem;
  --ifm-breadcrumb-size-multiplier: 1;
  --ifm-breadcrumb-separator: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 256 256"><g><g><polygon points="79.093,0 48.907,30.187 146.72,128 48.907,225.813 79.093,256 207.093,128"/></g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>');
  --ifm-breadcrumb-separator-filter: none;
  --ifm-breadcrumb-separator-size: 0.5rem;
  --ifm-breadcrumb-separator-size-multiplier: 1.25;
  --ifm-button-background-color: inherit;
  --ifm-button-border-color: var(--ifm-button-background-color);
  --ifm-button-border-width: var(--ifm-global-border-width);
  --ifm-button-color: var(--ifm-font-color-base-inverse);
  --ifm-button-font-weight: var(--ifm-font-weight-bold);
  --ifm-button-padding-horizontal: 1.5rem;
  --ifm-button-padding-vertical: 0.375rem;
  --ifm-button-size-multiplier: 1;
  --ifm-button-transition-duration: var(--ifm-transition-fast);
  --ifm-button-border-radius: calc(
    var(--ifm-global-radius) * var(--ifm-button-size-multiplier)
  );
  --ifm-button-group-spacing: 2px;
  --ifm-card-background-color: var(--ifm-background-surface-color);
  --ifm-card-border-radius: calc(var(--ifm-global-radius) * 2);
  --ifm-card-horizontal-spacing: var(--ifm-global-spacing);
  --ifm-card-vertical-spacing: var(--ifm-global-spacing);
  --ifm-toc-border-color: var(--ifm-color-emphasis-300);
  --ifm-toc-link-color: var(--ifm-color-content-secondary);
  --ifm-toc-padding-vertical: 0.5rem;
  --ifm-toc-padding-horizontal: 0.5rem;
  --ifm-dropdown-background-color: var(--ifm-background-surface-color);
  --ifm-dropdown-font-weight: var(--ifm-font-weight-semibold);
  --ifm-dropdown-link-color: var(--ifm-font-color-base);
  --ifm-dropdown-hover-background-color: var(--ifm-hover-overlay);
  --ifm-footer-background-color: var(--ifm-color-emphasis-100);
  --ifm-footer-color: inherit;
  --ifm-footer-link-color: var(--ifm-color-emphasis-700);
  --ifm-footer-link-hover-color: var(--ifm-color-primary);
  --ifm-footer-link-horizontal-spacing: 0.5rem;
  --ifm-footer-padding-horizontal: calc(var(--ifm-spacing-horizontal) * 2);
  --ifm-footer-padding-vertical: calc(var(--ifm-spacing-vertical) * 2);
  --ifm-footer-title-color: inherit;
  --ifm-footer-logo-max-width: min(30rem, 90vw);
  --ifm-hero-background-color: var(--ifm-background-surface-color);
  --ifm-hero-text-color: var(--ifm-color-emphasis-800);
  --ifm-menu-color: var(--ifm-color-emphasis-700);
  --ifm-menu-color-active: var(--ifm-color-primary);
  --ifm-menu-color-background-active: var(--ifm-hover-overlay);
  --ifm-menu-color-background-hover: var(--ifm-hover-overlay);
  --ifm-menu-link-padding-horizontal: 0.75rem;
  --ifm-menu-link-padding-vertical: 0.375rem;
  --ifm-menu-link-sublist-icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16px" height="16px" viewBox="0 0 24 24"><path fill="rgba(0,0,0,0.5)" d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></svg>');
  --ifm-menu-link-sublist-icon-filter: none;
  --ifm-navbar-background-color: var(--ifm-background-surface-color);
  --ifm-navbar-height: 3.75rem;
  --ifm-navbar-item-padding-horizontal: 0.75rem;
  --ifm-navbar-item-padding-vertical: 0.25rem;
  --ifm-navbar-link-color: var(--ifm-font-color-base);
  --ifm-navbar-link-hover-color: var(--ifm-color-primary);
  --ifm-navbar-link-active-color: var(--ifm-link-color);
  --ifm-navbar-padding-horizontal: var(--ifm-spacing-horizontal);
  --ifm-navbar-padding-vertical: calc(var(--ifm-spacing-vertical) * 0.5);
  --ifm-navbar-shadow: var(--ifm-global-shadow-lw);
  --ifm-navbar-search-input-background-color: var(--ifm-color-emphasis-200);
  --ifm-navbar-search-input-color: var(--ifm-color-emphasis-800);
  --ifm-navbar-search-input-placeholder-color: var(--ifm-color-emphasis-500);
  --ifm-navbar-search-input-icon: url('data:image/svg+xml;utf8,<svg fill="currentColor" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="16px" width="16px"><path d="M6.02945,10.20327a4.17382,4.17382,0,1,1,4.17382-4.17382A4.15609,4.15609,0,0,1,6.02945,10.20327Zm9.69195,4.2199L10.8989,9.59979A5.88021,5.88021,0,0,0,12.058,6.02856,6.00467,6.00467,0,1,0,9.59979,10.8989l4.82338,4.82338a.89729.89729,0,0,0,1.29912,0,.89749.89749,0,0,0-.00087-1.29909Z" /></svg>');
  --ifm-navbar-sidebar-width: 83vw;
  --ifm-pagination-border-radius: var(--ifm-global-radius);
  --ifm-pagination-color-active: var(--ifm-color-primary);
  --ifm-pagination-font-size: 1rem;
  --ifm-pagination-item-active-background: var(--ifm-hover-overlay);
  --ifm-pagination-page-spacing: 0.2em;
  --ifm-pagination-padding-horizontal: calc(var(--ifm-spacing-horizontal) * 1);
  --ifm-pagination-padding-vertical: calc(var(--ifm-spacing-vertical) * 0.25);
  --ifm-pagination-nav-border-radius: var(--ifm-global-radius);
  --ifm-pagination-nav-color-hover: var(--ifm-color-primary);
  --ifm-pills-color-active: var(--ifm-color-primary);
  --ifm-pills-color-background-active: var(--ifm-hover-overlay);
  --ifm-pills-spacing: 0.125rem;
  --ifm-tabs-color: var(--ifm-font-color-secondary);
  --ifm-tabs-color-active: var(--ifm-color-primary);
  --ifm-tabs-color-active-border: var(--ifm-tabs-color-active);
  --ifm-tabs-padding-horizontal: 1rem;
  --ifm-tabs-padding-vertical: 1rem;
}

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

* {
  box-sizing: border-box;
}

html {
  background-color: var(--ifm-background-color);
  color: var(--ifm-font-color-base);
  color-scheme: var(--ifm-color-scheme);
  font: var(--ifm-font-size-base) / var(--ifm-line-height-base)
    var(--ifm-font-family-base);
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  text-rendering: optimizelegibility;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

body {
  margin: 0;
  word-wrap: break-word;
}

iframe {
  border: 0;
  color-scheme: auto;
}

/* Layout */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.container {
  margin: 0 auto;
  max-width: var(--ifm-container-width);
  padding: 0 var(--ifm-spacing-horizontal);
  width: 100%;
}

.container--fluid {
    max-width: inherit;
  }

.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 calc(var(--ifm-spacing-horizontal) * -1);
}

.row--no-gutters {
    margin-left: 0;
    margin-right: 0;
  }

.row--no-gutters > .col {
      padding-left: 0;
      padding-right: 0;
    }

.row--align-top {
    align-items: flex-start;
  }

.row--align-bottom {
    align-items: flex-end;
  }

.row--align-center {
    align-items: center;
  }

.row--align-stretch {
    align-items: stretch;
  }

.row--align-baseline {
    align-items: baseline;
  }

.col {
  --ifm-col-width: 100%;

  flex: 1 0;
  margin-left: 0;
  max-width: var(--ifm-col-width);
  padding: 0 var(--ifm-spacing-horizontal);
  width: 100%;
}

.col[class*='col--'] {
    flex: 0 0 var(--ifm-col-width);
  }

.col--1 {
      --ifm-col-width: calc(1 / 12 * 100%);
    }

.col--offset-1 {
      margin-left: calc(1 / 12 * 100%);
    }

.col--2 {
      --ifm-col-width: calc(2 / 12 * 100%);
    }

.col--offset-2 {
      margin-left: calc(2 / 12 * 100%);
    }

.col--3 {
      --ifm-col-width: calc(3 / 12 * 100%);
    }

.col--offset-3 {
      margin-left: calc(3 / 12 * 100%);
    }

.col--4 {
      --ifm-col-width: calc(4 / 12 * 100%);
    }

.col--offset-4 {
      margin-left: calc(4 / 12 * 100%);
    }

.col--5 {
      --ifm-col-width: calc(5 / 12 * 100%);
    }

.col--offset-5 {
      margin-left: calc(5 / 12 * 100%);
    }

.col--6 {
      --ifm-col-width: calc(6 / 12 * 100%);
    }

.col--offset-6 {
      margin-left: calc(6 / 12 * 100%);
    }

.col--7 {
      --ifm-col-width: calc(7 / 12 * 100%);
    }

.col--offset-7 {
      margin-left: calc(7 / 12 * 100%);
    }

.col--8 {
      --ifm-col-width: calc(8 / 12 * 100%);
    }

.col--offset-8 {
      margin-left: calc(8 / 12 * 100%);
    }

.col--9 {
      --ifm-col-width: calc(9 / 12 * 100%);
    }

.col--offset-9 {
      margin-left: calc(9 / 12 * 100%);
    }

.col--10 {
      --ifm-col-width: calc(10 / 12 * 100%);
    }

.col--offset-10 {
      margin-left: calc(10 / 12 * 100%);
    }

.col--11 {
      --ifm-col-width: calc(11 / 12 * 100%);
    }

.col--offset-11 {
      margin-left: calc(11 / 12 * 100%);
    }

.col--12 {
      --ifm-col-width: calc(12 / 12 * 100%);
    }

.col--offset-12 {
      margin-left: calc(12 / 12 * 100%);
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.margin--none {
      margin: 0 !important;
    }

.margin-top--none {
        margin-top: 0 !important;
      }

.margin-left--none {
        margin-left: 0 !important;
      }

.margin-bottom--none {
        margin-bottom: 0 !important;
      }

.margin-right--none {
        margin-right: 0 !important;
      }

.margin-vert--none {
      margin-bottom: 0 !important;
      margin-top: 0 !important;
    }

.margin-horiz--none {
      margin-left: 0 !important;
      margin-right: 0 !important;
    }

.margin--xs {
      margin: 0.25rem !important;
    }

.margin-top--xs {
        margin-top: 0.25rem !important;
      }

.margin-left--xs {
        margin-left: 0.25rem !important;
      }

.margin-bottom--xs {
        margin-bottom: 0.25rem !important;
      }

.margin-right--xs {
        margin-right: 0.25rem !important;
      }

.margin-vert--xs {
      margin-bottom: 0.25rem !important;
      margin-top: 0.25rem !important;
    }

.margin-horiz--xs {
      margin-left: 0.25rem !important;
      margin-right: 0.25rem !important;
    }

.margin--sm {
      margin: 0.5rem !important;
    }

.margin-top--sm {
        margin-top: 0.5rem !important;
      }

.margin-left--sm {
        margin-left: 0.5rem !important;
      }

.margin-bottom--sm {
        margin-bottom: 0.5rem !important;
      }

.margin-right--sm {
        margin-right: 0.5rem !important;
      }

.margin-vert--sm {
      margin-bottom: 0.5rem !important;
      margin-top: 0.5rem !important;
    }

.margin-horiz--sm {
      margin-left: 0.5rem !important;
      margin-right: 0.5rem !important;
    }

.margin--md {
      margin: 1rem !important;
    }

.margin-top--md {
        margin-top: 1rem !important;
      }

.margin-left--md {
        margin-left: 1rem !important;
      }

.margin-bottom--md {
        margin-bottom: 1rem !important;
      }

.margin-right--md {
        margin-right: 1rem !important;
      }

.margin-vert--md {
      margin-bottom: 1rem !important;
      margin-top: 1rem !important;
    }

.margin-horiz--md {
      margin-left: 1rem !important;
      margin-right: 1rem !important;
    }

.margin--lg {
      margin: 2rem !important;
    }

.margin-top--lg {
        margin-top: 2rem !important;
      }

.margin-left--lg {
        margin-left: 2rem !important;
      }

.margin-bottom--lg {
        margin-bottom: 2rem !important;
      }

.margin-right--lg {
        margin-right: 2rem !important;
      }

.margin-vert--lg {
      margin-bottom: 2rem !important;
      margin-top: 2rem !important;
    }

.margin-horiz--lg {
      margin-left: 2rem !important;
      margin-right: 2rem !important;
    }

.margin--xl {
      margin: 5rem !important;
    }

.margin-top--xl {
        margin-top: 5rem !important;
      }

.margin-left--xl {
        margin-left: 5rem !important;
      }

.margin-bottom--xl {
        margin-bottom: 5rem !important;
      }

.margin-right--xl {
        margin-right: 5rem !important;
      }

.margin-vert--xl {
      margin-bottom: 5rem !important;
      margin-top: 5rem !important;
    }

.margin-horiz--xl {
      margin-left: 5rem !important;
      margin-right: 5rem !important;
    }

.padding--none {
      padding: 0 !important;
    }

.padding-top--none {
        padding-top: 0 !important;
      }

.padding-left--none {
        padding-left: 0 !important;
      }

.padding-bottom--none {
        padding-bottom: 0 !important;
      }

.padding-right--none {
        padding-right: 0 !important;
      }

.padding-vert--none {
      padding-bottom: 0 !important;
      padding-top: 0 !important;
    }

.padding-horiz--none {
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

.padding--xs {
      padding: 0.25rem !important;
    }

.padding-top--xs {
        padding-top: 0.25rem !important;
      }

.padding-left--xs {
        padding-left: 0.25rem !important;
      }

.padding-bottom--xs {
        padding-bottom: 0.25rem !important;
      }

.padding-right--xs {
        padding-right: 0.25rem !important;
      }

.padding-vert--xs {
      padding-bottom: 0.25rem !important;
      padding-top: 0.25rem !important;
    }

.padding-horiz--xs {
      padding-left: 0.25rem !important;
      padding-right: 0.25rem !important;
    }

.padding--sm {
      padding: 0.5rem !important;
    }

.padding-top--sm {
        padding-top: 0.5rem !important;
      }

.padding-left--sm {
        padding-left: 0.5rem !important;
      }

.padding-bottom--sm {
        padding-bottom: 0.5rem !important;
      }

.padding-right--sm {
        padding-right: 0.5rem !important;
      }

.padding-vert--sm {
      padding-bottom: 0.5rem !important;
      padding-top: 0.5rem !important;
    }

.padding-horiz--sm {
      padding-left: 0.5rem !important;
      padding-right: 0.5rem !important;
    }

.padding--md {
      padding: 1rem !important;
    }

.padding-top--md {
        padding-top: 1rem !important;
      }

.padding-left--md {
        padding-left: 1rem !important;
      }

.padding-bottom--md {
        padding-bottom: 1rem !important;
      }

.padding-right--md {
        padding-right: 1rem !important;
      }

.padding-vert--md {
      padding-bottom: 1rem !important;
      padding-top: 1rem !important;
    }

.padding-horiz--md {
      padding-left: 1rem !important;
      padding-right: 1rem !important;
    }

.padding--lg {
      padding: 2rem !important;
    }

.padding-top--lg {
        padding-top: 2rem !important;
      }

.padding-left--lg {
        padding-left: 2rem !important;
      }

.padding-bottom--lg {
        padding-bottom: 2rem !important;
      }

.padding-right--lg {
        padding-right: 2rem !important;
      }

.padding-vert--lg {
      padding-bottom: 2rem !important;
      padding-top: 2rem !important;
    }

.padding-horiz--lg {
      padding-left: 2rem !important;
      padding-right: 2rem !important;
    }

.padding--xl {
      padding: 5rem !important;
    }

.padding-top--xl {
        padding-top: 5rem !important;
      }

.padding-left--xl {
        padding-left: 5rem !important;
      }

.padding-bottom--xl {
        padding-bottom: 5rem !important;
      }

.padding-right--xl {
        padding-right: 5rem !important;
      }

.padding-vert--xl {
      padding-bottom: 5rem !important;
      padding-top: 5rem !important;
    }

.padding-horiz--xl {
      padding-left: 5rem !important;
      padding-right: 5rem !important;
    }

/* Content */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

code {
  background-color: var(--ifm-code-background);
  border: 0.1rem solid rgba(0, 0, 0, 0.1);
  border-radius: var(--ifm-code-border-radius);
  font-family: var(--ifm-font-family-monospace);
  font-size: var(--ifm-code-font-size);
  padding: var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal);
  vertical-align: middle;
}

a code {
  color: inherit;
}

pre {
  background-color: var(--ifm-pre-background);
  border-radius: var(--ifm-pre-border-radius);
  color: var(--ifm-pre-color);
  font: var(--ifm-code-font-size) / var(--ifm-pre-line-height)
    var(--ifm-font-family-monospace);
  margin: 0 0 var(--ifm-spacing-vertical);
  overflow: auto;
  padding: var(--ifm-pre-padding);
}

pre code {
    background-color: transparent;
    border: none;
    font-size: 100%;
    line-height: inherit;
    padding: 0;
  }

kbd {
  background-color: var(--ifm-color-emphasis-0);
  border: 1px solid var(--ifm-color-emphasis-400);
  border-radius: 0.2rem;
  box-shadow: inset 0 -1px 0 var(--ifm-color-emphasis-400);
  color: var(--ifm-color-emphasis-800);
  font: 80% var(--ifm-font-family-monospace);
  padding: 0.15rem 0.3rem;
}

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--ifm-heading-color);
  font-family: var(--ifm-heading-font-family);
  font-weight: var(--ifm-heading-font-weight);
  line-height: var(--ifm-heading-line-height);
  margin: var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0;
}

h1 {
    font-size: var(--ifm-h1-font-size);
  }

h2 {
    font-size: var(--ifm-h2-font-size);
  }

h3 {
    font-size: var(--ifm-h3-font-size);
  }

h4 {
    font-size: var(--ifm-h4-font-size);
  }

h5 {
    font-size: var(--ifm-h5-font-size);
  }

h6 {
    font-size: var(--ifm-h6-font-size);
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

img {
  max-width: 100%;
}

img[align='right'] {
  padding-left: var(--image-alignment-padding);
}

img[align='left'] {
  padding-right: var(--image-alignment-padding);
}

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.markdown {
  --ifm-h1-vertical-rhythm-top: 3;
  --ifm-h2-vertical-rhythm-top: 2;
  --ifm-h3-vertical-rhythm-top: 1.5;
  --ifm-heading-vertical-rhythm-top: 1.25;

  --ifm-h1-vertical-rhythm-bottom: 1.25;
  --ifm-heading-vertical-rhythm-bottom: 1;
}

.markdown:before {
    content: '';
    display: table;
  }

.markdown:after {
    clear: both;
    content: '';
    display: table;
  }

.markdown > *:last-child {
    margin-bottom: 0 !important;
  }

.markdown h1:first-child {
    --ifm-h1-font-size: 3rem;

    margin-bottom: calc(
      var(--ifm-h1-vertical-rhythm-bottom) * var(--ifm-leading)
    );
  }

.markdown > h2 {
    --ifm-h2-font-size: 2rem;

    margin-bottom: calc(
      var(--ifm-heading-vertical-rhythm-bottom) * var(--ifm-leading)
    );
    margin-top: calc(var(--ifm-h2-vertical-rhythm-top) * var(--ifm-leading));
  }

.markdown > h3 {
    --ifm-h3-font-size: 1.5rem;

    margin-bottom: calc(
      var(--ifm-heading-vertical-rhythm-bottom) * var(--ifm-leading)
    );
    margin-top: calc(var(--ifm-h3-vertical-rhythm-top) * var(--ifm-leading));
  }

.markdown > h4,
  .markdown > h5,
  .markdown > h6 {
    margin-bottom: calc(
      var(--ifm-heading-vertical-rhythm-bottom) * var(--ifm-leading)
    );
    margin-top: calc(
      var(--ifm-heading-vertical-rhythm-top) * var(--ifm-leading)
    );
  }

/* Consistent spacing between content paragraphs. */

.markdown > pre,
  .markdown > ul,
  .markdown > p {
    margin-bottom: var(--ifm-leading);
  }

.markdown li {
    word-wrap: break-word;
  }

.markdown li > p {
      margin-top: var(--ifm-list-paragraph-margin);
    }

.markdown li + li {
      margin-top: var(--ifm-list-item-margin);
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/* Lists */

ul,
ol {
  margin: 0 0 var(--ifm-list-margin);
  padding-left: var(--ifm-list-left-padding);
}

ol ol,
ul ol {
  list-style-type: lower-roman;
}

ul ul,
ul ol,
ol ol,
ol ul {
  margin: 0;
}

ul ul ol,
ul ol ol,
ol ul ol,
ol ol ol {
  list-style-type: lower-alpha;
}

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

table {
  border-collapse: collapse;
  display: block;
  margin-bottom: var(--ifm-spacing-vertical);
  overflow: auto;
}

table thead tr {
    border-bottom: 2px solid var(--ifm-table-border-color);
  }

table thead {
    background-color: var(--ifm-table-stripe-background);
  }

table tr {
    background-color: var(--ifm-table-background);
    border-top: var(--ifm-table-border-width) solid
      var(--ifm-table-border-color);
  }

table tr:nth-child(2n) {
    background-color: var(--ifm-table-stripe-background);
  }

table th,
  table td {
    border: var(--ifm-table-border-width) solid var(--ifm-table-border-color);
    padding: var(--ifm-table-cell-padding);
  }

table th {
    background-color: var(--ifm-table-head-background);
    color: var(--ifm-table-head-color);
    font-weight: var(--ifm-table-head-font-weight);
  }

table td {
    color: var(--ifm-table-cell-color);
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

strong {
  font-weight: var(--ifm-font-weight-bold);
}

/* Links */

a {
  color: var(--ifm-link-color);
  /* autoprefixer: ignore next */
  text-decoration: var(--ifm-link-decoration);
  transition: color var(--ifm-transition-fast) var(--ifm-transition-timing-default);
}

a:hover {
    color: var(--ifm-link-hover-color);
    /* autoprefixer: ignore next */
    text-decoration: var(--ifm-link-hover-decoration);
  }

a:not([href]) {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

/* Paragraphs */

p {
  margin: 0 0 var(--ifm-paragraph-margin-bottom);
}

/* Blockquotes */

blockquote {
  border-left: var(--ifm-blockquote-border-left-width) solid
    var(--ifm-blockquote-border-color);
  box-shadow: var(--ifm-blockquote-shadow);
  color: var(--ifm-blockquote-color);
  font-size: var(--ifm-blockquote-font-size);
  margin: 0 0 var(--ifm-spacing-vertical);
  padding: var(--ifm-blockquote-padding-vertical)
    var(--ifm-blockquote-padding-horizontal);
}

blockquote > :first-child {
    margin-top: 0;
  }

blockquote > :last-child {
    margin-bottom: 0;
  }

/* Horizontal Rules */

hr {
  background-color: var(--ifm-hr-background-color);
  border: 0;
  height: var(--ifm-hr-height);
  margin: var(--ifm-hr-margin-vertical) 0;
}

/* Utilities */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.shadow--lw {
    box-shadow: var(--ifm-global-shadow-lw) !important;
  }

.shadow--md {
    box-shadow: var(--ifm-global-shadow-md) !important;
  }

.shadow--tl {
    box-shadow: var(--ifm-global-shadow-tl) !important;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.text--primary {
    color: var(--ifm-color-primary);
  }

.text--secondary {
    color: var(--ifm-color-secondary);
  }

.text--success {
    color: var(--ifm-color-success);
  }

.text--info {
    color: var(--ifm-color-info);
  }

.text--warning {
    color: var(--ifm-color-warning);
  }

.text--danger {
    color: var(--ifm-color-danger);
  }

.text--center {
    text-align: center;
  }

.text--left {
    text-align: left;
  }

.text--justify {
    text-align: justify;
  }

.text--right {
    text-align: right;
  }

.text--capitalize {
    text-transform: capitalize;
  }

.text--lowercase {
    text-transform: lowercase;
  }

.text--uppercase {
    text-transform: uppercase;
  }

.text--light {
    font-weight: var(--ifm-font-weight-light);
  }

.text--normal {
    font-weight: var(--ifm-font-weight-normal);
  }

.text--semibold {
    font-weight: var(--ifm-font-weight-semibold);
  }

.text--bold {
    font-weight: var(--ifm-font-weight-bold);
  }

.text--italic {
  font-style: italic;
}

.text--truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text--break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

.text--no-decoration,
  .text--no-decoration:hover {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.clean-btn {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  padding: 0;
}

.clean-list {
  list-style: none;
  padding-left: 0;
}

/* Components */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.alert--primary {
      --ifm-alert-background-color: var(
        --ifm-color-primary-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(53, 120, 229, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-primary-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-primary-dark);
    }

.alert--secondary {
      --ifm-alert-background-color: var(
        --ifm-color-secondary-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(235, 237, 240, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-secondary-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-secondary-dark);
    }

.alert--success {
      --ifm-alert-background-color: var(
        --ifm-color-success-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(0, 164, 0, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-success-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-success-dark);
    }

.alert--info {
      --ifm-alert-background-color: var(
        --ifm-color-info-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(84, 199, 236, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-info-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-info-dark);
    }

.alert--warning {
      --ifm-alert-background-color: var(
        --ifm-color-warning-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(255, 186, 0, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-warning-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-warning-dark);
    }

.alert--danger {
      --ifm-alert-background-color: var(
        --ifm-color-danger-contrast-background
      );
      --ifm-alert-background-color-highlight: rgba(250, 56, 62, 0.15);
      --ifm-alert-foreground-color: var(
        --ifm-color-danger-contrast-foreground
      );
      --ifm-alert-border-color: var(--ifm-color-danger-dark);
    }

.alert {

  --ifm-code-background: var(--ifm-alert-background-color-highlight);
  --ifm-link-color: var(--ifm-alert-foreground-color);
  --ifm-link-hover-color: var(--ifm-alert-foreground-color);
  --ifm-link-decoration: underline;
  --ifm-tabs-color: var(--ifm-alert-foreground-color);
  --ifm-tabs-color-active: var(--ifm-alert-foreground-color);
  --ifm-tabs-color-active-border: var(--ifm-alert-border-color);

  background-color: var(--ifm-alert-background-color);
  border: var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);
  border-left-width: var(--ifm-alert-border-left-width);
  border-radius: var(--ifm-alert-border-radius);
  box-shadow: var(--ifm-alert-shadow);
  color: var(--ifm-alert-foreground-color);
  padding: var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal);
}

.alert__heading {
    align-items: center;
    display: flex;
    font: bold var(--ifm-h5-font-size) / var(--ifm-heading-line-height)
      var(--ifm-heading-font-family);
    margin-bottom: 0.5rem;
    text-transform: uppercase;
  }

.alert__icon {
    display: inline-flex;
    margin-right: 0.4em;
  }

.alert__icon svg {
      fill: var(--ifm-alert-foreground-color);
      stroke: var(--ifm-alert-foreground-color);
      stroke-width: 0;
    }

.alert .close {
    color: var(--ifm-alert-foreground-color);
    margin: calc(var(--ifm-alert-padding-vertical) * -1)
      calc(var(--ifm-alert-padding-horizontal) * -1) 0 0;

    opacity: 0.75;
  }

.alert .close:hover,
    .alert .close:focus {
      opacity: 1;
    }

.alert a {
    text-decoration-color: var(--ifm-alert-border-color);
  }

.alert a:hover {
      text-decoration-thickness: 2px;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.avatar {
  column-gap: var(--ifm-avatar-intro-margin);
  display: flex;
}

.avatar__photo {
    border-radius: 50%;
    display: block;
    height: var(--ifm-avatar-photo-size);
    overflow: hidden;
    width: var(--ifm-avatar-photo-size);
  }

.avatar__photo--sm {
      --ifm-avatar-photo-size: 2rem;
    }

.avatar__photo--lg {
      --ifm-avatar-photo-size: 4rem;
    }

.avatar__photo--xl {
      --ifm-avatar-photo-size: 6rem;
    }

.avatar__intro {
    display: flex;
    flex: 1 1;
    flex-direction: column;
    justify-content: center;
    text-align: var(--ifm-avatar-intro-alignment);
  }

.avatar__name {
    font: bold var(--ifm-h4-font-size) / var(--ifm-heading-line-height)
      var(--ifm-font-family-base);
  }

.avatar__subtitle {
    margin-top: 0.25rem;
  }

.avatar--vertical {
    --ifm-avatar-intro-alignment: center;
    --ifm-avatar-intro-margin: 0.5rem;

    align-items: center;
    flex-direction: column;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.badge {
  background-color: var(--ifm-badge-background-color);
  border: var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);
  border-radius: var(--ifm-badge-border-radius);
  color: var(--ifm-badge-color);
  display: inline-block;
  font-size: 75%;
  font-weight: var(--ifm-font-weight-bold);
  line-height: 1;
  padding: var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal);
}

.badge--primary {
      --ifm-badge-background-color: var(--ifm-color-primary);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    }

.badge--secondary {
      --ifm-badge-background-color: var(--ifm-color-secondary);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    color: var(--ifm-color-black);
    }

.badge--success {
      --ifm-badge-background-color: var(--ifm-color-success);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    }

.badge--info {
      --ifm-badge-background-color: var(--ifm-color-info);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    }

.badge--warning {
      --ifm-badge-background-color: var(--ifm-color-warning);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    }

.badge--danger {
      --ifm-badge-background-color: var(--ifm-color-danger);
      --ifm-badge-border-color: var(--ifm-badge-background-color);
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.breadcrumbs {
  margin-bottom: 0;
  padding-left: 0;
}

.breadcrumbs__item {
    display: inline-block;
  }

.breadcrumbs__item:not(:last-child):after {
      background: var(--ifm-breadcrumb-separator) center;
      content: ' ';
      display: inline-block;
      filter: var(--ifm-breadcrumb-separator-filter);
      height: calc(
        var(--ifm-breadcrumb-separator-size) *
          var(--ifm-breadcrumb-size-multiplier) *
          var(--ifm-breadcrumb-separator-size-multiplier)
      );
      margin: 0 var(--ifm-breadcrumb-spacing);
      opacity: 0.5;
      width: calc(
        var(--ifm-breadcrumb-separator-size) *
          var(--ifm-breadcrumb-size-multiplier) *
          var(--ifm-breadcrumb-separator-size-multiplier)
      );
      /*rtl:raw:
      transform: rotate(180deg);
      */
    }

.breadcrumbs__item--active .breadcrumbs__link {
        background: var(--ifm-breadcrumb-item-background-active);
        color: var(--ifm-breadcrumb-color-active);
      }

.breadcrumbs__link {
    border-radius: var(--ifm-breadcrumb-border-radius);
    color: var(--ifm-font-color-base);
    display: inline-block;
    font-size: calc(1rem * var(--ifm-breadcrumb-size-multiplier));
    padding: calc(
        var(--ifm-breadcrumb-padding-vertical) *
          var(--ifm-breadcrumb-size-multiplier)
      )
      calc(
        var(--ifm-breadcrumb-padding-horizontal) *
          var(--ifm-breadcrumb-size-multiplier)
      );
    transition-property: background, color;
    transition-duration: var(--ifm-transition-fast);
    transition-timing-function: var(--ifm-transition-timing-default);
  }

.breadcrumbs__link:link:hover, .breadcrumbs__link:visited:hover, area[href].breadcrumbs__link:hover {
      background: var(--ifm-breadcrumb-item-background-active);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.breadcrumbs__link:any-link:hover {
      background: var(--ifm-breadcrumb-item-background-active);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.breadcrumbs--sm {
    --ifm-breadcrumb-size-multiplier: 0.8;
  }

.breadcrumbs--lg {
    --ifm-breadcrumb-size-multiplier: 1.2;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.button {
  background-color: var(--ifm-button-background-color);
  border: var(--ifm-button-border-width) solid var(--ifm-button-border-color);
  border-radius: var(--ifm-button-border-radius);
  color: var(--ifm-button-color);
  cursor: pointer;
  display: inline-block;
  font-size: calc(0.875rem * var(--ifm-button-size-multiplier));
  font-weight: var(--ifm-button-font-weight);
  line-height: 1.5;
  padding: calc(
      var(--ifm-button-padding-vertical) * var(--ifm-button-size-multiplier)
    )
    calc(
      var(--ifm-button-padding-horizontal) * var(--ifm-button-size-multiplier)
    );
  text-align: center;
  -webkit-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
  transition-property: color, background, border-color;
  transition-duration: var(--ifm-button-transition-duration);
  transition-timing-function: var(--ifm-transition-timing-default);
}

.button:hover {
    color: var(--ifm-button-color); /* Override for button links. */
    -webkit-text-decoration: none;
    text-decoration: none;
  }

.button--outline {
    --ifm-button-background-color: transparent;
    --ifm-button-color: var(--ifm-button-border-color);
  }

.button--outline:hover {
      --ifm-button-background-color: var(--ifm-button-border-color);
    }

.button--outline:hover,
    .button--outline:active,
    .button--outline.button--active {
      --ifm-button-color: var(--ifm-font-color-base-inverse);
    }

.button--link {
    --ifm-button-background-color: transparent;
    --ifm-button-border-color: transparent;

    color: var(--ifm-link-color);
    /* autoprefixer: ignore next */
    text-decoration: var(--ifm-link-decoration);
  }

.button--link:hover,
    .button--link:active,
    .button--link.button--active {
      color: var(--ifm-link-hover-color);
      /* autoprefixer: ignore next */
      text-decoration: var(--ifm-link-hover-decoration);
    }

.button.disabled,
  .button:disabled,
  .button[disabled] {
    opacity: 0.65;
    pointer-events: none;
  }

.button--sm {
    --ifm-button-size-multiplier: 0.8;
  }

.button--lg {
    --ifm-button-size-multiplier: 1.35;
  }

.button--block {
    display: block;
    width: 100%;
  }

.button.button--secondary {
    color: var(--ifm-color-gray-900);
  }

.button.button--secondary.button--outline:not(.button--active):not(:hover) {
      color: var(--ifm-font-color-base);
    }

:where(.button--primary) {
      --ifm-button-background-color: var(--ifm-color-primary);
      --ifm-button-border-color: var(--ifm-color-primary);
    }

:where(.button--primary):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-primary-dark);
        --ifm-button-border-color: var(--ifm-color-primary-dark);
      }

.button--primary:active,
      .button--primary.button--active {
        --ifm-button-background-color: var(--ifm-color-primary-darker);
        --ifm-button-border-color: var(--ifm-color-primary-darker);
      }

:where(.button--secondary) {
      --ifm-button-background-color: var(--ifm-color-secondary);
      --ifm-button-border-color: var(--ifm-color-secondary);
    }

:where(.button--secondary):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-secondary-dark);
        --ifm-button-border-color: var(--ifm-color-secondary-dark);
      }

.button--secondary:active,
      .button--secondary.button--active {
        --ifm-button-background-color: var(--ifm-color-secondary-darker);
        --ifm-button-border-color: var(--ifm-color-secondary-darker);
      }

:where(.button--success) {
      --ifm-button-background-color: var(--ifm-color-success);
      --ifm-button-border-color: var(--ifm-color-success);
    }

:where(.button--success):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-success-dark);
        --ifm-button-border-color: var(--ifm-color-success-dark);
      }

.button--success:active,
      .button--success.button--active {
        --ifm-button-background-color: var(--ifm-color-success-darker);
        --ifm-button-border-color: var(--ifm-color-success-darker);
      }

:where(.button--info) {
      --ifm-button-background-color: var(--ifm-color-info);
      --ifm-button-border-color: var(--ifm-color-info);
    }

:where(.button--info):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-info-dark);
        --ifm-button-border-color: var(--ifm-color-info-dark);
      }

.button--info:active,
      .button--info.button--active {
        --ifm-button-background-color: var(--ifm-color-info-darker);
        --ifm-button-border-color: var(--ifm-color-info-darker);
      }

:where(.button--warning) {
      --ifm-button-background-color: var(--ifm-color-warning);
      --ifm-button-border-color: var(--ifm-color-warning);
    }

:where(.button--warning):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-warning-dark);
        --ifm-button-border-color: var(--ifm-color-warning-dark);
      }

.button--warning:active,
      .button--warning.button--active {
        --ifm-button-background-color: var(--ifm-color-warning-darker);
        --ifm-button-border-color: var(--ifm-color-warning-darker);
      }

:where(.button--danger) {
      --ifm-button-background-color: var(--ifm-color-danger);
      --ifm-button-border-color: var(--ifm-color-danger);
    }

:where(.button--danger):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-danger-dark);
        --ifm-button-border-color: var(--ifm-color-danger-dark);
      }

.button--danger:active,
      .button--danger.button--active {
        --ifm-button-background-color: var(--ifm-color-danger-darker);
        --ifm-button-border-color: var(--ifm-color-danger-darker);
      }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.button-group {
  display: inline-flex;
  gap: var(--ifm-button-group-spacing);
}

.button-group > .button:not(:first-child) {
      border-bottom-left-radius: 0;
      border-top-left-radius: 0;
    }

.button-group > .button:not(:last-child) {
      border-bottom-right-radius: 0;
      border-top-right-radius: 0;
    }

.button-group--block {
    display: flex;
    justify-content: stretch;
  }

.button-group--block > .button {
      flex-grow: 1;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.card {
  background-color: var(--ifm-card-background-color);
  border-radius: var(--ifm-card-border-radius);
  box-shadow: var(--ifm-global-shadow-lw);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Because of border-radius. */

.card--full-height {
    height: 100%;
  }

.card__image {
    padding-top: var(--ifm-card-vertical-spacing);
  }

.card__image:first-child {
      padding-top: 0;
    }

.card__header,
  .card__body,
  .card__footer {
    padding: var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing);
  }

.card__header:not(:last-child), .card__body:not(:last-child), .card__footer:not(:last-child) {
      padding-bottom: 0;
    }

.card__header > :last-child, .card__body > :last-child, .card__footer > :last-child {
      margin-bottom: 0;
    }

.card__footer {
    margin-top: auto; /* Pushes the footer to the bottom of the card. */
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.table-of-contents {
  font-size: 0.8rem;
  margin-bottom: 0;
  padding: var(--ifm-toc-padding-vertical) 0;
}

.table-of-contents,
  .table-of-contents ul {
    list-style: none;
    padding-left: var(--ifm-toc-padding-horizontal);
  }

.table-of-contents li {
    margin: var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal);
  }

.table-of-contents__left-border {
    border-left: 1px solid var(--ifm-toc-border-color);
  }

.table-of-contents__link {
    color: var(--ifm-toc-link-color);
    display: block;
  }

.table-of-contents__link:hover,
    .table-of-contents__link:hover code,
    .table-of-contents__link--active,
    .table-of-contents__link--active code {
      color: var(--ifm-color-primary);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.close {
  color: var(--ifm-color-black);
  float: right;
  font-size: 1.5rem;
  font-weight: var(--ifm-font-weight-bold);
  line-height: 1;
  opacity: 0.5;
  padding: 1rem;
  transition: opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default);
}

.close:hover {
    opacity: 0.7;
  }

.close:focus {
    opacity: 0.8;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.dropdown {
  display: inline-flex;
  font-weight: var(--ifm-dropdown-font-weight);
  position: relative;
  vertical-align: top;
}

.dropdown--hoverable:hover .dropdown__menu, .dropdown--show .dropdown__menu {
      opacity: 1;
      pointer-events: all;
      transform: translateY(-1px);
      visibility: visible;
    }

.dropdown--right .dropdown__menu {
      left: inherit;
      right: 0;
    }

.dropdown--nocaret .navbar__link:after {
    content: none !important;
  }

.dropdown__menu {
    background-color: var(--ifm-dropdown-background-color);
    border-radius: var(--ifm-global-radius);
    box-shadow: var(--ifm-global-shadow-md);
    left: 0;
    list-style: none;
    max-height: 80vh;
    min-width: 10rem;
    opacity: 0;
    overflow-y: auto;
    padding: 0.5rem;
    pointer-events: none;
    position: absolute;
    top: calc(100% - var(--ifm-navbar-item-padding-vertical) + 0.3rem);
    transform: translateY(-0.625rem);
    visibility: hidden;
    z-index: var(--ifm-z-index-dropdown);
    transition-property: opacity, transform, visibility;
    transition-duration: var(--ifm-transition-fast);
    transition-timing-function: var(--ifm-transition-timing-default);
  }

.dropdown__link {
    border-radius: 0.25rem;
    color: var(--ifm-dropdown-link-color);
    display: block;
    font-size: 0.875rem;
    margin-top: 0.2rem;
    padding: 0.25rem 0.5rem;
    white-space: nowrap;
  }

.dropdown__link:hover,
    .dropdown__link--active {
      background-color: var(--ifm-dropdown-hover-background-color);
      color: var(--ifm-dropdown-link-color);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.dropdown__link--active,
    .dropdown__link--active:hover {
      --ifm-dropdown-link-color: var(--ifm-link-color);
    }

.dropdown > .navbar__link:after {
    border-color: currentColor transparent;
    border-style: solid;
    border-width: 0.4em 0.4em 0;
    content: '';
    display: inline-block;
    margin-left: 0.3em;
    position: relative;
    top: 2px;
    transform: translateY(-50%);
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.footer {
  background-color: var(--ifm-footer-background-color);
  color: var(--ifm-footer-color);
  padding: var(--ifm-footer-padding-vertical)
    var(--ifm-footer-padding-horizontal);
}

.footer--dark {
    --ifm-footer-background-color: #303846;
    --ifm-footer-color: var(--ifm-footer-link-color);
    --ifm-footer-link-color: var(--ifm-color-secondary);
    --ifm-footer-title-color: var(--ifm-color-white);
  }

.footer__links {
    margin-bottom: 1rem;
  }

.footer__link-item {
    color: var(--ifm-footer-link-color);
    line-height: 2;
  }

.footer__link-item:hover {
      color: var(--ifm-footer-link-hover-color);
    }

.footer__link-separator {
    margin: 0 var(--ifm-footer-link-horizontal-spacing);
  }

.footer__logo {
    margin-top: 1rem;
    max-width: var(--ifm-footer-logo-max-width);
  }

.footer__title {
    color: var(--ifm-footer-title-color);
    font: bold var(--ifm-h4-font-size) / var(--ifm-heading-line-height)
      var(--ifm-font-family-base);
    margin-bottom: var(--ifm-heading-margin-bottom);
  }

.footer__item {
    margin-top: 0;
  }

.footer__items {
    margin-bottom: 0;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[type='checkbox'] {
  padding: 0;
}

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.hero {
  align-items: center;
  background-color: var(--ifm-hero-background-color);
  color: var(--ifm-hero-text-color);
  display: flex;
  padding: 4rem 2rem;
}

.hero--primary {
    --ifm-hero-background-color: var(--ifm-color-primary);
    --ifm-hero-text-color: var(--ifm-font-color-base-inverse);
  }

.hero--dark {
    --ifm-hero-background-color: #303846;
    --ifm-hero-text-color: var(--ifm-color-white);
  }

.hero__title {
    font-size: 3rem;
  }

.hero__subtitle {
    font-size: 1.5rem;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.menu {
  font-weight: var(--ifm-font-weight-semibold);
  overflow-x: hidden;
}

.menu__list {
    list-style: none;
    margin: 0;
    padding-left: 0;
  }

/* Non-top level menus */

.menu__list .menu__list {
      flex: 0 0 100%;
      margin-top: 0.25rem;
      padding-left: var(--ifm-menu-link-padding-horizontal);
    }

.menu__list-item:not(:first-child) {
      margin-top: 0.25rem;
    }

.menu__list-item--collapsed .menu__list {
        height: 0;
        overflow: hidden;
      }

.menu__list-item--collapsed .menu__link--sublist:after,
      .menu__list-item--collapsed .menu__caret:before {
        transform: rotateZ(90deg);
      }

.menu__list-item-collapsible {
      flex-wrap: wrap;
      position: relative;
      border-radius: 0.25rem;
      display: flex;
      transition: background var(--ifm-transition-fast) var(--ifm-transition-timing-default);
    }

.menu__list-item-collapsible:hover {
    background: var(--ifm-menu-color-background-hover);
  }

.menu__list-item-collapsible--active {
        background: var(--ifm-menu-color-background-hover);
      }

.menu__list-item-collapsible .menu__link:hover,
        .menu__list-item-collapsible .menu__link--active {
          background: none !important;
        }

.menu__link,
  .menu__caret {
    align-items: center;
    border-radius: 0.25rem;
    display: flex;
    transition: background var(--ifm-transition-fast) var(--ifm-transition-timing-default);
  }

.menu__link:hover, .menu__caret:hover {
    background: var(--ifm-menu-color-background-hover);
  }

.menu__link {
    color: var(--ifm-menu-color);
    flex: 1;
    line-height: 1.25;
    padding: var(--ifm-menu-link-padding-vertical)
      var(--ifm-menu-link-padding-horizontal);
  }

.menu__link:hover {
      -webkit-text-decoration: none;
      text-decoration: none;
      color: var(--ifm-menu-color);
      transition: color var(--ifm-transition-fast) var(--ifm-transition-timing-default);
    }

.menu__link--sublist-caret:after {
      content: '';
      margin-left: auto;
      min-width: 1.25rem;
      background: var(--ifm-menu-link-sublist-icon) 50% / 2rem 2rem;
      filter: var(--ifm-menu-link-sublist-icon-filter);
      height: 1.25rem;
      transform: rotate(180deg);
      width: 1.25rem;
      transition: transform var(--ifm-transition-fast) linear;
    }

.menu__link--active {
      color: var(--ifm-menu-color-active);
    }

.menu__link--active:hover {
        color: var(--ifm-menu-color-active);
      }

.menu__link--active:not(.menu__link--sublist) {
        background-color: var(--ifm-menu-color-background-active);
      }

.menu__caret {
    padding: var(--ifm-menu-link-padding-vertical)
      var(--ifm-menu-link-padding-horizontal);
  }

.menu__caret:before {
      content: '';
      background: var(--ifm-menu-link-sublist-icon) 50% / 2rem 2rem;
      filter: var(--ifm-menu-link-sublist-icon-filter);
      height: 1.25rem;
      transform: rotate(180deg);
      width: 1.25rem;
      transition: transform var(--ifm-transition-fast) linear;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

html[data-theme='dark'],
.navbar--dark {
  --ifm-menu-link-sublist-icon-filter: invert(100%) sepia(94%) saturate(17%)
    hue-rotate(223deg) brightness(104%) contrast(98%);
}

.navbar {
  background-color: var(--ifm-navbar-background-color);
  box-shadow: var(--ifm-navbar-shadow);
  display: flex;
  height: var(--ifm-navbar-height);
  padding: var(--ifm-navbar-padding-vertical)
    var(--ifm-navbar-padding-horizontal);
}

.navbar > .container,
  .navbar > .container-fluid {
    display: flex;
  }

.navbar--fixed-top {
    position: sticky;
    top: 0;
    z-index: var(--ifm-z-index-fixed);
  }

.navbar__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

.navbar__brand {
    align-items: center;
    color: var(--ifm-navbar-link-color);
    display: flex;
    margin-right: 1rem;
    min-width: 0;
  }

.navbar__brand:hover {
      color: var(--ifm-navbar-link-hover-color);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.navbar__title {
    flex: 1 1 auto;
  }

.navbar__toggle {
    display: none;
    margin-right: 0.5rem;
  }

.navbar__logo {
    flex: 0 0 auto;
    height: 2rem;
    margin-right: 0.5rem;
  }

.navbar__logo img {
      height: 100%;
    }

.navbar__items {
    align-items: center;
    display: flex;
    flex: 1;
    min-width: 0;
  }

.navbar__items--center {
      flex: 0 0 auto;
    }

.navbar__items--center .navbar__brand {
        margin: 0;
      }

.navbar__items--center + .navbar__items--right {
        flex: 1;
      }

.navbar__items--right {
      flex: 0 0 auto;
      justify-content: flex-end;
    }

.navbar__items--right > :last-child {
        padding-right: 0;
      }

.navbar__item {
    display: inline-block;
    padding: var(--ifm-navbar-item-padding-vertical)
      var(--ifm-navbar-item-padding-horizontal);
  }

.navbar__item.dropdown .navbar__link:not([href]) {
        pointer-events: none;
      }

.navbar__link {
    color: var(--ifm-navbar-link-color);
    font-weight: var(--ifm-font-weight-semibold);
  }

.navbar__link:hover,
    .navbar__link--active {
      color: var(--ifm-navbar-link-hover-color);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.navbar--dark,
  .navbar--primary {
    --ifm-menu-color: var(--ifm-color-gray-300);
    --ifm-navbar-link-color: var(--ifm-color-gray-100);
    --ifm-navbar-search-input-background-color: rgba(255, 255, 255, 0.1);
    --ifm-navbar-search-input-placeholder-color: rgba(255, 255, 255, 0.5);

    color: var(--ifm-color-white);
  }

.navbar--dark {
    --ifm-navbar-background-color: #242526;
    --ifm-navbar-link-hover-color: var(--ifm-color-primary);
    --ifm-menu-color-background-active: rgba(255, 255, 255, 0.05);
    --ifm-navbar-search-input-color: var(--ifm-color-white);
  }

.navbar--primary {
    --ifm-navbar-background-color: var(--ifm-color-primary);
    --ifm-navbar-link-hover-color: var(--ifm-color-white);
    --ifm-menu-color-active: var(--ifm-color-white);
    --ifm-navbar-search-input-color: var(--ifm-color-emphasis-500);
  }

.navbar__search-input {
      appearance: none; /* Algolia will add type="search" to the input in Safari and Safari's styling will override the styling here. */
      background: var(--ifm-navbar-search-input-background-color)
        var(--ifm-navbar-search-input-icon) no-repeat 0.75rem center / 1rem 1rem;
      border: none;
      border-radius: 2rem;
      color: var(--ifm-navbar-search-input-color);
      cursor: text;
      display: inline-block;
      font-size: 1rem;
      height: 2rem;
      padding: 0 0.5rem 0 2.25rem;
      width: 12.5rem;
    }

.navbar__search-input::placeholder {
        color: var(--ifm-navbar-search-input-placeholder-color);
      }

.navbar-sidebar {
    background-color: var(--ifm-navbar-background-color);
    bottom: 0;
    box-shadow: var(--ifm-global-shadow-md);
    left: 0;
    opacity: 0;
    overflow-x: hidden;
    position: fixed;
    top: 0;
    transform: translate3d(-100%, 0, 0);
    visibility: hidden;
    width: var(--ifm-navbar-sidebar-width);
    transition-property: opacity, visibility, transform;
    transition-duration: var(--ifm-transition-fast);
    transition-timing-function: ease-in-out;
  }

.navbar-sidebar--show .navbar-sidebar,
      .navbar-sidebar--show .navbar-sidebar__backdrop {
        opacity: 1;
        visibility: visible;
      }

.navbar-sidebar--show .navbar-sidebar {
        transform: translate3d(0, 0, 0);
      }

.navbar-sidebar__backdrop {
      background-color: rgba(0, 0, 0, 0.6);
      bottom: 0;
      left: 0;
      opacity: 0;
      position: fixed;
      right: 0;
      top: 0;
      visibility: hidden;
      transition-property: opacity, visibility;
      transition-duration: var(--ifm-transition-fast);
      transition-timing-function: ease-in-out;
    }

.navbar-sidebar__brand {
      align-items: center;
      box-shadow: var(--ifm-navbar-shadow);
      display: flex;
      flex: 1;
      height: var(--ifm-navbar-height);
      padding: var(--ifm-navbar-padding-vertical)
        var(--ifm-navbar-padding-horizontal);
    }

.navbar-sidebar__items {
      display: flex;
      height: calc(100% - var(--ifm-navbar-height));
      transform: translateZ(0);
      transition: transform var(--ifm-transition-fast) ease-in-out;
    }

.navbar-sidebar__items--show-secondary {
        transform: translate3d(
          calc((var(--ifm-navbar-sidebar-width)) * -1),
          0,
          0
        );
      }

.navbar-sidebar__item {
      flex-shrink: 0;
      padding: 0.5rem;
      width: calc(var(--ifm-navbar-sidebar-width));
    }

.navbar-sidebar__back {
      background: var(--ifm-menu-color-background-active);
      font-size: 15px;
      font-weight: var(--ifm-button-font-weight);
      margin: 0 0 0.2rem -0.5rem;
      padding: 0.6rem 1.5rem;
      position: relative;
      text-align: left;
      top: -0.5rem;
      width: calc(100% + 1rem);
    }

.navbar-sidebar__close {
      display: flex;
      margin-left: auto;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.pagination {
  column-gap: var(--ifm-pagination-page-spacing);
  display: flex;
  font-size: var(--ifm-pagination-font-size);
  padding-left: 0;
}

.pagination--sm {
    --ifm-pagination-font-size: 0.8rem;
    --ifm-pagination-padding-horizontal: 0.8rem;
    --ifm-pagination-padding-vertical: 0.2rem;
  }

.pagination--lg {
    --ifm-pagination-font-size: 1.2rem;
    --ifm-pagination-padding-horizontal: 1.2rem;
    --ifm-pagination-padding-vertical: 0.3rem;
  }

.pagination__item {
    display: inline-flex;
  }

.pagination__item > span {
      padding: var(--ifm-pagination-padding-vertical);
    }

.pagination__item--active .pagination__link {
        background: var(--ifm-pagination-item-active-background);
        color: var(--ifm-pagination-color-active);
      }

.pagination__item:not(.pagination__item--active):hover .pagination__link {
        background: var(--ifm-pagination-item-active-background);
      }

.pagination__item--disabled,
    .pagination__item[disabled] {
      opacity: 0.25;
      pointer-events: none;
    }

.pagination__link {
    border-radius: var(--ifm-pagination-border-radius);
    color: var(--ifm-font-color-base);
    display: inline-block;
    padding: var(--ifm-pagination-padding-vertical)
      var(--ifm-pagination-padding-horizontal);
    transition: background var(--ifm-transition-fast) var(--ifm-transition-timing-default);
  }

.pagination__link:hover {
      -webkit-text-decoration: none;
      text-decoration: none;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.pagination-nav {
  display: grid;
  grid-gap: var(--ifm-spacing-horizontal);
  gap: var(--ifm-spacing-horizontal);
  grid-template-columns: repeat(2, 1fr);
}

.pagination-nav__link {
    border: 1px solid var(--ifm-color-emphasis-300);
    border-radius: var(--ifm-pagination-nav-border-radius);
    display: block;
    height: 100%;
    line-height: var(--ifm-heading-line-height);
    padding: var(--ifm-global-spacing);
    transition: border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default);
  }

.pagination-nav__link:hover {
      border-color: var(--ifm-pagination-nav-color-hover);
      -webkit-text-decoration: none;
      text-decoration: none;
    }

.pagination-nav__link--next {
      grid-column: 2/3;
      text-align: right;
    }

.pagination-nav__label {
    font-size: var(--ifm-h4-font-size);
    font-weight: var(--ifm-heading-font-weight);
    word-break: break-word;
  }

.pagination-nav__link--prev .pagination-nav__label::before {
      content: '« ';
    }

.pagination-nav__link--next .pagination-nav__label::after {
      content: ' »';
    }

.pagination-nav__sublabel {
    color: var(--ifm-color-content-secondary);
    font-size: var(--ifm-h5-font-size);
    font-weight: var(--ifm-font-weight-semibold);
    margin-bottom: 0.25rem;
  }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.pills {
  display: flex;
  gap: var(--ifm-pills-spacing);
  padding-left: 0;
}

.pills__item {
    border-radius: 0.5rem;
    cursor: pointer;
    display: inline-block;
    font-weight: var(--ifm-font-weight-bold);
    padding: 0.25rem 1rem;
    transition: background var(--ifm-transition-fast) var(--ifm-transition-timing-default);
  }

.pills__item--active {
      background: var(--ifm-pills-color-background-active);
      color: var(--ifm-pills-color-active);
    }

.pills__item:not(.pills__item--active):hover {
      background: var(--ifm-pills-color-background-active);
    }

.pills--block {
    justify-content: stretch;
  }

.pills--block .pills__item {
      flex-grow: 1;
      text-align: center;
    }

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tabs {
  color: var(--ifm-tabs-color);
  display: flex;
  font-weight: var(--ifm-font-weight-bold);
  margin-bottom: 0;
  overflow-x: auto;
  padding-left: 0;
}

.tabs__item {
    border-bottom: 3px solid transparent;
    border-radius: var(--ifm-global-radius);
    cursor: pointer;
    display: inline-flex;
    padding: var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);
    transition: background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default);
  }

.tabs__item--active {
      border-bottom-color: var(--ifm-tabs-color-active-border);
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
      color: var(--ifm-tabs-color-active);
    }

.tabs__item:hover {
      background-color: var(--ifm-hover-overlay);
    }

.tabs--block {
    justify-content: stretch;
  }

.tabs--block .tabs__item {
      flex-grow: 1;
      justify-content: center;
    }

/* Mode */

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

html[data-theme='dark'] {
  --ifm-color-scheme: dark;

  --ifm-color-emphasis-0: var(--ifm-color-gray-1000);
  --ifm-color-emphasis-100: var(--ifm-color-gray-900);
  --ifm-color-emphasis-200: var(--ifm-color-gray-800);
  --ifm-color-emphasis-300: var(--ifm-color-gray-700);
  --ifm-color-emphasis-400: var(--ifm-color-gray-600);
  --ifm-color-emphasis-500: var(--ifm-color-gray-500);
  --ifm-color-emphasis-600: var(--ifm-color-gray-400);
  --ifm-color-emphasis-700: var(--ifm-color-gray-300);
  --ifm-color-emphasis-800: var(--ifm-color-gray-200);
  --ifm-color-emphasis-900: var(--ifm-color-gray-100);
  --ifm-color-emphasis-1000: var(--ifm-color-gray-0);

  --ifm-background-color: #1b1b1d;
  --ifm-background-surface-color: #242526;

  --ifm-hover-overlay: rgba(255, 255, 255, 0.05);

  --ifm-color-content: #e3e3e3;
  --ifm-color-content-secondary: rgba(255, 255, 255, 1);

  --ifm-breadcrumb-separator-filter: invert(64%) sepia(11%) saturate(0%)
    hue-rotate(149deg) brightness(99%) contrast(95%);

  --ifm-code-background: rgba(255, 255, 255, 0.1);

  --ifm-scrollbar-track-background-color: #444444;
  --ifm-scrollbar-thumb-background-color: #686868;
  --ifm-scrollbar-thumb-hover-background-color: #7a7a7a;

  --ifm-table-stripe-background: rgba(255, 255, 255, 0.07);

  --ifm-toc-border-color: var(--ifm-color-emphasis-200);
    --ifm-color-primary-contrast-background: rgb(16, 36, 69);
    --ifm-color-primary-contrast-foreground: rgb(235, 242, 252);
    --ifm-color-secondary-contrast-background: rgb(71, 71, 72);
    --ifm-color-secondary-contrast-foreground: rgb(253, 253, 254);
    --ifm-color-success-contrast-background: rgb(0, 49, 0);
    --ifm-color-success-contrast-foreground: rgb(230, 246, 230);
    --ifm-color-info-contrast-background: rgb(25, 60, 71);
    --ifm-color-info-contrast-foreground: rgb(238, 249, 253);
    --ifm-color-warning-contrast-background: rgb(77, 56, 0);
    --ifm-color-warning-contrast-foreground: rgb(255, 248, 230);
    --ifm-color-danger-contrast-background: rgb(75, 17, 19);
    --ifm-color-danger-contrast-foreground: rgb(255, 235, 236)
}

@media (min-width: 1440px) {
    .container {
      max-width: var(--ifm-container-width-xl);
    }
}

@media (max-width: 996px) {
    .col {
      --ifm-col-width: 100%;
      flex-basis: var(--ifm-col-width);
      margin-left: 0;
    }

.footer {
    --ifm-footer-padding-horizontal: 0
}

    .footer__link-separator {
      display: none;
    }

    .footer__col {
      margin-bottom: calc(var(--ifm-spacing-vertical) * 3);
    }

    .footer__link-item {
      display: block;
      width: max-content;
    }

.hero {
    padding-left: 0;
    padding-right: 0
}

.navbar > .container,
  .navbar > .container-fluid {
      padding: 0
  }

.navbar__toggle {
      display: inherit
  }

.navbar__item {
      display: none
  }

.navbar__search-input {
        width: 9rem
    }

.pills--block {
      flex-direction: column
  }

.tabs--block {
      flex-direction: column
  }
}

@media (max-width: 576px) {
    .markdown h1:first-child {
      --ifm-h1-font-size: 2rem;
    }
    .markdown > h2 {
      --ifm-h2-font-size: 1.5rem;
    }
    .markdown > h3 {
      --ifm-h3-font-size: 1.25rem;
    }
}

@media (pointer: fine) {
  .thin-scrollbar {
    scrollbar-width: thin;
  }
  .thin-scrollbar::-webkit-scrollbar {
    height: var(--ifm-scrollbar-size);
    width: var(--ifm-scrollbar-size);
  }
  .thin-scrollbar::-webkit-scrollbar-track {
    background: var(--ifm-scrollbar-track-background-color);
    border-radius: 10px;
  }
  .thin-scrollbar::-webkit-scrollbar-thumb {
    background: var(--ifm-scrollbar-thumb-background-color);
    border-radius: 10px;
  }
  .thin-scrollbar::-webkit-scrollbar-thumb:hover {
    background: var(--ifm-scrollbar-thumb-hover-background-color);
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --ifm-transition-fast: 0ms;
    --ifm-transition-slow: 0ms;
  }
}

@media print {

.table-of-contents {
    display: none
}

.footer {
    display: none
}

.menu {
    display: none
}

.navbar {
    display: none
}

.pagination-nav {
    display: none
}

.tabs {
    page-break-inside: avoid
}
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * Styles for NProgress
 * Copied over to remove unused styles for the spinner.
 * https://github.com/rstacruz/nprogress/blob/master/nprogress.css
 */

:root {
  --docusaurus-progress-bar-color: var(--ifm-color-primary);
}

#nprogress {
  pointer-events: none;
}

#nprogress .bar {
  background: var(--docusaurus-progress-bar-color);
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
}

#nprogress .peg {
  position: absolute;
  right: 0;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px var(--docusaurus-progress-bar-color),
    0 0 5px var(--docusaurus-progress-bar-color);
  opacity: 1;
  transform: rotate(3deg) translate(0, -4px);
}
}

/* CSS 变量系统 - Docusaurus 全局样式变量 */
:root {
  /* 字体相关 */
  --font-family-primary: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  --font-family-zh: 'PingFang SC', 'Microsoft YaHei', sans-serif;
  
  /* 通用尺寸相关 - 英文默认值 */
  --text-line-height: 1.5;
  
  /* 间距相关 */
  --section-padding: 8rem 0;
  --container-padding: 2rem;
  --element-gap: 1.5rem;
  
  /* 颜色相关 */
  --primary-color: #3D65FD;
  --secondary-color: #131C43;
  --text-color: #1f2937;
  --text-secondary: #6b7280;
  --bg-color: #fff;
  --border-color: rgba(19, 28, 67, 0.1);
  --shadow-color: rgba(19, 28, 67, 0.1);
  
  /* 动画相关 */
  --transition-primary: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  --border-radius: 1.5rem;
  --card-padding: 2.5rem;

}

/* 中文主题变量 */
:root[lang="zh"] {
  --font-family-primary: var(--font-family-zh);
  --text-line-height: 1.6;
}

/* Footer 样式 - 基于 index.module.css 设计系统 */

/* Footer 主容器 */
footer.footer {
  /* background: var(--color-secondary); */
  background: #060916 !important;
  color: var(--color-white);
  padding: 4rem 2rem 0 2rem;
  position: relative;
  overflow: hidden;
}

/* Footer 容器 */
footer .container {
  position: relative;
  z-index: 1;
}

/* Footer 链接区域 */
footer .footer__links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
  max-width: 1000px;
  margin: 0 auto;
  align-items: start;
}

/* Footer 链接组 */
footer .footer__col {
  /* display: flex; */
  /* flex-direction: column; */
  margin-bottom: 0;
}

/* Footer 链接组标题 */
footer .footer__col-title {
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  position: relative;
  padding-bottom: 0.5rem;
}

/* Footer 链接组标题下划线 */
footer .footer__col-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2rem;
  height: 2px;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 1px;
}

/* Footer 链接列表 */
footer .footer__items {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Footer 链接项 */
footer .footer__item {
  margin-bottom: 0.75rem;
}

/* Footer 链接样式 */
footer .footer__link-item {
  color: rgba(255, 255, 255, 0.8);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
  position: relative;
  padding: 0.25rem 0 0.4rem 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
}

/* Footer 链接悬停效果 */
footer .footer__link-item:hover {
  color: var(--color-white);
}

/* Footer 链接悬停下划线 */
footer .footer__link-item::after {
  content: '';
  position: absolute;
  bottom: 0.1rem;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--color-white);
  transition: width 0.3s ease;
}

footer .footer__link-item:hover::after {
  width: 100%;
}

/* Footer Logo 区域 */
footer .footer__logo  {
  height: auto;
  max-width: 12rem;
  filter: brightness(0) invert(1);
  transition: all 0.3s ease;
}

footer .footer__logo:hover {
  transform: scale(1.05);
}

/* Footer 版权信息 */
footer .footer__copyright {
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.75rem;
  padding: 1rem 0;
  margin-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  position: relative;
}

/* Footer 版权信息装饰 */
footer .footer__copyright::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
}

/* 社交媒体图标公共样式 */
footer .footer__link-item[href*="forum.jit.pro"]::before,
footer .footer__link-item[href*="github.com"]::before,
footer .footer__link-item[href*="x.com"]::before,
footer .footer__link-item[href*="youtube.com"]::before,
footer .footer__link-item[href*="instagram.com"]::before,
footer .footer__link-item[href*="facebook.com"]::before,
footer .footer__link-item[href*="linkedin.com"]::before {
  content: '';
  margin-right: var(--space-2);
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: middle;
  background-size: 1em;
}

/* Discourse */
footer .footer__link-item[href*="forum.jit.pro"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 103 104'%3E%3Cg fill='none' fill-rule='nonzero'%3E%3Cpath fill='white' d='M51.87 0C23.71 0 0 22.83 0 51v52.81l51.86-.05c28.16 0 51-23.71 51-51.87C102.86 23.73 80 0 51.87 0z'/%3E%3Cpath fill='%23FFF9AE' d='M52.37 19.74c-11.1380058.0065739-21.451097 5.8725864-27.1495582 15.4424743C19.5219805 44.7523623 19.2787009 56.6145192 24.58 66.41l-5.72 18.4 20.54-4.64c11.7619991 5.29926 25.5640682 2.9191757 34.8718647-6.0134445 9.3077965-8.9326201 12.2534008-22.6251484 7.4422692-34.5951021C76.9030023 27.5914997 65.3006488 19.7462906 52.4 19.74h-.03z'/%3E%3Cpath fill='%2300AEEF' d='M77.45 32.12c8.765 11.492 8.616 27.467-.363 38.794C68.11 82.24 52.59 86.03 39.4 80.12l-20.54 4.7 20.91-2.47c13.862 8.12 31.61 4.547 41.25-8.304 9.64-12.851 8.105-30.89-3.57-41.926z'/%3E%3Cpath fill='%2300A94F' d='M75.32 64.909C67.571 77.11 52.533 82.5 38.8 78l-19.94 6.82 20.54-4.65c14.629 6.608 31.887 1.199 40.127-12.576 8.24-13.776 4.844-31.54-7.897-41.304 9.917 10.514 11.436 26.417 3.69 38.619z'/%3E%3Cpath fill='%23F15D22' d='M26.47 67.11c-5.725-13.8-1.007-29.722 11.31-38.176 12.319-8.453 28.873-7.128 39.69 3.176-10.018-13.147-28.474-16.356-42.342-7.363C21.26 33.741 16.662 51.901 24.58 66.41l-5.72 18.4 7.61-17.7z'/%3E%3Cpath fill='%23D0232B' d='M24.58 66.41c-7.103-13.12-4.065-29.421 7.288-39.102 11.353-9.68 27.929-10.105 39.762-1.018-11.351-11.952-29.982-13.176-42.798-2.81-12.817 10.366-15.517 28.84-6.202 42.44l-3.76 18.9 5.71-18.41z'/%3E%3C/g%3E%3C/svg%3E") no-repeat center;
}

/* GitHub */
footer .footer__link-item[href*="github.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z'/%3E%3C/svg%3E") no-repeat center;
}

/* X (Twitter) */
footer .footer__link-item[href*="x.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231DA1F2' d='M18.146.75h3.686L14.78 10.307l8.052 12.943h-6.3l-4.934-7.22-5.64 7.22H2.271l7.588-9.72L1.999.75h6.457l4.463 6.705L18.146.75Zm-1.29 20.106h2.041L7.238 3.1H5.07l11.786 17.756Z'/%3E%3C/svg%3E") no-repeat center;
}

/* YouTube */
footer .footer__link-item[href*="youtube.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FF0000' d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E") no-repeat center;
}

/* Instagram */
footer .footer__link-item[href*="instagram.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3ClinearGradient id='instagram-gradient' x1='0%25' y1='0%25' x2='100%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23f09433;stop-opacity:1' /%3E%3Cstop offset='25%25' style='stop-color:%23e6683c;stop-opacity:1' /%3E%3Cstop offset='50%25' style='stop-color:%23dc2743;stop-opacity:1' /%3E%3Cstop offset='75%25' style='stop-color:%23cc2366;stop-opacity:1' /%3E%3Cstop offset='100%25' style='stop-color:%23bc1888;stop-opacity:1' /%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23instagram-gradient)' d='M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z'/%3E%3C/svg%3E") no-repeat center;
}

/* Facebook */
footer .footer__link-item[href*="facebook.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231877F2' d='M22.675 0h-21.35C.593 0 0 .593 0 1.325v21.351C0 23.406.593 24 1.325 24h11.495v-9.294H9.691V11.41h3.129V8.797c0-3.1 1.893-4.788 4.659-4.788 1.325 0 2.463.099 2.794.143v3.24l-1.918.001c-1.504 0-1.796.715-1.796 1.765v2.316h3.587l-.467 3.296h-3.12V24h6.116C23.406 24 24 23.406 24 22.676V1.325C24 .593 23.406 0 22.675 0z'/%3E%3C/svg%3E") no-repeat center;
}

/* LinkedIn */
footer .footer__link-item[href*="linkedin.com"]::before {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%230077B5' d='M20.447 20.452h-3.554V14.83c0-1.344-.027-3.072-1.871-3.072-1.872 0-2.159 1.462-2.159 2.973v5.721H9.309V9h3.414v1.561h.049c.476-.9 1.637-1.852 3.37-1.852 3.603 0 4.267 2.372 4.267 5.455v6.289zM5.337 7.433c-1.144 0-2.067-.926-2.067-2.067 0-1.143.923-2.066 2.067-2.066 1.142 0 2.066.923 2.066 2.066 0 1.141-.924 2.067-2.066 2.067zM6.815 20.452H3.861V9h2.954v11.452z'/%3E%3C/svg%3E") no-repeat center;
}

/* 邮件图标 */
footer .footer__link-item[href^="mailto:"]::before {
  content: '📧';
  margin-right: var(--space-2);
  font-size: 0.9em;
}

/* 发布图标 */
footer .footer__link-item[href*="releases"]::before {
  content: '📦';
  margin-right: var(--space-2);
  font-size: 0.9em;
}

/* 问题图标 */
footer .footer__link-item[href*="issues"]::before {
  content: '🐛';
  margin-right: var(--space-2);
  font-size: 0.9em;
}

/* 隐藏外部链接箭头 - 全面覆盖 */
footer .footer__link-item>svg {
  display: none !important;
}

/* 响应式设计 */
@media (max-width: 1024px) {
  footer .footer__links {
    gap: 1.5rem;
    max-width: 800px;
  }

  footer .footer__link-item {
    padding: 0.2rem 0 0.35rem 0;
  }
}

@media (max-width: 768px) {
  footer.footer {
    padding: 2.5rem 1rem 0 1rem;
  }

  footer .footer__links {
    grid-template-columns: 1fr;
    gap: 1rem;
    max-width: 100%;
    text-align: center;
  }

  footer .footer__col-title {
    font-size: 1rem;
    margin-bottom: 0.75rem;
  }

  footer .footer__col-title::after {
    left: 50%;
    transform: translateX(-50%);
  }

  footer .footer__item {
    margin-bottom: 0rem;
  }

  footer .footer__link-item {
    padding: 0.15rem 0 0.25rem 0;
    font-size: 0.875rem;
  }

  footer .footer__link-item::after {
    bottom: 1rem;
  }

  footer .footer__logo  {
    max-width: 10rem;
  }

  footer .footer__copyright {
    font-size: 0.7rem;
    padding: 0.5rem 0;
    margin-top: 1rem;
  }
}

@media (max-width: 480px) {
  footer.footer {
    padding: 1rem 0.75rem 0 0.75rem;
  }

  footer .footer__links {
    gap: 0.8rem;
  }

  footer .footer__col-title {
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
  }

  footer .footer__item {
    margin-bottom: 0.4rem;
  }

  footer .footer__link-item {
    padding: 0.12rem 0 0.2rem 0;
    font-size: 0.8rem;
  }

  footer .footer__logo  {
    margin-top: 0rem !important;
  }

  footer .footer__copyright {
    font-size: 0.65rem;
    padding: 0.4rem 0;
    margin-top: 0.8rem;
  }
}


/* 深色模式优化 */
[data-theme='dark'] footer.footer {
  background: var(--color-gray-800);
}

/* Footer 背景光效 */
footer.footer::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
  animation: rotate 20s linear infinite;
  pointer-events: none;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * Any CSS included here will be global. The classic template
 * bundles Infima by default. Infima is a CSS framework designed to
 * work well for content-centric websites.
 */



/* You can override the default Infima variables here. */
@layer docusaurus.infima {
  :root {
    /* Primary */
    --ifm-color-primary: #3578e5;
    --ifm-color-primary-dark: rgb(48, 108, 206);
    --ifm-color-primary-darker: rgb(45, 102, 195);
    --ifm-color-primary-darkest: rgb(37, 84, 160);
    --ifm-color-primary-light: rgb(83, 140, 233);
    --ifm-color-primary-lighter: rgb(114, 161, 237);
    --ifm-color-primary-lightest: rgb(154, 188, 242);
    --ifm-color-primary-contrast-background: rgb(235, 242, 252);
    --ifm-color-primary-contrast-foreground: rgb(16, 36, 69);

    /* Secondary */
    --ifm-color-secondary: #ebedf0;
    --ifm-color-secondary-dark: translate;
    /* --ifm-color-secondary-dark: rgb(212, 213, 216); */
    --ifm-color-secondary-darker: rgb(200, 201, 204);
    --ifm-color-secondary-darkest: rgb(164, 166, 168);
    --ifm-color-secondary-light: rgb(238, 240, 242);
    --ifm-color-secondary-lighter: rgb(241, 242, 245);
    --ifm-color-secondary-lightest: rgb(245, 246, 248);
    --ifm-color-secondary-contrast-background: rgb(253, 253, 254);
    --ifm-color-secondary-contrast-foreground: rgb(71, 71, 72);

    /* Success */
    --ifm-color-success: #00a400;
    --ifm-color-success-dark: translate;
    /* --ifm-color-success-dark: rgb(0, 148, 0); */
    --ifm-color-success-darker: rgb(0, 139, 0);
    --ifm-color-success-darkest: rgb(0, 115, 0);
    --ifm-color-success-light: rgb(38, 178, 38);
    --ifm-color-success-lighter: rgb(77, 191, 77);
    --ifm-color-success-lightest: rgb(128, 210, 128);
    --ifm-color-success-contrast-background: rgb(230, 246, 230);
    --ifm-color-success-contrast-foreground: rgb(0, 49, 0);

    /* Info */
    --ifm-color-info: #54c7ec;
    --ifm-color-info-dark: translate;
    /* --ifm-color-info-dark: rgb(76, 179, 212); */
    --ifm-color-info-darker: rgb(71, 169, 201);
    --ifm-color-info-darkest: rgb(59, 139, 165);
    --ifm-color-info-light: rgb(110, 207, 239);
    --ifm-color-info-lighter: rgb(135, 216, 242);
    --ifm-color-info-lightest: rgb(170, 227, 246);
    --ifm-color-info-contrast-background: rgb(238, 249, 253);
    --ifm-color-info-contrast-foreground: rgb(25, 60, 71);

    /* Warning */
    --ifm-color-warning: #ffba00;
    --ifm-color-warning-dark: translate;
    /* --ifm-color-warning-dark: rgb(230, 167, 0); */
    --ifm-color-warning-darker: rgb(217, 158, 0);
    --ifm-color-warning-darkest: rgb(179, 130, 0);
    --ifm-color-warning-light: rgb(255, 196, 38);
    --ifm-color-warning-lighter: rgb(255, 207, 77);
    --ifm-color-warning-lightest: rgb(255, 221, 128);
    --ifm-color-warning-contrast-background: rgb(255, 248, 230);
    --ifm-color-warning-contrast-foreground: rgb(77, 56, 0);

    /* Danger */
    --ifm-color-danger: #fa383e;
    --ifm-color-danger-dark: translate;
    /* --ifm-color-danger-dark: rgb(225, 50, 56); */
    --ifm-color-danger-darker: rgb(213, 48, 53);
    --ifm-color-danger-darkest: rgb(175, 39, 43);
    --ifm-color-danger-light: rgb(251, 86, 91);
    --ifm-color-danger-lighter: rgb(251, 116, 120);
    --ifm-color-danger-lightest: rgb(253, 156, 159);
    --ifm-color-danger-contrast-background: rgb(255, 235, 236);
    --ifm-color-danger-contrast-foreground: rgb(75, 17, 19);


    /* 自定义字体系统 */
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

  }

}

/* 移动端优化 */
@media (max-width: 768px) {
  /* 优化触摸体验 */
  button, a {
    min-height: 44px;
    min-width: 44px;
  }

  /* 防止移动端缩放 */
  input, textarea, select {
    font-size: 14px;
  }

  /* 优化滚动体验 */
  html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%; /* 禁止文字自动缩放 */
    text-size-adjust: 100%;
  }

  /* 防止移动端横向滚动 */
  body {
    overflow-x: hidden;
    width: 100%;
    /* 适配安全区域 */
    padding-bottom: env(safe-area-inset-bottom);
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }

  /* 优化移动端点击区域 */
  .mobile-nav-item {
    touch-action: manipulation;
  }
}

/* 移动端菜单打开时禁止背景滚动 */
body.menu-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.menu__caret:before {
  background: var(--ifm-menu-link-sublist-icon) 50% / 1rem 1rem;
}


header>h1 {
  --ifm-h1-font-size: 2.3rem;
}

@media (max-width: 576px) {
  header>h1 {
    --ifm-h1-font-size: 1.8rem;
  }
}

details {
  border: none;
}

details > summary {
  font-weight: bold;
  color: var(--ifm-tabs-color);
}

:is(details > summary):before {
    border-color: transparent transparent transparent var(--ifm-tabs-color);
  }

details.alert.alert--info {
  background-color: transparent;
  box-shadow: none;
  padding: 0px;
}

details>div>div {
  margin-top: 0;
  border-top: none;
  padding-top: 0.5rem;
  padding-left: 1rem;
  /* padding-top: 0; */
}

:is(details > div > div) code {
    --ifm-code-background: var(--ifm-color-secondary);
  }

.theme-doc-sidebar-container img {
  border-radius: 2px;
  box-shadow: var(--we_m_shadow, 0px 4px 24px 0px rgba(0, 0, 0, 0.1));
}

.breadcrumbs {
  display: none;
}

/* 侧边栏样式优化 */

/* 根目录粗体样式 */
.theme-doc-sidebar-menu > .menu__list > .menu__list-item > .menu__link {
  font-weight: bold !important;
  font-size: 0.95rem !important;
}

/* 子目录正常字重 */
.theme-doc-sidebar-menu .menu__list .menu__list .menu__link {
  font-weight: normal !important;
}

.menu__list .menu__list{
  padding-left: 1.5rem !important;
}

/* 整体居中布局 - 消除sidebar和文章间距，空白在sidebar和屏幕边缘 */

/* 移除侧边栏右侧边框 */
.theme-doc-sidebar-container {
  border-right: none !important;
}

/* 调整侧边栏宽度 */
.main-wrapper {
  --doc-sidebar-width: 280px; /* 减少侧边栏宽度，给文章更多空间 */
}

/* 整体居中容器 - 仅应用于有侧边栏的文档页面 */
@media (min-width: 997px) {
  /* 有侧边栏的页面主包装器居中 */
  .main-wrapper:has(.theme-doc-sidebar-container) {
    max-width: 1400px; /* 固定整体最大宽度 */
    margin: 0 auto; /* 水平居中 */
    display: flex;
    padding: 0 1rem; /* 两侧留白 */
    gap: 8px; /* 侧边栏和主内容之间的间距 */
  }

  /* 侧边栏容器 - 固定宽度 */
  .theme-doc-sidebar-container {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    flex-shrink: 0;
  }

  /* 侧边栏内容 - 移除右侧间距（使用gap代替） */
  .theme-doc-sidebar-container .sidebar_ {
    padding-right: 0 !important;
  }

  /* 文档主容器 - 固定宽度居中 */
  .docMainContainer_gTbr {
    width: 900px !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    box-sizing: border-box !important;
  }

  /* 文档内容区域 - 保持固定宽度 */
  .theme-doc-markdown {
    width: 800px !important;
    max-width: 800px !important;
    margin: 0 auto !important;
  }
}

/* 中等屏幕适配 - 仅有侧边栏的文档页面 */
@media (min-width: 997px) and (max-width: 1440px) {
  .main-wrapper:has(.theme-doc-sidebar-container) {
    padding: 0 0.5rem; /* 较小的两侧留白 */
    gap: 12px; /* 稍小的间距 */
  }
}

/* 超大屏幕优化 - 仅有侧边栏的文档页面 */
@media (min-width: 1400px) {
  .main-wrapper:has(.theme-doc-sidebar-container) {
    width: 1400px; /* 超大屏幕下保持固定宽度 */
    gap: 24px; /* 超大屏幕下增加间距 */
  }

  .docMainContainer_gTbr {
    width: 900px !important;
    max-width: 900px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .theme-doc-markdown {
    width: 800px !important;
    max-width: 800px !important;
  }
}

/* 小屏幕和移动端适配 - 仅有侧边栏的文档页面 */
@media (max-width: 996px) {
  /* 移动端保持默认布局，不应用居中样式 */
  .main-wrapper:has(.theme-doc-sidebar-container) {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  .theme-doc-sidebar-container {
    width: auto !important;
    min-width: auto !important;
    max-width: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  .main-wrapper:has(.theme-doc-sidebar-container) main.container {
    min-width: auto !important;
    width: 100% !important;
    padding-left: var(--ifm-spacing-horizontal) !important;
    margin-left: 0 !important;
    display: block !important;
    justify-content: normal !important;
  }

  .docMainContainer_gTbr {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: var(--ifm-spacing-horizontal) !important;
    padding-right: var(--ifm-spacing-horizontal) !important;
  }

  .theme-doc-markdown {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

.container video, .theme-doc-markdown img {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12), 0 1.5px 6px rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  border: 1px solid #e5e7eb;
  margin-bottom: var(--ifm-leading);
}

/* ===== 自定义样式覆盖 ===== */

/* 自定义配色变量 */
:root {
  --primary-color: #326DFF;
  --primary-light: #8EAEFF;
  --text-secondary: #6b7280;
  --text-muted: #9ca3af;
  --border-color: rgba(31, 41, 55, 0.1);
  --bg-translucent: rgba(255, 255, 255, 0.95);
  --accent-bg: rgba(50, 109, 255, 0.1);
  --accent-hover: rgba(50, 109, 255, 0.2);
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 导航栏样式 */
.navbar {
  background: var(--bg-translucent) !important;
  border-bottom: 1px solid var(--border-color) !important;
  box-shadow: var(--shadow-sm) !important;
  transition: var(--transition);
}

/* 导航栏容器居中布局 */
.navbar .navbar__inner {
  width: 1440px !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 2rem !important;
}

/* 隐藏使用自定义页面布局的页面的默认导航栏 */
body[data-page-type="custom-layout"] .navbar,body:has(.custom-page) .navbar {
  display: none !important;
}

body[data-page-type="custom-layout"] .external-link,body:has(.custom-page) .external-link {
  display: block !important;
}


.navbar__items>a[href*="download"] {
  background: var(--primary-color) !important;
  color: white !important;
  margin-left: 1rem;
  position: relative;
  overflow: hidden;
  border-radius: 12px !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}

.navbar__items>a[href*="download"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
  transition: left 0.5s ease;
}

.navbar__items>a[href*="download"]:hover::before {
  left: 100%;
}

/* 响应式处理 */
@media (max-width: 1440px) {
  .navbar .navbar__inner {
    width: calc(100% - 4rem) !important;
    max-width: calc(100% - 4rem) !important;
  }
}

@media (max-width: 768px) {
  .navbar .navbar__inner {
    width: calc(100% - 2rem) !important;
    max-width: calc(100% - 2rem) !important;
    padding: 0 1rem !important;
  }
}

/* 导航栏链接样式 */
.navbar__link {
  font-weight: 500 !important;
  font-size: 0.875rem !important;
  color: var(--text-secondary) !important;
  transition: var(--transition) !important;
  border-radius: 0.5rem !important;
  padding: 0.5rem 1rem !important;
}

.navbar__link:hover,
.navbar__link--active {
  color: var(--primary-color) !important;
  background-color: var(--accent-bg) !important;
  -webkit-text-decoration: none !important;
  text-decoration: none !important;
}

/* 搜索框样式 */
.DocSearch-Button {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 0.75rem !important;
  box-shadow: var(--shadow-sm) !important;
  transition: var(--transition) !important;
  font-size: 0.875rem !important;
  color: var(--text-muted) !important;
  max-width: 320px;
}

.DocSearch-Button:hover {
  background: var(--accent-bg) !important;
  border-color: var(--primary-color) !important;
  box-shadow: var(--shadow-md) !important;
}

.DocSearch-Button-Placeholder {
  font-size: 0.875rem !important;
  color: var(--text-muted) !important;
}

.DocSearch-Button-Keys {
  display: flex;
  gap: 0.25rem;
}

.DocSearch-Button-Key {
  background: var(--bg-translucent) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 0.25rem !important;
  padding: 0.125rem 0.375rem !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  color: var(--text-secondary) !important;
}

/* 侧边栏样式优化 */
.theme-doc-sidebar-container {
  border-right: 1px solid var(--border-color) !important;
}

/* 侧边栏菜单项 */
.menu__link {
  font-size: 0.84rem !important;
  font-weight: 500 !important;
  color: var(--text-secondary) !important;
  border-radius: 0.2rem !important;
  padding: 0.2rem 0.75rem !important;
  transition: var(--transition) !important;
  margin: 0.125rem 0 !important;
  line-height: 18px;
}

.menu__link:hover {
  background-color: transparent !important;
  color: var(--primary-color) !important;
  -webkit-text-decoration: none !important;
  text-decoration: none !important;
}

.menu__link--active {
  background-color: transparent !important;
  color: var(--primary-color) !important;

}

/* 内容区域标题样式 */
.theme-doc-markdown h1 {
  font-size: 1.875rem !important;
  font-weight: 700 !important;
}

.theme-doc-markdown h2 {
  font-size: 1.5rem !important;
  font-weight: 600 !important;
}

.theme-doc-markdown h3 {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
}

/* 按钮样式 */
.button--primary {
  background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%) !important;
  border: none !important;
  border-radius: 0.5rem !important;
  transition: var(--transition) !important;
}

.button--primary:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
}

.button--secondary {
  background: transparent !important;
  border: 1px solid var(--border-color) !important;
  color: var(--text-secondary) !important;
  border-radius: 0.5rem !important;
  transition: var(--transition) !important;
}

.button--secondary:hover {
  background: var(--accent-bg) !important;
  border-color: var(--primary-color) !important;
  color: var(--primary-color) !important;
}

/* 卡片样式 */
.card {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 0.75rem !important;
  box-shadow: var(--shadow-sm) !important;
  transition: var(--transition) !important;
}

.card:hover {
  box-shadow: var(--shadow-md) !important;
  transform: translateY(-2px) !important;
}

/* 深色模式适配 */
[data-theme='dark'] {
  --text-secondary: #d1d5db;
  --text-muted: #9ca3af;
  --border-color: rgba(255, 255, 255, 0.1);
  --bg-translucent: rgba(0, 0, 0, 0.95);
  --accent-bg: rgba(50, 109, 255, 0.2);
  --accent-hover: rgba(50, 109, 255, 0.3);
}

/* 滚动条样式 */
.theme-doc-sidebar-container ::-webkit-scrollbar {
  width: 6px;
}

.theme-doc-sidebar-container ::-webkit-scrollbar-track {
  background: transparent;
}

.theme-doc-sidebar-container ::-webkit-scrollbar-thumb {
  background: var(--border-color);
  border-radius: 0.25rem;
}

.theme-doc-sidebar-container ::-webkit-scrollbar-thumb:hover {
  background: var(--text-muted);
}

/* 确保自定义页面不受影响 */
.custom-page,
.custom-page * {
  font-family: var(--font-primary) !important;
}

/* ===== 文档阅读体验优化 ===== */

/* 文档内容区域整体优化 - 固定宽度防止跳动 */
.theme-doc-markdown {
  line-height: 1.7 !important;
  color: #374151 !important;
  font-size: 14px !important;
  width: 800px !important;
  max-width: 800px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

/* 文档主容器固定宽度 */
.docMainContainer_gTbr {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  box-sizing: border-box !important;
}

/* 确保文档页面容器有固定的最小宽度 */
.main-wrapper:has(.theme-doc-sidebar-container) main.container {
  min-width: 900px !important;
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  flex: 1;
  display: flex !important;
  justify-content: center !important;
}

/* 防止内容溢出和布局跳动 */
.theme-doc-markdown * {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* 确保代码块不会超出容器宽度 */
.theme-doc-markdown pre {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  box-sizing: border-box !important;
}

/* 确保表格不会超出容器宽度 */
.theme-doc-markdown table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
  box-sizing: border-box !important;
}

/* 确保图片不会超出容器宽度 */
.theme-doc-markdown img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  box-sizing: border-box !important;
}

/* 段落间距优化 */
.theme-doc-markdown p {
  margin-bottom: 1.5rem !important;
  line-height: 1.75 !important;
}

/* 标题样式优化 */
.theme-doc-markdown h1 {
  font-size: 2.25rem !important;
  font-weight: 700 !important;
  margin-top: 0 !important;
  margin-bottom: 2rem !important;
  color: #111827 !important;
  padding-bottom: 0.75rem !important;
}

.theme-doc-markdown h2 {
  font-size: 1.75rem !important;
  font-weight: 600 !important;
  margin-top: 3rem !important;
  margin-bottom: 1.5rem !important;
  color: #1f2937 !important;
  position: relative !important;
  padding-left: 1.5rem !important;
}

.theme-doc-markdown h2::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.5rem !important;
  width: 4px !important;
  height: 1.5rem !important;
  background: linear-gradient(135deg, var(--primary-color), var(--primary-light)) !important;
  border-radius: 2px !important;
}

.theme-doc-markdown h3 {
  font-size: 1.375rem !important;
  font-weight: 600 !important;
  margin-top: 2.5rem !important;
  margin-bottom: 1rem !important;
  color: #374151 !important;
}

.theme-doc-markdown h4 {
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  margin-top: 2rem !important;
  margin-bottom: 0.75rem !important;
  color: #4b5563 !important;
}

/* 代码块样式优化 */
.theme-doc-markdown pre {
  background: #f8fafc !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 0.75rem !important;
  padding: 1.5rem !important;
  margin: 1.5rem 0 !important;
  box-shadow: var(--shadow-sm) !important;
  overflow-x: auto !important;
}

.theme-doc-markdown code {
  background: #f1f5f9 !important;
  color: #e11d48 !important;
  padding: 0.25rem 0.5rem !important;
  border-radius: 0.375rem !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  border: 1px solid #e2e8f0 !important;
}

.theme-doc-markdown pre code {
  background: transparent !important;
  color: inherit !important;
  padding: 0 !important;
  border: none !important;
  font-size: 0.875rem !important;
  font-weight: 400 !important;
}

/* 引用块样式 */
.theme-doc-markdown blockquote {
  background: linear-gradient(135deg, rgba(50, 109, 255, 0.05), rgba(142, 174, 255, 0.05)) !important;
  border-left: 4px solid var(--primary-color) !important;
  border-radius: 0 0.5rem 0.5rem 0 !important;
  padding: 1.5rem !important;
  margin: 1.5rem 0 !important;
  font-style: normal !important;
  position: relative !important;
}

.theme-doc-markdown blockquote::before {
  content: '"' !important;
  position: absolute !important;
  top: 0.5rem !important;
  left: 0.75rem !important;
  font-size: 2rem !important;
  color: var(--primary-color) !important;
  opacity: 0.3 !important;
  font-weight: bold !important;
}

.theme-doc-markdown blockquote p {
  margin: 0 !important;
  padding-left: 1rem !important;
  color: #4b5563 !important;
}

/* 列表样式优化 */
.theme-doc-markdown ul,
.theme-doc-markdown ol {
  margin: 1.5rem 0 !important;
  padding-left: 2rem !important;
}

.theme-doc-markdown li {
  margin-bottom: 0.75rem !important;
  line-height: 1.7 !important;
}

.theme-doc-markdown ul li::marker {
  color: var(--primary-color) !important;
}

.theme-doc-markdown ol li::marker {
  color: var(--primary-color) !important;
  font-weight: 600 !important;
}

/* 表格样式优化 */
.theme-doc-markdown table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 2rem 0 !important;
  background: white !important;
  border-radius: 0.75rem !important;
  overflow: hidden !important;
  box-shadow: var(--shadow-md) !important;
}

.theme-doc-markdown th {
  font-weight: 700 !important;
  padding: 1rem !important;
  text-align: left !important;
  font-size: 0.875rem !important;
  color: #111827 !important;
  border-bottom: 2px solid #e5e7eb !important;
}

.theme-doc-markdown td {
  padding: 1rem !important;
  border-bottom: 1px solid #f1f5f9 !important;
  color: #374151 !important;
}

.theme-doc-markdown tr:hover td {
  background: #f8fafc !important;
}

/* 链接样式优化 */
.theme-doc-markdown a {
  color: var(--primary-color) !important;
  -webkit-text-decoration: none !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  border-bottom: 1px solid transparent !important;
  transition: var(--transition) !important;
}

.theme-doc-markdown a:hover {
  color: var(--primary-light) !important;
  border-bottom-color: var(--primary-light) !important;
}

/* 图片样式优化 */
.theme-doc-markdown img {
  border-radius: 0.75rem !important;
  box-shadow: var(--shadow-lg) !important;
  margin: 2rem auto !important;
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
}

/* 分隔线样式 */
.theme-doc-markdown hr {
  border: none !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, var(--border-color), transparent) !important;
  margin: 3rem 0 !important;
}

/* 警告框和提示框样式 */
.theme-admonition {
  border-radius: 0.75rem !important;
  border: none !important;
  box-shadow: var(--shadow-sm) !important;
  margin: 1.5rem 0 !important;
  overflow: hidden !important;
}

.theme-admonition-heading {
  font-weight: 600 !important;
  margin-bottom: 0.5rem !important;
}

/* 目录导航优化 */
.table-of-contents {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 0.75rem !important;
  padding: 0.5rem !important;
  box-shadow: var(--shadow-sm) !important;
  position: sticky !important;
  top: 2rem !important;
  margin-left: 8px !important;
}

.table-of-contents__link {
  color: var(--text-secondary) !important;
  font-size: 0.84rem !important;
  line-height: 1.5 !important;
  padding: 0.25rem 0.25rem !important;
  border-radius: 0.375rem !important;
  transition: var(--transition) !important;
}

.table-of-contents__link:hover,
.table-of-contents__link--active {
  color: var(--primary-color) !important;
  background: var(--accent-bg) !important;
  -webkit-text-decoration: none !important;
  text-decoration: none !important;
}

/* 阅读进度指示器 */
.theme-doc-markdown::before {
  content: '' !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: var(--scroll-progress, 0%) !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--primary-color), var(--primary-light)) !important;
  z-index: 1000 !important;
  transition: width 0.1s ease !important;
}

/* 深色模式适配 */
[data-theme='dark'] .theme-doc-markdown {
  color: #d1d5db !important;
}

[data-theme='dark'] .theme-doc-markdown h1,
[data-theme='dark'] .theme-doc-markdown h2,
[data-theme='dark'] .theme-doc-markdown h3,
[data-theme='dark'] .theme-doc-markdown h4 {
  color: #f9fafb !important;
}

[data-theme='dark'] .theme-doc-markdown pre {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

[data-theme='dark'] .theme-doc-markdown code {
  background: #374151 !important;
  color: #fbbf24 !important;
  border-color: #4b5563 !important;
}

[data-theme='dark'] .theme-doc-markdown blockquote {
  background: linear-gradient(135deg, rgba(50, 109, 255, 0.1), rgba(142, 174, 255, 0.1)) !important;
}

[data-theme='dark'] .theme-doc-markdown table {
  background: #1f2937 !important;
}

[data-theme='dark'] .theme-doc-markdown th {
  color: #f9fafb !important;
  border-bottom-color: #4b5563 !important;
}

[data-theme='dark'] .theme-doc-markdown td {
  border-bottom-color: #374151 !important;
  color: #d1d5db !important;
}

[data-theme='dark'] .theme-doc-markdown tr:hover td {
  background: #374151 !important;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .DocSearch-Button {
    max-width: 200px;
  }

  .menu__link {
    padding: 0.75rem 1rem !important;
  }

  .theme-doc-markdown {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 14px !important;
    padding: 0 1rem !important;
    margin: 0 !important;
  }

  .theme-doc-markdown h1 {
    font-size: 1.875rem !important;
  }

  .theme-doc-markdown h2 {
    font-size: 1.5rem !important;
    margin-top: 2rem !important;
    padding-left: 1.25rem !important;
  }

  .theme-doc-markdown h2::before {
    left: 0 !important;
  }

  .theme-doc-markdown pre {
    padding: 1rem !important;
    margin: 1rem 0 !important;
  }

  .theme-doc-markdown table {
    font-size: 0.875rem !important;
  }

  .theme-doc-markdown th,
  .theme-doc-markdown td {
    padding: 0.75rem !important;
  }
}

@media (max-width: 480px) {
  .DocSearch-Button {
    max-width: 150px;
  }

  .DocSearch-Button-Placeholder {
    display: none;
  }

  .theme-doc-markdown {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 14px !important;
    margin: 0 !important;
  }

  .theme-doc-markdown h1 {
    font-size: 1.625rem !important;
  }

  .theme-doc-markdown h2 {
    font-size: 1.375rem !important;
  }

  .theme-doc-markdown th,
  .theme-doc-markdown td {
    padding: 0.5rem !important;
  }
}

.menu__list-item:not(:first-child){
  margin-top: 0;
}

.table-of-contents li{
  margin: 0;
}

/* 下划线文本样式 (支持 ++text++ 语法) */
.theme-doc-markdown ins {
  -webkit-text-decoration: underline !important;
  text-decoration: underline !important;
  text-decoration-color: var(--primary-color) !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 2px !important;
  font-weight: 500 !important;
}

/* 引入 Footer 样式 */

@layer docusaurus.core {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

#__docusaurus-base-url-issue-banner-container {
  display: none;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.skipToContent_A0sM {
  position: fixed;
  top: 1rem;
  left: 100%;
  z-index: calc(var(--ifm-z-index-fixed) + 1);
  padding: calc(var(--ifm-global-spacing) / 2) var(--ifm-global-spacing);
  color: var(--ifm-color-emphasis-900);
  background-color: var(--ifm-background-surface-color);
}

.skipToContent_A0sM:focus {
  left: 1rem;
  box-shadow: var(--ifm-global-shadow-md);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.closeButton_krQD {
  padding: 0;
  line-height: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.content_CsSa {
  font-size: 85%;
  text-align: center;
  padding: 5px 0;
}

.content_CsSa a {
  color: inherit;
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --docusaurus-announcement-bar-height: auto;
}

.announcementBar_U8b6 {
  display: flex;
  align-items: center;
  height: var(--docusaurus-announcement-bar-height);
  background-color: var(--ifm-color-white);
  color: var(--ifm-color-black);

  /*
  Unfortunately we can't make announcement bar render above the navbar
  IE need to use border-bottom instead of shadow
  See https://github.com/facebookincubator/infima/issues/275

  box-shadow: var(--ifm-global-shadow-lw);
  z-index: calc(var(--ifm-z-index-fixed) + 1);
  */
  border-bottom: 1px solid var(--ifm-color-emphasis-100);
}

html[data-announcement-bar-initially-dismissed='true'] .announcementBar_U8b6 {
  display: none;
}

.announcementBarPlaceholder_Eeyy {
  flex: 0 0 10px;
}

.announcementBarClose_wEhZ {
  flex: 0 0 30px;
  align-self: stretch;
}

.announcementBarContent_Wlj6 {
  flex: 1 1 auto;
}

@media print {
  .announcementBar_U8b6 {
    display: none;
  }
}

@media (min-width: 997px) {
  :root {
    --docusaurus-announcement-bar-height: 30px;
  }

  .announcementBarPlaceholder_Eeyy,
  .announcementBarClose_wEhZ {
    flex-basis: 50px;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.toggle_BRE1 {
  width: 2rem;
  height: 2rem;
}

.toggleButton_vHg4 {
  -webkit-tap-highlight-color: transparent;
  align-items: center;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transition: background var(--ifm-transition-fast);
}

.toggleButton_vHg4:hover {
  background: var(--ifm-color-emphasis-200);
}

.toggleIcon_PJgF {
  display: none;
}

[data-theme-choice='system'] .systemToggleIcon_TwAX,
[data-theme-choice='light'] .lightToggleIcon_Ojb_,
[data-theme-choice='dark'] .darkToggleIcon_ozqd {
  display: initial;
}

.toggleButtonDisabled_Fafh {
  cursor: not-allowed;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.darkNavbarColorModeToggle_aqnx:hover {
  background: var(--ifm-color-gray-800);
}
}

@layer docusaurus.theme-common {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.themedComponent_uh6P {
  display: none;
}

[data-theme='light'] .themedComponent--light_Uzvm {
  display: initial;
}

[data-theme='dark'] .themedComponent--dark_Lzzf {
  display: initial;
}

/*
JS disabled??? Show light version by default => better than showing nothing
TODO bad, but we currently always show light mode when there's no data-theme
 */
html:not([data-theme]) .themedComponent--light_Uzvm {
  display: initial;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.iconExternalLink_BhS4 {
  margin-left: 0.3rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.dropdownNavbarItemMobile_oGRa {
  cursor: pointer;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.iconLanguage_sBCE {
  vertical-align: text-bottom;
  margin-right: 5px;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/*
Workaround to avoid rendering empty search container
See https://github.com/facebook/docusaurus/pull/9385
*/
.navbarSearchContainer_WIFP:empty {
  display: none;
}

@media (max-width: 996px) {
  .navbarSearchContainer_WIFP {
    position: absolute;
    right: var(--ifm-navbar-padding-horizontal);
  }
}

@media (min-width: 997px) {
  .navbarSearchContainer_WIFP {
    padding: 0 var(--ifm-navbar-item-padding-horizontal);
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.navbarHideable_lRQc {
  transition: transform var(--ifm-transition-fast) ease;
}

.navbarHidden_aisC {
  transform: translate3d(0, calc(-100% - 2px), 0);
}
}

@layer docusaurus.theme-common {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.errorBoundaryError_ZJ4r {
  white-space: pre-wrap;
  color: red;
}

.errorBoundaryFallback_SOT5 {
  color: red;
  padding: 0.55rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/*
Hide color mode toggle in small viewports
 */
@media (max-width: 996px) {
  .colorModeToggle_YBgG {
    display: none;
  }
}

/*
Restore some Infima style that broke with CSS Cascade Layers
See https://github.com/facebook/docusaurus/pull/11142
 */
.navbar__items--right > :last-child {
  padding-right: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.footerLogoLink_oO7J {
  opacity: 0.5;
  transition: opacity var(--ifm-transition-fast)
    var(--ifm-transition-timing-default);
}

.footerLogoLink_oO7J:hover {
  opacity: 1;
}
}

@layer docusaurus.theme-common {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.anchorTargetStickyNavbar_LGDi {
  scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
}

.anchorTargetHideOnScrollNavbar_nfEA {
  scroll-margin-top: 0.5rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.hash-link {
  opacity: 0;
  padding-left: 0.5rem;
  transition: opacity var(--ifm-transition-fast);
  -webkit-user-select: none;
          user-select: none;
}

.hash-link::before {
  content: '#';
}

.hash-link:focus,
*:hover > .hash-link {
  opacity: 1;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

html,
body {
  height: 100%;
}

.mainWrapper_Pahq {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

/* Docusaurus-specific utility class */
.docusaurus-mt-lg {
  margin-top: 3rem;
}

#__docusaurus {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.sidebar_ZFeB {
  max-height: calc(100vh - (var(--ifm-navbar-height) + 2rem));
  overflow-y: auto;
  position: sticky;
  top: calc(var(--ifm-navbar-height) + 2rem);
}

.sidebarItemTitle_woZn {
  font-size: var(--ifm-h3-font-size);
  font-weight: var(--ifm-font-weight-bold);
}

.sidebarItemList_GwaR {
  font-size: 0.9rem;
}

.sidebarItem_mzB4 {
  margin-top: 0.7rem;
}

.sidebarItemLink_EMFg {
  color: var(--ifm-font-color-base);
  display: block;
}

.sidebarItemLink_EMFg:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
}

.sidebarItemLinkActive_Mo7k {
  color: var(--ifm-color-primary) !important;
}

@media (max-width: 996px) {
  .sidebar_ZFeB {
    display: none;
  }
}

.yearGroupHeading_xn5_ {
  margin-top: 1.6rem;
  margin-bottom: 0.4rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.yearGroupHeading_Nk5y {
  margin: 1rem 0.75rem 0.5rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --docusaurus-tag-list-border: var(--ifm-color-emphasis-300);
}

.tag_GBxg {
  border: 1px solid var(--docusaurus-tag-list-border);
  transition: border var(--ifm-transition-fast);
}

.tag_GBxg:hover {
  --docusaurus-tag-list-border: var(--ifm-link-color);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.tagRegular__hJo {
  border-radius: var(--ifm-global-radius);
  padding: 0.2rem 0.5rem 0.3rem;
  font-size: 90%;
}

.tagWithCount_K1kS {
  display: flex;
  align-items: center;
  position: relative;
  padding: 0 0.5rem 0 1rem;
  border-left: 0;
}

.tagWithCount_K1kS::before,
.tagWithCount_K1kS::after {
  content: '';
  position: absolute;
  top: 50%;
  border: 1px solid var(--docusaurus-tag-list-border);
  transition: inherit;
}

.tagWithCount_K1kS::before {
  right: 100%;
  transform: translate(50%, -50%) rotate(-45deg);
  width: 1.18rem;
  height: 1.18rem;
  border-right: 0;
  border-bottom: 0;
}

.tagWithCount_K1kS::after {
  left: 0;
  transform: translateY(-50%);
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}

.tagWithCount_K1kS span {
  background: var(--ifm-color-secondary);
  color: var(--ifm-color-black);
  font-size: 0.7rem;
  line-height: 1.2;
  border-radius: var(--ifm-global-radius);
  padding: 0.1rem 0.4rem;
  margin-left: 0.3rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tag_znAu {
  display: inline-block;
  margin: 0.5rem 0.5rem 0 1rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tabList_xtU6 {
  margin-bottom: var(--ifm-leading);
}

.tabItem_TCQn {
  margin-top: 0 !important;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tabItem_iTxZ > *:last-child {
  margin-bottom: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.cardTitleIcon_umlT {
  font-size: 1.6rem;
  margin-right: 0.6rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.cardTitleText_kO4n {
  font-size: 1.2rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.cardTitle_QitJ {
  display: inline-flex;
  align-items: center;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.cardDescription_ECkj {
  font-size: 0.8rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.cardContainer_Z3xz {
  --ifm-link-color: var(--ifm-color-emphasis-800);
  --ifm-link-hover-color: var(--ifm-color-emphasis-700);
  --ifm-link-hover-decoration: none;

  box-shadow: 0 1.5px 3px 0 rgb(0 0 0 / 15%);
  border: 1px solid var(--ifm-color-emphasis-200);
  transition: all var(--ifm-transition-fast) ease;
  transition-property: border, box-shadow;
}

.cardContainer_Z3xz:hover {
  border-color: var(--ifm-color-primary);
  box-shadow: 0 3px 6px 0 rgb(0 0 0 / 20%);
}

.cardContainer_Z3xz *:last-child {
  margin-bottom: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.docCardListItem_SaTA {
  margin-bottom: 2rem;
}

.docCardListItem_SaTA > * {
  height: 100%;
}
}

.card_CNbe {
  border-radius: 6px;
  padding: 16px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
  border: 1px solid #f0f0f0;
  margin-bottom: 16px;
  background: #fff;
  transition: box-shadow 0.2s ease-in-out;
}

.card_CNbe:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.cardTitle_hkBp {
  margin: 0 0 8px 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  color: #1a1a1a;
}

.cardTitleLink_YZ2N {
  color: #1a1a1a;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease-in-out;
}

.cardTitleLink_YZ2N:hover {
  color: #1976d2;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.cardDescription_kP5l {
  margin: 0 0 12px 0;
  color: #333;
  line-height: 1.4;
  font-size: 13px;
}

.cardContent_M6LS {
  font-size: 13px;
  color: #555;
}

.linkGrid_jNKA {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 2px 12px;
  margin-top: 0;
}

.linkItem_gy5s {
  display: block;
}

.linkItem_gy5s a {
  color: #1976d2;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease-in-out;
  font-size: 13px;
  display: block;
  padding: 1px 0;
  line-height: 1.4;
}

.linkItem_gy5s a:hover {
  color: #1565c0;
  -webkit-text-decoration: none;
  text-decoration: none;
}

@layer docusaurus.theme-search-algolia {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.searchQueryInput_iobG,
.searchVersionInput_QKh4 {
  border-radius: var(--ifm-global-radius);
  border: 2px solid var(--ifm-toc-border-color);
  font: var(--ifm-font-size-base) var(--ifm-font-family-base);
  padding: 0.8rem;
  width: 100%;
  background: var(--docsearch-searchbox-focus-background);
  color: var(--docsearch-text-color);
  margin-bottom: 0.5rem;
  transition: border var(--ifm-transition-fast) ease;
}

.searchQueryInput_iobG:focus,
.searchVersionInput_QKh4:focus {
  border-color: var(--docsearch-primary-color);
  outline: none;
}

.searchQueryInput_iobG::placeholder {
  color: var(--docsearch-muted-color);
}

.searchResultsColumn_dbfp {
  font-size: 0.9rem;
  font-weight: bold;
}

.searchLogoColumn_Oag7 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: flex-end;
}

.searchLogoColumn_Oag7 a {
  display: flex;
}

.searchLogoColumn_Oag7 span {
  color: var(--docsearch-muted-color);
  font-weight: normal;
}

.searchResultItem_GGGC {
  padding: 1rem 0;
  border-bottom: 1px solid var(--ifm-toc-border-color);
}

.searchResultItemHeading_kNKr {
  font-weight: 400;
  margin-bottom: 0;
}

.searchResultItemPath_G_Iu {
  font-size: 0.8rem;
  color: var(--ifm-color-content-secondary);
  --ifm-breadcrumb-separator-size-multiplier: 1;
}

.searchResultItemSummary_yJtr {
  margin: 0.5rem 0 0;
  font-style: italic;
}

@media only screen and (max-width: 996px) {
  .searchQueryColumn_S0bB {
    max-width: 60% !important;
  }

  .searchVersionColumn_ZFB8 {
    max-width: 40% !important;
  }

  .searchResultsColumn_dbfp {
    max-width: 60% !important;
  }

  .searchLogoColumn_Oag7 {
    max-width: 40% !important;
    padding-left: 0 !important;
  }
}

@media screen and (max-width: 576px) {
  .searchQueryColumn_S0bB {
    max-width: 100% !important;
  }

  .searchVersionColumn_ZFB8 {
    max-width: 100% !important;
    padding-left: var(--ifm-spacing-horizontal) !important;
  }
}

.loadingSpinner_KgVK {
  width: 3rem;
  height: 3rem;
  border: 0.4em solid #eee;
  border-top-color: var(--ifm-color-primary);
  border-radius: 50%;
  animation: loading-spin_GWkm 1s linear infinite;
  margin: 0 auto;
}

@keyframes loading-spin_GWkm {
  100% {
    transform: rotate(360deg);
  }
}

.loader_fbwL {
  margin-top: 2rem;
}

.search-result-match {
  color: var(--docsearch-hit-color);
  background: rgb(255 215 142 / 25%);
  padding: 0.09em 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.title_VJ6v {
  font-size: 3rem;
}

/**
  Blog post title should be smaller on smaller devices
**/
@media (max-width: 576px) {
  .title_VJ6v {
    font-size: 2rem;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.container_KEcZ {
  font-size: 0.9rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .githubSvg_yKod {
  fill: var(--light);
}

[data-theme='light'] .githubSvg_yKod {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .xSvg_OiiR {
  fill: var(--light);
}

[data-theme='light'] .xSvg_OiiR {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .linkedinSvg_FT_X {
  fill: var(--light);
}

[data-theme='light'] .linkedinSvg_FT_X {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .blueskySvg_fjNc {
  fill: var(--light);
}

[data-theme='light'] .blueskySvg_fjNc {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .instagramSvg_cRr8 {
  fill: var(--light);
}

[data-theme='light'] .instagramSvg_cRr8 {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

[data-theme='dark'] .threadsSvg_tGS2 {
  fill: var(--light);
}

[data-theme='light'] .threadsSvg_tGS2 {
  fill: var(--dark);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --docusaurus-blog-social-icon-size: 1rem;
}

.authorSocials_a4gi {
  /*
  This ensures that container takes height even if there's no social link
  This keeps author names aligned even if only some have socials
   */
  height: var(--docusaurus-blog-social-icon-size);

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 0;
  overflow: hidden;
  line-clamp: 1;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.authorSocialLink_NvsN {
  height: var(--docusaurus-blog-social-icon-size);
  width: var(--docusaurus-blog-social-icon-size);
  line-height: 0;
  margin-right: 0.4rem;
}

.authorSocialIcon_xsCr {
  width: var(--docusaurus-blog-social-icon-size);
  height: var(--docusaurus-blog-social-icon-size);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.authorImage_a25F {
  --ifm-avatar-photo-size: 3.6rem;
}

.author-as-h1_jsnf .authorImage_a25F {
  --ifm-avatar-photo-size: 7rem;
}

.author-as-h2_g6RD .authorImage_a25F {
  --ifm-avatar-photo-size: 5.4rem;
}

.authorDetails_d1kK {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-around;
}

.authorName_aQad {
  font-size: 1.1rem;
  line-height: 1.1rem;
  display: flex;
  flex-direction: row;
}

.author-as-h1_jsnf .authorName_aQad {
  font-size: 2.4rem;
  line-height: 2.4rem;
  display: inline;
}

.author-as-h2_g6RD .authorName_aQad {
  font-size: 1.4rem;
  line-height: 1.4rem;
  display: inline;
}

.authorTitle_csU2 {
  font-size: 0.8rem;
  line-height: 1rem;
  display: -webkit-box;
  overflow: hidden;
  line-clamp: 1;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.author-as-h1_jsnf .authorTitle_csU2 {
  font-size: 1.2rem;
  line-height: 1.6rem;
}

.author-as-h2_g6RD .authorTitle_csU2 {
  font-size: 1rem;
  line-height: 1.3rem;
}

.authorBlogPostCount_kUEL {
  background: var(--ifm-color-secondary);
  color: var(--ifm-color-black);
  font-size: 0.8rem;
  line-height: 1.2;
  border-radius: var(--ifm-global-radius);
  padding: 0.1rem 0.4rem;
  margin-left: 0.3rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.authorCol_MT12 {
  max-width: inherit !important;
}

.imageOnlyAuthorRow_fRNX {
  display: flex;
  flex-flow: row wrap;
}

.imageOnlyAuthorCol_EQIU {
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.authorListItem_DP3G {
  list-style-type: none;
  margin-bottom: 2rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.backToTopButton_b9rS {
  position: fixed;
  right: 1.3rem;
  bottom: 1.3rem;
  border-radius: 50%;
  background-color: var(--ifm-color-emphasis-200);
  width: 3rem;
  height: 3rem;
  z-index: calc(var(--ifm-z-index-fixed) - 1);
  box-shadow: var(--ifm-global-shadow-lw);
  transition: all var(--ifm-transition-fast)
    var(--ifm-transition-timing-default);
  opacity: 0;
  transform: scale(0);
  visibility: hidden;
}

.backToTopButton_b9rS::after {
  content: ' ';
  display: inline-block;
  -webkit-mask: var(--ifm-menu-link-sublist-icon) 50% / 2rem 2rem no-repeat;
          mask: var(--ifm-menu-link-sublist-icon) 50% / 2rem 2rem no-repeat;
  background-color: var(--ifm-color-emphasis-1000);
  width: 100%;
  height: 100%;
}

@media (hover: hover) {
  .backToTopButton_b9rS:hover {
    background-color: var(--ifm-color-emphasis-300);
  }
}

.backToTopButtonShow_pXZL {
  opacity: 1;
  transform: scale(1);
  visibility: visible;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --docusaurus-collapse-button-bg: transparent;
  --docusaurus-collapse-button-bg-hover: rgb(0 0 0 / 10%);
}

[data-theme='dark']:root {
  --docusaurus-collapse-button-bg: rgb(255 255 255 / 5%);
  --docusaurus-collapse-button-bg-hover: rgb(255 255 255 / 10%);
}

@media (min-width: 997px) {
  .collapseSidebarButton_hylu {
    display: block !important;
    background-color: var(--docusaurus-collapse-button-bg);
    height: 40px;
    position: sticky;
    bottom: 0;
    border-radius: 0;
    border: 1px solid var(--ifm-toc-border-color);
  }

  .collapseSidebarButtonIcon_Fyy4 {
    transform: rotate(180deg);
    margin-top: 4px;
  }

  [dir='rtl'] .collapseSidebarButtonIcon_Fyy4 {
    transform: rotate(0);
  }

  .collapseSidebarButton_hylu:hover,
  .collapseSidebarButton_hylu:focus {
    background-color: var(--docusaurus-collapse-button-bg-hover);
  }
}

.collapseSidebarButton_hylu {
  display: none;
  margin: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.menuExternalLink_hRpM {
  align-items: center;
}

.linkLabel_M_3k {
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.categoryLink_M7cC {
  overflow: hidden;
}

/*
TODO merge this logic back in Infima?
 */
.menu__link--sublist-caret::after {
  margin-left: var(--ifm-menu-link-padding-vertical);
}

.categoryLinkLabel_xn1s {
  flex: 1;
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  .menuHtmlItem_GCWl {
    padding: var(--ifm-menu-link-padding-vertical)
      var(--ifm-menu-link-padding-horizontal);
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  .menu_l698 {
    flex-grow: 1;
    padding: 0.5rem;
  }
  @supports (scrollbar-gutter: stable) {
    .menu_l698 {
      padding: 0.5rem 0 0.5rem 0.5rem;
      scrollbar-gutter: stable;
    }
  }

  .menuWithAnnouncementBar_dtI1 {
    margin-bottom: var(--docusaurus-announcement-bar-height);
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  .sidebar_pXuU {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-top: var(--ifm-navbar-height);
    width: var(--doc-sidebar-width);
  }

  .sidebarWithHideableNavbar_vdlt {
    padding-top: 0;
  }

  .sidebarHidden_soHH {
    opacity: 0;
    visibility: hidden;
  }

  .sidebarLogo_Ygj2 {
    display: flex !important;
    align-items: center;
    margin: 0 var(--ifm-navbar-padding-horizontal);
    min-height: var(--ifm-navbar-height);
    max-height: var(--ifm-navbar-height);
    color: inherit !important;
    -webkit-text-decoration: none !important;
    text-decoration: none !important;
  }

  .sidebarLogo_Ygj2 img {
    margin-right: 0.5rem;
    height: 2rem;
  }
}

.sidebarLogo_Ygj2 {
  display: none;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  .expandButton__eY7 {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color var(--ifm-transition-fast) ease;
    background-color: var(--docusaurus-collapse-button-bg);
  }

  .expandButton__eY7:hover,
  .expandButton__eY7:focus {
    background-color: var(--docusaurus-collapse-button-bg-hover);
  }

  .expandButtonIcon_V4Dc {
    transform: rotate(0);
  }

  [dir='rtl'] .expandButtonIcon_V4Dc {
    transform: rotate(180deg);
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --doc-sidebar-width: 300px;
  --doc-sidebar-hidden-width: 30px;
}

.docSidebarContainer_n4cP {
  display: none;
}

@media (min-width: 997px) {
  .docSidebarContainer_n4cP {
    display: block;
    width: var(--doc-sidebar-width);
    margin-top: calc(-1 * var(--ifm-navbar-height));
    border-right: 1px solid var(--ifm-toc-border-color);
    will-change: width;
    transition: width var(--ifm-transition-fast) ease;
    clip-path: inset(0);
  }

  .docSidebarContainerHidden_YE4H {
    width: var(--doc-sidebar-hidden-width);
    cursor: pointer;
  }

  .sidebarViewport_qp5H {
    top: 0;
    position: sticky;
    height: 100%;
    max-height: 100vh;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.docMainContainer_q0r2 {
  display: flex;
  width: 100%;
}

@media (min-width: 997px) {
  .docMainContainer_q0r2 {
    flex-grow: 1;
    max-width: calc(100% - var(--doc-sidebar-width));
  }

  .docMainContainerEnhanced_gdwh {
    max-width: calc(100% - var(--doc-sidebar-hidden-width));
  }

  .docItemWrapperEnhanced_crk6 {
    max-width: calc(
      var(--ifm-container-width) + var(--doc-sidebar-width)
    ) !important;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.docRoot_QYn2 {
  display: flex;
  width: 100%;
}

.docsWrapper_fDli {
  display: flex;
  flex: 1 0 auto;
}
}

.container_ntAq {
  min-height: 80vh;
  display: flex;
  flex-direction: column;
}

.content_xqf2 {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}

.errorContainer_Monv {
  text-align: center;
  width: 100%;
}

.errorMessage_HltO {
  font-size: 2.5rem;
  font-weight: 600;
  color: var(--text-color);
  margin: 0 0 1.5rem 0;
}

.errorDescription_Ryk9 {
  font-size: 1.2rem;
  color: var(--text-color);
  margin: 0 0 3rem 0;
  line-height: 1.6;
}

.homeLink_zmQe {
  color: var(--primary-color);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-size: 1.1rem;
  font-weight: 500;
  transition: color 0.3s ease;
}

.homeLink_zmQe:hover {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .content_xqf2 {
    padding: 1rem;
  }
  
  .errorContainer_Monv {
    max-width: 100%;
  }
  
  .errorMessage_HltO {
    font-size: 2rem;
  }
  
  .errorDescription_Ryk9 {
    font-size: 1.1rem;
    margin: 0 0 2rem 0;
  }
  
  .homeLink_zmQe {
    font-size: 1rem;
  }
}

@layer docusaurus.theme-search-algolia.docsearch{/*! @docsearch/css 4.4.0 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */
:root{--docsearch-primary-color:#003dff;--docsearch-soft-primary-color:rgba(0,61,255,.1);--docsearch-subtle-color:#d6d6e7;--docsearch-text-color:#36395a;--docsearch-error-color:#ef5350;--docsearch-success-color:#e8f5e9;--docsearch-secondary-text-color:#5a5e9a;--docsearch-background-color:#f5f5fa;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-focus-color:#005fcc;--docsearch-highlight-color:#003dff;--docsearch-muted-color:#9698c3;--docsearch-muted-color-darker:rgba(120,122,165,.25);--docsearch-icon-color:#5a5e9a;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#003dff;--docsearch-border-radius:4px;--docsearch-search-button-background:#fff;--docsearch-search-button-text-color:var(--docsearch-secondary-text-color);--docsearch-modal-width:800px;--docsearch-modal-height:600px;--docsearch-modal-variable-height:60dvh;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:rgba(0,0,0,.2) 0px 12px 28px 0px,rgba(0,0,0,.1) 0px 2px 4px 0px,hsla(0,0%,100%,.05) 0px 0px 0px 1px inset;--docsearch-searchbox-height:56px;--docsearch-searchbox-initial-height:56px;--docsearch-searchbox-background:#ffffffa6;--docsearch-searchbox-focus-background:#ffffffa6;--docsearch-actions-width:99px;--docsearch-actions-height:44px;--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-highlight-color:rgba(0,61,255,.1);--docsearch-hit-background:#fff;--docsearch-key-background:#f5f5fa;--docsearch-key-color:#5a5e9a;--docsearch-key-pressed-shadow:inset 0 2px 4px rgba(120,122,165,.25);--docsearch-footer-height:52px;--docsearch-footer-background:#ffffffa6;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12);--fav-out-dur:160ms;--del-dur:150ms;--ease-smooth:cubic-bezier(0.25,0.8,0.4,1);--ease-fast:cubic-bezier(0.45,0.15,0.6,0.9);--shadow-pop:0 4px 12px rgba(0,0,0,.06);--shimmer-bg:linear-gradient(90deg,#e0e3e8 0%,var(--docsearch-muted-color) 20%,var(--docsearch-muted-color) 60%,#e0e3e8 95%);--docsearch-dropdown-menu-background:var(--docsearch-hit-background);--docsearch-dropdown-menu-item-hover-background:var(--docsearch-modal-background)}html[data-theme=dark]{--docsearch-text-color:#c4c7dc;--docsearch-secondary-text-color:#b6b7d5;--docsearch-subtle-color:#212139;--docsearch-error-color:#ef5350;--docsearch-success-color:rgba(67,160,71,.2);--docsearch-highlight-color:#457aff;--docsearch-focus-color:#9ac8ff;--docsearch-background-color:#36395a;--docsearch-icon-color:#b6b7d5;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#000000a6;--docsearch-searchbox-focus-background:#000000a6;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-background:#36395a;--docsearch-key-color:#b6b7d5;--docsearch-key-pressed-shadow:inset 0 2px 4px rgba(12,13,20,.4);--docsearch-footer-background:#000000a6;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497;--shimmer-bg:linear-gradient(90deg,#e0e3e8 0%,var(--docsearch-muted-color) 20%,var(--docsearch-muted-color) 60%,#e0e3e8 95%);--docsearch-dropdown-menu-background:var(--docsearch-hit-background);--docsearch-dropdown-menu-item-hover-background:var(--docsearch-modal-background);--docsearch-search-button-background:var(--docsearch-modal-background);--docsearch-search-button-text-color:var(--docsearch-text-color)}.DocSearch-Button{all:unset;align-items:center;background-color:var(--docsearch-search-button-background);border:1px solid var(--docsearch-subtle-color);border-radius:4px;color:var(--docsearch-search-button-text-color);cursor:pointer;display:flex;height:36px;justify-content:space-between;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button-Container{align-items:center;display:flex;height:100%}.DocSearch-Button-Container svg{color:currentColor}.DocSearch-Back-Icon,.DocSearch-Search-Icon{color:var(--docsearch-highlight-color);stroke-width:1.6}.DocSearch-Button-Placeholder{color:currentColor;display:inline-block;font-size:1rem;line-height:normal;padding-block:0;padding-inline:8px 12px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-background);border:0;border-radius:4px;box-shadow:none!important;color:var(--docsearch-key-color);display:flex;font-size:14px;height:24px;justify-content:center;position:relative;transition-duration:.1s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:24px}@supports (color: color-mix(in lch, red, blue)){
.DocSearch-Button-Key{border:1px solid color-mix(in srgb,var(--docsearch-subtle-color) 20%,transparent)}
}.DocSearch-Button-Key--ctrl{width:33px}.DocSearch-Button-Key:first-child{margin-inline-end:.4em}@media (prefers-reduced-motion){.DocSearch-Button-Key{transition:none}}.DocSearch-Button-Key--pressed{box-shadow:var(--docsearch-key-pressed-shadow)!important;transform:translateY(1px)}@media (max-width:768px){.DocSearch-Button{width:auto}.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{backdrop-filter:blur(4px);background-color:var(--docsearch-container-background);height:100vh;inset-block-start:0;inset-inline-start:0;position:fixed;width:100vw;z-index:400}.DocSearch-Container a{-webkit-text-decoration:none;text-decoration:none}.DocSearch-Link{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:4px;box-shadow:var(--docsearch-modal-shadow);display:flex;flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex}.DocSearch-SearchBar-Magnifier{color:var(--docsearch-highlight-color)}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-block-end:1px solid var(--docsearch-subtle-color);border-radius:4px 4px 0 0;display:flex;height:var(
    --docsearch-searchbox-height,var(--docsearch-searchbox-initial-height)
  );margin:0;min-height:var(--docsearch-searchbox-initial-height);padding-block:var(--docsearch-spacing);padding-inline:16px;position:relative;width:100%}.DocSearch-Input,.DocSearch-Modal-heading{appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;font-weight:300;height:100%;line-height:1.4;outline:none;overflow-y:hidden;padding-block-start:4px;padding-inline-start:8px;resize:none;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-Actions{align-items:center;display:flex;gap:8px;height:var(--docsearch-actions-height);justify-content:flex-end;padding:0 2px;width:var(--docsearch-actions-width)}.DocSearch-Divider{border-inline-start:1px solid var(--docsearch-subtle-color);height:16px}.DocSearch-Action{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center;min-height:24px;min-width:24px}.DocSearch-Action,.DocSearch-AskAi-Return,.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel{margin:0;padding:0}.DocSearch-AskAi-Return{cursor:pointer}.DocSearch-AskAi-Return,.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Action{animation:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;inset-inline-end:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Action,.DocSearch-AskAi-Return{animation:fade-in .1s ease-in forwards;appearance:none;background:none;border:none;border-radius:var(--docsearch-border-radius);color:var(--docsearch-icon-color);cursor:pointer;inset-inline-end:0;padding:2px;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-AskAi-Return[hidden],.DocSearch-Close[hidden],.DocSearch-Input[hidden],.DocSearch-StreamingIndicator[hidden]{display:none}.DocSearch-Action:hover,.DocSearch-AskAi-Return:hover{background:var(--docsearch-soft-primary-color);color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{color:var(--docsearch-icon-color);height:24px;width:24px}.DocSearch-Form:focus-within .DocSearch-MagnifierLabel svg{color:var(--docsearch-highlight-color)}.DocSearch-Clear{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;flex:none;font:inherit;font-size:.9em;font-weight:300;height:28px;margin-inline-start:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Clear:focus-visible,.DocSearch-Close:focus-visible{border-radius:4px;outline:2px solid var(--docsearch-focus-color);outline-offset:1px}.DocSearch-Dropdown{height:var(--docsearch-modal-variable-height);max-height:calc(var(--docsearch-modal-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown-Container ul{list-style:none;margin:0;padding:0}.DocSearch-Label{color:var(--docsearch-secondary-text-color);font-size:.875em;font-weight:400;line-height:1.6em}.DocSearch-Help,.DocSearch-NoResults-Help{color:var(--docsearch-secondary-text-color);font-size:.8em;font-weight:300;line-height:1.5em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{color:var(--docsearch-text-color);font-size:1.1em;font-weight:300;line-height:.5em;vertical-align:middle}.DocSearch-Title strong{font-weight:500}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-inline-start:8px}.DocSearch-Hits:last-of-type{margin-block-end:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-block-end:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-block-end:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-block-end:4px;position:relative;scroll-margin-block-start:40px}.DocSearch-Hit:first-of-type{margin-block-start:4px}.DocSearch-Hit a,.DocSearch-Hit--AskAI{background:var(--docsearch-hit-background);border-radius:4px;cursor:pointer;display:block;padding-inline-start:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-text-color);font-size:.9em;font-weight:600;inset-block-start:0;line-height:32px;margin:0 -4px;padding:8px 4px 4px;position:sticky;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit--AskAI,.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-hit-highlight-color)}.DocSearch-Conversation-History .DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-hit-background)}.DocSearch-Hit mark{color:var(--docsearch-highlight-color);-webkit-text-decoration:underline;text-decoration:underline;text-underline-offset:.3em}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-text-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{color:var(--docsearch-secondary-text-color);height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;color:var(--docsearch-muted-color);display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-inline-start:6px}.DocSearch-Hit-action-button{appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:background-color .1s ease-in}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:400;gap:4px;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-secondary-text-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title{color:var(--docsearch-text-color)}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-highlight-color)}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:none}}.DocSearch-AskAiScreen,.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{align-items:center;color:var(--docsearch-secondary-text-color);display:flex;flex-direction:column;font-size:1.25em;font-weight:400;justify-content:center;margin:0 auto;text-align:center;width:80%}.DocSearch-AskAiScreen,.DocSearch-ErrorScreen,.DocSearch-NoResults{max-height:80%}.DocSearch-StartScreen{height:100%}.DocSearch-NoResults{gap:.8em;margin-block-start:2em}.DocSearch-NoResults--withAskAi{justify-content:flex-start;margin-block-start:0}.DocSearch-AskAiScreen,.DocSearch-ErrorScreen,.DocSearch-StartScreen{gap:24px}.DocSearch-StartScreen-Icon{height:64px;stroke:var(--docsearch-icon-color);width:64px}.DocSearch-Screen-Icon{color:var(--docsearch-icon-color)}.DocSearch-NoResults-Prefill-List{display:flex;flex-direction:column;gap:12px;text-align:center}.DocSearch-NoResults-Prefill-List-Items{display:flex;flex-direction:column;gap:2px}.DocSearch-NoResults-Prefill-List-Items p{align-items:center;display:flex;margin:0;text-align:start}.DocSearch-Prefill{align-items:center;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-flex;font-size:.8em;font-weight:300;gap:4px;height:40px;padding:0 4px}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;-webkit-text-decoration:underline;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-block-start:1px solid var(--docsearch-subtle-color);border-radius:0 0 4px 4px;display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;gap:16px;list-style:none;margin:0;padding:0}.DocSearch-Commands li,.DocSearch-Commands-Key{align-items:center;display:flex}.DocSearch-Commands-Key{background-color:var(--docsearch-background-color);border:0;border-radius:2px;box-shadow:none!important;color:var(--docsearch-icon-color);height:24px;justify-content:center;margin-inline-end:4px;width:24px}.DocSearch-Commands-Key:last-of-type{margin-inline-end:8px}.DocSearch-Escape-Key{font-size:10px;font-weight:300;letter-spacing:normal;line-height:16px;text-align:center;text-transform:uppercase}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.DocSearch-AskAi-Section{display:flex;flex-direction:column;gap:8px;padding:12px 0}.DocSearch-Hit-AskAIButton{align-items:center;color:var(--docsearch-text-color);display:flex;flex-direction:row}.DocSearch-Hit-AskAIButton-icon{color:var(--docsearch-icon-color);flex-shrink:0;margin-inline-end:12px}.DocSearch-Hit-AskAIButton-title{color:var(--docsearch-hit-color);display:flex;flex:1 1 auto;font-weight:400;gap:4px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-AskAIButton-title-query{background:none;margin-inline-start:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.DocSearch-Hit-AskAIButton-title mark{-webkit-text-decoration:none;text-decoration:none}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.DocSearch-AskAiScreen-Container{display:flex;flex-direction:column;gap:0;height:100%;justify-content:flex-start;padding:0;text-align:start;width:100%}.DocSearch-AskAiScreen-Disclaimer{align-self:flex-start;display:flex;font-size:.6em;font-weight:300;margin:0;padding-block:1.5em .5em;padding-inline:0;text-align:start}.DocSearch-AskAiScreen-Body{gap:24px;width:100%}.DocSearch-AskAiScreen-Body,.DocSearch-AskAiScreen-Response,.DocSearch-AskAiScreen-Response-Container{display:flex;flex-direction:column}.DocSearch-AskAiScreen-Response{align-self:flex-start;background:var(--docsearch-hit-background);border-radius:4px;color:var(--docsearch-text-color);font-size:.8em;gap:1em;margin-block-end:8px;padding:24px;width:100%}.DocSearch-AskAiScreen-Query{font-size:1.25em;font-weight:600;line-break:loose;line-height:1.4;margin:0}.DocSearch-AskAiScreen-Answer{line-height:1.5}.DocSearch-AskAiScreen-Answer,.DocSearch-AskAiScreen-ThinkingDots{color:var(--docsearch-secondary-text-color);font-weight:400;margin:0}.DocSearch-AskAiScreen-ThinkingDots{font-size:.8em}.DocSearch-AskAiScreen-Answer-Footer{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between}.DocSearch-AskAiScreen-Actions{align-items:center;display:flex;flex-direction:row;gap:12px;margin-inline-start:auto}.DocSearch-AskAiScreen-ActionButton{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;margin:0;padding:4px;transition:background-color .2s ease;width:24px}.DocSearch-AskAiScreen-ActionButton:hover{background:var(--docsearch-hit-highlight-color)}.DocSearch-AskAiScreen-ActionButton svg{color:var(--docsearch-icon-color);height:20px;stroke-width:1.5;width:20px}.DocSearch-AskAiScreen-CopyButton--copied{background-color:var(--docsearch-success-color);cursor:default}.DocSearch-AskAiScreen-MessageContent{display:flex;flex-direction:column;row-gap:1em}.DocSearch-AskAiScreen-Error{background-color:rgba(239,83,80,.1);border-radius:4px;color:var(--docsearch-error-color);flex-direction:row;font-size:1em;font-weight:400;gap:8px;padding:1em}.DocSearch-AskAiScreen-Error svg{margin-top:.25rem}.DocSearch-AskAiScreen-Error svg,.DocSearch-AskAiScreen-MessageContent-Tool svg{flex-shrink:0;height:16px;width:16px}.DocSearch-AskAiScreen-Error p{margin:0}.DocSearch-AskAiScreen-Error-Content{display:flex;flex:1 1 0%;flex-direction:column}.DocSearch-AskAiScreen-Error-Title{font-weight:700;margin-bottom:4px}.DocSearch-AskAiScreen-Error .DocSearch-Markdown-Content{color:var(--docsearch-error-color)}.DocSearch-AskAiScreen-Error--ThreadDepth{animation:slideDown .3s ease-out;border:1px solid #febdc5;color:var(--docsearch-text-color);font-size:12px;margin:12px 0 8px;width:100%}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.DocSearch-ThreadDepthError-Link{background:none;border:none;color:var(--docsearch-highlight-color);cursor:pointer;font-family:inherit;font-size:inherit;padding:0;-webkit-text-decoration:underline;text-decoration:underline}.DocSearch-ThreadDepthError-Link:hover{opacity:.8}.DocSearch-ThreadDepthError-Link:active{color:#991b1b}.DocSearch-AskAiScreen-FeedbackText{color:var(--docsearch-muted-color);font-size:.7em;font-weight:400;margin:0}.DocSearch-AskAiScreen-FeedbackText--visible{animation:fade-in .3s ease-in forwards}.DocSearch-AskAiScreen-RelatedSources{display:flex;flex-direction:column;gap:4px;width:100%}.DocSearch-AskAiScreen-RelatedSources-List{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;width:100%}.DocSearch-AskAiScreen-RelatedSources-Title{color:var(--docsearch-secondary-text-color);font-size:.7em;font-weight:400;margin:0;padding:6px 0}.DocSearch-AskAiScreen-RelatedSources-NoResults{color:var(--docsearch-text-color);font-size:.8rem;font-weight:400;margin:0}.DocSearch-AskAiScreen-RelatedSources-Error{color:var(--docsearch-error-color);font-size:.8rem;font-weight:400;margin:0}.DocSearch-AskAiScreen-RelatedSources-Item-Link{align-items:center;background:var(--docsearch-hit-background);border-radius:4px;color:var(--docsearch-text-color);display:flex;font-size:.75em;gap:6px;max-width:70%;padding:12px 8px;-webkit-text-decoration:none;text-decoration:none;transition:background-color .2s ease}.DocSearch-AskAiScreen-RelatedSources-Item-Link svg{color:var(--docsearch-icon-color);flex-shrink:0;stroke-width:1.2}.DocSearch-AskAiScreen-RelatedSources-Item-Link span{flex:1 1 0;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.DocSearch-AskAiScreen-ExchangesList{display:flex;flex-direction:column;gap:24px;margin:8px 0}.DocSearch-AskAiScreen-RelatedSources-Item-Link:hover{background:var(--docsearch-hit-highlight-color)}.DocSearch-Markdown-Content{color:var(--docsearch-text-color);font-size:.9355em;line-height:1.6;word-wrap:break-word}.DocSearch-Markdown-Content--streaming{animation:fade-in .3s ease-in-out both}.DocSearch-Markdown-Content p{margin:1em 0}.DocSearch-Markdown-Content p:last-child{margin-block-end:0}.DocSearch-Markdown-Content p:first-child{margin-block-start:0}.DocSearch-Markdown-Content code{border-radius:3px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:.9em;letter-spacing:normal;margin:0;padding:.2em 0}.DocSearch-Markdown-Content code,.DocSearch-Markdown-Content pre{background-color:var(--docsearch-key-background);color:var(--docsearch-text-color)}.DocSearch-Markdown-Content pre{border-radius:6px;margin:1.5em 0;overflow-x:auto;padding:1.2em}.DocSearch-Markdown-Content pre code{background-color:transparent;border-radius:0;color:inherit;font-size:.8em;margin:0;padding:0;white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.DocSearch-Markdown-Content h1,.DocSearch-Markdown-Content h2,.DocSearch-Markdown-Content h3,.DocSearch-Markdown-Content h4,.DocSearch-Markdown-Content h5,.DocSearch-Markdown-Content h6{color:var(--docsearch-text-color);font-weight:600;letter-spacing:-.02em;line-height:1.3;margin:1em 0}.DocSearch-Markdown-Content h1{font-size:1.5em}.DocSearch-Markdown-Content h2{font-size:1.2em}.DocSearch-Markdown-Content h3{font-size:1em}.DocSearch-Markdown-Content h4{font-size:.9em}.DocSearch-Markdown-Content h5,.DocSearch-Markdown-Content h6{font-size:.8em}.DocSearch-Markdown-Content ol,.DocSearch-Markdown-Content ul{color:var(--docsearch-text-color);margin:1.2em 0;padding-inline-start:1.5em}.DocSearch-Markdown-Content ul{list-style-type:disc}.DocSearch-Markdown-Content ol{list-style-type:decimal}.DocSearch-Markdown-Content li{color:var(--docsearch-text-color);line-height:1.6;margin:.8em 0;padding-inline-start:.3em}.DocSearch-Markdown-Content li>ol,.DocSearch-Markdown-Content li>ul{margin:.5em}.DocSearch-Markdown-Content li::marker{color:var(--docsearch-muted-color)}.DocSearch-Markdown-Content a{color:var(--docsearch-highlight-color);-webkit-text-decoration:none;text-decoration:none;transition:all .2s ease}.DocSearch-Markdown-Content a:hover{opacity:.9;-webkit-text-decoration:underline;text-decoration:underline}.DocSearch-Markdown-Content blockquote{border-inline-start:4px solid var(--docsearch-hit-highlight-color);color:var(--docsearch-secondary-text-color);font-style:italic;margin:1.5em 0;padding-block:.5em;padding-inline:1em 0}.DocSearch-Markdown-Content hr{border:none;border-block-start:1px solid var(--docsearch-subtle-color);margin:1em 0}.DocSearch-Markdown-Content table{border-collapse:collapse;margin:1.5em 0;width:100%}.DocSearch-Markdown-Content td,.DocSearch-Markdown-Content th{border:1px solid var(--docsearch-subtle-color);padding:.75em;text-align:start}.DocSearch-Markdown-Content th{background-color:var(--docsearch-hit-background);font-weight:600}.DocSearch-AskAiScreen-MessageContent-Reasoning{align-items:center;color:var(--docsearch-muted-color);display:flex;font-size:1em;gap:4px}.DocSearch-AskAiScreen-MessageContent-Reasoning svg{color:var(--docsearch-icon-color)}.DocSearch-AskAiScreen-MessageContent-Tool{align-items:center;color:var(--docsearch-muted-color);display:flex;line-height:1.2;width:100%}.DocSearch-AskAiScreen-MessageContent-Tool.Tool--Result{padding-block-start:0}.DocSearch-AskAiScreen-MessageContent-Tool>svg{color:var(--docsearch-icon-color);margin-inline-end:8px}.DocSearch-AskAiScreen-MessageContent-Tool-Query{color:var(--docsearch-muted-color);transition:box-shadow .2s ease}.DocSearch-AskAiScreen-MessageContent-Tool-Query svg{color:var(--docsearch-muted-color)}.DocSearch-AskAiScreen-MessageContent-Tool-Query:hover{box-shadow:0 1px 0 0 var(--docsearch-highlight-color);color:var(--docsearch-highlight-color);cursor:pointer}.DocSearch-AskAiScreen-MessageContent-Tool-Query:hover svg{color:var(--docsearch-highlight-color)}.DocSearck-AskAiScreen-MessageContent-Stopped{color:var(--docsearch-muted-color);font-style:italic;margin-block-start:1em}.DocSearch-AskAiScreen-SmallerLoadingIcon{height:16px;width:16px}.shimmer{background:var(--shimmer-bg);background-clip:text;-webkit-background-clip:text;background-size:200% auto;color:transparent;display:flex;-webkit-text-fill-color:transparent;animation:shimmerText 2.5s linear infinite;pointer-events:none}@keyframes shimmerText{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.6}}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:48px}.DocSearch-Input{font-size:1rem}.DocSearch-Hit-AskAIButton-icon{margin-inline-end:8px}body:has(.DocSearch-Container){overflow:hidden;position:fixed}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:calc(var(--docsearch-vh, 1vh)*100);height:100dvh}.DocSearch-Footer{border-radius:0;inset-block-end:0;position:static}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:calc(var(--docsearch-vh, 1vh)*100);height:100dvh;margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:none}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}.DocSearch-AskAiScreen-Response-Container{flex-direction:column}.DocSearch-AskAiScreen-RelatedSources,.DocSearch-AskAiScreen-Response{width:100%}}.DocSearch-CodeSnippet{position:relative}.DocSearch-CodeSnippet-CopyButton{align-items:center;background:var(--docsearch-key-background);border:none;border-radius:4px;color:var(--docsearch-text-color);cursor:pointer;display:flex;font-size:.75em;inset-block-start:8px;inset-inline-end:8px;padding:.2em .6em;position:absolute;transition:opacity .2s ease}.DocSearch-CodeSnippet-CopyButton:hover{opacity:.8}.DocSearch-CodeSnippet-CopyButton:active{opacity:.6}.DocSearch-CodeSnippet-CopyButton svg{height:16px;margin-inline-end:4px;width:16px}.DocSearch-CodeSnippet-CheckIcon,.DocSearch-CodeSnippet-CopyButton--copied .DocSearch-CodeSnippet-CopyIcon{display:none}.DocSearch-CodeSnippet-CopyButton--copied .DocSearch-CodeSnippet-CheckIcon{display:inline-block}.DocSearch-Markdown-Content--streaming .DocSearch-CodeSnippet-CopyButton{display:none}.DocSearch-NewConversationScreen{padding:3em var(--docsearch-spacing)}.DocSearch-NewConversationScreen-Title{color:var(--docsearch-text-color);font-size:26px;font-weight:600;margin-block-end:.15em}.DocSearch-NewConversationScreen-Description{color:var(--docsearch-muted-color);font-size:14px}.DocSearch-NewConversationScreen-SuggestedQuestions{align-items:start;display:flex;flex-direction:column;gap:var(--docsearch-spacing);margin-block-start:1.5em}.DocSearch-NewConversationScreen-SuggestedQuestion{align-items:center;background-color:var(--docsearch-searchbox-background);border:1px solid var(--docsearch-subtle-color);border-radius:var(--docsearch-border-radius);color:var(--docsearch-text-color);cursor:pointer;display:inline-flex;height:40px;justify-content:center;padding:12px}.DocSearch-Menu{position:relative}.DocSearch-Menu-content{background-color:var(--docsearch-dropdown-menu-background);border-radius:var(--docsearch-border-radius);box-shadow:0 0 0 1px #21243d0d,0 8px 16px -4px #21243d40;display:none;flex-direction:column;inset-block-start:calc(100% + 12px);inset-inline-end:0;min-width:195px;padding:8px 0;position:absolute;z-index:422}.DocSearch-Menu-content.open{display:flex}.DocSearch-Menu-item{align-items:center;background-color:transparent;border:0;color:var(--docsearch-text-color);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 16px;white-space:nowrap}.DocSearch-Menu-item:hover{background-color:var(--docsearch-dropdown-menu-item-hover-background)}}
@layer docusaurus.theme-search-algolia {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

:root {
  --docsearch-primary-color: var(--ifm-color-primary);
  --docsearch-text-color: var(--ifm-font-color-base);
}

.DocSearch-Button {
  margin: 0;
  transition: all var(--ifm-transition-fast)
    var(--ifm-transition-timing-default);
}

.DocSearch-Container {
  z-index: calc(var(--ifm-z-index-fixed) + 1);
}

.DocSearch-Button-Key {
  padding: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.codeBlockContainer_H3RI {
  background: var(--prism-background-color);
  color: var(--prism-color);
  margin-bottom: var(--ifm-leading);
  box-shadow: var(--ifm-global-shadow-lw);
  border-radius: var(--ifm-code-border-radius);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.codeBlock_tRYs {
  --ifm-pre-background: var(--prism-background-color);
  margin: 0;
  padding: 0;
}

.codeBlockStandalone_rmoT {
  padding: 0;
}

.codeBlockLines_D2eF {
  font: inherit;
  /* rtl:ignore */
  float: left;
  min-width: 100%;
  padding: var(--ifm-pre-padding);
}

.codeBlockLinesWithNumbering_Ag7D {
  display: table;
  padding: var(--ifm-pre-padding) 0;
}

@media print {
  .codeBlockLines_D2eF {
    white-space: pre-wrap;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/* Intentionally has zero specificity, so that to be able to override
the background in custom CSS file due bug https://github.com/facebook/docusaurus/issues/3678 */
:where(:root) {
  --docusaurus-highlighted-code-line-bg: rgb(72 77 91);
}

:where([data-theme='dark']) {
  --docusaurus-highlighted-code-line-bg: rgb(100 100 100);
}

.theme-code-block-highlighted-line {
  background-color: var(--docusaurus-highlighted-code-line-bg);
  display: block;
  margin: 0 calc(-1 * var(--ifm-pre-padding));
  padding: 0 var(--ifm-pre-padding);
}

.codeLine_ucc2 {
  display: table-row;
  counter-increment: line-count;
}

.codeLineNumber_cUwE {
  display: table-cell;
  text-align: right;
  width: 1%;
  position: sticky;
  left: 0;
  padding: 0 var(--ifm-pre-padding);
  background: var(--ifm-pre-background);
  overflow-wrap: normal;
}

.codeLineNumber_cUwE::before {
  content: counter(line-count);
  opacity: 0.4;
}

.theme-code-block-highlighted-line .codeLineNumber_cUwE::before {
  opacity: 0.8;
}

.codeLineContent_CUWN {
  padding-right: var(--ifm-pre-padding);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.theme-code-block:hover .copyButtonCopied_fYYi {
  opacity: 1 !important;
}

.copyButtonIcons_jv4d {
  position: relative;
  width: 1.125rem;
  height: 1.125rem;
}

.copyButtonIcon_Xx7c,
.copyButtonSuccessIcon_OvQg {
  position: absolute;
  top: 0;
  left: 0;
  fill: currentColor;
  opacity: inherit;
  width: inherit;
  height: inherit;
  transition: all var(--ifm-transition-fast) ease;
}

.copyButtonSuccessIcon_OvQg {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.33);
  opacity: 0;
  color: #00d600;
}

.copyButtonCopied_fYYi .copyButtonIcon_Xx7c {
  transform: scale(0.33);
  opacity: 0;
}

.copyButtonCopied_fYYi .copyButtonSuccessIcon_OvQg {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
  transition-delay: 0.075s;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.wordWrapButtonIcon_NZF1 {
  width: 1.2rem;
  height: 1.2rem;
}

.wordWrapButtonEnabled_K6Tk .wordWrapButtonIcon_NZF1 {
  color: var(--ifm-color-primary);
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.buttonGroup_bb65 {
  display: flex;
  column-gap: 0.2rem;
  position: absolute;
  /* rtl:ignore */
  right: calc(var(--ifm-pre-padding) / 2);
  top: calc(var(--ifm-pre-padding) / 2);
}

.buttonGroup_bb65 button {
  display: flex;
  align-items: center;
  background: var(--prism-background-color);
  color: var(--prism-color);
  border: 1px solid var(--ifm-color-emphasis-300);
  border-radius: var(--ifm-global-radius);
  padding: 0.4rem;
  line-height: 0;
  transition: opacity var(--ifm-transition-fast) ease-in-out;
  opacity: 0;
}

.buttonGroup_bb65 button:focus-visible,
.buttonGroup_bb65 button:hover {
  opacity: 1 !important;
}

.theme-code-block:hover .buttonGroup_bb65 button {
  opacity: 0.4;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.codeBlockContent_ttA0 {
  position: relative;
  /* rtl:ignore */
  direction: ltr;
  border-radius: inherit;
}

.codeBlockTitle_D2zW {
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
  font-size: var(--ifm-code-font-size);
  font-weight: 500;
  padding: 0.75rem var(--ifm-pre-padding);
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.codeBlockTitle_D2zW + .codeBlockContent_ttA0 .codeBlock_Xadx {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
}

@layer docusaurus.theme-common {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/*
CSS variables, meant to be overridden by final theme
 */
.details_WWEa {
  --docusaurus-details-summary-arrow-size: 0.38rem;
  --docusaurus-details-transition: transform 200ms ease;
  --docusaurus-details-decoration-color: grey;
}

.details_WWEa > summary {
  position: relative;
  cursor: pointer;
  list-style: none;
  padding-left: 1rem;
}

/* TODO: deprecation, need to remove this after Safari will support `::marker` */
.details_WWEa > summary::-webkit-details-marker {
  display: none;
}

.details_WWEa > summary::before {
  position: absolute;
  top: 0.45rem;
  left: 0;

  /* CSS-only Arrow */
  content: '';
  border-width: var(--docusaurus-details-summary-arrow-size);
  border-style: solid;
  border-color: transparent transparent transparent
    var(--docusaurus-details-decoration-color);

  /* Arrow rotation anim */
  transform: rotate(0deg);
  transition: var(--docusaurus-details-transition);
  transform-origin: calc(var(--docusaurus-details-summary-arrow-size) / 2) 50%;
}

/* When JS disabled/failed to load: we use the open property for arrow animation: */
.details_WWEa[open]:not(.isBrowser_rwK8) > summary::before,

.details_WWEa[data-collapsed='false'].isBrowser_rwK8 > summary::before {
  transform: rotate(90deg);
}

.collapsibleContent_LQAy {
  margin-top: 1rem;
  border-top: 1px solid var(--docusaurus-details-decoration-color);
  padding-top: 1rem;
}

.collapsibleContent_LQAy p:last-child {
  margin-bottom: 0;
}

.details_WWEa > summary > p:last-child {
  margin-bottom: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.details_NMCY {
  --docusaurus-details-decoration-color: var(--ifm-alert-border-color);
  --docusaurus-details-transition: transform var(--ifm-transition-fast) ease;
  margin: 0 0 var(--ifm-spacing-vertical);
  border: 1px solid var(--ifm-alert-border-color);
}
}

.tagsTitle_aShD {
  display: inline;
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  margin-right: 0.5rem;
}

.tags_ysAR {
  display: inline;
  padding: 0;
  margin: 0;
  list-style: none;
}

.tag_DyE2 {
  display: inline-block;
  margin: 0.375rem 0;
  line-height: 1.5;
}

.tag_DyE2::after {
  content: ', ';
}

.tag_DyE2:last-child::after {
  content: '';
}

.tagLabel_EIIQ {
  display: inline-block;
  padding: 0.25rem 0.5rem;
  margin: 0 0.25rem;
  background: var(--bg-secondary);
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-normal);
  border-radius: 0.25rem;
  cursor: default;
  vertical-align: middle;
}


@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.iconEdit_XuML {
  margin-right: 0.3em;
  vertical-align: sub;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.lastUpdated_vLO9 {
  font-size: smaller;
  font-style: italic;
  margin-top: 0.2rem;
}

@media (min-width: 997px) {
  .lastUpdated_vLO9 {
    text-align: right;
  }
}

@media print {
  .noPrint__NpA {
    display: none;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tocCollapsibleButton_JRMZ {
  font-size: inherit;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.4rem 0.8rem;
  width: 100%;
}

.tocCollapsibleButton_JRMZ::after {
  content: '';
  background: var(--ifm-menu-link-sublist-icon) 50% 50% / 2rem 2rem no-repeat;
  filter: var(--ifm-menu-link-sublist-icon-filter);
  height: 1.25rem;
  width: 1.25rem;
  transform: rotate(180deg);
  transition: transform var(--ifm-transition-fast);
}

.tocCollapsibleButtonExpanded_CeNs::after {
  transform: none;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tocCollapsible_Sszi {
  background-color: var(--ifm-menu-color-background-active);
  border-radius: var(--ifm-global-radius);
  margin: 1rem 0;
}

.tocCollapsibleContent_mV6_ > ul {
  border-left: none;
  border-top: 1px solid var(--ifm-color-emphasis-300);
  padding: 0.2rem 0;
  font-size: 15px;
}

.tocCollapsibleContent_mV6_ ul li {
  margin: 0.4rem 0.8rem;
}

.tocCollapsibleContent_mV6_ a {
  display: block;
}

.tocCollapsibleExpanded_Z4ER {
  transform: none;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  /* Prevent hydration FOUC, as the mobile TOC needs to be server-rendered */
  .tocMobile_wheS {
    display: none;
  }
}

@media print {
  .tocMobile_wheS {
    display: none;
  }
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.containsTaskList_C73I {
  list-style: none;
}

:not(.containsTaskList_C73I > li) > .containsTaskList_C73I {
  padding-left: 0;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.img_YkdL {
  height: auto;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.admonition_huQM {
  margin-bottom: 1em;
}

.admonitionHeading_rIPg {
  font: var(--ifm-heading-font-weight) var(--ifm-h5-font-size) /
    var(--ifm-heading-line-height) var(--ifm-heading-font-family);
  text-transform: uppercase;
}

/* Heading alone without content (does not handle fragment content) */
.admonitionHeading_rIPg:not(:last-child) {
  margin-bottom: 0.3rem;
}

.admonitionHeading_rIPg code {
  text-transform: none;
}

.admonitionIcon_YyZL {
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.4em;
}

.admonitionIcon_YyZL svg {
  display: inline-block;
  height: 1.6em;
  width: 1.6em;
  fill: var(--ifm-alert-foreground-color);
}

.admonitionContent_fS9H > :last-child {
  margin-bottom: 0;
}
}

@layer docusaurus.theme-mermaid {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.container_N04K {
  max-width: 100%;
}

.container_N04K > svg {
  max-width: 100%;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.tableOfContents_Jbo8 {
  max-height: calc(100vh - (var(--ifm-navbar-height) + 2rem));
  overflow-y: auto;
  position: sticky;
  top: calc(var(--ifm-navbar-height) + 1rem);
}

@media (max-width: 996px) {
  .tableOfContents_Jbo8 {
    display: none;
  }

  .docItemContainer_SLy4 {
    padding: 0 0.3rem;
  }
}
}

.lazyImageContainer_qt8j {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.zoomable_eTCa {
  cursor: zoom-in;
}

.zoomable_eTCa:hover .zoomIndicator_cjmQ {
  opacity: 1;
}

.placeholder_f82g {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.7;
  filter: blur(2px);
  transition: opacity 0.3s ease;
}

.actualImage_mQCl {
  display: block;
  width: 100%;
  height: auto;
  transition: opacity 0.3s ease;
}

.loading_g_hm {
  opacity: 0;
}

.loaded_I30z {
  opacity: 1;
}

/* 缩放指示器 */
.zoomIndicator_cjmQ {
  position: absolute;
  top: 8px;
  right: 8px;
  background: rgba(0, 0, 0, 0.6);
  color: white;
  border-radius: 4px;
  padding: 4px;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}

/* 缩放遮罩层 */
.zoomOverlay_jVJq {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  cursor: zoom-out;
}

.zoomContainer__EIj {
  position: relative;
  max-width: 95vw;
  max-height: 95vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.zoomedImage_rI40 {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.closeButton_tTvX {
  position: absolute;
  top: -40px;
  right: -40px;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: #333;
}

.closeButton_tTvX:hover {
  background: rgba(255, 255, 255, 1);
}

/* 响应式支持 */
@media (max-width: 768px) {
  .lazyImageContainer_qt8j {
    max-width: 100%;
  }
  
  .closeButton_tTvX {
    top: 10px;
    right: 10px;
    background: rgba(255, 255, 255, 0.9);
  }
  
  .zoomContainer__EIj {
    max-width: 100vw;
    max-height: 100vh;
  }
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.breadcrumbHomeIcon_uJTD {
  position: relative;
  top: 1px;
  vertical-align: top;
  height: 1.1rem;
  width: 1.1rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.breadcrumbsContainer_KLTF {
  --ifm-breadcrumb-size-multiplier: 0.8;
  margin-bottom: 0.8rem;
}
}

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

@media (min-width: 997px) {
  .generatedIndexPage_xK6c {
    max-width: 75% !important;
  }
}

/* Duplicated from .markdown h1 */
.title_f4YI {
  --ifm-h1-font-size: 3rem;
  margin-bottom: calc(1.25 * var(--ifm-leading));
}
}

/* Navbar 样式 - 蓝紫渐变主题 */

.navbar_OAJs {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.62);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    z-index: 1000;
    transform: translate3d(0, 0, 0);
    /* 启用硬件加速，尝试强制层级 */
    padding: 0.75rem 0;
    box-shadow:
        0 4px 6px -1px rgba(0, 0, 0, 0.08),
        0 2px 4px -1px rgba(0, 0, 0, 0.04);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar_OAJs:hover {
    background: rgba(255, 255, 255, 0.52);
    box-shadow:
        0 10px 15px -3px rgba(0, 0, 0, 0.1),
        0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.navbar_OAJs.scrolled_O2hU {
    background: rgba(255, 255, 255, 0.52);
    backdrop-filter: blur(20px);
    box-shadow:
        0 8px 15px -3px rgba(0, 0, 0, 0.1),
        0 4px 6px -2px rgba(0, 0, 0, 0.05);
    /* padding: 0.75rem 0; */
}

.navContent_sJAR {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 2rem;
    position: relative;
}

.leftSection_mG_R {
    display: flex;
    align-items: center;
    gap: 2.5rem;
}

.rightSection_f452 {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.logo_mauw {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.3s ease;
    cursor: pointer;
}

.logo_mauw:hover {
    transform: scale(1.05);
}

.logo_mauw img {
    height: 40px;
    width: auto;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
    transition: all 0.3s ease;
}

.navLinks_Znk5 {
    display: flex;
    gap: 2rem;
    align-items: center;
}

.navItemWrap_p9X7,
.navDropdown_MG5U {
    position: relative;
}

.navChevron_DPIm {
    margin-left: 0.25rem;
    transition: transform 0.2s ease;
}

.navDropdown_MG5U:hover .navChevron_DPIm {
    transform: rotate(180deg);
}

.navSubMenu_Mw1L {
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    margin-top: 14px;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
    padding: 8px;
    min-width: 128px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-50%) translateY(10px);
    transition: opacity 220ms ease, transform 220ms cubic-bezier(0.16, 1, 0.3, 1), visibility 220ms ease;
    z-index: 2000;
}

.navSubMenu_Mw1L::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 14px;
}

.navSubMenu_Mw1L::after {
    content: '';
    position: absolute;
    left: 50%;
    top: -8px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #ffffff;
}

.navDropdown_MG5U:hover .navSubMenu_Mw1L {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.navSubItem_tIc6 {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 9px 12px;
    cursor: pointer;
    color: #4a5568;
    border-radius: 7px;
    font-size: 0.95rem;
    font-weight: 600;
    white-space: nowrap;
    transition: all 160ms ease;
}

.navSubItem_tIc6:hover {
    color: #3D65FD;
    background: rgba(61, 101, 253, 0.05);
}

/* 语言切换器样式 */
.languageSwitcher_nIhl {
    margin-left: 0;
    padding: 0.5rem 0;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

.languageSwitcher_nIhl:hover {
    opacity: 1;
}

/* Download 按钮样式 */
.downloadButton_hhy2 {
    background: var(--color-primary);
    color: white;
    border: none;
    padding: 0.7rem 1.25rem;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow:
        0 3px 6px rgba(61, 101, 253, 0.3),
        0 1px 2px rgba(19, 28, 67, 0.2);
    position: relative;
    overflow: hidden;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.downloadButton_hhy2::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
    transition: left 0.5s ease;
}

.downloadButton_hhy2:hover::before {
    left: 100%;
}

.downloadButton_hhy2:hover {
    box-shadow:
        0 6px 20px rgba(61, 101, 253, 0.4),
        0 2px 8px rgba(19, 28, 67, 0.3);
}

.downloadButton_hhy2:active {
    transform: translateY(0);
    box-shadow:
        0 3px 8px rgba(61, 101, 253, 0.3),
        0 1px 3px rgba(19, 28, 67, 0.2);
}

/* Try Online 按钮样式 */
.tryOnlineButton_uMg6 {
    background: transparent;
    color: var(--color-secondary);
    border: 2px solid var(--color-secondary);
    padding: 0.5rem 1.25rem;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    letter-spacing: 0.01em;
    white-space: nowrap;
    backdrop-filter: blur(10px);
}

.tryOnlineButton_uMg6::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    transition: left 0.5s ease;
}

.tryOnlineButton_uMg6:hover::before {
    left: 100%;
}

.tryOnlineButton_uMg6:hover {
    background: rgba(19, 28, 67, 0.05);
    border-color: var(--color-secondary);
    color: var(--color-secondary);
    box-shadow: 0 16px 32px rgba(19, 28, 67, 0.15);
}

.tryOnlineButton_uMg6:active {
    transform: translateY(0);
    box-shadow: 0 8px 16px rgba(19, 28, 67, 0.1);
}

.navLinks_Znk5 button {
    width: fit-content;
    background: none;
    border: none;
    color: #4a5568;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    border-radius: 0;
    box-shadow: none;
    transition: color 0.2s;
    backdrop-filter: none;
    position: relative;
    overflow: visible;
    display: flex;
    align-items: center;
}

/* .navLinks button::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #3D65FD, #131C43);
    transform: scaleX(0);
    transition: transform 0.4s ease;
} */

.navLinks_Znk5 button:hover {
    color: #3D65FD;
    background: none;
    border: none;
}

.navLinks_Znk5 button.active_QQRm {
    color: #3D65FD;
    background: none;
    border: none;
}


.navLinks_Znk5 button:active {
    transform: translateY(0) scale(0.98);
}

/* 移动端汉堡菜单按钮 */
.mobileMenuButton_rY2X {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 1.7rem;
    height: 1.5rem;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1001;
    position: relative;
    gap: 0.32rem;
    display: none;
}

.mobileMenuButton_rY2X span {
    width: 1.7rem;
    height: 0.15rem;
    background: #565656;
    border-radius: 10px;
    transition: all 0.3s linear;
    position: relative;
    margin: 0;
}

.mobileMenuButton_rY2X.active_QQRm span {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
}

.mobileMenuButton_rY2X.active_QQRm span:nth-child(1) {
    transform: translateY(-50%) rotate(45deg);
}

.mobileMenuButton_rY2X.active_QQRm span:nth-child(2) {
    opacity: 0;
}

.mobileMenuButton_rY2X.active_QQRm span:nth-child(3) {
    transform: translateY(-50%) rotate(-45deg);
}

/* 移动端导航菜单 */
.mobileMenu_bMaY {
    position: fixed;
    top: 0;
    right: -100%;
    width: 280px;
    height: 100vh;
    background: var(--bg-primary);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-left: 1px solid rgba(61, 101, 253, 0.1);
    box-shadow: -5px 0 15px rgba(0, 0, 0, 0.08);
    transition: right 0.3s ease;
    z-index: 1000;
    padding: 5rem 0 2rem 0;
    overflow-y: auto;
}

.mobileMenu_bMaY.open_OBIP {
    right: 0;
}

.mobileNavLinks_ZyzS {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* 移动端顶部语言切换器 - 显示在汉堡菜单按钮左侧 */
.mobileTopLanguageSwitcher_g1Vz {
    display: none;
    align-items: center;
    margin-right: 1rem;
    z-index: 1000;
    position: relative;
}

/* 移动端语言切换器（已移除，保留样式以防需要） */
.mobileLanguageSwitcher_jPde {
    padding: 1.5rem 0;
    margin-bottom: 1rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: center;
}

.mobileNavItem_l6Jb {
    background: none;
    border: none;
    color: #4a5568;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    padding: 1.2rem 2rem;
    text-align: left;
    /* border-bottom: 1px solid rgba(0, 0, 0, 0.1); */
    transition: all 0.3s ease;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mobileNavItem_l6Jb::after {
    content: '';
    display: block;
    position: absolute;
    left: 2rem;
    right: 2rem;
    bottom: 0;
    height: 1px;
    background: rgba(0, 0, 0, 0.1);
    pointer-events: none;
}

.mobileDropdownChevron_RNzK {
    transition: transform 180ms ease;
}

.mobileDropdownChevron_RNzK.open_OBIP {
    transform: rotate(180deg);
}

.mobileSubNav_TVff {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 260ms ease, opacity 180ms ease;
}

.mobileSubNav_TVff.open_OBIP {
    max-height: 180px;
    opacity: 1;
}

.mobileSubNavItem_i0nm {
    width: 100%;
    text-align: left;
    background: rgba(61, 101, 253, 0.03);
    border: none;
    padding: 0.85rem 2rem 0.85rem 2.8rem;
    color: #64748b;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
}

.mobileSubNavItem_i0nm:hover {
    color: #3D65FD;
    background: rgba(61, 101, 253, 0.07);
}

.mobileNavItem_l6Jb:last-child::after {
    display: none;
}

.mobileNavItem_l6Jb:hover {
    color: #3D65FD;
    background: rgba(61, 101, 253, 0.05);
}

.mobileNavItem_l6Jb.active_QQRm {
    color: #3D65FD;
    background: rgba(61, 101, 253, 0.1);
    /* padding-left: 1rem; */
}

/* 移动端 Try Online 按钮样式 */
.mobileTryOnlineButton_oSq0 {
    background: #3D65FD !important;
    color: white !important;
    margin: 1rem 2rem;
    border-radius: 8px;
    font-weight: 600;
    text-align: center;
    justify-content: center;
}

.mobileTryOnlineButton_oSq0:hover {
    background: #2B4FD1 !important;
    color: white !important;
    transform: translateY(-1px);
}

.mobileTryOnlineButton_oSq0::after {
    display: none;
}



/* 
.mobileNavItem[data-type="newTab"]::after {
  content: '↗';
  font-size: 0.9rem;
  opacity: 0.7;
  transition: all 0.3s ease;
} */

.mobileNavItem_l6Jb[data-type="newTab"]:hover::after {
    opacity: 1;
    transform: translateX(2px) translateY(-2px);
}

/* 移动端菜单遮罩 */
.mobileOverlay_jlfI {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    backdrop-filter: blur(2px);
}

/* 响应式设计 */
@media (max-width: 768px) {
    .navContent_sJAR {
        padding: 0 1rem;
        justify-content: space-between;
    }

    .leftSection_mG_R {
        gap: 3rem;
        flex: 1;
    }

    .rightSection_f452 {
        gap: 1rem;
    }

    .logo_mauw {
        font-size: 1.6rem;
    }

    .logo_mauw img {
        height: 2.8rem;
    }

    /* 隐藏桌面端导航 */
    .desktopNav_XVJo {
        display: none;
    }

    /* 显示移动端菜单按钮 */
    .mobileMenuButton_rY2X {
        display: flex;
    }

    /* 显示移动端顶部语言切换器 */
    .mobileTopLanguageSwitcher_g1Vz {
        display: flex;
    }

    .navbar_OAJs {
        padding: 0.75rem 0;
    }

    /* 移动端隐藏 Download 按钮、Try Online 按钮和桌面端语言切换器 */
    .downloadButton_hhy2,
    .tryOnlineButton_uMg6,
    .languageSwitcher_nIhl {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .navbar_OAJs {
        padding: 0.75rem 0;
    }

    .logo_mauw {
        font-size: 1.6rem;
    }

    .logo_mauw img {
        height: 2.6rem;
    }

    .mobileMenu_bMaY {
        width: 100%;
        right: -100%;
    }

    .mobileNavItem_l6Jb {
        font-size: 1rem;
        padding: 1.2rem 2rem;
    }
}

/* Ant Design 风格的语言切换器 */
.languageSwitcher_lFFO {
  position: relative;
  display: inline-block;
}

/* 切换按钮 - 模仿 Ant Design 样式 */
.switchButton_BJaE {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 6px;
  transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  outline: none;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 32px;
  /* box-shadow: 0 2px 0 rgba(0, 0, 0, 0.02); */
}

.switchButton_BJaE:hover {
  color: #1890ff;
  border-color: #1890ff;
}

.switchButton_BJaE:active {
  color: #096dd9;
  border-color: #096dd9;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.02);
}

.switchButton_BJaE:focus-visible {
  color: #1890ff;
  border-color: #1890ff;
  outline: 0;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}

/* 地球图标样式 */
.globeIcon_Fd14 {
  color: rgba(0, 0, 0, 0.65);
  transition: color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  flex-shrink: 0;
}

/* 当前语言文字 */
.currentLang_a633 {
  font-size: 14px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.85);
  line-height: 1.5715;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  -webkit-user-select: none;
          user-select: none;
  transition: color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.switchButton_BJaE:hover .globeIcon_Fd14,
.switchButton_BJaE:hover .currentLang_a633 {
  color: inherit;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .switchButton_BJaE {
    padding: 6px 10px;
    height: 36px;
    min-width: 36px;
  }
  
  .currentLang_a633 {
    font-size: 15px;
  }
}

/* 高对比度模式 */
@media (prefers-contrast: high) {
  .switchButton_BJaE {
    border-width: 2px;
    border-color: #000000;
  }
  
  .switchButton_BJaE:hover {
    border-color: #1890ff;
    color: #1890ff;
  }
  
  .globeIcon_Fd14 {
    color: #000000;
  }
  
  .currentLang_a633 {
    color: #000000;
    font-weight: 500;
  }
  
  .switchButton_BJaE:hover .globeIcon_Fd14,
  .switchButton_BJaE:hover .currentLang_a633 {
    color: inherit;
  }
}

/* 减少动画偏好 */
@media (prefers-reduced-motion: reduce) {
  .switchButton_BJaE,
  .currentLang_a633 {
    transition: none;
  }
}

 
 .page_N1JS {
   background: #f7faff;
   color: #334155;
   min-height: 100%;
 }
 
 .hero_iq4P {
   position: relative;
   overflow: hidden;
   background: #0f172a;
   padding: 64px 0;
   margin-top: 68px;
 }
 
 .heroInner_hrCb {
   position: relative;
   z-index: 1;
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 24px;
 }
 
 .heroGrid_RwlU {
   display: grid;
   grid-template-columns: 1fr;
   gap: 32px;
   align-items: center;
 }
 
 .heroLeft_Matv {
   max-width: 640px;
 }
 
 .heroEyebrow_wZfM {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   margin-bottom: 18px;
 }
 
 .heroEyebrowBadge_V2L5 {
   color: rgba(219, 234, 254, 1);
   font-weight: 800;
   letter-spacing: 0.18em;
   font-size: 12px;
   text-transform: uppercase;
   border: 1px solid rgba(29, 78, 216, 0.8);
   padding: 6px 12px;
   border-radius: 10px;
   background: rgba(30, 58, 138, 0.35);
 }
 
 .heroTitle_Hg3t {
   margin: 0 0 18px;
   color: #ffffff;
   font-weight: 900;
   letter-spacing: -0.03em;
   font-size: 40px;
   line-height: 1.1;
 }
 
 .heroTitleAccent_POJx {
   color: rgba(147, 197, 253, 1);
 }
 
 .heroTitleWhite_Dx_8 {
   color: #ffffff;
 }
 
 .heroLead_nEQD {
   margin: 0 0 12px;
   color: rgba(203, 213, 225, 1);
   font-size: 18px;
   line-height: 1.65;
   font-weight: 300;
 }
 
 .heroSub_B1ye {
   margin: 0 0 18px;
   color: rgba(148, 163, 184, 1);
   font-size: 13px;
   line-height: 1.65;
 }
 
 .heroButtons_nJsa {
   display: flex;
   flex-direction: column;
   gap: 12px;
   margin-bottom: 18px;
 }
 
 .heroPrimary_AzFc {
   height: 48px;
   padding: 0 28px;
   border-radius: 10px;
   background: rgba(37, 99, 235, 1);
   color: #ffffff;
   font-weight: 700;
   -webkit-text-decoration: none;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   transition: background-color 0.15s ease, transform 0.15s ease;
 }
 
 .heroPrimary_AzFc:hover {
   background: rgba(59, 130, 246, 1);
   transform: translateY(-1px);
   -webkit-text-decoration: none;
   text-decoration: none;
 }
 
 .heroSecondary_Oom1 {
   height: 48px;
   padding: 0 28px;
   border-radius: 10px;
   border: 1px solid rgba(71, 85, 105, 1);
   color: #ffffff;
   font-weight: 700;
   -webkit-text-decoration: none;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   transition: border-color 0.15s ease, transform 0.15s ease;
 }
 
 .heroSecondary_Oom1:hover {
   border-color: rgba(255, 255, 255, 1);
   transform: translateY(-1px);
   -webkit-text-decoration: none;
   text-decoration: none;
 }
 
 .heroFootnote_wN33 {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
     "Courier New", monospace;
   font-size: 12px;
   color: rgba(100, 116, 139, 1);
 }
 
 .heroFootnoteDot_KBfJ {
   width: 8px;
   height: 8px;
   border-radius: 999px;
   background: rgba(34, 197, 94, 1);
   flex: 0 0 auto;
 }
 
 .heroFootnoteText_p5Kw {
   white-space: nowrap;
   overflow: hidden;
 }
 
 .heroRight_saDE {
   position: relative;
 }
 
 .heroMediaShadow_mP_3 {
   position: absolute;
   inset: 0;
   transform: translate(12px, 12px);
   background: rgba(30, 64, 175, 0.5);
   border-radius: 12px;
 }
 
 .heroMediaFrame_A_XG {
   position: relative;
   border-radius: 12px;
   background: rgba(15, 23, 42, 1);
   border: 1px solid rgba(51, 65, 85, 1);
   padding: 8px;
 }
 
 .heroMediaImg_vigG {
   width: 100%;
   height: auto;
   display: block;
   border-radius: 10px;
   opacity: 0.95;
 }
 
 .heroTerminal__a6I {
   position: absolute;
   right: 16px;
   bottom: 16px;
   background: rgba(0, 0, 0, 1);
   border: 1px solid rgba(30, 41, 59, 1);
   padding: 14px;
   border-radius: 12px;
 }
 
 .heroTerminalText_WU2b {
   font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
     "Courier New", monospace;
   font-size: 12px;
   color: rgba(74, 222, 128, 1);
   line-height: 1.4;
 }
 
 .section_dktE {
   position: relative;
   overflow: hidden;
   padding: 96px 0;
 }
 
 .sectionAlt_qxNz {
   position: relative;
   padding: 96px 0;
   background: #ffffff;
   border-top: 1px solid rgba(241, 245, 249, 1);
   border-bottom: 1px solid rgba(241, 245, 249, 1);
 }
 
 .sectionInner_hjKC {
   position: relative;
   z-index: 1;
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 24px;
 }
 
 .bubbleGlowLeft_bHPp {
   position: absolute;
   width: 380px;
   height: 380px;
   top: -80px;
   left: -80px;
   border-radius: 999px;
   background: radial-gradient(circle, rgba(30, 91, 255, 0.15) 0%, rgba(234, 240, 255, 0) 70%);
   filter: blur(40px);
   pointer-events: none;
 }
 
 .bubbleGlowRight_q0P6 {
   position: absolute;
   width: 520px;
   height: 520px;
   bottom: -100px;
   right: -100px;
   border-radius: 999px;
   opacity: 0.3;
   background: radial-gradient(circle, rgba(30, 91, 255, 0.15) 0%, rgba(234, 240, 255, 0) 70%);
   filter: blur(40px);
   pointer-events: none;
 }
 
 .bubbleGlowCenter_Imv_ {
   position: absolute;
   width: 380px;
   height: 380px;
   top: -40px;
   left: 50%;
   transform: translateX(-50%);
   border-radius: 999px;
   opacity: 0.5;
   background: radial-gradient(circle, rgba(30, 91, 255, 0.15) 0%, rgba(234, 240, 255, 0) 70%);
   filter: blur(40px);
   pointer-events: none;
 }
 
 .twoCol_AxFd {
   display: grid;
   grid-template-columns: 1fr;
   gap: 40px;
   align-items: center;
 }
 
 .pill_kHtd {
   display: inline-block;
   padding: 6px 12px;
   border-radius: 999px;
   background: rgba(234, 240, 255, 1);
   color: rgba(30, 91, 255, 1);
   border: 1px solid rgba(215, 226, 255, 1);
   font-size: 12px;
   font-weight: 800;
   letter-spacing: 0.16em;
   text-transform: uppercase;
   margin-bottom: 16px;
 }
 
 .h2_NRuU {
   margin: 0 0 18px;
   font-size: 30px;
   font-weight: 900;
   letter-spacing: -0.03em;
   color: #0b1220;
   line-height: 1.15;
 }
 
 .h2Accent_xZf4 {
   color: rgba(30, 91, 255, 1);
 }
 
 .lead_gnMt {
   margin: 0 0 22px;
   font-size: 18px;
   line-height: 1.7;
   color: rgba(51, 65, 85, 1);
 }
 
 .checkList_oW6e {
   list-style: none;
   padding: 0;
   margin: 0;
   display: grid;
   gap: 14px;
 }
 
 .checkItem_d3X6 {
   display: flex;
   align-items: flex-start;
   gap: 12px;
 }
 
 .checkIconWrap_HWsH {
   width: 24px;
   height: 24px;
   border-radius: 999px;
   background: rgba(234, 240, 255, 1);
   color: rgba(30, 91, 255, 1);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   margin-top: 2px;
   flex: 0 0 auto;
 }
 
 .checkIcon_oBm8 {
   width: 14px;
   height: 14px;
 }
 
 .checkText_ZE1H {
   color: rgba(51, 65, 85, 1);
   font-weight: 600;
   line-height: 1.65;
 }
 
 .visualCardWrap_gpxn {
   position: relative;
 }
 
 .visualCardBg_OCOn {
   position: absolute;
   inset: 0;
   background: linear-gradient(45deg, rgba(234, 240, 255, 1), rgba(255, 255, 255, 1));
   border-radius: 24px;
   transform: rotate(3deg) scale(1.04);
   opacity: 0.5;
   transition: transform 0.25s ease;
 }
 
 .visualCardWrap_gpxn:hover .visualCardBg_OCOn {
   transform: rotate(1deg) scale(1.04);
 }
 
 .devCard_dpNG {
   position: relative;
   background: #ffffff;
   border: 1px solid rgba(215, 226, 255, 1);
   border-radius: 16px;
   overflow: hidden;
   z-index: 1;
   transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
     box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s ease;
 }
 
 .devCard_dpNG:hover {
   transform: translateY(-4px);
   box-shadow: 0 10px 25px -5px rgba(30, 91, 255, 0.1);
   border-color: rgba(30, 91, 255, 1);
 }
 
 .windowHeader_XuZV {
   height: 32px;
   display: flex;
   align-items: center;
   gap: 8px;
   padding: 0 14px;
   border-bottom: 1px solid rgba(241, 245, 249, 1);
   background: #ffffff;
 }
 
 .dotRed__RuQ,
 .dotAmber_qDHS,
 .dotGreen_NmEZ {
   width: 12px;
   height: 12px;
   border-radius: 999px;
 }
 
 .dotRed__RuQ {
   background: rgba(248, 113, 113, 0.3);
 }
 
 .dotAmber_qDHS {
   background: rgba(251, 191, 36, 0.3);
 }
 
 .dotGreen_NmEZ {
   background: rgba(74, 222, 128, 0.3);
 }
 
 .windowBody_jrMj {
   background: rgba(247, 250, 255, 0.7);
 }
 
 .windowImg_MZEB {
   width: 100%;
   height: auto;
   display: block;
   opacity: 0.95;
 }
 
 .sectionHeader_YA5_ {
   max-width: 720px;
   margin: 0 auto 48px;
   text-align: center;
 }
 
 .h2Center_ZJOE {
   margin: 0 0 12px;
   font-size: 30px;
   font-weight: 900;
   letter-spacing: -0.03em;
   color: #0b1220;
 }
 
 .subCenter_UL82 {
   margin: 0;
   font-size: 18px;
   color: rgba(100, 116, 139, 1);
   line-height: 1.6;
 }
 
 .cardGrid3_w0OV {
   display: grid;
   grid-template-columns: 1fr;
   gap: 18px;
 }
 
 .devCardPadded_ObA9 {
   background: #ffffff;
   border: 1px solid rgba(215, 226, 255, 1);
   border-radius: 16px;
   padding: 28px;
   transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
     box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s ease;
 }
 
 .devCardPadded_ObA9:hover {
   transform: translateY(-4px);
   box-shadow: 0 10px 25px -5px rgba(30, 91, 255, 0.1);
   border-color: rgba(30, 91, 255, 1);
 }
 
 .iconBox_A451 {
   width: 48px;
   height: 48px;
   border-radius: 14px;
   background: rgba(234, 240, 255, 1);
   color: rgba(30, 91, 255, 1);
   display: flex;
   align-items: center;
   justify-content: center;
   margin-bottom: 18px;
   transition: transform 0.2s ease;
 }
 
 .devCardPadded_ObA9:hover .iconBox_A451 {
   transform: scale(1.1);
 }
 
 .iconSvg_QNiT {
   width: 24px;
   height: 24px;
 }
 
 .h3_CE9d {
   margin: 0 0 10px;
   font-size: 20px;
   font-weight: 900;
   letter-spacing: -0.02em;
   color: #0b1220;
 }
 
 .p_V9B8 {
   margin: 0;
   font-size: 14px;
   line-height: 1.7;
   color: rgba(51, 65, 85, 1);
 }
 
 .orchMediaWrap_mHXq {
   position: relative;
   order: 2;
 }
 
 .orchMediaBg_BLl4 {
   position: absolute;
   inset: 0;
   border-radius: 24px;
   background: linear-gradient(225deg, rgba(234, 240, 255, 1), rgba(255, 255, 255, 1));
   transform: rotate(-2deg) scale(1.04);
   opacity: 0.5;
 }
 
 .devCardPadSm_dyTT {
   position: relative;
   background: #ffffff;
   border: 1px solid rgba(215, 226, 255, 1);
   border-radius: 16px;
   padding: 6px;
   overflow: hidden;
   box-shadow: 0 4px 20px -2px rgba(30, 91, 255, 0.05);
 }
 
 .orchImg_sXpI {
   width: 100%;
   display: block;
   border-radius: 12px;
 }
 
 .orchActions_OYFY {
   display: grid;
   gap: 12px;
 }
 
 .btnOutline_I2c2 {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   height: 48px;
   padding: 0 28px;
   border-radius: 999px;
   background: transparent;
   border: 1px solid rgba(215, 226, 255, 1);
   color: #0b1220;
   font-weight: 700;
   -webkit-text-decoration: none;
   text-decoration: none;
   width: fit-content;
   transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
 }
 
 .btnOutline_I2c2:hover {
   border-color: rgba(30, 91, 255, 1);
   color: rgba(30, 91, 255, 1);
   background: #ffffff;
   -webkit-text-decoration: none;
   text-decoration: none;
 }
 
 .smallMuted_dbic {
   margin: 0;
   font-size: 12px;
   color: rgba(100, 116, 139, 1);
 }
 
 .configGrid_ive4 {
   display: grid;
   grid-template-columns: 1fr;
   gap: 28px;
   align-items: start;
 }
 
 .h2Plain_G5TZ {
   margin: 0 0 16px;
   font-size: 30px;
   font-weight: 900;
   letter-spacing: -0.03em;
   color: #0b1220;
 }
 
 .leadPlain_p7oZ {
   margin: 0 0 18px;
   color: rgba(51, 65, 85, 1);
   line-height: 1.7;
 }
 
 .bulletsRow_sBpI {
   display: flex;
   gap: 18px;
   flex-wrap: wrap;
   color: rgba(100, 116, 139, 1);
   font-weight: 700;
   font-size: 13px;
 }
 
 .bulletItem_AQOH {
   display: inline-flex;
   align-items: center;
   gap: 8px;
 }
 
 .bulletDot_c3oL {
   width: 8px;
   height: 8px;
   border-radius: 999px;
   background: rgba(34, 197, 94, 1);
 }
 
 .codeCard_k3eC {
   border-radius: 16px;
   border: 1px solid rgba(215, 226, 255, 1);
   background: rgba(247, 250, 255, 1);
   overflow: hidden;
   box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
 }
 
 .codeCardHeader_xK90 {
   height: 40px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 0 14px;
   background: #ffffff;
   border-bottom: 1px solid rgba(215, 226, 255, 1);
 }
 
 .codeCardTitle_nGi1 {
   font-size: 12px;
   font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
     "Courier New", monospace;
   color: rgba(100, 116, 139, 1);
 }
 
 .codeCardControls_h6K4 {
   display: inline-flex;
   gap: 6px;
 }
 
 .codeControlDot_ZRUm {
   width: 10px;
   height: 10px;
   border-radius: 999px;
   background: rgba(226, 232, 240, 1);
 }
 
 .codeBlock_FyKs {
   margin: 0;
   padding: 18px;
   overflow-x: auto;
   font-size: 13px;
   line-height: 1.65;
   color: rgba(51, 65, 85, 1);
   font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
     "Courier New", monospace;
   white-space: pre;
 }
 
 .faqSection_cvIt {
   position: relative;
   overflow: hidden;
   padding: 96px 0;
   background: linear-gradient(180deg, rgba(5, 8, 22, 1), rgba(11, 16, 32, 1));
 }
 
 .faqGlow_imTU {
   position: absolute;
   inset: 0;
   left: 50%;
   transform: translateX(-50%);
   max-width: 800px;
   background: radial-gradient(circle at 50% 0%, rgba(30, 91, 255, 0.1) 0%, transparent 50%);
   pointer-events: none;
 }
 
 .faqInner_uzxU {
   position: relative;
   z-index: 1;
   max-width: 800px;
   margin: 0 auto;
   padding: 0 24px;
 }
 
 .faqTitle_TySP {
   margin: 0 0 36px;
   text-align: center;
   font-size: 30px;
   font-weight: 900;
   color: #ffffff;
   letter-spacing: -0.03em;
 }
 
 .faqList_E4gP {
   display: grid;
   gap: 12px;
 }
 
 .faqItem_jBFB {
   border-radius: 16px;
   border: 1px solid rgba(255, 255, 255, 0.1);
   background: rgba(255, 255, 255, 0.05);
   overflow: hidden;
   backdrop-filter: blur(8px);
 }
 
 .faqItemActive_XKhr {
  --faq-open: 1;
 }
 
 .faqButton_ZljT {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 14px;
   padding: 18px;
   background: transparent;
   border: 0;
   color: #ffffff;
   font-weight: 700;
   cursor: pointer;
   text-align: left;
   transition: background-color 0.15s ease;
 }
 
 .faqButton_ZljT:hover {
   background: rgba(255, 255, 255, 0.05);
 }
 
 .faqButton_ZljT:focus {
   outline: none;
 }
 
 .faqButton_ZljT:focus-visible {
   outline: 2px solid rgba(59, 130, 246, 0.6);
   outline-offset: -2px;
 }
 
 .faqIcon_X1aH {
   width: 20px;
   height: 20px;
   color: rgba(148, 163, 184, 1);
   flex: 0 0 auto;
   transition: transform 0.2s ease;
 }
 
 .faqIconActive_RBay {
   transform: rotate(180deg);
 }
 
 .faqContent_GmE8 {
   max-height: 0;
   opacity: 0;
   overflow: hidden;
   transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
   padding: 0 18px;
 }
 
 .faqItemActive_XKhr .faqContent_GmE8 {
   max-height: 320px;
   opacity: 1;
 }
 
 .faqAnswer__01i {
   margin: 0;
   padding: 0 0 18px;
   font-size: 14px;
   line-height: 1.7;
   color: rgba(203, 213, 225, 1);
 }
 
 .infoSection_Y_HD {
   position: relative;
   overflow: hidden;
   padding: 96px 0;
   background: rgba(247, 250, 255, 1);
 }
 
 .infoInner_ff4E {
   position: relative;
   z-index: 1;
   max-width: 960px;
   margin: 0 auto;
   padding: 0 24px;
   text-align: center;
   display: flex;
   flex-direction: column;
   align-items: center;
 }
 
 .infoLogo_HFjm {
   height: 64px;
   width: auto;
   margin-bottom: 18px;
   object-fit: contain;
   filter: drop-shadow(0 10px 18px rgba(15, 23, 42, 0.18));
 }
 
 .infoTitle_HRQ4 {
   margin: 0 0 12px;
   font-size: 44px;
   font-weight: 900;
   letter-spacing: -0.03em;
   color: #0b1220;
   line-height: 1.05;
 }
 
 .infoSub_X9Uz {
   margin: 0 0 18px;
   font-size: 18px;
   line-height: 1.7;
   color: rgba(51, 65, 85, 1);
   max-width: 720px;
 }
 
 .infoButtons_g4ck {
   display: flex;
   flex-direction: column;
   gap: 12px;
   width: 100%;
 }
 
 .infoPrimary_RlR2 {
   height: 48px;
   padding: 0 28px;
   border-radius: 14px;
   background: rgba(30, 91, 255, 1);
   color: #ffffff;
   font-weight: 700;
   -webkit-text-decoration: none;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   transition: background-color 0.15s ease, transform 0.15s ease;
   box-shadow: 0 12px 24px rgba(30, 91, 255, 0.2);
 }
 
 .infoPrimary_RlR2:hover {
   background: rgba(23, 71, 199, 1);
   transform: translateY(-1px);
   -webkit-text-decoration: none;
   text-decoration: none;
 }
 
 .infoSecondary_Cchr {
   height: 48px;
   padding: 0 22px;
   border-radius: 14px;
   background: #0b1220;
   color: #ffffff;
   font-weight: 700;
   -webkit-text-decoration: none;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   transition: background-color 0.15s ease, transform 0.15s ease;
 }
 
 .infoSecondary_Cchr:hover {
   background: rgba(11, 18, 32, 0.9);
   transform: translateY(-1px);
   -webkit-text-decoration: none;
   text-decoration: none;
 }
 
 @media (min-width: 640px) {
   .heroButtons_nJsa {
     flex-direction: row;
   }
 
   .infoButtons_g4ck {
     flex-direction: row;
     width: auto;
   }
 }
 
 @media (min-width: 768px) {
   .heroTitle_Hg3t {
     font-size: 52px;
   }
 
   .cardGrid3_w0OV {
     grid-template-columns: repeat(3, 1fr);
     gap: 22px;
   }
 }
 
 @media (min-width: 1024px) {
   .hero_iq4P {
     padding: 80px 0;
   }
 
   .heroGrid_RwlU {
     grid-template-columns: 5fr 7fr;
     gap: 48px;
   }
 
   .twoCol_AxFd {
     grid-template-columns: 1fr 1fr;
     gap: 56px;
   }
 
   .orchMediaWrap_mHXq {
     order: 0;
   }
 
   .configGrid_ive4 {
     grid-template-columns: 2fr 3fr;
     gap: 48px;
   }
 
   .infoTitle_HRQ4 {
     font-size: 60px;
   }
 }

@layer docusaurus.theme-classic {/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

.docItemContainer_XLVR header + *,
.docItemContainer_XLVR article > *:first-child {
  margin-top: 0;
}

@media (min-width: 997px) {
  .docItemCol_JnRO {
    max-width: 75% !important;
  }
}
}

/* 法律文档页面样式 */
.legalDocumentContainer_BdSf {
  background-color: var(--bg-primary);
  padding: var(--section-padding);
}

.legalDocumentBody_q8sR {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem;
  line-height: 1.6;
  margin-top: var(--space-8);
}

/* 标题样式 */
.legalDocumentBody_q8sR h1 {
  color: #2c3e50;
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  text-align: center;
  padding-bottom: 1rem;
}

.legalDocumentBody_q8sR h2 {
  color: #34495e;
  font-size: 1.8rem;
  font-weight: 600;
  margin: 2rem 0 1rem 0;
  /* padding-left: 0.5rem; */
  /* border-left: 4px solid var(--primary-color); */
}

.legalDocumentBody_q8sR h3 {
  color: #2c3e50;
  font-size: 1.4rem;
  font-weight: 600;
  margin: 1.5rem 0 0.8rem 0;
}

/* 段落样式 */
.legalDocumentBody_q8sR p {
  color: #555;
  font-size: 1rem;
  margin-bottom: 1rem;
  text-align: justify;
}

/* 列表样式 */
.legalDocumentBody_q8sR ol,
.legalDocumentBody_q8sR ul {
  margin: 1rem 0;
  padding-left: 2rem;
}

.legalDocumentBody_q8sR li {
  color: #555;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  line-height: 1.6;
}

.legalDocumentBody_q8sR li p {
  margin-bottom: 0.5rem;
}

/* 强调文本样式 */
.legalDocumentBody_q8sR strong {
  color: #2c3e50;
  font-weight: 600;
}

.legalDocumentBody_q8sR u {
  -webkit-text-decoration: underline;
  text-decoration: underline;
  color: #e74c3c;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .legalDocumentContainer_BdSf {
    padding: 1rem 0.5rem;
  }
  
  .legalDocumentBody_q8sR {
    padding: 1rem;
  }
  
  .legalDocumentBody_q8sR h1 {
    font-size: 2rem;
  }
  
  .legalDocumentBody_q8sR h2 {
    font-size: 1.5rem;
  }
  
  .legalDocumentBody_q8sR h3 {
    font-size: 1.2rem;
  }
}

/* 打印样式 */
@media print {
  .legalDocumentCard_VbS8 {
    box-shadow: none;
    border: 1px solid #ddd;
  }
  
  .legalDocumentBody_q8sR {
    padding: 0;
  }
  
  .legalDocumentBody_q8sR h1,
  .legalDocumentBody_q8sR h2,
  .legalDocumentBody_q8sR h3 {
    color: #000;
  }
  
  .legalDocumentBody_q8sR p,
  .legalDocumentBody_q8sR li {
    color: #000;
  }
}

/* ========================================
   PricingSection 样式 - 遵循统一设计规范
   ======================================== */

/* ==================== CSS 变量定义 ==================== */
:root {
  --page-title-line-height: 1.5;
  --card-title-line-height: 1.3;
  --tab-min-width: 120px;
}

/* 中文主题变量 */
:root[lang="zh"] {
  --page-title-line-height: 1.4;
  --card-title-line-height: 1.4;
  --tab-min-width: 166px;
}

/* ==================== 页面布局 ==================== */
.sectionContent_lUv4 {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--container-padding);
}

.pricing_cxVN {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background: var(--bg-secondary);
  color: var(--text-primary);
  padding: var(--section-padding);
  position: relative;
  overflow: hidden;
  font-family: var(--font-primary);
}

/* ==================== 页面标题 ==================== */
.pageHeader_LmB1 {
  text-align: center;
  margin: var(--space-16) 0;
}

.pageTitle_Qvu8 {
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-secondary);
  margin-bottom: var(--space-6);
  line-height: var(--page-title-line-height) !important;
}

.pageSubtitle_s72k {
  font-size: var(--font-size-subtitle);
  color: var(--text-secondary);
  margin: 0 auto;
  line-height: var(--line-height-relaxed);
}

/* ==================== 标签页 ==================== */
.tabContainer_KY3u {
  display: flex;
  justify-content: center;
  margin-bottom: var(--space-12);
  transition-delay: 0.1s;
}

.tabGroup_jGND {
  display: flex;
  backdrop-filter: blur(20px);
  border-radius: var(--border-radius-card);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-color-light);
  position: relative;
  padding: 4px;
}

.tabSlider_sz8p {
  position: absolute;
  top: 4px;
  bottom: 4px;
  width: calc(33.333% - 4px);
  background: var(--color-primary);
  border-radius: var(--border-radius-lg);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0;
  box-shadow: var(--hover-shadow-primary);
}

.tabSliderMonthly_HN3l {
  transform: translateX(0);
}

.tabSliderYearly_nhfm {
  transform: translateX(calc(100% + 4px));
}

.tabSliderBuyout_A07R {
  transform: translateX(calc(200% + 8px));
}

.tab_ycOy {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  background: transparent;
  border: none;
  padding: var(--space-3) var(--space-6);
  border-radius: var(--border-radius-lg);
  cursor: pointer;
  transition: color 0.3s ease;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--text-secondary);
  min-width: var(--tab-min-width);
  justify-content: center;
  position: relative;
  z-index: 1;
  flex: 1;
}

.tab_ycOy:hover {
  color: var(--color-primary);
}

.tabActive__y7W {
  color: var(--color-white) !important;
}

.tabActive__y7W:hover {
  color: var(--color-white);
}

.tabIcon_i6MO {
  font-size: var(--font-size-lg);
  display: none;
}

.tabText_K_I5 {
  font-weight: var(--font-weight-semibold);
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--space-2);
}

.yearlyBadge_Vb1K {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary);
  white-space: nowrap;
  line-height: 1;
}

.tabActive__y7W .yearlyBadge_Vb1K {
  color: var(--color-white);
}

/* ==================== 价格卡片 ==================== */

/* 价格卡片网格 */
.pricingCards_ktLD {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-5);
  margin-bottom: var(--space-12);
  transition-delay: 0.2s;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

/* 价格卡片基础样式 */
.pricingCard_B5O8 {
  background: var(--bg-card);
  backdrop-filter: blur(20px);
  border-radius: var(--border-radius-card);
  padding: var(--space-5);
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
  position: relative;
  overflow: hidden;
  min-height: 420px;
  display: flex;
  flex-direction: column;
}

.pricingCard_B5O8::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--color-primary);
  transform: scaleX(0);
  transition: transform var(--transition-primary);
}

.pricingCard_B5O8:hover {
  transform: translateY(-8px);
  box-shadow: var(--hover-shadow-primary);
  border-color: var(--color-primary);
}

.pricingCard_B5O8:hover::before {
  transform: scaleX(1);
}

/* 推荐徽章 */
.recommendedBadge_fV38 {
  position: absolute;
  line-height: normal;
  top: -1px;
  right: 0rem;
  background: var(--color-primary);
  color: var(--color-white);
  padding: var(--space-2) var(--space-6);
  border-radius: 0 0 0rem var(--border-radius-card);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  box-shadow: var(--hover-shadow-primary);
}

/* 卡片头部 */
.cardHeader_B5ki {
  text-align: center;
  margin-top: var(--space-4);
}

.cardIcon_cGAY {
  font-size: var(--font-size-5xl);
  margin-bottom: var(--space-3);
}

.cardTitle_N6X5 {
  font-size: var(--font-size-lg) !important;
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--space-2);
  line-height: var(--card-title-line-height) !important;
  text-align: center;
}

.cardSubtitle_ftAM {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  margin: 0 0 var(--space-4) 0;
  line-height: var(--line-height-normal);
  text-align: center;
}

/* 价格部分 */
.cardPrice_LpdD {
  margin-bottom: var(--space-5);
  background: transparent;
  border-radius: 0;
  border: none;
  text-align: center;
}

.priceGroup_wmph {
  text-align: center;
}

.priceLabel_WIEt {
  display: block;
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  margin-bottom: var(--space-2);
}

.price_gZ3_ {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: var(--space-1);
}

.currency_Ua_j {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
}

.amount_IA09 {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--text-primary);
}

.period_ky3l {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  font-weight: var(--font-weight-medium);
}

/* 功能列表 */
.packageInfo_RTh0 {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-2);
  text-align: left;
}

.cardFeatures_oBxQ {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  flex: 1;
  margin-top: auto;
}

.cardFeatures_oBxQ .featureItem_Risk {
  display: block;
  font-size: var(--font-size-sm);
  color: var(--text-primary);
  padding: var(--space-1) 0;
  line-height: var(--line-height-normal);
  text-align: left;
}

/* 订购按钮 */
.cardAction_Mhem {
  margin-bottom: var(--space-4);
  padding: var(--space-2) 0;
}

.orderButton_g9fu {
  width: 100%;
  background: var(--color-gray-100);
  color: var(--text-secondary);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--border-radius-lg);
  padding: var(--space-3) var(--space-4);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: var(--transition-primary);
  box-shadow: none;
}

.orderButton_g9fu:hover {
  background: var(--color-gray-200);
  color: var(--text-primary);
}

.pricingCard_B5O8:hover .orderButton_g9fu {
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  box-shadow: var(--hover-shadow-primary);
}

.pricingCard_B5O8:hover .orderButton_g9fu:hover {
  transform: translateY(-1px);
  box-shadow: var(--hover-shadow-primary);
}

/* ==================== 自定义组合区域 ==================== */
.customPlanSection_qMH8 {
  max-width: 1400px;
  margin: 0 auto var(--space-16);
  transition-delay: 0.6s;
  opacity: 0;
  transform: translateY(20px);
}

.customAnimate_zxZK {
  animation: slideUpFade_vXw6 0.6s ease forwards;
}

@keyframes slideUpFade_vXw6 {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.customPlanCard_bFAC {
  background: var(--bg-card);
  backdrop-filter: blur(20px);
  border-radius: var(--border-radius-card);
  padding: var(--space-8) var(--space-10);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
  position: relative;
  overflow: hidden;
}

.customPlanCard_bFAC::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--color-primary);
  transform: scaleX(0);
  transition: transform var(--transition-primary);
}

.customPlanCard_bFAC:hover {
  transform: translateY(-8px);
  box-shadow: var(--hover-shadow-primary);
  border-color: var(--color-primary);
}

.customPlanCard_bFAC:hover::before {
  transform: scaleX(1);
}

.customPlanContent_nIX1 {
  margin-bottom: var(--space-6);
}

.customPlanTitle_upXq {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--text-primary);
  margin: 0 0 var(--space-4);
  line-height: 1.3;
}

.customPlanDescription_h2FC {
  font-size: var(--font-size-base);
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  margin: 0;
  max-width: 800px;
}

.customPlanAction_Jqem {
  width: 100%;
  display: flex;
  justify-content: center;
}

.customContactButton_NFDD {
  padding: var(--space-3) var(--space-10);
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-button);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: var(--transition-primary);
  box-shadow: var(--shadow-md);
  position: relative;
  overflow: hidden;
}

.customContactButton_NFDD::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s;
}

.customContactButton_NFDD:hover::before {
  left: 100%;
}

.customContactButton_NFDD:hover {
  box-shadow: var(--hover-shadow-primary);
}

/* ==================== 弹窗表单样式 ==================== */

.formGroup_EETX {
  margin-bottom: var(--space-5);
}

.formLabel_f5hV {
  display: block;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--text-primary);
  margin-bottom: var(--space-2);
}

.formLabelRow_t5CQ {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-2);
}

.helpLink_gQ29 {
  font-size: var(--font-size-sm);
  color: var(--color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  padding: var(--space-1) var(--space-2);
  border-radius: var(--border-radius-sm);
  transition: all 0.2s ease;
}

.helpLink_gQ29:hover {
  background: var(--color-primary-light);
  color: var(--color-primary-dark);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.formInput_vBL6 {
  width: 100%;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-md);
  font-size: var(--font-size-base);
  color: var(--text-primary);
  background: var(--bg-primary);
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.formInput_vBL6:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.formInputError_fm0I {
  border-color: #ef4444;
}

.formInputError_fm0I:focus {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
}

.errorMessage_Dtm0 {
  color: #ef4444;
  font-size: var(--font-size-sm);
  margin-top: var(--space-1);
}

.modalPlanInfo_l_KS {
  background: var(--bg-secondary);
  padding: var(--space-4);
  border-radius: var(--border-radius-md);
  margin-top: var(--space-4);
}

.planInfoTitle_iLkK {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--text-secondary);
  margin: 0 0 var(--space-2);
}

.planInfoText_b8g2 {
  font-size: var(--font-size-base);
  color: var(--text-primary);
  margin: 0;
}

/* 弹窗按钮样式 */
.modalButtonCancel_EfNf {
  flex: 1;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-md);
  background: var(--bg-primary);
  color: var(--text-secondary);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  transition: all 0.2s ease;
}

.modalButtonCancel_EfNf:hover {
  background: var(--bg-secondary);
  color: var(--text-primary);
}

.modalButtonConfirm_aSfW {
  flex: 1;
  padding: var(--space-3) var(--space-4);
  border: none;
  border-radius: var(--border-radius-md);
  background: var(--color-primary);
  color: white;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  box-shadow: 0 3px 6px rgba(61, 101, 253, 0.3), 0 1px 2px rgba(19, 28, 67, 0.2);
}

.modalButtonConfirm_aSfW::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
  transition: left 0.5s ease;
}

.modalButtonConfirm_aSfW:hover::before {
  left: 100%;
}

.modalButtonConfirm_aSfW:hover {
  box-shadow: 0 6px 20px rgba(61, 101, 253, 0.4), 0 2px 8px rgba(19, 28, 67, 0.3);
}

.modalButtonConfirm_aSfW:disabled {
  background: var(--text-tertiary);
  cursor: not-allowed;
}

/* ==================== 响应式布局 ==================== */

/* 布局说明：
   > 1024px: 4列布局（标准许可证卡片） + 自定义组合独立区域
   ≤ 1024px: 2列布局（标准许可证卡片） + 自定义组合独立区域
   ≤ 768px: 1列布局（所有内容）
*/

/* 中大屏优化 (≤1400px) */
@media (max-width: 1400px) {
  .pageTitle_Qvu8 {
    font-size: var(--font-size-4xl);
  }
  
  .cardTitle_N6X5 {
    font-size: var(--font-size-base) !important;
  }
  
  .amount_IA09 {
    font-size: var(--font-size-2xl);
  }
}

/* 大平板 (≤1024px) - 2列布局 */
@media (max-width: 1024px) {
  .pricing_cxVN {
    padding: var(--space-32) 0;
  }
  
  .pageHeader_LmB1 {
    margin: var(--space-12) 0;
  }
  
  .pricingCards_ktLD {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-5);
    margin-bottom: var(--space-12);
  }
  
  .pricingCard_B5O8 {
    min-height: 420px;
  }
  
  .recommended_ZKGj {
    transform: scale(1);
  }

  /* 自定义组合区域响应式 */
  .customPlanCard_bFAC {
    padding: var(--space-6) var(--space-8);
  }
  
  .customPlanTitle_upXq {
    font-size: var(--font-size-xl);
  }
  
  .customPlanDescription_h2FC {
    font-size: var(--font-size-sm);
  }
  
  .customContactButton_NFDD {
    padding: var(--space-3) var(--space-8);
  }
  
  .tabGroup_jGND {
    width: 100%;
    max-width: 600px;
  }
  
  .tab_ycOy {
    padding: var(--space-3) var(--space-4);
    font-size: var(--font-size-sm);
    min-width: auto;
  }
  
  .yearlyBadge_Vb1K {
    display: block;
    margin-top: 2px;
  }
}

/* 平板 (≤768px) - 保持2列布局 */

/* 手机 (≤768px) - 每行1个卡片 */
@media (max-width: 768px) {
  .pricing_cxVN {
    padding: var(--space-16) 0;
  }

  .pageHeader_LmB1 {
    margin: var(--space-6) 0;
  }

  .pageTitle_Qvu8 {
    font-size: var(--font-size-2xl);
    margin-bottom: var(--space-3);
  }
  
  .pageSubtitle_s72k {
    font-size: var(--font-size-sm);
  }
  
  .tabContainer_KY3u {
    margin-bottom: var(--space-6);
  }
  
  .tab_ycOy {
    padding: var(--space-2) var(--space-2);
    font-size: 12px;
    gap: var(--space-1);
  }
  
  .tabSlider_sz8p {
    width: calc(33.333% - 3px);
  }
  
  .tabSliderYearly_nhfm {
    transform: translateX(calc(100% + 3px));
  }
  
  .tabSliderBuyout_A07R {
    transform: translateX(calc(200% + 6px));
  }
  
  .yearlyBadge_Vb1K {
    font-size: 9px;
  }
  
  .pricingCards_ktLD {
    grid-template-columns: 1fr;
    gap: var(--space-4);
    margin-bottom: var(--space-8);
  }
  
  .pricingCard_B5O8 {
    padding: var(--space-4);
    min-height: 360px;
  }
  
  /* 自定义组合手机端布局 */
  .customPlanCard_bFAC {
    padding: var(--space-5) var(--space-6);
  }
  
  .customPlanContent_nIX1 {
    margin-bottom: var(--space-5);
  }
  
  .customPlanTitle_upXq {
    font-size: var(--font-size-lg);
    margin-bottom: var(--space-3);
  }
  
  .customPlanDescription_h2FC {
    font-size: var(--font-size-sm);
  }
  
  .customContactButton_NFDD {
    width: 100%;
    max-width: 300px;
    padding: var(--space-3) var(--space-6);
    font-size: var(--font-size-sm);
  }
  
  .cardHeader_B5ki {
    margin-top: var(--space-3);
  }
  
  .cardTitle_N6X5 {
    font-size: var(--font-size-base) !important;
    margin-bottom: var(--space-2);
  }
  
  .cardSubtitle_ftAM {
    font-size: var(--font-size-xs);
  }
  
  .amount_IA09 {
    font-size: var(--font-size-2xl);
  }
  
  .period_ky3l {
    font-size: var(--font-size-xs);
  }
  
  .cardFeatures_oBxQ .featureItem_Risk {
    font-size: var(--font-size-xs);
    padding: var(--space-1) 0;
  }
  
  .orderButton_g9fu {
    padding: var(--space-2-5) var(--space-3);
    font-size: var(--font-size-sm);
  }
  
  .recommendedBadge_fV38 {
    font-size: var(--font-size-xs);
  }
}

/* DownloadSection 样式 - 遵循统一设计规范 */

/* 页面特定变量 */
:root {
  --page-title-line-height: 1.5;
  --card-title-line-height: 1.3;
}

/* 中文主题变量 */
:root[lang="zh"] {
  --page-title-line-height: 1.4;
  --card-title-line-height: 1.4;
}

/* ===== 页面容器 ===== */
.download_UU0T {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--bg-secondary);
  color: var(--text-primary);
  position: relative;
  overflow: hidden;
  font-family: var(--font-primary);
  padding: var(--section-padding);
}

/* ===== 页面布局 ===== */
.sectionContent_CdpN {
  margin: 0 auto;
  max-width: 1400px;
  width: 100%;
}


/* ===== 页面标题 ===== */
.pageHeader_jmUS {
  text-align: center;
  margin-bottom: var(--space-4);
  margin-top: var(--space-8);
}

.pageTitle_JRgz {
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-secondary);
  margin-bottom: var(--space-6);
  line-height: var(--page-title-line-height) !important;
}

.pageSubtitle_xLG7 {
  font-size: var(--font-size-subtitle);
  color: var(--text-secondary);
  max-width: 800px;
  margin: 0 auto;
  line-height: var(--line-height-relaxed);
}


/* ===== 下载内容区域 ===== */
.downloadContent_ZEpk {
  margin: var(--space-12) 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  align-items: stretch;
}

/* ===== 网格布局 ===== */
.desktopCards_yN9J {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
  align-items: stretch;
}

.dockerCard_RRBK {
  width: 100%;
}

/* ===== 移动端顶部提示条 ===== */
.mobileTopBanner_Y1Ud {
  background: #EFF6FF; /* 浅蓝色背景 */
  border-bottom: 1px solid #DBEAFE;
  color: #1E40AF; /* 深蓝色文字 */
  padding: var(--space-6) var(--space-2);
  text-align: center;
  position: relative;
  width: 100%;
  margin-top: 64px; /* 避开固定导航栏 */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
}

/* 添加一个左侧强调线 */
.mobileTopBanner_Y1Ud::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: #3B82F6; /* 提示蓝色 */
}

.mobileTopBannerContent_Ckpz {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  max-width: 600px;
  margin: 0 auto;
}

.mobileTopBannerTitle_dVf2 {
  font-size: var(--font-size-base);
  font-weight: 600;
  margin: 0;
  color: #1E3A8A; /* 更深的标题色 */
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

/* 添加提示图标 */
.mobileTopBannerTitle_dVf2::before {
  content: "ⓘ"; /* 简单的信息图标，也可以用 SVG */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: #3B82F6;
  color: white;
  border-radius: 50%;
  font-size: 18px;
  font-weight: bold;
  font-family: serif; /* 让 i 看起来更像图标 */
}

.mobileTopBannerDescription_D0eJ {
  font-size: var(--font-size-sm);
  margin: 0;
  opacity: 1;
  line-height: 1.5;
  color: #1E40AF;
}

/* ===== 版本卡片 ===== */
.versionCard_Qmcp {
  background: var(--bg-card);
  backdrop-filter: blur(15px);
  border-radius: var(--border-radius-card);
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
  padding: var(--card-padding);
  display: flex;
  align-items: center;
  gap: var(--space-8);
  position: relative;
  overflow: hidden;
}

.versionCard_Qmcp:hover {
  box-shadow: var(--shadow-md) !important;
  border-color: var(--color-primary);
  background: var(--bg-card-hover);
}

.versionHeader_WbKh {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.versionIcon_nrr5 {
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-secondary);
  flex-shrink: 0;
}

.iconSvg_xa3t {
  width: 64px;
  height: 64px;
  display: block;
  flex-shrink: 0;
}

.iconWindows_fXb4 {
  transform: scale(0.9);
}

.iconMac_Il9_ {
  transform: scale(1.05);
}

.iconDocker_OZ4f {
  transform: scale(1.0);
}

.versionTitle_V1Al {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-secondary);
  margin: 0;
}

.versionDescription_YVVY {
  font-size: var(--font-size-base);
  color: var(--text-secondary);
  line-height: var(--line-height-normal);
  margin: var(--space-2) 0;
}

.versionInfo_uDkQ {
  margin-bottom: var(--space-6);
}

.requirements_D4uu {
  margin-bottom: var(--space-6);
}

.requirementsTitle_RyZH {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--space-3);
}

.requirementsList_Pe98 {
  list-style: none;
  padding: 0;
  margin: 0;
}

.requirementsList_Pe98 li {
  padding: var(--space-2) 0;
  color: var(--text-secondary);
  position: relative;
  padding-left: var(--space-6);
}

.requirementsList_Pe98 li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #10b981;
  font-weight: var(--font-weight-bold);
}

/* ===== 下载按钮 ===== */
.downloadActions__7F6 {
  display: flex;
  flex-direction: row;
  gap: var(--space-3);
  margin: 0;
  flex-wrap: wrap;
}

.downloadButton_bRBu {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-3) var(--space-5);
  background: var(--color-primary);
  color: var(--color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
  border-radius: var(--border-radius-button);
  font-weight: var(--font-weight-semibold);
  transition: var(--transition-primary);
  box-shadow: var(--shadow-md);
  font-size: var(--font-size-base);
  letter-spacing: 0.02em;
  border: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.downloadButton_bRBu::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s;
}

.downloadButton_bRBu:hover::before {
  left: 100%;
}

.downloadButton_bRBu:hover {
  box-shadow: var(--hover-shadow-primary);
  color: var(--color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* ===== 次按钮样式 ===== */
.downloadButtonSecondary_wo_4 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-3) var(--space-5);
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  border-radius: var(--border-radius-button);
  font-weight: var(--font-weight-semibold);
  transition: var(--transition-primary);
  position: relative;
  overflow: hidden;
  cursor: pointer;
  font-size: var(--font-size-base);
  letter-spacing: 0.02em;
}

.downloadButtonSecondary_wo_4::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s;
}

.downloadButtonSecondary_wo_4:hover::before {
  left: 100%;
}

.downloadButtonSecondary_wo_4:hover {
  box-shadow: var(--hover-shadow-primary);
  background: transparent;
  color: var(--color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* ===== 安装步骤 ===== */
.installationSteps_UPLG {
  margin-bottom: var(--space-6);
}

.stepsTitle_A20o {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--space-3);
}

.stepsList_rSr4 {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: step-counter;
}

.stepsList_rSr4 li {
  padding: var(--space-3) 0;
  color: var(--text-secondary);
  position: relative;
  padding-left: var(--space-10);
  counter-increment: step-counter;
}

.stepsList_rSr4 li::before {
  content: counter(step-counter);
  position: absolute;
  left: 0;
  top: var(--space-3);
  width: var(--space-6);
  height: var(--space-6);
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  color: var(--color-white);
  border-radius: var(--border-radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
}

/* ===== 警告框 ===== */
.warningBox_dzx6 {
  background: #fef3cd;
  border: 1px solid #fde68a;
  border-radius: var(--border-radius-md);
  padding: var(--space-4);
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-6);
}

.warningIcon_RjJ8 {
  font-size: var(--font-size-xl);
  color: #d97706;
}

.warningContent_NN44 {
  flex: 1;
}

.warningTitle_R02w {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  color: #d97706;
  margin: 0 0 var(--space-2) 0;
}

.warningText_z4yJ {
  font-size: var(--font-size-sm);
  color: #92400e;
  margin: 0;
  line-height: var(--line-height-normal);
}

/* ===== 代码块容器 ===== */
.codeContainer_CZlm {
  position: relative;
  width: 100%;
}

/* ===== 代码块 ===== */
.codeBlock_X5_j {
  background: var(--color-gray-900);
  border-radius: var(--border-radius-md);
  margin: 0;
  overflow: hidden;
  width: 100%;
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--color-gray-700);
}

.codeContent_GB55 {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding: var(--space-4);
  margin: 0;
  overflow-x: auto;
  flex-wrap: wrap;
  gap: 0;
}

.codePrompt_s27p {
  color: #00ff88;
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-sm);
  margin-right: var(--space-2);
  flex-shrink: 0;
  line-height: var(--line-height-normal);
  margin-top: 0;
}

.codeText_XQNd {
  display: flex;
  flex: 1;
  align-items: flex-start;
  gap: var(--space-2);
}

.codeContent_GB55 code {
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: var(--font-size-sm);
  background: transparent;
  color: var(--color-gray-200);
  line-height: var(--line-height-normal);
  white-space: pre-wrap;
  word-break: break-all;
  flex: 1;
  padding: 0;
}

/* ===== 代码块操作按钮 ===== */
.codeActions_hgzX {
  display: flex;
  align-items: center;
  /* justify-content: flex-end; */
  margin-top: var(--space-3);
  padding: 0;
}

.copyButton_W66z {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-3) var(--space-5);
  background: var(--color-primary);
  color: var(--color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
  border-radius: var(--border-radius-button);
  font-weight: var(--font-weight-semibold);
  transition: var(--transition-primary);
  box-shadow: var(--shadow-md);
  font-size: var(--font-size-base);
  border: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.copyButton_W66z::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s;
}

.copyButton_W66z:hover::before {
  left: 100%;
}

.copyButton_W66z:hover {
  box-shadow: var(--hover-shadow-primary);
  color: var(--color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* ===== 帮助链接 ===== */
.helpLink_tMYu {
  margin-top: var(--space-8);
  text-align: center;
  padding: 0 var(--space-4);
}

.helpLink_tMYu a {
  color: var(--color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  transition: var(--transition-fast);
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
}

.helpLink_tMYu a:hover {
  color: var(--color-secondary);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.helpLink_tMYu a::after {
  content: "→";
  font-size: var(--font-size-xs);
  transition: transform var(--transition-fast);
}

.helpLink_tMYu a:hover::after {
  transform: translateX(var(--space-1));
}

/* ===== 响应式设计 ===== */
@media (max-width: 768px) {
  .pageTitle_JRgz {
    font-size: var(--font-size-4xl);
  }
  
  .pageSubtitle_xLG7 {
    font-size: var(--font-size-base);
  }
  
  .versionTitle_V1Al {
    font-size: var(--font-size-xl);
  }
  
  .versionIcon_nrr5 {
    width: 56px;
    height: 56px;
  }
  
  .iconSvg_xa3t {
    width: 44px;
    height: 44px;
  }
  
  .desktopCards_yN9J {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }
  
  .versionCard_Qmcp {
    padding: var(--space-6);
    flex-direction: column;
    text-align: center;
    gap: var(--space-6);
  }

  .versionHeader_WbKh {
    text-align: center;
  }
  
  .downloadActions__7F6 {
    justify-content: center;
  }
  
  .codeContent_GB55 {
    padding: var(--space-3);
  }
  
  .codeText_XQNd {
    margin-bottom: var(--space-3);
  }
  
  .codeContent_GB55 code {
    text-align: left;
  }
  
  .codeActions_hgzX {
    justify-content: center;
    margin-top: var(--space-2);
  }
}

@media (max-width: 480px) {
  .download_UU0T {
    padding: 0;
    padding-bottom: var(--space-16);
  }
  
  .sectionContent_CdpN {
    padding: 0 var(--space-4);
  }
  
  .pageHeader_jmUS {
    margin: var(--space-8) 0;
  }
  
  .pageTitle_JRgz {
    font-size: var(--font-size-3xl);
  }
  
  .versionCard_Qmcp {
    padding: var(--space-4);
  }
  
  .versionIcon_nrr5 {
    width: 50px;
    height: 50px;
  }
  
  .iconSvg_xa3t {
    width: 40px;
    height: 40px;
  }
}

/* MacSecurityPage 样式 - 遵循统一设计规范 */

/* ===== 页面内容样式 ===== */
.pageContent_o38a {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  padding: var(--section-padding);
}

.pageHeader__xCU {
  text-align: center;
  margin-bottom: var(--space-4);
  margin-top: var(--space-8);
}

.pageTitle_MlgF {
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-secondary);
  margin-bottom: var(--space-6);
  line-height: var(--page-title-line-height) !important;
}

.pageBody_D7DT {
  padding: 0 var(--space-8);
  flex: 1;
}

.pageText_XNww {
  font-size: var(--font-size-lg);
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  margin: 0 0 var(--space-8) 0;
  text-align: center;
}

.pageImage_ZKcq {
  text-align: center;
  margin-bottom: var(--space-6);
}


/* 响应式设计 */
@media (max-width: 768px) {
  .pageHeader__xCU {
    padding: var(--space-6) var(--space-6) var(--space-4);
  }
  
  .pageTitle_MlgF {
    font-size: var(--font-size-2xl);
  }
  
  .pageBody_D7DT {
    padding: var(--space-6);
  }
  
  .pageText_XNww {
    font-size: var(--font-size-base);
  }
}

/* Mac Security Page Styles - 遵循统一设计规范 */

.container_ISTr {
  min-height: 100vh;
  background: var(--bg-secondary);
  color: var(--text-primary);
  font-family: var(--font-primary);
}

.content_OnkK {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: var(--section-padding);
}

/* 页面区域 */
.section_Kmq4 {
    min-height: 100vh;
    padding: var(--section-padding);
    background: var(--bg-secondary);
}

.container_L5DM {
    max-width: 1000px;
    margin: 0 auto;
    padding: var(--space-16) var(--space-6) var(--space-20);
}

/* 页面标题 */
.header_vQFL {
    text-align: center;
    margin-bottom: var(--space-12);
}

.title_FSkr {
    font-size: var(--font-size-5xl);
    font-weight: var(--font-weight-bold);
    color: var(--color-gray-800);
    margin: 0 0 var(--space-4) 0;
    letter-spacing: -0.02em;
}

.subtitle_ouAJ {
    font-size: var(--font-size-lg);
    color: var(--color-gray-500);
    margin: 0 auto;
    max-width: 37.5rem;
    line-height: var(--line-height-relaxed);
}

/* 主内容区域 */
.content_h6Ip {
    display: grid;
    grid-template-columns: 1fr 20rem;
    gap: var(--space-8);
    align-items: stretch;
}

/* 左侧表单区域 */
.formSection__dy2 {
    background: var(--color-white);
    border-radius: var(--border-radius-xl);
    box-shadow: var(--shadow-lg);
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--color-gray-200);
    display: flex;
    flex-direction: column;
}

.formHeader_Incc {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-4) var(--space-6);
    border-bottom: 1px solid var(--color-gray-100);
    flex-shrink: 0;
}

.formIframe_QiDX {
    width: 100%;
    flex: 1;
    min-height: 460px;
    border: none;
    display: block;
}

/* 右侧联系方式区域 */
.contactSection_Od9n {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
}

/* 联系卡片 */
.contactCard_mtZS {
    background: var(--color-white);
    border-radius: var(--border-radius-card);
    padding: var(--space-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--color-gray-200);
    transition: var(--transition-normal);
    text-align: center;
}

.contactCard_mtZS:last-child {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.contactCard_mtZS:last-child .cardHeader_IXDq {
    flex-shrink: 0;
    margin-bottom: 0;
}

.contactCard_mtZS:last-child .emailContent_cnXa {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contactCard_mtZS:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-0.125rem);
    border-color: var(--color-gray-300);
}

.cardHeader_IXDq {
    display: flex;
    align-items: center;
    justify-content: left;
    gap: var(--space-3);
    margin-bottom: var(--space-5);
}

.cardIcon_yMwz {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--bg-secondary);
    border-radius: var(--border-radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
}

.cardTitle_LiXp {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-semibold);
    color: var(--color-gray-800);
}

.cardDesc_SJn6 {
    font-size: var(--font-size-sm);
    color: var(--color-gray-500);
    margin: 0;
    line-height: var(--line-height-normal);
}

/* 二维码样式 */
.qrWrapper_xf0B {
    display: flex;
    justify-content: center;
    margin-bottom: var(--space-4);
}

.qrCode_loXY {
    width: 8.75rem;
    height: 8.75rem;
    object-fit: contain;
}

/* 邮件内容 */
.emailContent_cnXa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
}

.emailAddress_Vbnn {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary);
    -webkit-text-decoration: none;
    text-decoration: none;
    transition: var(--transition-fast);
    line-height: 2.5rem;
}

.emailAddress_Vbnn:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
}

/* 复制按钮 */
.copyButton_IgSN {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    background: transparent;
    border: none;
    color: var(--color-gray-400);
    border-radius: var(--border-radius-md);
    cursor: pointer;
    transition: var(--transition-fast);
    flex-shrink: 0;
    vertical-align: middle;
}

.copyButton_IgSN:hover {
    color: var(--color-primary);
    background: rgba(var(--color-primary-rgb), 0.08);
}

/* 响应式设计 */

@media (max-width: 768px) {
    .section_Kmq4 {
        padding: var(--space-24) 0;
    }

    .container_L5DM {
        padding: var(--space-6) var(--space-4) var(--space-10);
    }

    .content_h6Ip {
        grid-template-columns: 1fr;
        gap: var(--space-6);
    }

    .formSection__dy2 {
        max-height: none;
        order: 2;
    }

    .formIframe_QiDX {
        min-height: 520px;
    }

    .contactSection_Od9n {
        position: static;
        flex-direction: column;
        flex-wrap: wrap;
        order: 1;
    }

    .contactCard_mtZS {
        min-width: auto;
    }

    .contactCard_mtZS:last-child {
        flex: none;
    }

    .title_FSkr {
        font-size: var(--font-size-3xl);
    }

    /* .subtitle {
        display: none;
    } */

    .header_vQFL {
        margin-bottom: var(--space-8);
    }
}
/* 页面容器 */
.pageContainer_eHMv {
    min-height: 100vh;
}

/* 博客列表页面样式 - 按照原型设计 */

.container_NYnH {
  min-height: 100vh;
  background: var(--bg-secondary);
  padding: var(--section-padding);
}

.pageHeader_tMTm {
  text-align: center;
  margin-bottom: var(--space-16);
  margin-top: var(--space-8);
}

.pageTitle_rr4M {
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-secondary);
  margin-bottom: var(--space-6);
  line-height: 1.5;
}

.pageSubtitle_qCGc {
  font-size: var(--font-size-subtitle);
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  max-width: 800px;
  margin: 0 auto;
}

/* 博客网格区域 */
.blogGridSection_ad84 {
  overflow-x: hidden; /* 防止横向滚动 */
}

.blogGrid_ARw5 {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--container-padding);
  padding-bottom: var(--space-8);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-10);
  row-gap: var(--space-10); /* 增大行间距，避免阴影被下一行遮挡 */
  overflow-x: hidden; /* 防止横向滚动 */
  align-items: stretch; /* 确保同一行卡片高度一致 */
}

.blogCardLink_PiDy {
  display: block;
  width: 100%;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: inherit;
}

.blogCard_Ofqz {
  background: var(--bg-card);
  backdrop-filter: blur(15px);
  border-radius: var(--border-radius-card);
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
  position: relative;
  overflow: hidden;
  padding: var(--card-padding);
  z-index: 0; /* 使 hover 时可叠在上层 */
  height: 100%; /* 确保卡片占满网格高度 */
  display: flex;
  flex-direction: column;
}

.blogCardLink_PiDy:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
  color: inherit;
}

.blogCard_Ofqz:hover {
  box-shadow: var(--shadow-md);
  border-color: var(--color-primary);
  background: var(--bg-card-hover);
  z-index: 2;
}

.cardContent_Ur6P {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  height: 100%;
  min-width: 0; /* 允许子元素在 flex 下收缩 */
  flex-grow: 1; /* 占据剩余空间 */
}

.cardText_Zn9s {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
  order: 1; /* 文字内容在上方 */
}

.cardTitle_WXfy {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-4);
  color: var(--text-primary);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  word-break: break-word;
  flex-shrink: 0;
}

.cardExcerpt_ErEw {
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--space-6);
  display: -webkit-box;
  -webkit-line-clamp: 3; /* 减少为 2 行，给标题更多空间 */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 0;
}

.cardMeta_PD49 {
  display: flex;
  justify-content: space-between; /* 左侧时间，右侧阅读更多 */
  align-items: center;
  gap: var(--space-5);
  font-size: var(--font-size-sm);
  color: var(--text-tertiary);
}

.postDate_wFgI {
  font-weight: var(--font-weight-medium);
}

.readMoreIndicator_jfaT {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-primary);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  transition: var(--transition-primary);
  cursor: pointer;
  opacity: 0; /* 默认隐藏 */
  transform: translateX(-4px); /* 默认向左偏移 */
}

.blogCard_Ofqz:hover .readMoreIndicator_jfaT {
  opacity: 1; /* hover 时显示 */
  transform: translateX(0); /* hover 时回到正常位置 */
}

.readMoreIndicator_jfaT svg {
  transition: transform var(--transition-primary);
}

.blogCard_Ofqz:hover .readMoreIndicator_jfaT svg {
  transform: translateX(0); /* hover 时图标也在正常位置 */
}

/* 图片相关样式已移除 */

/* 分页 */
.paginatorWrapper_UwnL {
  padding: var(--space-16) 0;
  display: flex;
  justify-content: center;
}

/* 订阅区域 */
.subscriptionSection_xIMy {
  padding: var(--space-32) 0;
  background: var(--bg-secondary);
}

.subscriptionContent_enFV {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--container-padding);
  display: flex;
  align-items: center;
  gap: var(--space-16);
}

.subscriptionText_E4m5 {
  flex: 1;
}

.subscriptionTitle_suAu {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--text-primary);
  margin-bottom: var(--space-5);
}

.subscriptionDescription_PVEG {
  font-size: var(--font-size-lg);
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  max-width: 500px;
}

.subscriptionForm_uIIW {
  flex: 0 0 400px;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.emailInput_z91g {
  padding: var(--space-5);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-md);
  background: var(--bg-card);
  color: var(--text-primary);
  font-size: var(--font-size-base);
}

.emailInput_z91g:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(61, 101, 253, 0.1);
}

.subscribeButton_jzSI {
  padding: var(--space-5);
  background: var(--color-primary);
  color: white;
  border: none;
  border-radius: var(--border-radius-md);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: var(--transition-primary);
}

.subscribeButton_jzSI:hover {
  background: var(--color-primary-hover);
}

.successMessage_XiZq {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-success);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
}

/* 响应式设计 */

@media (max-width: 1024px) {
  /* .container {
    padding: var(--space-8);
  } */
  
  .pageHeader_tMTm {
    margin-bottom: var(--space-12);
    margin-top: var(--space-6);
  }
  
  .pageTitle_rr4M {
    font-size: var(--font-size-4xl);
    margin-bottom: var(--space-5);
  }
  
  .pageSubtitle_qCGc {
    font-size: var(--font-size-lg);
    max-width: 600px;
  }
  
  .blogGrid_ARw5 {
    max-width: 1000px;
    padding: 0 var(--space-6);
    gap: var(--space-8);
    row-gap: var(--space-8);
  }
  
  .subscriptionContent_enFV {
    flex-direction: column;
    gap: var(--space-12);
    text-align: center;
  }
  
  .subscriptionForm_uIIW {
    flex: none;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
}

@media (max-width: 768px) {
  /* .container {
    padding: var(--space-6);
  } */
  
  .pageHeader_tMTm {
    margin-bottom: var(--space-10);
    margin-top: var(--space-4);
  }
  
  .pageTitle_rr4M {
    font-size: var(--font-size-3xl);
    margin-bottom: var(--space-4);
  }
  
  .pageSubtitle_qCGc {
    font-size: var(--font-size-base);
    max-width: 500px;
    padding: 0 var(--space-4);
  }
  
  .blogGrid_ARw5 {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    row-gap: var(--space-6);
    padding: 0 var(--space-4);
  }
  
  .blogCard_Ofqz {
    padding: var(--space-5);
  }
  
  .cardContent_Ur6P {
    gap: var(--space-5);
  }
  
  .cardTitle_WXfy {
    font-size: var(--font-size-lg);
    margin-bottom: var(--space-3);
  }
  
  .cardExcerpt_ErEw {
    margin-bottom: var(--space-5);
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  
  .cardMeta_PD49 {
    gap: var(--space-4);
    font-size: var(--font-size-xs);
  }
  
  .subscriptionSection_xIMy {
    padding: var(--space-20) 0;
  }
  
  .subscriptionContent_enFV {
    padding: 0 var(--space-4);
    gap: var(--space-10);
  }
  
  .subscriptionTitle_suAu {
    font-size: var(--font-size-2xl);
    margin-bottom: var(--space-4);
  }
  
  .subscriptionDescription_PVEG {
    font-size: var(--font-size-sm);
    max-width: 400px;
  }
  
  .subscriptionForm_uIIW {
    max-width: 350px;
    gap: var(--space-4);
  }
  
  .emailInput_z91g,
  .subscribeButton_jzSI {
    padding: var(--space-4);
    font-size: var(--font-size-sm);
  }
}

@media (max-width: 480px) {
  /* .container {
    padding: var(--space-4);
  } */
  
  .pageHeader_tMTm {
    margin-bottom: var(--space-8);
    margin-top: var(--space-3);
  }
  
  .pageTitle_rr4M {
    font-size: var(--font-size-2xl);
    margin-bottom: var(--space-3);
    line-height: 1.3;
  }
  
  .pageSubtitle_qCGc {
    font-size: var(--font-size-sm);
    max-width: 350px;
    line-height: 1.4;
  }
  
  .blogGrid_ARw5 {
    gap: var(--space-5);
    row-gap: var(--space-5);
    padding: 0 var(--space-3);
  }
  
  .blogCard_Ofqz {
    padding: var(--space-4);
  }
  
  .cardContent_Ur6P {
    gap: var(--space-4);
  }
  
  .cardTitle_WXfy {
    font-size: var(--font-size-base);
    margin-bottom: var(--space-2);
    line-height: 1.3;
  }
  
  .cardExcerpt_ErEw {
    margin-bottom: var(--space-4);
    font-size: var(--font-size-sm);
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  
  .cardMeta_PD49 {
    gap: var(--space-3);
    font-size: var(--font-size-xs);
  }
  
  .readMoreIndicator_jfaT {
    font-size: var(--font-size-xs);
  }
  
  .subscriptionSection_xIMy {
    padding: var(--space-16) 0;
  }
  
  .subscriptionContent_enFV {
    padding: 0 var(--space-3);
    gap: var(--space-8);
  }
  
  .subscriptionTitle_suAu {
    font-size: var(--font-size-xl);
    margin-bottom: var(--space-3);
  }
  
  .subscriptionDescription_PVEG {
    font-size: var(--font-size-xs);
    max-width: 300px;
    line-height: 1.4;
  }
  
  .subscriptionForm_uIIW {
    max-width: 300px;
    gap: var(--space-3);
  }
  
  .emailInput_z91g,
  .subscribeButton_jzSI {
    padding: var(--space-3);
    font-size: var(--font-size-xs);
  }
}
.page_WFRR {
    min-height: 100vh;
    background: #ffffff;
    color: #131c43;
}

.hero_OGCe {
    padding: 148px 24px 72px;
    background:
        linear-gradient(180deg, rgba(61, 101, 253, 0.08), rgba(255, 255, 255, 0)),
        #ffffff;
    border-bottom: 1px solid rgba(19, 28, 67, 0.08);
}

.heroInner_S6h9,
.sectionInner__6xd {
    max-width: 1180px;
    margin: 0 auto;
}

.heroContent_to4R {
    max-width: 820px;
}

.eyebrow_iUy1 {
    margin: 0 0 16px;
    color: #3d65fd;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.heroTitle_gotT {
    margin: 0 0 20px;
    color: #131c43;
    font-size: 3.25rem;
    line-height: 1.12;
    font-weight: 850;
    letter-spacing: 0;
}

.heroDescription_X6SS {
    margin: 0;
    color: #4b5563;
    font-size: 1.14rem;
    line-height: 1.85;
}

.section_ufc7 {
    padding: 72px 24px;
}

.sectionAlt_uFF9 {
    padding: 72px 24px;
    background: #f7f9ff;
}

.productList_h_CL,
.industryList_FGD2 {
    display: grid;
    gap: 28px;
}

.productCard_CJTi,
.industryCard_g2Ic {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
    gap: 32px;
    align-items: stretch;
    padding: 34px;
    border: 1px solid rgba(19, 28, 67, 0.1);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 16px 40px rgba(19, 28, 67, 0.06);
}

.productCardAlt_xyIm,
.industryCardAlt_iumO {
    background: #f8fbff;
}

.productVisual_NO8D,
.industryStat_qc8o {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 260px;
    padding: 28px;
    border-radius: 8px;
    border: 1px solid rgba(61, 101, 253, 0.13);
    background:
        linear-gradient(135deg, rgba(61, 101, 253, 0.1), rgba(19, 28, 67, 0.02)),
        #ffffff;
}

.productVisual_NO8D {
    gap: 22px;
    align-items: center;
}

.productImage_nXGR {
    width: 100%;
    height: clamp(240px, 32vw, 430px);
    object-fit: contain;
    border: 1px solid rgba(19, 28, 67, 0.1);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(19, 28, 67, 0.08);
}

.efficiencyBadge_Z9Qm {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    padding: 10px 14px;
    border-radius: 8px;
    background: rgba(61, 101, 253, 0.08);
    color: #244bef;
    font-weight: 800;
    line-height: 1.4;
}

.cardContent_zjQn {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.iconBox_YA5h {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin-bottom: 20px;
    border-radius: 8px;
    background: rgba(61, 101, 253, 0.08);
    color: #3d65fd;
}

.iconBox_YA5h svg {
    width: 28px;
    height: 28px;
}

.emojiIcon_PiW6 {
    font-size: 2rem;
    line-height: 1;
}

.cardTitle_Jxs9 {
    margin: 0 0 14px;
    color: #131c43;
    font-size: 1.7rem;
    line-height: 1.25;
    font-weight: 820;
    letter-spacing: 0;
}

.cardDescription_berk {
    margin: 0 0 18px;
    color: #4b5563;
    font-size: 1.02rem;
    line-height: 1.8;
}

.featureList_Z2C8 {
    display: grid;
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.featureItem_rLeq {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #475569;
    line-height: 1.55;
}

.checkIcon_mcah {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    color: #3d65fd;
}

.industryCard_g2Ic {
    grid-template-columns: minmax(0, 1.18fr) minmax(240px, 0.82fr);
}

.industryCardReverse_auUV {
    grid-template-columns: minmax(240px, 0.82fr) minmax(0, 1.18fr);
}

.industryCardReverse_auUV .industryStat_qc8o {
    order: -1;
}

.industryStat_qc8o {
    align-items: center;
    text-align: center;
}

.statEmoji_pxYC {
    display: block;
    margin-bottom: 18px;
    font-size: 3rem;
    line-height: 1;
}

.statValue_tObA {
    margin: 0 0 8px;
    color: #3d65fd;
    font-size: 2.55rem;
    line-height: 1.1;
    font-weight: 850;
}

.statLabel__C0r {
    margin: 0;
    color: #64748b;
    font-weight: 750;
}

.sectionHeader_OTXs {
    max-width: 720px;
    margin: 0 auto 34px;
    text-align: center;
}

.sectionTitle_Q3iq {
    margin: 0 0 10px;
    color: #131c43;
    font-size: 2.2rem;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: 0;
}

.sectionSubtitle_yq9g {
    margin: 0;
    color: #64748b;
    font-size: 1.05rem;
    line-height: 1.7;
}

.comparison_PcIB {
    overflow: hidden;
    border: 1px solid rgba(19, 28, 67, 0.1);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 16px 40px rgba(19, 28, 67, 0.06);
}

.comparisonRow_NiUb {
    display: grid;
    grid-template-columns: 1fr 1.25fr 1.05fr;
    border-bottom: 1px solid rgba(19, 28, 67, 0.08);
}

.comparisonRow_NiUb:last-child {
    border-bottom: 0;
}

.comparisonHead_QpeS {
    background: #f1f5ff;
}

.comparisonCell_f7kG {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 18px 20px;
    color: #475569;
    line-height: 1.5;
}

.comparisonHead_QpeS .comparisonCell_f7kG {
    color: #131c43;
    font-weight: 800;
}

.comparisonLabel_y2cB {
    color: #131c43;
    font-weight: 800;
}

.positiveIcon_ZZcY,
.negativeIcon_tRyV {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
}

.positiveIcon_ZZcY {
    color: #2563eb;
}

.negativeIcon_tRyV {
    color: #94a3b8;
}

.cta_JpxQ {
    padding: 76px 24px;
    background: #131c43;
    color: #ffffff;
    text-align: center;
}

.ctaInner_x19l {
    max-width: 760px;
    margin: 0 auto;
}

.ctaTitle_s814 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 2.15rem;
    line-height: 1.25;
    font-weight: 850;
    letter-spacing: 0;
}

.ctaDescription_ZdcX {
    margin: 0 auto 28px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 1.06rem;
    line-height: 1.8;
}

.ctaButton_iYnP {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 8px;
    background: #3d65fd;
    color: #ffffff;
    font-weight: 800;
    -webkit-text-decoration: none;
    text-decoration: none;
    transition: background 180ms ease, transform 180ms ease;
}

.ctaButton_iYnP:hover {
    color: #ffffff;
    background: #5578ff;
    -webkit-text-decoration: none;
    text-decoration: none;
    transform: translateY(-1px);
}

.buttonIcon_wQhD {
    width: 18px;
    height: 18px;
}

@media (max-width: 980px) {
    .productCard_CJTi,
    .industryCard_g2Ic,
    .industryCardReverse_auUV {
        grid-template-columns: 1fr;
    }

    .industryCardReverse_auUV .industryStat_qc8o {
        order: initial;
    }

    .productVisual_NO8D,
    .industryStat_qc8o {
        min-height: auto;
    }
}

@media (max-width: 768px) {
    .hero_OGCe {
        padding: 120px 18px 54px;
    }

    .heroTitle_gotT {
        font-size: 2.35rem;
    }

    .heroDescription_X6SS {
        font-size: 1rem;
    }

    .section_ufc7,
    .sectionAlt_uFF9 {
        padding: 52px 18px;
    }

    .productCard_CJTi,
    .industryCard_g2Ic {
        padding: 22px;
        gap: 22px;
    }

    .productVisual_NO8D,
    .industryStat_qc8o {
        padding: 22px;
    }

    .productImage_nXGR {
        height: 320px;
    }

    .cardTitle_Jxs9 {
        font-size: 1.45rem;
    }

    .sectionTitle_Q3iq,
    .ctaTitle_s814 {
        font-size: 1.8rem;
    }

    .comparison_PcIB {
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .comparisonRow_NiUb {
        grid-template-columns: 1fr;
        margin-bottom: 12px;
        border: 1px solid rgba(19, 28, 67, 0.1);
        border-radius: 8px;
        background: #ffffff;
    }

    .comparisonHead_QpeS {
        display: none;
    }

    .comparisonCell_f7kG {
        padding: 14px 16px;
        border-bottom: 1px solid rgba(19, 28, 67, 0.08);
    }

    .comparisonCell_f7kG:last-child {
        border-bottom: 0;
    }
}

/* ===== 页面特定变量 ===== */
:root {
  --page-title-line-height: 1.5;
  --max-invite-container-width: 900px;
}

/* 中文主题变量 */
:root[lang="zh"] {
  --page-title-line-height: 1.4;
  --max-invite-container-width: 700px;
}

/* ===== 页面容器 ===== */
.heroSection_nwvT {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-secondary);
  color: var(--text-primary);
  position: relative;
  overflow: hidden;
  font-family: var(--font-primary);
  padding: var(--section-padding);
}

/* ===== 页面布局 ===== */
.sectionContent_kEvK {
  margin: 0 auto;
  max-width: 1400px;
  width: 100%;
}

/* ===== 页面标题 ===== */
.pageHeader_glZj {
  text-align: center;
  margin-bottom: var(--space-12);
}

.giftIcon_fq3n {
  font-size: 72px;
  margin-bottom: var(--space-6);
  display: inline-block;
  animation: bounce_LW2U 2s ease-in-out infinite;
  filter: drop-shadow(0 4px 8px rgba(61, 101, 253, 0.15));
}

@keyframes bounce_LW2U {
  0%, 100% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-8px) scale(1.05);
  }
}

.pageTitle_TrSj {
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-secondary);
  margin-bottom: var(--space-8);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.pageSubtitle_kVif {
  font-size: var(--font-size-subtitle);
  color: var(--text-primary);
  max-width: var(--max-page-description-width);
  margin: 0 auto var(--space-4);
  line-height: var(--line-height-relaxed);
  font-weight: var(--font-weight-medium);
}

.pageDescription_vPgZ {
  font-size: var(--font-size-lg);
  color: var(--text-secondary);
  max-width: var(--max-page-description-width);
  margin: 0 auto;
  line-height: 1.6;
  font-weight: var(--font-weight-normal);
}

/* ===== 响应式设计 ===== */
@media (max-width: 968px) {
  .heroSection_nwvT {
    padding: var(--space-16) var(--space-6);
    min-height: auto;
  }

  .pageHeader_glZj {
    margin-bottom: var(--space-10);
  }

  .pageTitle_TrSj {
    font-size: var(--font-size-4xl);
    margin-bottom: var(--space-6);
  }

  .pageDescription_vPgZ {
    font-size: var(--font-size-base);
  }

  .giftIcon_fq3n {
    font-size: 64px;
  }

  .inviteContainer_t8qS {
    padding: var(--space-8) var(--space-6);
  }
}

@media (max-width: 768px) {
  .heroSection_nwvT {
    padding: var(--space-12) var(--space-4);
  }

  .pageTitle_TrSj {
    font-size: var(--font-size-3xl);
    line-height: 1.3;
  }

  .pageDescription_vPgZ {
    font-size: var(--font-size-sm);
  }

  .giftIcon_fq3n {
    font-size: 56px;
    margin-bottom: var(--space-4);
  }

  .inviteContainer_t8qS {
    padding: var(--space-6) var(--space-5);
  }

  .codeDisplay_FJyl {
    font-size: var(--font-size-xl);
    padding: var(--space-4) var(--space-5);
    letter-spacing: 2px;
  }

  .copyButton_msVN {
    padding: var(--space-4) var(--space-6);
    min-width: 120px;
    font-size: var(--font-size-sm);
  }

  .rewardNote_lvNV {
    padding: var(--space-5);
    font-size: var(--font-size-sm);
  }
}

@media (max-width: 480px) {
  .pageTitle_TrSj {
    font-size: var(--font-size-2xl);
  }

  .giftIcon_fq3n {
    font-size: 48px;
  }

  .inputRow_Ye60 {
    flex-direction: column;
    gap: var(--space-3);
  }

  .copyButton_msVN {
    width: 100%;
    min-width: auto;
  }

  .codeDisplay_FJyl {
    font-size: var(--font-size-lg);
    letter-spacing: 1.5px;
  }
}

/* ===== 邀请码区域 ===== */
.inviteContainer_t8qS {
  max-width: var(--max-invite-container-width);
  margin: 0 auto;
  background: var(--bg-card);
  backdrop-filter: blur(10px);
  border-radius: var(--border-radius-card);
  padding: var(--space-10) var(--space-12);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-color-light);
}

.inviteBox_KGbV {
  margin-bottom: 0;
}

.inviteLabel_dq0V {
  display: block;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--text-secondary);
  margin-bottom: var(--space-4);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.inputRow_Ye60 {
  display: flex;
  gap: var(--space-4);
  align-items: stretch;
}

.codeDisplay_FJyl {
  flex: 1;
  /* padding: var(--space-5) var(--space-6); */
  background: var(--bg-secondary);
  border: 2px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  text-align: center;
  letter-spacing: 3px;
  font-family: 'Monaco', 'Menlo', 'Courier New', monospace;
  transition: var(--transition-primary);
  min-height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.codeDisplay_FJyl:hover {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(61, 101, 253, 0.1);
}

.copyButton_msVN {
  padding: var(--space-5) var(--space-8);
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
  box-shadow: 
    0 3px 6px rgba(61, 101, 253, 0.3),
    0 1px 2px rgba(19, 28, 67, 0.2);
  min-width: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.copyButton_msVN::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
  transition: left 0.5s ease;
}

.copyButton_msVN:hover::before {
  left: 100%;
}

.copyButton_msVN:hover {
  background: var(--color-primary);
  box-shadow: 
    0 6px 20px rgba(61, 101, 253, 0.4),
    0 2px 8px rgba(19, 28, 67, 0.3);
}

.copyButton_msVN:active {
  transform: translateY(0);
  box-shadow: 
    0 3px 8px rgba(61, 101, 253, 0.3),
    0 1px 3px rgba(19, 28, 67, 0.2);
}

.copyButton_msVN.copied_c_R4 {
  background: #10b981;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.copyButton_msVN.copied_c_R4:hover {
  background: #059669;
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}

.rewardNote_lvNV {
  margin-top: var(--space-8);
  font-size: var(--font-size-base);
  color: var(--text-primary);
  line-height: var(--line-height-relaxed);
  font-weight: var(--font-weight-normal);
  transition: var(--transition-primary);
  position: relative;
}

/* 无邀请码状态 */
.noCodeContainer_li3W {
  max-width: var(--max-invite-container-width);
  margin: var(--space-12) auto 0;
  text-align: center;
}

.noCodeIcon_M2Zu {
  font-size: 80px;
  margin-bottom: var(--space-6);
  opacity: 0.5;
}

.noCodeTitle_sgw1 {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--text-primary);
  margin-bottom: var(--space-4);
}

.noCodeDesc_VSm2 {
  font-size: var(--font-size-lg);
  color: var(--text-secondary);
  line-height: 1.6;
}



/**
 * CSS files with the .module.css suffix will be treated as CSS modules
 * and scoped locally.
 */

/* ===== 全局CSS变量系统 ===== */
:root {
  /* ===== 色彩系统 ===== */
  --color-primary: #3D65FD !important;     
  --color-secondary: #131C43 !important;    
  --color-accent: #6b7280 !important;       
  --color-light: #9ca3af !important;        
  --color-dark: #1f2937 !important;         
  --color-white: #ffffff !important;
  --color-gray-50: #f9fafb;
  --color-gray-100: #f3f4f6;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-800: #1f2937;
  --color-gray-900: #111827;

  /* RGB变量 - 用于rgba */
  --color-primary-rgb: 61, 101, 253 !important;
  --color-secondary-rgb: 19, 28, 67 !important;
  --color-accent-rgb: 107, 114, 128 !important;
  --color-light-rgb: 156, 163, 175 !important;
  --color-dark-rgb: 31, 41, 55 !important;

  /* 语义化色彩 */
  --text-primary: var(--color-dark);
  --text-secondary: var(--color-gray-500);
  --text-muted: var(--color-gray-400);
  --border-color: rgba(19, 28, 67, 0.1);
  --border-color-light: rgba(19, 28, 67, 0.05);
  --shadow-color: rgba(19, 28, 67, 0.1);
  --shadow-color-light: rgba(19, 28, 67, 0.05);

  /* 背景色彩 */
  --bg-primary: var(--color-white);
  --bg-secondary: #f0f4ff;
  --bg-card: rgba(255, 255, 255, 0.9);
  --bg-card-hover: rgba(255, 255, 255, 0.95);

  /* ===== 透明度系统 ===== */
  --opacity-light: 0.03;
  --opacity-medium: 0.08;
  --opacity-heavy: 0.15;
  --opacity-shadow: 0.2;
  --opacity-hover: 0.3;

  /* ===== 阴影系统 ===== */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  --shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  
  /* 悬停效果阴影 */
  --hover-shadow-primary: 0 20px 40px rgba(61, 101, 253, var(--opacity-heavy));
  --hover-shadow-hero: 0 10px 25px rgba(61, 101, 253, var(--opacity-hover));
  --hover-shadow-navbar: 0 4px 8px rgba(61, 101, 253, var(--opacity-shadow));

  /* ===== 字体系统 ===== */
  --font-primary: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  
  /* 字体大小 */
  --font-size-xs: 0.75rem;      /* 12px */
  --font-size-sm: 0.875rem;    /* 14px */
  --font-size-base: 1rem;       /* 16px */
  --font-size-lg: 1.125rem;     /* 18px */
  --font-size-xl: 1.25rem;      /* 20px */
  --font-size-2xl: 1.5rem;      /* 24px */
  --font-size-3xl: 1.875rem;    /* 30px */
  --font-size-4xl: 2.25rem;     /* 36px */
  --font-size-5xl: 3rem;        /* 48px */
  --font-size-6xl: 3.75rem;     /* 60px */
  --font-size-7xl: 4.5rem;      /* 72px */
  --font-size-8xl: 5.25rem;     /* 84px */
  --font-size-9xl: 6rem;        /* 96px */
  
  /* 语义化字体大小 */
  --font-size-title: var(--font-size-5xl);
  --font-size-subtitle: var(--font-size-xl);
  --font-size-body: var(--font-size-base);
  --font-size-small: var(--font-size-sm);

  /* 字体权重 */
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  /* 行高 */
  --line-height-tight: 1.25;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 2;

  /* ===== 间距系统 ===== */
  --space-1: 0.25rem;   /* 4px */
  --space-2: 0.5rem;    /* 8px */
  --space-3: 0.75rem;    /* 12px */
  --space-4: 1rem;      /* 16px */
  --space-5: 1.25rem;   /* 20px */
  --space-6: 1.5rem;    /* 24px */
  --space-7: 1.75rem;   /* 28px */
  --space-8: 2rem;      /* 32px */
  --space-10: 2.5rem;   /* 40px */
  --space-12: 3rem;     /* 48px */
  --space-16: 4rem;     /* 64px */
  --space-20: 5rem;     /* 80px */
  --space-24: 6rem;     /* 96px */
  --space-32: 8rem;     /* 128px */

  /* 语义化间距 */
  --section-padding: var(--space-32) 0;
  --card-padding: var(--space-10);
  --container-padding: var(--space-8);

  /* ===== 边框系统 ===== */
  --border-radius-sm: 0.375rem;   /* 6px */
  --border-radius-md: 0.5rem;     /* 8px */
  --border-radius-lg: 0.75rem;   /* 12px */
  --border-radius-xl: 1rem;      /* 16px */
  --border-radius-2xl: 1.5rem;   /* 24px */
  --border-radius-full: 9999px;

  /* 语义化边框 */
  --border-radius: var(--border-radius-2xl);
  --border-radius-card: var(--border-radius-xl);
  --border-radius-button: var(--border-radius-lg);

  /* ===== 动画系统 ===== */
  --transition-fast: all 0.15s ease;
  --transition-normal: all 0.3s ease;
  --transition-slow: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-primary: var(--transition-slow);

  /* 缓动函数 */
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);

  /* ===== 响应式断点 ===== */
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;

  /* ===== 层级系统 ===== */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
}

/* ===== 全局样式 ===== */
body {
  font-family: var(--font-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--text-primary);
  line-height: var(--line-height-normal);
}

body h3 {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-secondary);
  margin: 0;
}

body img {
  border-radius: var(--border-radius-sm);
}

.container_bfhl {
  min-height: 100vh;
  background: var(--bg-primary);
  box-sizing: border-box;
}

/* ===== 公共组件样式系统 ===== */

/* ===== Section 样式 ===== */
.sectionContent_EIHq {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--container-padding);
  box-sizing: border-box;
}

.sectionTitle_Ut5p {
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  text-align: center;
  margin-bottom: var(--space-4);
  color: var(--color-primary);
}

.sectionSubtitle_AZuW {
  font-size: var(--font-size-subtitle);
  text-align: center;
  color: var(--text-secondary);
  margin-bottom: var(--space-16);
  margin-left: auto;
  margin-right: auto;
  line-height: var(--line-height-relaxed);
}

/* ===== 卡片样式系统 ===== */
.baseCard_wgeo {
  background: var(--bg-card);
  backdrop-filter: blur(15px);
  border-radius: var(--border-radius-card);
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}

.baseCard_wgeo:hover {
  box-shadow: var(--shadow-md) !important;
  border-color: var(--color-primary);
  background: var(--bg-card-hover);
}


/* ===== 按钮样式系统 ===== */
.primaryButton_r1SK {
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
  padding: var(--space-3) var(--space-8);
  border-radius: var(--border-radius-button);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: var(--transition-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  position: relative;
  overflow: hidden;
}

.primaryButton_r1SK::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  transition: left 0.5s;
}

.primaryButton_r1SK:hover::before {
  left: 100%;
}

.primaryButton_r1SK:hover {
  background: rgba(61, 101, 253, 0.05);
  border-color: var(--color-primary);
  box-shadow: var(--hover-shadow-hero);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.secondaryButton_uRtX {
  background: transparent;
  color: var(--color-secondary);
  border: 2px solid var(--color-secondary);
  padding: var(--space-3) var(--space-8);
  border-radius: var(--border-radius-button);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: var(--transition-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  backdrop-filter: blur(10px);
}

.secondaryButton_uRtX:hover {
  background: rgba(19, 28, 67, 0.05);
  border-color: var(--color-secondary);
  color: var(--color-secondary);
  box-shadow: 0 16px 32px rgba(19, 28, 67, 0.15);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.buttonText_Y3Q8 {
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.02em;
}

.buttonIcon_HoGy {
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  transition: transform var(--transition-normal);
}

.primaryButton_r1SK:hover .buttonIcon_HoGy,
.secondaryButton_uRtX:hover .buttonIcon_HoGy {
  transform: translateX(4px);
}

/* ===== 图片占位符样式 ===== */
.imagePlaceholder_RQPD {
  width: 100%;
  height: 100%;
  background: var(--color-gray-200);
  border-radius: var(--border-radius-lg);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  transition: var(--transition-normal);
}

.imagePlaceholder_RQPD::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.1);
  opacity: 0;
  transition: opacity var(--transition-normal);
}

.imagePlaceholder_RQPD:hover::before {
  opacity: 1;
  animation: shimmer_dEUl 3s infinite;
}

@keyframes shimmer_dEUl {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

.placeholderIcon_fDF7 {
  margin-bottom: var(--space-4);
  color: var(--text-muted);
  opacity: 0.3;
}

.placeholderText_Hzpa {
  color: var(--text-secondary);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  z-index: 1;
  position: relative;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* ===== 网格布局系统 ===== */
.gridContainer_W8aS {
  display: grid;
  gap: var(--space-8);
  margin-top: var(--space-12);
  align-items: stretch;
}

.gridAutoFit_JaJY {
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
}

.gridSingleColumn_eXQH {
  grid-template-columns: 1fr;
}

/* ===== 背景色 ===== */
.solidBackground_XGFN {
  background: var(--bg-secondary);
}

/* ===== 响应式样式系统 ===== */
@media (max-width: 768px) {
  .sectionTitle_Ut5p {
    font-size: var(--font-size-4xl);
  }

  .sectionContent_EIHq {
    padding: 0 var(--space-6);
  }

  .sectionSubtitle_AZuW {
    font-size: var(--font-size-base);
    margin-bottom: var(--space-8);
  }

  body h3 {
    font-size: var(--font-size-xl);
  }

  .primaryButton_r1SK,
  .secondaryButton_uRtX {
    width: 100%;
    max-width: 280px;
    justify-content: center;
    padding: var(--space-3) var(--space-6);
    font-size: var(--font-size-base);
  }

  .gridAutoFit_JaJY {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }
}

@media (max-width: 480px) {
  .sectionTitle_Ut5p {
    font-size: var(--font-size-3xl);
  }

  .sectionSubtitle_AZuW {
    font-size: var(--font-size-sm);
  }

  body h3 {
    font-size: var(--font-size-lg);
  }

  .primaryButton_r1SK,
  .secondaryButton_uRtX {
    padding: var(--space-3) var(--space-5);
    font-size: var(--font-size-sm);
  }

  .gridContainer_W8aS {
    gap: var(--space-5);
  }
}

/* ===== Homepage v2 content layout ===== */
.homeHero_SvRN {
  background: var(--bg-secondary);
  padding: var(--space-24) 0 var(--space-20);
  overflow: hidden;
}

.heroLabel_P419,
.sectionLabel_fC05 {
  color: var(--color-primary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0;
  margin-bottom: var(--space-4);
}

.homeHeroTitle_TeZy {
  color: var(--color-secondary);
  font-size: var(--font-size-7xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--space-6);
}

.homeHeroTitle_TeZy span {
  color: var(--color-primary);
}

.homeHeroDescription_aiDb {
  color: var(--text-secondary);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-relaxed);
  max-width: 760px;
  margin: 0 0 var(--space-10);
}

.homeHeroButtons_vFgu {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-bottom: var(--space-16);
}

.homePrimaryButton_IADh,
.homeSecondaryButton_NEqY {
  align-items: center;
  border-radius: var(--border-radius-button);
  display: inline-flex;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  gap: var(--space-3);
  justify-content: center;
  line-height: 1;
  padding: var(--space-4) var(--space-8);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: var(--transition-primary);
}

.homePrimaryButton_IADh {
  background: var(--color-primary);
  border: 2px solid var(--color-primary);
  color: var(--color-white);
  box-shadow: 0 8px 24px rgba(61, 101, 253, 0.16);
}

.homePrimaryButton_IADh:hover {
  background: var(--color-primary);
  color: var(--color-white);
  box-shadow: var(--hover-shadow-hero);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.homeSecondaryButton_NEqY {
  background: var(--color-white);
  border: 2px solid var(--border-color);
  color: var(--color-secondary);
}

.homeSecondaryButton_NEqY:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.statsGrid_wBRk {
  background: var(--bg-card);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-card);
  box-shadow: var(--shadow-lg);
  display: grid;
  gap: var(--space-6);
  grid-template-columns: repeat(4, 1fr);
  padding: var(--space-8);
}

.statCard_w2S8 {
  text-align: center;
}

.statValue_tB6D {
  color: var(--color-primary);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  margin-bottom: var(--space-2);
}

.statLabel_I99V {
  color: var(--text-secondary);
  font-size: var(--font-size-sm);
}

.homeSection_zgLQ {
  background: var(--bg-primary);
  padding: var(--section-padding);
}

.sectionSoft_ogp1 {
  background: var(--bg-secondary);
}

.homeSectionHeader_F6iM {
  margin: 0 auto var(--space-16);
  max-width: 780px;
  text-align: center;
}

.homeSectionHeader_F6iM h2 {
  color: var(--color-secondary);
  font-size: var(--font-size-title);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--space-4);
}

.homeSectionHeader_F6iM p {
  color: var(--text-secondary);
  font-size: var(--font-size-subtitle);
  line-height: var(--line-height-relaxed);
  margin: 0;
}

.capabilityGrid_eKpl {
  display: grid;
  gap: var(--space-8);
  grid-template-columns: repeat(3, 1fr);
}

.homeCard_VrDI,
.architectureLayer_cuAO,
.deploymentCard_p820,
.ctaPanel_F3fh {
  background: var(--bg-card);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-card);
  box-shadow: var(--shadow-md);
  transition: var(--transition-primary);
}

.homeCard_VrDI {
  min-height: 280px;
  padding: var(--space-7);
}

.homeCard_VrDI:hover,
.architectureLayer_cuAO:hover,
.deploymentCard_p820:hover {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-lg);
}

.deploymentIcon_z5Nb {
  align-items: center;
  background: rgba(61, 101, 253, 0.08);
  border-radius: var(--border-radius-lg);
  color: var(--color-primary);
  display: inline-flex;
  height: 48px;
  justify-content: center;
  margin-bottom: var(--space-5);
  width: 48px;
}

.featureNumber_TslE {
  color: var(--color-gray-300);
  font-family: Georgia, serif;
  font-size: var(--font-size-5xl);
  font-weight: 400;
  line-height: 1;
  margin-bottom: var(--space-5);
  transition: var(--transition-primary);
}

.homeCard_VrDI:hover .featureNumber_TslE {
  color: var(--color-primary);
}

.homeCard_VrDI h3,
.architectureLayer_cuAO h3,
.deploymentCard_p820 h3 {
  color: var(--color-secondary);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--space-4);
}

.homeCard_VrDI p,
.deploymentCard_p820 p {
  color: var(--text-secondary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-relaxed);
  margin: 0;
}

.architectureStack_bqqt {
  display: grid;
  gap: var(--space-6);
}

.architectureLayer_cuAO {
  padding: var(--space-7);
}

.architectureParallel__E4R {
  display: grid;
  gap: var(--space-6);
  grid-template-columns: repeat(2, 1fr);
}

.layerHeader_IfRQ {
  align-items: center;
  border-bottom: 1px solid var(--border-color-light);
  display: flex;
  gap: var(--space-4);
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-5);
}

.layerNumber_SNCY {
  align-items: center;
  background: var(--color-primary);
  border-radius: var(--border-radius-md);
  color: var(--color-white);
  display: inline-flex;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  height: 36px;
  justify-content: center;
  width: 44px;
}

.layerIcon_CSpN {
  color: var(--color-primary);
  flex: 0 0 auto;
}

.layerHeader_IfRQ h3 {
  margin-bottom: var(--space-1);
}

.layerHeader_IfRQ p {
  color: var(--text-secondary);
  margin: 0;
}

.architectureItems_Bj4Y {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.architectureItem_rQf3 {
  background: var(--bg-secondary);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-lg);
  padding: var(--space-4);
  text-align: center;
}

.architectureItem_rQf3 strong {
  color: var(--color-secondary);
  display: block;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-1);
}

.architectureItem_rQf3 span {
  color: var(--text-secondary);
  display: block;
  font-size: var(--font-size-sm);
}

.comparisonTable_c0Gw {
  background: var(--bg-card);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-card);
  box-shadow: var(--shadow-md);
  overflow: hidden;
}

.comparisonRow_HxZN {
  border-bottom: 1px solid var(--border-color-light);
  display: grid;
  grid-template-columns: 1.1fr 1.4fr 1.4fr;
}

.comparisonRow_HxZN:last-child {
  border-bottom: 0;
}

.comparisonRow_HxZN > div {
  align-items: center;
  color: var(--text-secondary);
  display: flex;
  gap: var(--space-3);
  min-height: 72px;
  padding: var(--space-4) var(--space-5);
}

.comparisonHead_Yx7p {
  background: var(--bg-secondary);
}

.comparisonHead_Yx7p > div,
.comparisonLabel_jE6M {
  color: var(--color-secondary) !important;
  font-weight: var(--font-weight-semibold);
}

.comparisonPositive_tXMj svg {
  color: var(--color-primary);
  flex: 0 0 auto;
}

.comparisonNegative_vK38 svg {
  color: var(--color-gray-400);
  flex: 0 0 auto;
}

.deploymentGrid_QPcw {
  display: grid;
  gap: var(--space-8);
  grid-template-columns: repeat(3, 1fr);
}

.deploymentCard_p820 {
  padding: var(--space-8);
}

.deploymentCard_p820 ul {
  display: grid;
  gap: var(--space-3);
  list-style: none;
  margin: var(--space-6) 0 0;
  padding: 0;
}

.deploymentCard_p820 li {
  align-items: center;
  color: var(--text-secondary);
  display: flex;
  gap: var(--space-3);
  line-height: var(--line-height-normal);
}

.deploymentCard_p820 li svg {
  color: var(--color-primary);
  flex: 0 0 auto;
}

.ctaSection_bmsv {
  background: var(--bg-primary);
  padding: var(--space-24) 0;
}

.ctaPanel_F3fh {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: var(--space-16);
  text-align: center;
}

.ctaPanel_F3fh > svg {
  color: var(--color-primary);
  margin-bottom: var(--space-4);
}

.ctaPanel_F3fh h2 {
  color: var(--color-secondary);
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--space-4);
}

.ctaPanel_F3fh p {
  color: var(--text-secondary);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-relaxed);
  margin: 0 0 var(--space-8);
  max-width: 680px;
}

@media (max-width: 1200px) {
  .capabilityGrid_eKpl {
    grid-template-columns: repeat(2, 1fr);
  }

  .deploymentGrid_QPcw {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .homeHero_SvRN {
    padding: var(--space-20) 0 var(--space-12);
  }

  .homeHeroTitle_TeZy {
    font-size: var(--font-size-5xl);
  }

  .homeHeroDescription_aiDb,
  .homeSectionHeader_F6iM p {
    font-size: var(--font-size-base);
  }

  .homeHeroButtons_vFgu {
    margin-bottom: var(--space-10);
  }

  .statsGrid_wBRk,
  .capabilityGrid_eKpl {
    grid-template-columns: 1fr;
  }

  .statValue_tB6D {
    font-size: var(--font-size-3xl);
  }

  .homeSection_zgLQ {
    padding: var(--space-20) 0;
  }

  .homeSectionHeader_F6iM {
    margin-bottom: var(--space-10);
  }

  .homeSectionHeader_F6iM h2,
  .ctaPanel_F3fh h2 {
    font-size: var(--font-size-4xl);
  }

  .comparisonTable_c0Gw {
    background: transparent;
    border: 0;
    box-shadow: none;
    display: grid;
    gap: var(--space-4);
  }

  .comparisonHead_Yx7p {
    display: none;
  }

  .comparisonRow_HxZN {
    background: var(--bg-card);
    border: 1px solid var(--border-color-light);
    border-radius: var(--border-radius-card);
    box-shadow: var(--shadow-sm);
    grid-template-columns: 1fr;
    overflow: hidden;
  }

  .comparisonRow_HxZN > div {
    min-height: auto;
  }

  .architectureParallel__E4R {
    grid-template-columns: 1fr;
  }

  .comparisonLabel_jE6M {
    background: var(--bg-secondary);
  }

  .ctaPanel_F3fh {
    padding: var(--space-10) var(--space-6);
  }
}

@media (max-width: 480px) {
  .homeHeroTitle_TeZy {
    font-size: var(--font-size-4xl);
  }

  .homePrimaryButton_IADh,
  .homeSecondaryButton_NEqY {
    width: 100%;
  }

  .statsGrid_wBRk,
  .homeCard_VrDI,
  .architectureLayer_cuAO,
  .deploymentCard_p820 {
    padding: var(--space-5);
  }

  .layerHeader_IfRQ {
    align-items: flex-start;
  }
}

/* 弹窗遮罩层 */
.modalOverlay_akEg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  animation: fadeIn_I10v 0.2s ease-out;
}

@keyframes fadeIn_I10v {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* 弹窗内容容器 */
.modalContent_vTQF {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  animation: slideUp_uAJ9 0.3s ease-out;
  overflow: hidden;
}

@keyframes slideUp_uAJ9 {
  from {
    transform: translateY(20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

/* 弹窗头部 */
.modalHeader_XDfe {
  padding: 20px 24px;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
}

.modalTitle_fpYP {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: #111827;
}

.modalClose_V5HS {
  background: none;
  border: none;
  font-size: 28px;
  color: #6b7280;
  cursor: pointer;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: all 0.2s;
  line-height: 1;
}

.modalClose_V5HS:hover {
  background-color: #f3f4f6;
  color: #111827;
}

/* 弹窗主体 - 可滚动区域 */
.modalBody_aoSa {
  padding: 24px;
  overflow-y: auto;
  overflow-x: hidden;
  flex: 1;
  min-height: 0;
}

/* 自定义滚动条样式 */
.modalBody_aoSa::-webkit-scrollbar {
  width: 8px;
}

.modalBody_aoSa::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.modalBody_aoSa::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}

.modalBody_aoSa::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8;
}

/* 弹窗底部 */
.modalFooter_hA0O {
  padding: 16px 24px;
  border-top: 1px solid #e5e7eb;
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  flex-shrink: 0;
}

/* 阻止页面滚动的全局样式 */
body.modal-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .modalContent_vTQF {
    width: 95%;
    max-height: 95vh;
  }

  .modalHeader_XDfe {
    padding: 16px 20px;
  }

  .modalTitle_fpYP {
    font-size: 18px;
  }

  .modalBody_aoSa {
    padding: 20px;
  }

  .modalFooter_hA0O {
    padding: 12px 20px;
  }
}


/* FAQ Section - 遵循统一设计规范 */

/* ===== FAQ 区域 ===== */
.faqSection_w3_r {
  margin: var(--section-padding);
  background: var(--bg-primary);
  transform: translateY(var(--space-8));
}

.faqTitle_D2al {
  margin-bottom: var(--space-12);
  color: var(--color-secondary);
}

.faqContainer_ozLK {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

/* ===== FAQ 项目 ===== */
.faqItem_yoR4 {
  border-bottom: 1px solid var(--border-color);
  transition: var(--transition-primary);
}

.faqItem_yoR4:last-child {
  border-bottom: none;
}

.faqItem_yoR4:hover {
  border-bottom-color: var(--color-gray-300);
}

/* 隐藏 radio input */
.faqInput_Cl0T {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.faqQuestion_zYFQ {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-8) 0;
  background: none;
  border: none;
  cursor: pointer;
  transition: var(--transition-primary);
  text-align: left;
}

.faqQuestion_zYFQ:hover {
  background: none;
}

.faqQuestionText_peDX {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  flex: 1;
  line-height: var(--line-height-normal);
}

.faqIcon_NwD6 {
  display: flex;
  align-items: center;
  width: 24px;
  height: 24px;
  color: var(--text-secondary);
  transition: var(--transition-primary);
  flex-shrink: 0;
  margin-left: var(--space-4);
}

.faqIcon_NwD6 svg {
  width: 100%;
  height: 100%;
}

/* ===== FAQ 答案 ===== */
.faqAnswer_qaU4 {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}

/* 当 radio 被选中时，展开答案 */
.faqInput_Cl0T:checked ~ .faqAnswer_qaU4 {
  max-height: 500px;
}

/* 当 radio 被选中时，旋转图标 */
.faqInput_Cl0T:checked ~ .faqQuestion_zYFQ .faqIcon_NwD6 {
  transform: rotate(180deg);
  color: var(--text-primary);
}

.faqAnswerContent_lOXh {
  padding: 0 0 var(--space-8) 0;
  color: var(--text-secondary);
  line-height: var(--line-height-relaxed);
  font-size: var(--font-size-lg);
}

/* ===== 响应式设计 ===== */

/* 大平板 (≤1024px) */
@media (max-width: 1024px) {
  .faqSection_w3_r {
    margin: var(--space-32) 0;
  }
  
  .faqTitle_D2al {
    margin-bottom: var(--space-10);
  }
  
  .faqContainer_ozLK {
    max-width: 900px;
  }
  
  .faqQuestionText_peDX {
    font-size: var(--font-size-lg);
  }
  
  .faqAnswerContent_lOXh {
    font-size: var(--font-size-base);
  }
}

/* 平板 (≤768px) */
@media (max-width: 768px) {
  .faqSection_w3_r {
    margin: var(--space-24) 0;
  }

  .faqTitle_D2al {
    font-size: var(--font-size-3xl);
    margin-bottom: var(--space-8);
    text-align: center;
  }

  .faqContainer_ozLK {
    max-width: 100%;
  }

  .faqQuestion_zYFQ {
    padding: var(--space-5) 0;
  }

  .faqQuestionText_peDX {
    font-size: var(--font-size-base);
    padding-right: var(--space-2);
  }
  
  .faqIcon_NwD6 {
    width: 20px;
    height: 20px;
  }

  .faqAnswerContent_lOXh {
    padding: 0 0 var(--space-5) 0;
    font-size: var(--font-size-sm);
  }
  
  .faqInput_Cl0T:checked ~ .faqAnswer_qaU4 {
    max-height: 600px;
  }
}

/* 手机 (≤480px) */
@media (max-width: 480px) {
  .faqSection_w3_r {
    margin: var(--space-16) 0;
  }

  .faqTitle_D2al {
    font-size: var(--font-size-2xl);
    margin-bottom: var(--space-6);
  }
  
  .faqQuestion_zYFQ {
    padding: var(--space-4) 0;
  }
  
  .faqQuestionText_peDX {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-relaxed);
  }
  
  .faqIcon_NwD6 {
    width: 18px;
    height: 18px;
    margin-left: var(--space-2);
  }
  
  .faqAnswerContent_lOXh {
    padding: 0 0 var(--space-4) 0;
    font-size: var(--font-size-xs);
    line-height: var(--line-height-relaxed);
  }
  
  .faqItem_yoR4 {
    border-bottom-width: 1px;
  }
}
/**
 * Pricing page styles - 遵循统一设计规范
 * 优化英文文本和排版
 */

/* ===== 页面容器 ===== */
.container_SuRx {
  min-height: 100vh;
  background: var(--bg-primary);
  font-family: var(--font-primary);
  color: var(--text-primary);
  letter-spacing: -0.01em;  /* 优化英文可读性 */
}

/* ===== 英文特定排版调整 ===== */
.container_SuRx h1 {
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-extrabold);
  letter-spacing: -0.02em;
  line-height: var(--line-height-tight);
}

.container_SuRx h2 {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  letter-spacing: -0.02em;
  line-height: var(--line-height-tight);
}

.container_SuRx h3 {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  letter-spacing: -0.01em;
  line-height: var(--line-height-normal);
}

.container_SuRx p {
  line-height: var(--line-height-relaxed);  /* 优化英文文本行高 */
  letter-spacing: -0.005em;
}

/* ===== 按钮文本调整 ===== */
.container_SuRx button,
.container_SuRx .button_RXOS {
  letter-spacing: -0.01em;
  font-weight: var(--font-weight-semibold);
}

/* ===== 响应式设计 ===== */
@media (max-width: 768px) {
  .container_SuRx h1 {
    font-size: var(--font-size-4xl);
  }
  
  .container_SuRx h2 {
    font-size: var(--font-size-2xl);
  }
  
  .container_SuRx h3 {
    font-size: var(--font-size-xl);
  }
  
  .container_SuRx p {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-normal);
  }
}

@media (max-width: 480px) {
  .container_SuRx h1 {
    font-size: var(--font-size-3xl);
  }
  
  .container_SuRx h2 {
    font-size: var(--font-size-xl);
  }
  
  .container_SuRx h3 {
    font-size: var(--font-size-lg);
  }
  
  .container_SuRx p {
    font-size: var(--font-size-xs);
  }
}

/* ===== 动画定义 ===== */
@keyframes fadeIn_aQM2 {
  from {
    opacity: 0;
    transform: translateY(var(--space-5));
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideInUp_xQUX {
  from {
    opacity: 0;
    transform: translateY(var(--space-8));
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes scaleIn_NYZx {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* Download page styles - 遵循统一设计规范 */

/* ===== 页面容器 ===== */
.container_OlFV {
  min-height: 100vh;
  /* background: var(--bg-primary);
  color: var(--text-primary);
  font-family: var(--font-primary); */
}

/* ===== 自定义页面布局 ===== */
.custom-page_JCrw {
  position: relative;
  overflow-x: hidden;
}

.rulesSection_eH0O {
  padding: var(--section-padding);
  background: var(--bg-secondary);
  position: relative;
  overflow: hidden;
}

.sectionHeader_kNVP {
  text-align: center;
  margin-bottom: var(--space-16);
}

.sectionHeader_kNVP h2 {
  color: var(--color-secondary) !important;
}

.rulesContainer_mtAQ {
  max-width: 800px;
  margin: 0 auto;
  background: var(--bg-card);
  backdrop-filter: blur(10px);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-card);
  padding: var(--space-10);
  box-shadow: var(--shadow-lg);
}

.rulesList_oHnU {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ruleItem_hsgF {
  font-size: var(--font-size-base);
  color: var(--text-primary);
  line-height: var(--line-height-relaxed);
  padding: var(--space-4) 0;
  padding-left: var(--space-8);
  position: relative;
  border-bottom: 1px solid var(--border-color-light);
}

.ruleItem_hsgF:last-child {
  border-bottom: none;
}

.ruleItem_hsgF::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--color-primary);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-lg);
}

/* 响应式设计 */
@media (max-width: 768px) {
  .rulesSection_eH0O {
    padding: var(--space-16) var(--space-6);
  }

  .sectionHeader_kNVP {
    margin-bottom: var(--space-12);
  }

  .rulesContainer_mtAQ {
    padding: var(--space-8);
  }

  .ruleItem_hsgF {
    font-size: var(--font-size-sm);
    padding-left: var(--space-6);
    line-height: var(--line-height-normal);
  }

  .ruleItem_hsgF:hover {
    padding-left: var(--space-7);
  }
}


.stepsSection_d_yy {
  padding: var(--section-padding);
  background: var(--bg-primary);
  position: relative;
  overflow: hidden;
}

.sectionHeader__GNS {
  text-align: center;
  margin-bottom: var(--space-16);
}

.sectionHeader__GNS h2 {
  color: var(--color-secondary) !important;
}

.stepsContainer_DKek {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: var(--space-8);
  align-items: center;
}

/* 左侧标签页容器 */
.tabsContainer_tTcG {
  flex: 0 0 400px;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

/* 标签项 */
.tabItem_d4nT {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: var(--space-5) var(--space-6);
  background: var(--bg-card);
  backdrop-filter: blur(10px);
  border: 1px solid var(--border-color-light);
  border-radius: var(--border-radius-card);
  cursor: pointer;
  transition: var(--transition-primary);
  gap: var(--space-4);
  box-shadow: var(--shadow-md);
}

.tabItem_d4nT:hover {
  border-color: var(--color-primary);
  background: var(--bg-secondary);
  box-shadow: var(--shadow-lg);
}

.tabItem_d4nT.tabActive_Go85 {
  border-color: var(--color-primary);
  background: var(--bg-secondary);
  box-shadow: var(--shadow-lg);
}

.tabNumber_DAvz {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 700;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-primary);
}

/* .tabItem:hover .tabNumber {
  background: var(--color-primary);
  color: var(--color-white);
  border-color: var(--color-primary);
} */

.tabItem_d4nT.tabActive_Go85 .tabNumber_DAvz {
  background: var(--color-primary);
  color: var(--color-white);
  border-color: var(--color-primary);
}

.tabContent_trYL {
  flex: 1;
  min-width: 0;
}

.tabTitle_yxBd {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--text-primary);
  margin-bottom: var(--space-2);
  line-height: 1.4;
}

.tabItem_d4nT.tabActive_Go85 .tabTitle_yxBd {
  color: var(--color-primary);
}

.tabDescription_t946 {
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 右侧图片容器 */
.imageContainer__8PK {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: stretch;
}

.stepImageWrapper_d9_O {
  position: relative;
  width: 100%;
  min-height: 480px;
  height: 480px;
  background: var(--bg-card);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  /* padding: var(--space-8); */
}

.stepImage_U8Z8 {
  width: auto;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  object-fit: contain;
  transition: var(--transition-primary);
  /* border-radius: var(--border-radius-sm); */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  background: white;
  display: block;
  backdrop-filter: blur(10px);
  border-radius: var(--border-radius-card);
  border: 1px solid var(--border-color-light);
  box-shadow: var(--shadow-lg);
}

.stepImagePlaceholder_Vjx0 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
  border-radius: var(--border-radius-sm);
}

.stepImagePlaceholder_Vjx0 .stepIcon_GHe8 {
  font-size: 80px;
  opacity: 0.5;
}

.tipsBox_CS8E {
  max-width: 800px;
  margin: 60px auto 0;
  background: #e0e7ff;
  border-radius: var(--border-radius-card);
  padding: 32px 40px;
  border: 1px solid var(--border-color);
}

.tipsTitle_joT_ {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.tipsIcon_uwXP {
  font-size: 24px;
}

.tipsList_j6Bt {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
}

.tipItem_agWZ {
  font-size: 15px;
  color: var(--text-primary);
  padding-left: 28px;
  position: relative;
  line-height: 1.6;
}

.tipItem_agWZ::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--color-primary);
  font-weight: 700;
  font-size: 18px;
}

/* 响应式设计 */
@media (max-width: 968px) {
  .stepsSection_d_yy {
    padding: var(--space-16) var(--space-6);
  }

  .sectionHeader__GNS {
    margin-bottom: var(--space-12);
  }

  .stepsContainer_DKek {
    flex-direction: column;
    gap: var(--space-6);
  }

  .tabsContainer_tTcG {
    flex: 1;
    width: 100%;
    flex-direction: row;
    overflow-x: auto;
    gap: var(--space-3);
    padding-bottom: var(--space-2);
    scrollbar-width: thin;
    scrollbar-color: var(--border-color) var(--bg-secondary);
  }

  .tabsContainer_tTcG::-webkit-scrollbar {
    height: 6px;
  }

  .tabsContainer_tTcG::-webkit-scrollbar-track {
    background: var(--bg-secondary);
    border-radius: 3px;
  }

  .tabsContainer_tTcG::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 3px;
  }

  .tabsContainer_tTcG::-webkit-scrollbar-thumb:hover {
    background: var(--color-primary);
  }

  .tabItem_d4nT {
    flex: 0 0 280px;
    flex-direction: column;
    text-align: center;
    align-items: center;
    padding: var(--space-5);
  }

  .tabItem_d4nT:hover {
    transform: translateY(-2px);
  }

  .tabNumber_DAvz {
    width: 28px;
    height: 28px;
    font-size: 16px;
  }

  .tabContent_trYL {
    width: 100%;
  }

  .tabTitle_yxBd {
    font-size: var(--font-size-base);
    margin-bottom: var(--space-1);
  }

  .tabDescription_t946 {
    font-size: var(--font-size-xs);
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .imageContainer__8PK {
    width: 100%;
  }

  .stepImageWrapper_d9_O {
    min-height: 400px;
    padding: var(--space-6);
  }

  .stepImage_U8Z8 {
    max-height: 400px;
  }

  .stepImagePlaceholder_Vjx0 {
    min-height: 400px;
  }
}

@media (max-width: 768px) {
  .stepsSection_d_yy {
    padding: var(--space-12) var(--space-4);
  }

  .sectionHeader__GNS {
    margin-bottom: var(--space-8);
  }

  .stepsContainer_DKek {
    gap: var(--space-4);
  }

  .tabsContainer_tTcG {
    gap: var(--space-2);
    padding-bottom: var(--space-3);
  }

  .tabItem_d4nT {
    flex: 0 0 220px;
    padding: var(--space-4) var(--space-3);
    min-height: 100px;
  }

  .tabNumber_DAvz {
    width: 26px;
    height: 26px;
    font-size: 14px;
  }

  .tabTitle_yxBd {
    font-size: var(--font-size-sm);
    margin-bottom: var(--space-1);
  }

  .tabDescription_t946 {
    font-size: var(--font-size-xs);
    -webkit-line-clamp: 2;
    line-clamp: 2;
    line-height: 1.5;
  }

  .stepImageWrapper_d9_O {
    min-height: 300px;
    padding: var(--space-4);
  }

  .stepImage_U8Z8 {
    max-height: 300px;
  }

  .stepImagePlaceholder_Vjx0 {
    min-height: 300px;
  }

  .stepImagePlaceholder_Vjx0 .stepIcon_GHe8 {
    font-size: 60px;
  }
}

@media (max-width: 480px) {
  .stepsSection_d_yy {
    padding: var(--space-8) var(--space-3);
  }

  .tabsContainer_tTcG {
    gap: var(--space-2);
  }

  .tabItem_d4nT {
    flex: 0 0 180px;
    padding: var(--space-3);
    min-height: 90px;
  }

  .tabNumber_DAvz {
    width: 24px;
    height: 24px;
    font-size: 12px;
    border-width: 1.5px;
  }

  .tabTitle_yxBd {
    font-size: var(--font-size-xs);
  }

  .tabDescription_t946 {
    font-size: 11px;
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .stepImageWrapper_d9_O {
    min-height: 250px;
    padding: var(--space-3);
  }

  .stepImage_U8Z8 {
    max-height: 250px;
  }

  .stepImagePlaceholder_Vjx0 {
    min-height: 250px;
  }

  .stepImagePlaceholder_Vjx0 .stepIcon_GHe8 {
    font-size: 50px;
  }
}


.container_t0BZ {
  width: 100%;
  min-height: 100vh;
}


.blogPostWrapper_bunQ {
  padding-top: 72px; /* avoid overlapping with fixed navbar */
}

.blogPostWrapper_bunQ .col--9 {
  width: 100% !important;
  max-width: 1000px !important;
  margin: 0 auto !important;
  padding: 0 var(--space-8) !important;
}

.blogPostWrapper_bunQ .col--9 header {
  margin: 2.5rem 0 3rem 0 !important;
}

.blogPostWrapper_bunQ a.tagRegular  {
  display: none !important;
}

.blogPostWrapper_bunQ .theme-edit-this-page {
  display: none !important;
}

.blogPostWrapper_bunQ .pagination-nav__link {
  display: none !important;
}

.blogPostWrapper_bunQ .col--2 {
  display: none !important;
}






.container_MVXh {
  min-height: 100vh;
  width: 100%;
  color: #0f172a;
}

.sectionInner_O70k {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sectionInnerNarrow_dXox {
  max-width: 768px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.hero_Z1Nn {
  position: relative;
  overflow: hidden;
  background: #0f2350;
  color: #ffffff;
  padding: 120px 0 96px;
  margin-top: 68px;
}

.heroBackground_zZFe {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(to left, rgba(30, 58, 138, 0.25), transparent 45%);
  background-size: 40px 40px, 40px 40px, 100% 100%;
  opacity: 0.35;
  pointer-events: none;
}

.heroGrid_O7jY {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  align-items: center;
}

.heroLeft_LQ9Z {
  text-align: center;
}

.heroBadge_HsSh {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(30, 58, 138, 0.35);
  border: 1px solid rgba(59, 130, 246, 0.25);
  color: #dbeafe;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 24px;
  backdrop-filter: blur(8px);
}

.badgeDot_nwCy {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #4ade80;
  box-shadow: 0 0 0 6px rgba(74, 222, 128, 0.15);
}

.heroTitle_nrSu {
  font-size: 44px;
  line-height: 1.08;
  font-weight: 800;
  letter-spacing: -0.03em;
  margin: 0 0 18px;
}

.heroTitleHighlight_ajFi {
  color: #3b82f6;
}

.heroDescription_O_VO {
  font-size: 18px;
  line-height: 1.7;
  color: rgba(226, 232, 240, 0.92);
  max-width: 720px;
  margin: 0 auto 28px;
}

.heroCtas_AmrI {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  justify-content: center;
}

.primaryButton_EGQh {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 26px;
  border-radius: 10px;
  background: #1d64d8;
  color: #ffffff;
  font-weight: 800;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

.primaryButton_EGQh:hover {
  background: #3b82f6;
  transform: translateY(-1px);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.secondaryButton_tda8 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 26px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.7);
  color: #ffffff;
  background: rgba(255, 255, 255, 0);
  font-weight: 700;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: background 0.15s ease;
}

.secondaryButton_tda8:hover {
  background: rgba(255, 255, 255, 0.08);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.heroNote_MzBu {
  margin-top: 18px;
  font-size: 13px;
  color: rgba(148, 163, 184, 0.95);
  font-weight: 600;
}

.heroRight_OkSS {
  position: relative;
}

.screenshotCard_wgLD {
  position: relative;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  overflow: hidden;
  background: #0b1220;
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.38);
}

.windowChrome_LOdE {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: rgba(30, 41, 59, 0.85);
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.windowDots_jQhZ {
  display: flex;
  gap: 6px;
}

.windowDotRed_blDH,
.windowDotYellow_irTa,
.windowDotGreen_csHG {
  width: 10px;
  height: 10px;
  border-radius: 999px;
}

.windowDotRed_blDH {
  background: #ef4444;
}

.windowDotYellow_irTa {
  background: #f59e0b;
}

.windowDotGreen_csHG {
  background: #22c55e;
}

.windowTitle_sf2M {
  font-size: 12px;
  color: rgba(148, 163, 184, 0.95);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
}

.screenshotBody_WmeD {
  aspect-ratio: 16 / 10;
}

.screenshotImage_hR23 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.95;
}

.screenshotGlow_mZ6z {
  position: absolute;
  inset: -16px;
  background: rgba(59, 130, 246, 0.18);
  filter: blur(32px);
  z-index: -1;
  border-radius: 20px;
}

.trustBar_QFCh {
  background: #ffffff;
  border-bottom: 1px solid rgba(226, 232, 240, 1);
  padding: 28px 0;
}

.trustTitle_itWK {
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.16em;
  font-weight: 800;
  color: rgba(100, 116, 139, 1);
  text-transform: uppercase;
  margin: 0 0 18px;
}

.trustItems_FsKx {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 36px;
  justify-content: center;
  align-items: center;
  opacity: 0.9;
}

.trustItem_r40f {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 800;
  color: rgba(71, 85, 105, 1);
}

.trustIcon_TPYq {
  width: 24px;
  height: 24px;
  color: rgba(71, 85, 105, 1);
}

.sectionLight_EWY8 {
  background: #f8fafc;
  padding: 84px 0;
}

.sectionWhite_hPWI {
  background: #ffffff;
  padding: 84px 0;
}

.sectionLightBordered_b5Je {
  background: #f8fafc;
  padding: 84px 0;
  border-top: 1px solid rgba(226, 232, 240, 1);
}

.sectionWhiteBordered_bKY4 {
  background: #ffffff;
  padding: 84px 0;
  border-top: 1px solid rgba(226, 232, 240, 1);
}

.sectionHeaderCentered_eEKW {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 48px;
}

.sectionEyebrow_QV38 {
  display: inline-block;
  color: #1d64d8;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.sectionTitle_bvrH {
  font-size: 36px;
  line-height: 1.15;
  font-weight: 800;
  margin: 0 0 14px;
}

.sectionTitleCentered_sCCU {
  font-size: 34px;
  line-height: 1.15;
  font-weight: 800;
  margin: 0 0 44px;
  text-align: center;
}

.sectionSubtitle_A5gW {
  font-size: 18px;
  color: rgba(100, 116, 139, 1);
  line-height: 1.7;
  margin: 0;
}

.sectionHeading_PXRx {
  font-size: 32px;
  line-height: 1.2;
  font-weight: 800;
  margin: 0 0 18px;
}

.sectionLead_Frr2 {
  font-size: 18px;
  line-height: 1.7;
  color: rgba(71, 85, 105, 1);
  margin: 0 0 14px;
}

.sectionText_uG7j {
  font-size: 15px;
  line-height: 1.8;
  color: rgba(100, 116, 139, 1);
  margin: 0;
}

.problemGrid_G4ld {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  align-items: start;
}

.problemRight_cNv5 {
  display: grid;
  gap: 18px;
}

.painCard_vg3w {
  background: #ffffff;
  border-radius: 14px;
  border: 1px solid rgba(226, 232, 240, 1);
  border-left: 4px solid #ef4444;
  padding: 18px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
}

.painIcon_gWBc {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(254, 226, 226, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  margin-top: 2px;
}

.painIconInner_uUNU {
  width: 12px;
  height: 12px;
  border-radius: 4px;
  background: #ef4444;
}

.painIconSvg_Rqso {
  width: 20px;
  height: 20px;
  color: #ef4444;
}

.cardTitle_m5lm {
  font-size: 18px;
  font-weight: 800;
  margin: 0 0 6px;
}

.cardText_Tpmq {
  font-size: 14px;
  line-height: 1.65;
  color: rgba(71, 85, 105, 1);
  margin: 0;
}

.featureGrid_ailh {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

.featureCard_Fhk2 {
  background: #ffffff;
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 14px;
  padding: 28px;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease,
    border-color 0.2s ease;
}

.featureCard_Fhk2:hover {
  background: #1d64d8;
  border-color: #1d64d8;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  transform: translateY(-4px);
}

.featureCard_Fhk2:hover .featureIcon_sJGM {
  background: #ffffff;
}

.featureCard_Fhk2:hover .featureIconSvg_NY0N {
  color: #1d64d8;
}

.featureCard_Fhk2:hover .featureTitle_PszC {
  color: #ffffff;
}

.featureCard_Fhk2:hover .featureText_HwpQ {
  color: rgba(219, 234, 254, 0.92);
}

.featureCard_Fhk2:hover .featureResult_W_6R {
  border-top-color: rgba(59, 130, 246, 0.55);
}

.featureCard_Fhk2:hover .featureResultLabel_RjSQ {
  color: rgba(191, 219, 254, 0.9);
}

.featureCard_Fhk2:hover .featureResultValue_xn96 {
  color: #ffffff;
}

.featureIcon_sJGM {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: rgba(59, 130, 246, 0.08);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.featureIconSvg_NY0N {
  width: 28px;
  height: 28px;
  color: #1d64d8;
}

.featureTitle_PszC {
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 10px;
}

.featureText_HwpQ {
  font-size: 14px;
  line-height: 1.75;
  color: rgba(71, 85, 105, 1);
  margin: 0 0 18px;
}

.featureResult_W_6R {
  border-top: 1px solid rgba(226, 232, 240, 1);
  padding-top: 14px;
}

.featureResultLabel_RjSQ {
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 800;
  color: rgba(100, 116, 139, 1);
}

.featureResultValue_xn96 {
  font-size: 14px;
  font-weight: 700;
  margin-top: 6px;
}

.splitGrid_Iq6j {
  display: grid;
  grid-template-columns: 1fr;
  gap: 36px;
  align-items: center;
}

.mediaFrame_U5vD {
  border-radius: 16px;
  background: rgba(29, 100, 216, 0.08);
  padding: 14px;
}

.mediaImage_CNDa {
  width: 100%;
  border-radius: 12px;
  border: 1px solid rgba(226, 232, 240, 1);
  box-shadow: 0 18px 30px rgba(15, 23, 42, 0.08);
}

.checkList_ra3l {
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
  display: grid;
  gap: 12px;
}

.checkItem_K3j_ {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: rgba(51, 65, 85, 1);
  line-height: 1.7;
}

.checkMark_gtUb {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: rgba(29, 100, 216, 0.15);
  position: relative;
  flex: 0 0 auto;
  margin-top: 3px;
}

.checkMark_gtUb::after {
  content: '';
  position: absolute;
  left: 5px;
  top: 5px;
  width: 8px;
  height: 4px;
  border-left: 2px solid #1d64d8;
  border-bottom: 2px solid #1d64d8;
  transform: rotate(-45deg);
}

.checkIcon_qIdC {
  width: 20px;
  height: 20px;
  color: #1d64d8;
  flex: 0 0 auto;
  margin-top: 3px;
}

.useCaseGrid_NFmX {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: start;
}

.useCaseCard_Saai {
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  padding: 0;
  text-align: left;
  cursor: pointer;
  width: 100%;
  display: block;
  position: relative;
  align-self: start;
  appearance: none;
  -webkit-appearance: none;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.useCaseCard_Saai:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 22px rgba(15, 23, 42, 0.12);
  border-color: rgba(29, 100, 216, 0.22);
}

.useCaseCard_Saai:hover .chevron_Lozo {
  background: rgba(241, 245, 249, 1);
}

.useCaseCard_Saai:hover .chevronIcon_Q06P {
  color: var(--accent-color, #1d64d8);
}

.useCaseCard_Saai:hover .useCaseTitle_YIa_ {
  color: var(--accent-color, #1d64d8);
}

.useCaseCard_Saai:hover .tag_v6Ap {
  border-color: rgba(0, 0, 0, 0);
}

.useCaseCard_Saai:focus {
  outline: none;
}

.useCaseCard_Saai:focus-visible {
  outline: 2px solid rgba(29, 100, 216, 0.35);
  outline-offset: 2px;
}

.useCaseHead_E9Zo {
  display: flex;
  gap: 14px;
  padding: 22px;
  padding-right: 78px;
  align-items: flex-start;
  height: 176px;
}

.useCaseMain_wnMA {
  flex: 1;
}

.useCaseTitleRow_bH5j {
  display: flex;
  align-items: center;
  gap: 10px;
}

.useCaseTitle_YIa_ {
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  color: var(--accent-color, #1d64d8);
}

.useCaseTags_pYIg {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 8px;
}

.tag_v6Ap {
  background: rgba(241, 245, 249, 1);
  color: rgba(71, 85, 105, 1);
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.useCaseDesc_XglR {
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(71, 85, 105, 1);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

.chevron_Lozo {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: rgba(241, 245, 249, 1);
  position: absolute;
  top: 22px;
  right: 22px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chevron_Lozo::after {
  content: none;
}

.useCaseOpen_b0Fb .chevron_Lozo::after {
  content: none;
}

.chevronIcon_Q06P {
  width: 20px;
  height: 20px;
  color: rgba(100, 116, 139, 1);
}

.useCaseCollapse_lrAz {
  display: none;
  background: rgba(248, 250, 252, 1);
  border-top: 0;
}

.useCaseOpen_b0Fb .useCaseCollapse_lrAz {
  display: block;
  border-top: 1px solid rgba(226, 232, 240, 0.8);
}

.useCaseSpecWrap_sbiZ {
  padding: 18px 22px;
}

.specHeader_gR0H {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.specIconWrap_ACwt {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(59, 130, 246, 0.12);
  color: var(--accent-color, #1d64d8);
  flex: 0 0 auto;
}

.specIcon_sugr {
  width: 14px;
  height: 14px;
}

.specLabel_HDGd {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(100, 116, 139, 1);
  margin-bottom: 10px;
}

.specText_alJ0 {
  font-size: 13px;
  line-height: 1.7;
  color: rgba(51, 65, 85, 1);
  font-weight: 600;
}

.accent_brand_L4D4 {
  --accent-color: #1d64d8;
}

.accent_teal_ni7k {
  --accent-color: #0d9488;
}

.accent_purple_Z3z0 {
  --accent-color: #7c3aed;
}

.accent_orange_kAtJ {
  --accent-color: #ea580c;
}

.accent_indigo_zWVI {
  --accent-color: #4f46e5;
}

.accent_pink_rPds {
  --accent-color: #db2777;
}

.ctaBand_TUX7 {
  position: relative;
  overflow: hidden;
  background: #174cb5;
  color: #ffffff;
  padding: 84px 0;
  text-align: center;
}

.ctaBackground_Eiqb {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
  background-size: 40px 40px;
  opacity: 0.18;
  pointer-events: none;
}

.ctaTitle_wLLU {
  position: relative;
  z-index: 1;
  font-size: 40px;
  line-height: 1.12;
  font-weight: 900;
  margin: 0 0 18px;
  letter-spacing: -0.03em;
}

.ctaSubtitle_w8iJ {
  position: relative;
  z-index: 1;
  font-size: 18px;
  line-height: 1.7;
  color: rgba(219, 234, 254, 0.95);
  margin: 0 auto 28px;
  max-width: 760px;
  font-weight: 600;
}

.ctaButtons_N4tN {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  justify-content: center;
}

.ctaPrimary_Afeu {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  border-radius: 10px;
  background: #ffffff;
  color: #174cb5;
  font-weight: 900;
  -webkit-text-decoration: none;
  text-decoration: none;
  box-shadow: 0 18px 30px rgba(0, 0, 0, 0.18);
  transition: transform 0.15s ease;
}

.ctaPrimary_Afeu:hover {
  transform: translateY(-1px);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.ctaSecondary_vW7C {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  border-radius: 10px;
  background: transparent;
  border: 2px solid rgba(191, 219, 254, 0.7);
  color: #ffffff;
  font-weight: 900;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.ctaSecondary_vW7C:hover {
  border-color: rgba(255, 255, 255, 0.95);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.ctaFootnote_LHlY {
  position: relative;
  z-index: 1;
  margin-top: 24px;
  font-size: 13px;
  color: rgba(191, 219, 254, 0.9);
}

.stepsGrid_QQGv {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.stepCard_QVDx {
  background: #ffffff;
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 16px;
  padding: 18px;
}

.stepNumber_ekI1 {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(241, 245, 249, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  margin-bottom: 12px;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.stepCard_QVDx:hover .stepNumber_ekI1 {
  background: rgba(15, 23, 42, 1);
  border-color: rgba(15, 23, 42, 1);
  color: #ffffff;
}

.stepTitle_SzsH {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 900;
}

.stepText_lb7f {
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(71, 85, 105, 1);
}

.stepCardHighlight_gF4S {
  border-color: rgba(191, 219, 254, 1);
  background: rgba(255, 255, 255, 0.95);
}

.stepNumberHighlight_boYL {
  background: rgba(219, 234, 254, 1);
  border-color: rgba(191, 219, 254, 1);
  color: #174cb5;
}

.stepCardHighlight_gF4S:hover .stepNumberHighlight_boYL {
  background: #1d64d8;
  border-color: #1d64d8;
  color: #ffffff;
}

.stepsNote_SmCd {
  margin: 64px auto 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px 18px;
  border-radius: 999px;
  border: 1px solid rgba(191, 219, 254, 1);
  background: #ffffff;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.06);
  font-size: 13px;
  font-weight: 800;
  color: #174cb5;
  width: fit-content;
  max-width: 92%;
}

.stepsNoteIcon_XpFJ {
  width: 16px;
  height: 16px;
  color: #174cb5;
  flex: 0 0 auto;
}

.sectionDark_TLmd {
  position: relative;
  overflow: hidden;
  background: #0f172a;
  color: #ffffff;
  padding: 84px 0;
}

.sectionDarkGlow_Zkgv {
  position: absolute;
  top: -120px;
  right: -120px;
  width: 360px;
  height: 360px;
  background: rgba(59, 130, 246, 0.28);
  filter: blur(60px);
  border-radius: 999px;
  pointer-events: none;
}

.darkGrid_WdIp {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  align-items: start;
}

.darkTitle_xQ74 {
  font-size: 30px;
  font-weight: 900;
  margin: 0 0 14px;
  color: #ffffff;
}

.darkText_jHtv {
  font-size: 16px;
  line-height: 1.75;
  color: rgba(203, 213, 225, 0.9);
  margin: 0 0 18px;
}

.frameworkGrid_xBUL {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  color: rgba(203, 213, 225, 0.92);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
  font-size: 13px;
}

.frameworkItem_a0eF {
  display: flex;
  align-items: center;
  gap: 10px;
}

.frameworkItem_a0eF::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #3b82f6;
}

.templateCard_VJh3 {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 22px;
  backdrop-filter: blur(10px);
}

.templateTitle_jElN {
  font-size: 16px;
  font-weight: 900;
  margin: 0 0 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.templateList_VDXd {
  display: grid;
  gap: 12px;
}

.templateLink_A9SE {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: rgba(203, 213, 225, 0.92);
  padding: 10px 0;
}

.templateLink_A9SE:hover {
  color: #ffffff;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.templateArrow_nYWD {
  width: 16px;
  height: 16px;
  color: rgba(191, 219, 254, 0.9);
  flex: 0 0 auto;
  transition: transform 0.15s ease;
}

.templateLink_A9SE:hover .templateArrow_nYWD {
  transform: translateX(4px);
}

.arrow_O28l {
  width: 18px;
  height: 18px;
  position: relative;
  flex: 0 0 auto;
}

.arrow_O28l::before {
  content: '';
  position: absolute;
  left: 6px;
  top: 5px;
  width: 8px;
  height: 8px;
  border-right: 2px solid rgba(191, 219, 254, 0.9);
  border-top: 2px solid rgba(191, 219, 254, 0.9);
  transform: rotate(45deg);
}

.proofGrid_gF21 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.proofHeader_owfG {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.proofIconWrap_FcEZ {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(226, 232, 240, 1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(100, 116, 139, 1);
  flex: 0 0 auto;
}

.proofIcon_Q378 {
  width: 20px;
  height: 20px;
}

.proofCard_SkLA {
  background: rgba(248, 250, 252, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 16px;
  padding: 22px;
}

.proofBadge_lLEb {
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 900;
  color: rgba(100, 116, 139, 1);
}

.proofTitle_kero {
  font-size: 22px;
  font-weight: 900;
  margin: 0 0 12px;
}

.proofText_ANVl {
  font-size: 14px;
  line-height: 1.75;
  color: rgba(71, 85, 105, 1);
  margin: 0 0 14px;
}

.proofResult_Gm_t {
  border-top: 1px solid rgba(226, 232, 240, 1);
  padding-top: 12px;
  font-weight: 900;
  color: #174cb5;
  display: flex;
  align-items: center;
  gap: 10px;
}

.proofResultIcon_Jm1J {
  width: 16px;
  height: 16px;
  color: #174cb5;
  flex: 0 0 auto;
}

.faqList_jdvm {
  display: grid;
  gap: 18px;
}

.faqItem_h0vB {
  padding-top: 18px;
  border-top: 1px solid rgba(226, 232, 240, 1);
}

.faqItem_h0vB:first-child {
  padding-top: 0;
  border-top: 0;
}

.faqQ_zrO0 {
  margin: 0;
  font-size: 16px;
  font-weight: 900;
}

.faqA_NYeK {
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.8;
  color: rgba(71, 85, 105, 1);
}

@media (min-width: 768px) {
  .heroTitle_nrSu {
    font-size: 56px;
  }

  .heroDescription_O_VO {
    font-size: 20px;
  }

  .heroCtas_AmrI {
    flex-direction: row;
  }

  .featureGrid_ailh {
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
  }

  .useCaseGrid_NFmX {
    grid-template-columns: repeat(2, 1fr);
  }

  .stepsGrid_QQGv {
    grid-template-columns: repeat(2, 1fr);
  }

  .frameworkGrid_xBUL {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 20px;
  }

  .proofGrid_gF21 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .heroGrid_O7jY {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }

  .heroLeft_LQ9Z {
    text-align: left;
  }

  .heroCtas_AmrI {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .problemGrid_G4ld {
    grid-template-columns: 5fr 7fr;
    gap: 48px;
  }

  .splitGrid_Iq6j {
    grid-template-columns: 1fr 1fr;
    gap: 56px;
  }

  .useCaseGrid_NFmX {
    grid-template-columns: repeat(3, 1fr);
  }

  .stepsGrid_QQGv {
    grid-template-columns: repeat(4, 1fr);
  }

  .darkGrid_WdIp {
    grid-template-columns: 1.2fr 0.8fr;
    gap: 56px;
    align-items: center;
  }
}

