@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;
  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-right: 0;
    margin-left: 0;
  }

.row--no-gutters > .col {
      padding-right: 0;
      padding-left: 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-right: 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-right: calc(1 / 12 * 100%);
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.col--offset-12 {
      margin-right: 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-right: 0 !important;
      }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.padding-horiz--xl {
      padding-right: 5rem !important;
      padding-left: 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-right: var(--image-alignment-padding);
}

img[align='left'] {
  padding-left: 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-right: 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-right: 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: right;
  }

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

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

.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-right: 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-right-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-left: 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)
      0 0 calc(var(--ifm-alert-padding-horizontal) * -1);

    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-right: 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)
      );
      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-right-radius: 0;
      border-top-right-radius: 0;
    }

.button-group > .button:not(:last-child) {
      border-bottom-left-radius: 0;
      border-top-left-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-right: 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-right: 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: left;
  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 {
      right: inherit;
      left: 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);
    right: 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-right: 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-right: 0;
  }

/* Non-top level menus */

.menu__list .menu__list {
      flex: 0 0 100%;
      margin-top: 0.25rem;
      padding-right: 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-right: 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-left: 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-left: 0.5rem;
  }

.navbar__logo {
    flex: 0 0 auto;
    height: 2rem;
    margin-left: 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-left: 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 2.25rem 0 0.5rem;
      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);
    right: 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;
      right: 0;
      opacity: 0;
      position: fixed;
      left: 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(-1*((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.5rem 0.2rem 0;
      padding: 0.6rem 1.5rem;
      position: relative;
      text-align: right;
      top: -0.5rem;
      width: calc(100% + 1rem);
    }

.navbar-sidebar__close {
      display: flex;
      margin-right: 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-right: 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: left;
    }

.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-right: 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-right: 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-right-radius: 0;
      border-bottom-left-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-right: 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-right: 0;
    padding-left: 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;
  right: 0;
  width: 100%;
  height: 2px;
}

#nprogress .peg {
  position: absolute;
  left: 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);
}
}

body {
  padding-top: 64px !important;
}

:root {
  --ifm-color-primary: #1e40af;              /* اصلی شورا - آبی زیباتر */
  --ifm-color-primary-dark: #1e3a8a;      
  --ifm-color-primary-darker: #96accf;       /* دارک‌ترین */
  --ifm-color-primary-darker-darkest-dublicate: var(--ifm-color-primary-darkest);
  --ifm-color-primary-darkest: #0f172a;      /* نزدیک به مشکی، برای کامپوننت‌های خالص دارک */
  --ifm-color-primary-light: #3b82f6;        /* روشن‌تر ( complementary )  */
  --ifm-color-primary-lighter: #60a5fa;      /* خیلی روشن */
  --ifm-color-primary-lightest: #e0e7ff;
  --ifm-color-primary-lightest-dublicate: #0c1e58;      /* نزدیک سفید ـ بک‌گراندها، divهای قوی - نرم‌تر */
  --ifm-code-font-size: 95%;
  --docusaurus-highlighted-code-line-bg: rgba(30, 64, 175, 0.08); /* آبی خیلی کم‌رنگ */
  --ifm-color-red: #e26c6c;
  --ifm-color-red-melow: #b96c6c;
  --ifm-color-danger-dark: #b71c1c;
  --ifm-color-danger-lightest: #d3a4a4;
  --ifm-color-black: #000000;
  --ifm-color-success: #48cf7c;
  --ifm-color-warning: #e09766;
  --ifm-color-white: #fafafa;                 /* سفید نرم‌تر برای چشم */
  --ifm-color-white-const: #fafafa; 
  --ifm-border-center-blue: #3b82f6;
  --ifm-border-center-down-blue: #1e40af;
  --ifm-border-note: #fecaca;
  --ifm-font-color-secondary: #6b7280;
  --ifm-background-surface-color: #f1f5f9;   /* خاکستری نرم‌تر */
  --ifm-hero-gradient-start: #0a1d4dcc;      /* رنگ شروع گرادیان هیرو */
  --ifm-stats-section-bg: var(--ifm-color-primary);      /* رنگ بک‌گراند بخش آمار */

  --ifm-shadow: 0 2px 16px rgba(59, 130, 246, 0.15);
  --ifm-shadow-strong: 0 8px 32px rgba(59, 130, 246, 0.12);
  --ifm-shadow-light: 0 4px 20px rgba(0, 0, 0, 0.06);
  --ifm-shadow-dark: 0 4px 32px rgba(0, 0, 0, 0.5);
  --ifm-shadow-card: 0 1px 6px rgba(59, 130, 246, 0.1);

  /* Documentation specific variables */
  --ifm-doc-sidebar-width: 300px;
  --ifm-doc-sidebar-background: var(--ifm-background-surface-color);
  --ifm-doc-sidebar-border: 1px solid var(--ifm-color-emphasis-300);
  --ifm-shadow-warning: 0 2px 8px rgba(234, 88, 12, 0.25);
  --ifm-shadow-success: 0 2px 8px rgba(22, 163, 74, 0.25);
  --ifm-shadow-focus: 0 0 0 2px rgba(59, 130, 246, 0.15);
  --ifm-shadow-focus-strong: 0 0 0 3px rgba(59, 130, 246, 0.15);
  --ifm-overlay-black-04: rgba(0, 0, 0, 0.4);
  --ifm-overlay-black-05: rgba(0, 0, 0, 0.5);
  --ifm-overlay-black-06: rgba(0, 0, 0, 0.6);
  --ifm-overlay-black-07: rgba(0, 0, 0, 0.7);
}
.footer {
  background: var(--ifm-color-primary-darkest);
  opacity: 0.7;
}

.home-bg-logo {
  position: fixed;
  z-index: 0;
  top: 20px;
  right: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  background: url(data:image/jpeg;base64,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) no-repeat center center;
  background-size: 60vw auto;  /* حالت پیش‌فرض برای دسکتاپ */
  opacity: 0.20;
}

/* افزایش opacity برای موبایل */
@media (max-width: 768px) {
  .home-bg-logo {
    opacity: 0.4;
    background-position: center 30%;  /* حرکت به بالا */
    background-size: 110vw auto !important; 
  }
}

/* موبایل */
@media (max-width: 600px) {
  .home-bg-logo {
    background-size: 100vw auto; /* تمام عرض گوشی */
  }
}

/* برای اینکه متن آبی با بک‌گراند آبی نخونه، رنگ بک‌گراند کد مثل قبلی خیلی کمه... */

[data-theme='dark'] {
  --ifm-color-primary: #60a5fa;              /* آبی خیلی روشن لوگو، بهتر دیده می‌شه */
  --ifm-color-primary-dark: #3b82f6;         /* آبی متوسط لوگو */
  --ifm-color-primary-darker: #1e293b;       /* رنگ مرجع لوگو */
  --ifm-color-primary-darker-darkest-dublicate: #96accf;
  --ifm-color-primary-darkest: #1e293b;      /* آبی ـ مشکی */
  --ifm-color-primary-light: #93c5fd;        /* پس‌زمینه ـ روشن‌ترین */
  --ifm-color-primary-lighter: #dbeafe;      /* خیلی روشن */
  --ifm-color-primary-lightest: #020e1f;     /* سفید ـ آبی کم‌رنگ مخصوص دارک مود */
  --ifm-color-primary-lightest-dublicate: #e0e7ff; 
  --ifm-color-black: #ffffff;
  --docusaurus-highlighted-code-line-bg: rgba(96, 165, 250, 0.19); /* آبی روشن شفاف */
  --ifm-color-red: #992f2f; /* قرمز روشن‌تر برای دارک */
  --ifm-color-white: #0f172a; /* سفید معکوس برای دارک (تقریباً مشکی) */
  --ifm-border-center-blue: #60a5fa; /* آبی روشن‌تر */
  --ifm-border-center-down-blue: #3b82f6; /* آبی متوسط */
  --ifm-border-note: #fef2f2; /* صورتی خیلی روشن */
  --ifm-font-color-secondary: #94a3b8; /* خاکستری روشن‌تر */
  --ifm-background-surface-color: #1e293b;
  --ifm-background-surface-color-gradient: linear-gradient(120deg, #334155 0%, #1e293b 100%);
  --ifm-hero-gradient-start: #0a1d4dcc;      /* رنگ شروع گرادیان هیرو برای دارک مود */
  --ifm-stats-section-bg: #1e40af;      /* رنگ بک‌گراند بخش آمار برای دارک مود */

  --ifm-shadow: 0 2px 16px rgba(96, 165, 250, 0.15);
  --ifm-shadow-strong: 0 8px 32px rgba(96, 165, 250, 0.12);
  --ifm-shadow-light: 0 4px 20px rgba(255, 255, 255, 0.06);
  --ifm-shadow-dark: 0 4px 32px rgba(255, 255, 255, 0.5);
  --ifm-shadow-card: 0 1px 6px rgba(96, 165, 250, 0.1);
  --ifm-shadow-warning: 0 2px 8px rgba(249, 115, 22, 0.25);
  --ifm-shadow-success: 0 2px 8px rgba(34, 197, 94, 0.25);
  --ifm-shadow-focus: 0 0 0 2px rgba(96, 165, 250, 0.15);
  --ifm-shadow-focus-strong: 0 0 0 3px rgba(96, 165, 250, 0.15);
}

/* فونت هم که درست ست شده */
@font-face {
  font-family: 'IranSans';
  src: url(/assets/fonts/IranianSans-8c2ed8fb0154947263c5f9bfb8d49574.ttf) format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

body, * {
  font-family: 'IRANYekan', 'IranSans', Vazirmatn, Tahoma, Arial, sans-serif !important;
}

/* Custom styles for DatePicker time picker */
.rmdp-time-picker {
  border: 1px solid var(--ifm-color-primary-lightest) !important;
  border-radius: 8px !important;
  box-shadow: var(--ifm-shadow-light) !important;
  background: var(--ifm-color-white) !important;
}

.rmdp-time-picker .rmdp-time-picker-input {
  border: 1px solid var(--ifm-color-primary-lightest) !important;
  border-radius: 4px !important;
  padding: 6px 8px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  text-align: center !important;
}

.rmdp-time-picker .rmdp-time-picker-input:focus {
  border-color: var(--ifm-color-primary) !important;
  box-shadow: var(--ifm-shadow-focus) !important;
  outline: none !important;
}

.rmdp-time-picker .rmdp-time-picker-label {
  font-weight: 600 !important;
  color: var(--ifm-color-primary-dark) !important;
  margin-bottom: 4px !important;
  font-size: 12px !important;
}

.rmdp-time-picker .rmdp-time-picker-colon {
  color: var(--ifm-color-primary) !important;
  font-weight: bold !important;
  font-size: 16px !important;
}

/* Custom styles for DatePicker calendar */
.rmdp-calendar {
  border: 1px solid var(--ifm-color-primary-lightest) !important;
  border-radius: 8px !important;
  box-shadow: var(--ifm-shadow-light) !important;
  background: var(--ifm-color-white) !important;
}

.rmdp-calendar .rmdp-header {
  background: var(--ifm-color-primary) !important;
  color: var(--ifm-color-white) !important;
  border-radius: 8px 8px 0 0 !important;
}

.rmdp-calendar .rmdp-header .rmdp-header-value {
  color: var(--ifm-color-white) !important;
}

.rmdp-calendar .rmdp-day.rmdp-selected {
  background: var(--ifm-color-primary) !important;
  color: var(--ifm-color-white) !important;
}
.sd {
  color: var(--ifm-color-primary-lightest-dublicate) ;
}

.rmdp-deactive {
  color: var(--ifm-color-primary-lightest-dublicate) ;
}

.rmdp-day {
  color: var(--ifm-color-primary-lightest-dublicate);
}

.rmdp-calendar .rmdp-day.rmdp-today {
  background: var(--ifm-color-primary-lightest) !important;
  color: var(--ifm-color-primary-dark) !important;
}

.rmdp-calendar .rmdp-day:hover {
  background: var(--ifm-color-primary-light) !important;
  color: var(--ifm-color-white) !important;
}

/* Custom input styling */
.custom-date-input {
  font-family: inherit !important;
  font-size: 16px !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  background: var(--ifm-color-white) !important;
  text-align: right !important;
  transition: all 0.3s ease !important;
}

.custom-date-input:focus {
  border-color: var(--ifm-color-primary) !important;
  box-shadow: var(--ifm-shadow-focus-strong) !important;
  outline: none !important;
}

.custom-date-input::placeholder {
  color: var(--ifm-font-color-secondary) !important;
  opacity: 0.7 !important;
}

/* Responsive fixes */
@media (max-width: 768px) {
  .rmdp-calendar {
    max-width: 90vw !important;
  }
  
  .rmdp-time-picker {
    max-width: 90vw !important;
  }
}

/* Profile card theme styles */

[data-theme='light'] .profile-card {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-white);
  color: var(--ifm-color-black);
}
.profile-card {
  max-width: 600px;
  margin: 2em auto;
  border-radius: 16px;
  box-shadow: var(--ifm-color-primary-light);
  padding: 2em;
}
.color-toggle-row {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 16px;
}

[data-theme='light'] .color-toggle-btn {
  background: var(--ifm-color-white);
  color: var(--ifm-color-black);
  border: 1px solid var(--ifm-color-primary-lightest);
}
.color-toggle-btn {
  padding: 0.3em 1em;
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  font-size: 14px;
}

/* Approved Campaigns Container */
.approved-campaigns-container {
  border-radius: 1.2rem;
  box-shadow: var(--ifm-shadow-light);
  padding: 2.5rem 1.5rem;
  margin-bottom: 2.5rem;
  background: var(--ifm-background-surface-color);
  border: 1.5px solid var(--ifm-color-primary-lightest);
}

/* Campaign Card */
.campaign-card {
  background: var(--ifm-color-white);
  border: 1.5px solid var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary-lightest-dublicate);
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-light);
  padding: 1.5rem 1.2rem;
  margin-bottom: 1.5rem;
  transition: box-shadow 0.2s, transform 0.2s;
  display: block;
  padding-top: 2.5em;
}

.campaign-card-hover {
  box-shadow: var(--ifm-shadow-strong);
  transform: translateY(-2px);
}
.campaign-title {
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: 0.7rem;
  color: var(--ifm-color-primary);
}
.campaign-description {
  font-size: 1.05rem;
  margin-bottom: 0.7rem;
  color: var(--ifm-color-primary-darkest);
  line-height: 1.7;
}
.campaign-meta {
  font-size: 0.97rem;
  color: var(--ifm-font-color-secondary);
  margin-bottom: 1.1rem;
  padding: 0.7rem 1rem;
  background: var(--ifm-background-surface-color);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-primary-lightest);
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.campaign-end-date {
  color: var(--ifm-color-red);
  font-weight: 600;
}

.approved-campaigns-search-container {
  margin: 1.5rem 0 2rem 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}
.approved-campaigns-search-input {
  width: 100%;
  max-width: 400px;
  padding: 0.8rem 1.2rem;
  border-radius: 0.7rem;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  font-size: 1.1rem;
  font-family: inherit;
  box-shadow: var(--ifm-shadow-light);
  outline: none;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
}
.approved-campaigns-search-input:focus {
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow-focus-strong);
}
.approved-campaigns-title {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  color: var(--ifm-color-primary);
  font-weight: 700;
}
.approved-campaigns-count {
  font-size: 0.9em;
  color: var(--ifm-color-primary-dark);
  font-weight: normal;
}
.approved-campaigns-loading-icon, .approved-campaigns-error-icon, .approved-campaigns-empty-icon, .approved-campaigns-checking-icon {
  font-size: 1.2rem;
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
}
.approved-campaigns-empty-container {
  text-align: center;
  margin: 2rem auto;
  color: var(--ifm-font-color-secondary);
}
@media (max-width: 700px) {
  .approved-campaigns-container {
    padding: 1rem 0.2rem;
  }
  .campaign-card {
    padding: 1rem 0.5rem;
  }
  .approved-campaigns-search-container {
    flex-direction: column;
    align-items: stretch;
    gap: 0.7rem;
  }
  .campaign-meta {
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.5rem 0.8rem;
    font-size: 0.9rem;
  }
  .campaign-title {
    font-size: 1.1rem;
  }
  .campaign-description {
    font-size: 0.95rem;
  }
  .sign-campaign-buttons {
    flex-direction: column;
    gap: 0.5rem;
  }
  .sign-campaign-button {
    min-width: auto;
    width: 100%;
  }
}


/* Header */
.header-container {
  position: fixed;
  top: 0; right: 0; left: 0;
  z-index: 3000;
  border-bottom: 1px solid var(--ifm-color-primary-lightest);
  padding: 0.5rem 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 60px;
  box-sizing: content-box !important;
}

.header-logo-text {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ifm-color-primary-lightest-dublicate);
  margin: 0;
}
.header-nav-link {
  color: var(--ifm-color-primary-lightest-dublicate);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-weight: 500;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  transition: all 0.2s ease;
  font-size: 0.9rem;
}
.header-nav-link:hover {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-darker);
}

/* Sign Campaign Buttons */
.sign-campaign-success {
  padding: 1rem;
  background: var(--ifm-color-success);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-success);
  text-align: center;
  color: var(--ifm-color-white);
  font-weight: 600;
  margin-bottom: 1rem;
}
.sign-campaign-error {
  padding: 0.75rem;
  margin-bottom: 1rem;
  background: var(--ifm-color-red);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-red);
  color: var(--ifm-color-red);
  font-size: 0.9rem;
}
.sign-campaign-buttons-wrapper {
  margin-top: 1rem;
}
.sign-campaign-buttons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.sign-campaign-button {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  min-width: 140px;
}
.sign-campaign-anonymous {
  background: var(--ifm-color-warning);
  color: var(--ifm-color-white);
  box-shadow: var(--ifm-shadow-warning);
}
.sign-campaign-public {
  background: linear-gradient(-135deg, var(--ifm-color-primary) 0%, var(--ifm-color-primary-dark) 100%);
  color: var(--ifm-color-white);
  box-shadow: var(--ifm-shadow-strong);
}
.sign-campaign-disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none !important;
}

/* Family Tree */
.family-tree-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem 1rem;
  background: var(--ifm-color-white);
}


/* Modal */
.modal-overlay {
  position: fixed;
  top: 0; right: 0; width: 100vw; height: 100vh;
  background: var(--ifm-overlay-black-07);
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.modal-content {
  background: var(--ifm-color-white);
  color: var(--ifm-color-black);
  border-radius: 1.5rem;
  box-shadow: var(--ifm-color-primary-dark);
  padding: 2.2rem 1.5rem 1.7rem 1.5rem;
  min-width: 320px;
  max-width: 90vw;
  min-height: 120px;
  position: relative;
  z-index: 2100;
  font-family: inherit;
  border: none;
}


/* Campaign Signatures */
.campaign-signatures-list {
  margin-top: 1rem;
}
.campaign-signatures-scroll {
  max-height: 300px;
  overflow-y: auto;
}
.campaign-signature-item {
  padding: 0.75rem;
  margin-bottom: 0.5rem;
  background: var(--ifm-color-white);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-primary-lightest);
  display: flex;
  justify-content: space-between;
  align-items: center;
}


/* بهبود UI فرم ایجاد کارزار جدید */
.new-campaign-form {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest-dublicate);
  border-radius: 20px;
  box-shadow: var(--ifm-color-black);
  padding: 36px 28px 32px 28px;
  margin-bottom: 40px;
  color: var(--ifm-color-black);
  max-width: 540px;
  margin-right: auto;
  margin-left: auto;
  padding: 24px 18px 18px 18px;
  transition: opacity 0.4s cubic-bezier(0.4,0,0.2,1), transform 0.4s cubic-bezier(0.4,0,0.2,1);
  opacity: 0;
  transform: scale(0.95);
  overflow: visible;
  z-index: 2;
}

.new-campaign-form-open {
  opacity: 1;
  transform: scale(1);
}

.new-campaign-form-closing {
  opacity: 0;
  transform: scale(0.95);
  pointer-events: none;
}

.new-campaign-form input,
.new-campaign-form textarea {
  width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  background: var(--ifm-color-primary-darker);
  color: var(--ifm-color-black);
  font-size: 1.08em;
  margin-top: 4px;
  margin-bottom: 2px;
  transition: border 0.2s, box-shadow 0.2s;
  font-family: inherit;
}
.new-campaign-form input:focus,
.new-campaign-form textarea:focus {
  border-color: var(--ifm-color-primary-dark);
  box-shadow: var(--ifm-shadow-focus);
  outline: none;
}
.new-campaign-form input::placeholder,
.new-campaign-form textarea::placeholder {
  color: var(--ifm-color-primary-lightest-dublicate);
  opacity: 0.8;
}
.new-campaign-form button[type="submit"] {
  margin-top: 18px;
  margin-bottom: 0;
  display: block;
  width: 100%;
  font-size: 1.13em;
  border-radius: 10px;
  padding: 0.9em 0;
}

/* Confirm Modal */
.confirm-modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  background: var(--ifm-overlay-black-06);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(2px);
}

.confirm-modal-content {
  background: var(--ifm-color-white);
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-strong);
  min-width: 320px;
  max-width: 400px;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  animation: fadeIn 0.2s;
}

.confirm-modal-header {
  font-weight: 700;
  font-size: 1.2rem;
  color: var(--ifm-color-primary-dark);
  margin-bottom: 1rem;
  text-align: center;
}

.confirm-modal-body {
  font-size: 1rem;
  color: var(--ifm-color-black);
  margin-bottom: 1.5rem;
  text-align: center;
  line-height: 1.7;
}

.confirm-modal-actions {
  display: flex;
  gap: 1rem;
  width: 100%;
  justify-content: center;
}

.confirm-modal-cancel-btn,
.confirm-modal-confirm-btn {
  padding: 0.6rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  transition: all 0.2s;
}

.confirm-modal-confirm-btn {
  background: linear-gradient(-135deg, var(--ifm-color-success) 0%, #388e3c 100%);
  color: var(--ifm-color-white);
  box-shadow: var(--ifm-shadow-success);
}

.confirm-modal-cancel-btn {
  background: linear-gradient(-135deg, var(--ifm-color-red) 0%, #d32f2f 100%);
  color: var(--ifm-color-white);
  box-shadow: var(--ifm-shadow-warning);
}

.confirm-modal-cancel-btn:disabled,
.confirm-modal-confirm-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Filter Dropdown Styles */
.campaigns-filter-dropdown {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest);
  border-radius: 10px;
  box-shadow: var(--ifm-color-primary-light);
  padding: 1em 1.5em;
  z-index: 10;
  min-width: 220px;
}
.campaigns-filter-btn {
  padding: 0.5em 1.2em;
  border-radius: 8px;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  font-size: 15px;
  margin-left: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: background 0.2s, color 0.2s, border 0.2s;
}

/* Status Submenu Styles for Campaign Filter */
.campaigns-status-submenu {
  position: absolute;
  top: 110%;
  left: 0;
  background: linear-gradient(-135deg, var(--ifm-color-primary-darker) 0%, var(--ifm-color-primary-darkest) 100%);
  border: 1px solid var(--ifm-color-primary-lighter);
  border-radius: 10px;
  box-shadow: var(--ifm-shadow-strong);
  padding: 1em 1.2em;
  z-index: 50;
  min-width: 180px;
  color: var(--ifm-color-black);
  margin-left: 8px;
}
[data-theme='light'] .campaigns-status-submenu {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest);
  box-shadow: var(--ifm-color-primary-light);
}
.campaigns-status-submenu label {
  margin-bottom: 10px;
  font-size: 15px;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}


/* SenfiAccordion Styles */
.senfi-accordion-container {
  background: var(--ifm-color-white);
  margin: 1.5rem 0;
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-light);
  overflow: hidden;
  border: 1px solid var(--ifm-color-primary-lightest);
  transition: all 0.3s;
}

.senfi-accordion-btn {
  font-size: 1rem;
  font-weight: 500;
  border: var(--ifm-color-primary-lightest-dublicate);;
  padding: 1.2rem 1.5rem;
  width: 100%;
  cursor: pointer;
  outline: none;
  border-bottom: 2px solid var(--ifm-color-primary-lightest-dublicate);
  color: var(--ifm-color-primary-lightest-dublicate);
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: all 0.3s;
}
.senfi-accordion-btn-open {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary-lightest-dublicate);
}
.senfi-accordion-btn-hover {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
  box-shadow: var(--ifm-shadow-strong);
}
.senfi-accordion-title-row {
  display: flex;
  align-items: center;
}
.senfi-accordion-icon {
  font-size: 1.2rem;
  margin-right: 0.5rem;
  opacity: 0.8;
}
.senfi-accordion-arrow {
  margin-right: 0.5rem;
  display: inline-block;
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
  font-size: 1rem;
  color: var(--ifm-color-primary-lightest-dublicate);
}
.senfi-accordion-arrow-open {
  transform: rotate(-180deg);
}
.senfi-accordion-content {
  padding: 1rem 1.5rem;
  background: var(--ifm-color-white);
  animation: slideDown 0.3s ease-out;
  color: var(--ifm-color-primary-lightest-dublicate);
}



.senfi-accordion-btn,
.senfi-accordion-title-row {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

.senfi-accordion-arrow {
  margin-right: 0 !important;
  margin-left: 0.5rem !important;
}

.senfi-accordion-content ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
/* حذف display: flex و استایل span */

/* صفحه مرکزی مشترک برای tree و publications */
.senfi-page-container {
  background: var(--ifm-color-white);
  border: 1.5px solid var(--ifm-color-primary-lightest);
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-light);
  padding: 2rem;
  margin: 2rem auto;
  max-width: 1400px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.senfi-page-container:hover {
  border-color: var(--ifm-color-primary-light);
  box-shadow: var(--ifm-shadow-strong);
}


/* Council description box for tree page */
.council-description {
  font-size: 0.95rem;
  margin-bottom: 1rem;
  padding: 1rem;
  border-radius: 0.5rem;
  border: 1.5px solid var(--ifm-color-primary-lightest-dublicate);
  line-height: 1.6;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
  transition: border-color 0.2s ease, background 0.2s ease;
}

.council-description:hover {
  border-color: var(--ifm-color-primary-light);
  background: var(--ifm-color-primary-lightest);
}


.committee-card, .unit-card {
  background: var(--ifm-color-white);
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-light);
  padding: 1rem 1.2rem;
  min-width: 220px;
  max-width: 320px;
  flex: 1 1 220px;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  transition: all 0.2s ease;
  cursor: pointer;
  color: var(--ifm-color-primary-lightest-dublicate);
}

.committee-card:hover, .unit-card:hover {
  border-color: var(--ifm-color-primary-light);
  background: var(--ifm-color-primary-lightest);
  box-shadow: var(--ifm-shadow-strong);
  transform: translateY(-2px);
}

.unit-note {
  font-size: 0.97em;
  color: var(--ifm-color-red);
  background: var(--ifm-color-white);
  border-radius: 0.5em;
  padding: 0.5em 0.8em;
  margin-bottom: 0.7em;
  border: 1.5px solid var(--ifm-border-note);
  transition: border-color 0.2s ease, background 0.2s ease;
}

.unit-note:hover {
  border-color: var(--ifm-color-red);
  background: var(--ifm-color-red);
  color: var(--ifm-color-white);
}

.profile-user-card {
  max-width: 600px;
  margin: 2em auto;
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-white);
  border-radius: 16px;
  box-shadow: var(--ifm-color-primary-light);
  padding: 2em;
  color: var(--ifm-color-black);
}

.profile-user-title {
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  color: var(--ifm-color-black);
}

.profile-user-row {
  font-size: 16px;
  margin-bottom: 8px;
}
.profile-user-form {
  margin-top: 24px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em;
}
.profile-user-label {
  font-weight: 600;
  font-size: 15px;
}
.profile-user-select {
  border: 1px solid var(--ifm-color-primary-lightest);
}

.profile-user-btn {
  background: var(--ifm-color-primary-dark);
  color: var(--ifm-color-white);
}
.profile-user-btn:disabled {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-white);
}

.profile-user-error {
  color: var(--ifm-color-red);
}

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


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

.nav-link {
  color: var(--ifm-color-primary);
}
.nav-link:hover {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-light);
}


.user-button {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary);
}
.user-button:hover, .user-button.active {
  border-color: var(--ifm-color-primary-light);
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-light);
}

.admin-badge {
  background: var(--ifm-color-primary-lighter);
  color: var(--ifm-color-white);
}
.user-button:hover .admin-badge, .user-button.active .admin-badge {
  background: var(--ifm-color-primary);
  color: var(--ifm-color-white);
}

.dropdownItem {
  font-family: inherit;
  font-size: 0.9rem;
  padding: 0.6rem 1rem;
  border-radius: 0.5rem;
  border: none;
  background: transparent;
  color: var(--ifm-color-primary);
}
.dropdownItem:hover {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-light);
}


.profileButton {
  background: var(--ifm-color-primary-light);
  color: var(--ifm-color-white);
}


.adminBadge {
  background: var(--ifm-color-primary-light);
  color: var(--ifm-color-white);
}
.themeToggle {
  border: 1.5px solid var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
}
.themeToggle:hover {
  border-color: var(--ifm-color-primary-light);
  background: var(--ifm-color-white);
}


/* FamilyTree counts */
.committee-count, .unit-count {
  color: var(--ifm-font-color-secondary);
}

/* Tree page member styling */
.member-name {
  color: var(--ifm-color-primary-lightest-dublicate);
  transition: color 0.2s ease;
}

.committee-card:hover .member-name,
.unit-card:hover .member-name {
  color: var(--ifm-color-primary-lightest-dublicate);
}

.member-role {
  color: var(--ifm-color-primary-lightest-dublicate);
  font-size: 0.9em;
  margin-left: 0.5em;
  transition: color 0.2s ease;
  opacity: 0.8;
}

.committee-card:hover .member-role,
.unit-card:hover .member-role {
  color: var(--ifm-color-primary-lightest-dublicate);
  opacity: 1;
}

/* Dark mode tree page styling */
[data-theme='dark'] .senfi-page-container {
  background: var(--ifm-color-primary-darkest);
  border-color: var(--ifm-color-primary-darker);
}

[data-theme='dark'] .senfi-page-container:hover {
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow-strong);
}

[data-theme='dark'] .council-description {
  background: var(--ifm-color-primary-darkest);
  color: var(--ifm-color-primary-lightest-dublicate);
  border-color: var(--ifm-color-primary-lightest-dublicate);
}

[data-theme='dark'] .council-description:hover {
  background: var(--ifm-color-primary-darker);
  border-color: var(--ifm-color-primary);
}

[data-theme='dark'] .committee-card,
[data-theme='dark'] .unit-card {
  background: var(--ifm-color-primary-darkest);
  border-color: var(--ifm-color-primary-lightest-dublicate);
  color: var(--ifm-color-primary-lightest-dublicate);
}

[data-theme='dark'] .committee-card:hover,
[data-theme='dark'] .unit-card:hover {
  background: var(--ifm-color-primary-darker);
  border-color: var(--ifm-color-primary);
}

[data-theme='dark'] .unit-note {
  background: var(--ifm-color-primary-darkest);
  border-color: var(--ifm-color-red);
  color: var(--ifm-color-red);
}

[data-theme='dark'] .unit-note:hover {
  background: var(--ifm-color-red);
  color: var(--ifm-color-white);
}

[data-theme='dark'] .member-name {
  color: var(--ifm-color-primary-lightest-dublicate);
}

[data-theme='dark'] .committee-card:hover .member-name,
[data-theme='dark'] .unit-card:hover .member-name {
  color: var(--ifm-color-primary-lightest-dublicate);
}

[data-theme='dark'] .member-role {
  color: var(--ifm-color-primary-lightest-dublicate);
  opacity: 0.8;
}

[data-theme='dark'] .committee-card:hover .member-role,
[data-theme='dark'] .unit-card:hover .member-role {
  color: var(--ifm-color-primary-lightest-dublicate);
  opacity: 1;
}

.modal-close-btn {
  position: absolute;
  inset-inline-end: 18px;
  top: 18px;
  background: none;
  border: none;
  font-size: 22px;
  color: var(--ifm-color-red);
  cursor: pointer;
  font-weight: 900;

}

/* Notification */
.notification {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 9999;
  padding: 1rem 1.5rem;
  border-radius: 0.75rem;
  box-shadow: var(--ifm-shadow-strong);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 300px;
  max-width: 400px;
  transform: translateX(0);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: blur(10px);
  border: 1px solid var(--ifm-color-white-lightest);
  color: var(--ifm-color-white);
}

.notification.notification-animating {
  transform: translateX(-100%);
}

.notification-success {
  background: linear-gradient(-135deg, var(--ifm-color-success) 0%, var(--ifm-color-success-dark) 100%);
}

.notification-error {
  background: var(--ifm-color-red) !important;
  color: var(--ifm-color-primary-lightest-dublicate) !important;
}

.notification-error .notification-icon {
  color: inherit !important;
}

.notification-warning {
  background: var(--ifm-color-red) 
}

.notification-info {
  background: linear-gradient(-135deg, var(--ifm-color-primary) 0%, var(--ifm-color-primary-dark) 100%);
}

.notification-icon {
  flex-shrink: 0;
}

.notification-message {
  flex: 1;
  font-size: 0.95rem;
  font-weight: 500;
}

.notification-close-button {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  padding: 0.25rem;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.7;
  transition: opacity 0.2s;
}

.notification-close-button:hover {
  opacity: 1;
}

/* Publications */
.publication-issue-btn {
  width: 100%;
  background: transparent;
  color: var(--ifm-color-primary-dark);
  border: none;
  padding: 0.8rem 1.5rem;
  font-size: 0.95rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: background 0.2s, color 0.2s;
}
.publication-issue-btn:hover {
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-light);
}

.publication-issue-missing {
  width: 100%;
  background: var(--ifm-color-red);
  color: var(--ifm-color-red);
  border: none;
  padding: 0.8rem 1.5rem;
  font-size: 0.95rem;
  cursor: not-allowed;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  opacity: 0.7;
}

/* --- Custom classes for refactored inline styles --- */
.profile-error {
  color: var(--ifm-color-red);
  font-weight: 600;
  margin-bottom: 20px;
}

.profile-main-content {
  box-shadow: var(--ifm-color-primary-light);
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-white);
}



.campaign-signature-error {
  color: var(--ifm-color-red);
  font-size: 1rem;
  text-align: center;
  margin: 1rem 0;
}
.stats-panel-number {
  color: var(--ifm-color-primary);
  font-weight: bold;
  font-size: 1.2em;
}


.senfi-accordion-title {
  color: var(--ifm-color-primary-lightest-dublicate);
  font-weight: 600;
}

.profile-title {
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  color: var(--ifm-color-black);
}

.profile-signed-campaign-item {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-white);
  color: var(--ifm-color-black);
}

.profile-faded {
  color: var(--ifm-font-color-secondary);
}

.profile-signed-campaign-title {
  color: var(--ifm-color-black);
}

/* ApprovedCampaigns Component Styles */
.approved-campaigns-search-container {
  margin: 1.5rem 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16;
}

.approved-campaigns-search-input {
  width: 100%;
  max-width: 400px;
  padding: 0.8rem 1.2rem;
  border-radius: 0.7rem;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  font-size: 1.1rem;
  font-family: inherit;
  margin: 0 auto;
  box-shadow: var(--ifm-shadow-light);
  outline: none;
}

.approved-campaigns-filter-container {
  position: relative;
}

.approved-campaigns-filter-submenu-container {
  margin-bottom: 12px;
  position: relative;
}

.approved-campaigns-filter-submenu-btn {
  width: 100%;
  justify-content: space-between;
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 0;
}

.approved-campaigns-filter-icon {
  font-size: 18px;
}

.approved-campaigns-filter-submenu-icon {
  font-size: 16px;
}

.approved-campaigns-title {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}

.approved-campaigns-count {
  font-size: 0.8em;
  color: var(--ifm-color-primary-dark);
  font-weight: normal;
}

.approved-campaigns-loading-icon {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.approved-campaigns-error-icon {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
}

.approved-campaigns-empty-container {
  text-align: center;
  margin: 2rem auto;
}

.approved-campaigns-empty-icon {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

.approved-campaigns-checking-icon {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

/* CampaignCard Component Styles */
.campaign-end-date {
  margin-left: 8px;
}

.campaign-admin-button {
  margin-left: 1rem;
  background: var(--ifm-color-red);
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: var(--ifm-shadow-warning);
  transition: all 0.2s;
}

.campaign-admin-button:hover {
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-warning);
}

@media (max-width: 700px) {
  .campaign-admin-button {
    padding: 0.4rem 0.8rem;
    font-size: 0.9em;
    margin-left: 0.5rem;
  }
}

/* Header Component Styles */
.header-container {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 3000;
  padding: 0.5rem 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 60px;
  background: var(--ifm-color-white);
  border-bottom: 1px solid var(--ifm-color-primary-lightest);
}

.header-logo-link {
  -webkit-text-decoration: none;
  text-decoration: none;
  color: inherit;
}

.header-logo-section {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: transform 0.2s ease;
}

.header-logo-section:hover {
  transform: scale(1.05);
}

.header-logo {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
}

.header-logo-text {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ifm-color-primary-lightest-dublicate);
  margin: 0;
}

.header-nav-section {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.header-nav-link {
  -webkit-text-decoration: none;
  text-decoration: none;
  font-weight: 500;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  transition: all 0.2s ease;
  font-size: 0.9rem;
  color: var(--ifm-color-primary-lightest-dublicate);
}

.header-nav-link:hover {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
}

.header-user-section {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.header-theme-toggle {
  background: transparent;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1rem;
  color: var(--ifm-color-primary-lightest-dublicate);
}

.header-theme-toggle:hover {
  border-color: var(--ifm-color-primary);
  background: var(--ifm-color-primary-lightest);
}

.header-dropdown-arrow {
  font-size: 1rem;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-block;
}

.header-dropdown-arrow-open {
  transform: rotate(180deg) !important;
}

.header-dropdown-menu {
  position: absolute;
  top: 110%;
  right: 0;
  left: 0;
  min-width: 180px;
  padding: 0.5rem;
  z-index: 10;
  border-radius: 0.75rem;
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest-dublicate);
  box-shadow: var(--ifm-color-black);
  backdrop-filter: blur(10px);
  overflow: hidden;
}

.header-dropdown-item {
  font-family: inherit;
  font-size: 0.9rem;
  padding: 0.6rem 0.8rem;
  border-radius: 0.5rem;
  border: none;
  background: transparent;
  cursor: pointer;
  font-weight: 500;
  width: 100%;
  text-align: center;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: block;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.header-dropdown-profile {
  color: var(--ifm-color-primary-lightest-dublicate);
}

.header-dropdown-profile:hover {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
}

.header-dropdown-logout {
  color: var(--ifm-color-primary-lightest-dublicate);
  background:var(--ifm-color-red);
}

.header-dropdown-logout:hover {
  background: var(--ifm-color-red);
}

.header-login-button {
  font-family: inherit;
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
  border-radius: 1.5rem;
  font-weight: 600;
  transition: all 0.2s ease;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
  cursor: pointer;
}

.header-login-button:hover {
  border-color: var(--ifm-color-primary);
  background: var(--ifm-color-primary-lightest);
}

.header-hamburger {
  display: none;
  background: none;
  border: none;
  font-size: 28px;
  color: var(--ifm-color-primary-lightest-dublicate);
  align-items: center;
  cursor: pointer;
}

/* Mobile Menu Styles */
.header-mobile-overlay {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: var(--ifm-overlay-black-06);
  z-index: 3999;
  transition: opacity 0.25s;
}

.header-mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 82vw;
  max-width: 340px;
  background: var(--ifm-color-primary-lightest);
  z-index: 4000;
  box-shadow: 8px 0 32px var(--ifm-shadow-strong);
  border-bottom: 1px solid var(--ifm-color-primary-lightest);
  border-top-right-radius: 1.5rem;
  border-bottom-right-radius: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 1.2rem 1.2rem 1.5rem 1.2rem;
  animation: slideInMenu 0.32s cubic-bezier(0.4,0,0.2,1);
  transition: transform 0.32s cubic-bezier(0.4,0,0.2,1), opacity 0.32s cubic-bezier(0.4,0,0.2,1);
  transform: translateX(0);
  opacity: 1;
}
.header-mobile-menu.menu-closing {
  transform: translateX(-100%);
  opacity: 0;
  pointer-events: none;
}

.header-mobile-menu a,
.header-mobile-menu button {
  margin: 0.7rem 0;
  font-size: 1.13rem;
  border-radius: 0.7rem;
  box-shadow: var(--ifm-shadow-light);
  padding: 0.7rem 1rem;
  background: none;
  border: none;
  transition: background 0.18s, color 0.18s;
  color: var(--ifm-color-primary-lightest-dublicate);
  cursor: pointer;
}

.header-mobile-menu a:hover,
.header-mobile-menu button:hover {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
}

.header-mobile-menu .close-btn {
  align-self: flex-end;
  background: none;
  border: none;
  font-size: 2.2rem;
  color: var(--ifm-color-red);
  margin-bottom: 1.2rem;
  margin-top: 0.2rem;
  cursor: pointer;
  border-radius: 50%;
  transition: background 0.18s;
}

.header-mobile-menu .close-btn:hover {
  background: var(--ifm-color-red);
  opacity: 0.1;
}

@keyframes slideInMenu {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Responsive Styles */
@media (max-width: 800px) {
  .header-nav-section {
    display: none !important;
  }
  .header-hamburger {
    display: flex !important;
  }
}

@media (min-width: 801px) {
  .header-hamburger {
    display: none !important;
  }
}

/* NewCampaignForm Component Styles */
.new-campaign-form-container {
  display: flex;
  justify-content: center;
  margin: 2rem 0;
}

.new-campaign-toggle-button {
  font-size: 1.1rem;
  padding: 0.8rem 2rem;
  border-radius: 2rem;
  border: none;
  background: linear-gradient(-135deg, var(--ifm-color-primary) 0%, var(--ifm-color-primary-light) 100%);
  color: var(--ifm-color-white);
  cursor: pointer;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: var(--ifm-shadow-strong);
}

.new-campaign-toggle-button:hover,
.new-campaign-toggle-button-hover {
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow-strong);
}

.new-campaign-form-title {
  text-align: center;
  font-weight: 800;
  font-size: 1.25em;
  margin-bottom: 24px;
  color: var(--ifm-color-primary-dark);
}

.new-campaign-form-group {
  margin-bottom: 1.5rem;
}

.new-campaign-radio-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.1em;
}

.new-campaign-radio-option {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  width: auto;
  margin-bottom: 0.1em;
  justify-content: flex-start;
  white-space: nowrap;
}

.new-campaign-radio-input {
  width: auto;
  margin: 0;
  margin-inline-end: 0.2em;
}

.new-campaign-radio-label {
  white-space: nowrap;
  display: inline;
}

.new-campaign-radio-option:hover {
  background: var(--ifm-color-primary-lightest);
}

.new-campaign-radio-label {
  font-size: 0.95rem;
  color: var(--ifm-color-primary-dark);
}

.new-campaign-date-picker {
  font-family: inherit;
  min-width: 220px;
  max-width: 280px;
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest-dublicate);
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 16px;
  margin-top: 4px;
}

.new-campaign-error-message {
  color: var(--ifm-color-red);
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 1rem;
  padding: 1rem;
  background: var(--ifm-color-red);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-red);
}

.new-campaign-submit-button {
  font-size: 1rem;
  background: linear-gradient(-135deg, var(--ifm-color-primary) 0%, var(--ifm-color-primary-dark) 100%);
  color: var(--ifm-color-white);
  border: none;
  border-radius: 0.5rem;
  padding: 0.8rem 2rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: var(--ifm-shadow-strong);
  width: 100%;
}

.new-campaign-submit-button:hover:not(.new-campaign-submit-button-loading) {
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-strong);
}

.new-campaign-submit-button-loading {
  opacity: 0.7;
  cursor: not-allowed;
}

.new-campaign-success-message {
  color: var(--ifm-color-white);
  font-weight: 600;
  font-size: 1rem;
  margin-top: 1rem;
  padding: 1rem;
  background: var(--ifm-color-success);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-success);
}

/* Publications Component Styles */
.publications-pdf-container {
  margin-bottom: 2rem;
}

.publications-pdf-close-container {
  text-align: right;
  margin-top: 1rem;
}

.publications-pdf-close-button {
  padding: 0.5rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  background: var(--ifm-color-gray-100);
  color: var(--ifm-color-red);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.3s ease;
}

.publications-pdf-close-button:hover {
  background: var(--ifm-color-gray-200);
  transform: translateY(-1px);
}

.publications-issues-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.publications-issue-item {
  border-bottom: 1px solid var(--ifm-color-primary-lightest);
}

.publications-issue-button {
  width: 100%;
  background: transparent;
  color: var(--ifm-color-primary-lightest-dublicate);
  border: none;
  padding: 0.8rem 1.5rem;
  font-size: 0.95rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.3s ease;
}

.publications-issue-button:hover {
  background: var(--ifm-color-primary-lightest);
}

.publications-issue-missing {
  width: 100%;
  background: var(--ifm-color-red-lightest);
  color: var(--ifm-color-red);
  border: none;
  padding: 0.8rem 1.5rem;
  font-size: 0.95rem;
  cursor: not-allowed;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  opacity: 0.7;
}

.publications-issue-icon {
  font-size: 1rem;
  opacity: 0.8;
}

/* SenfiAccordion Component Styles */
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.senfi-accordion-container {
  margin: 1.5rem 0;
  border-radius: 1rem;
  box-shadow: var(--ifm-shadow-strong);
  overflow: hidden;
  border: 1px solid var(--ifm-color-primary-lightest);
  transition: all 0.3s ease;
}

.senfi-accordion-container.senfi-accordion-open {
  box-shadow: var(--ifm-shadow-strong);
}

.senfi-accordion-btn {
  font-size: 1rem;
  font-weight: 500;
  border: var(--ifm-color-primary-lightest-dublicate);;
  padding: 1.2rem 1.5rem;
  width: 100%;
  cursor: pointer;
  outline: none;
  border-bottom: none;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
}

.senfi-accordion-btn.senfi-accordion-btn-open {
  border-bottom: 2px solid var(--ifm-color-primary-lightest-dublicate);
}

.senfi-accordion-btn.senfi-accordion-btn-hover {
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-strong);
  color: var(--ifm-color-primary-lightest-dublicate);
}

.senfi-accordion-title-row {
  display: flex;
  align-items: center;
}

.senfi-accordion-icon {
  font-size: 1.2rem;
  margin-right: 0.5rem;
  opacity: 0.8;
}

.senfi-accordion-title {
  font-weight: 500;
}

.senfi-accordion-arrow {
  margin-right: 0.5rem;
  display: inline-block;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(0deg);
  font-size: 1rem;
  color: var(--ifm-color-primary-lightest-dublicate);
}

.senfi-accordion-arrow.senfi-accordion-arrow-open {
  transform: rotate(-180deg);
}

.senfi-accordion-content {
  padding: 1rem 1.5rem;
  animation: slideDown 0.3s ease-out;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
}

/* Campaign Review Component Styles */
.campaign-review-container {
  max-width: 1000px;
  margin: 2rem auto;
  padding: 0 1rem;
}

.campaign-review-header {
  text-align: center;
  margin-bottom: 2rem;
  padding: 2rem;
  background: linear-gradient(-120deg, var(--ifm-color-primary-lightest) 0%, transparent 80%);
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-primary-lighter);
}

.campaign-review-header-title {
  font-size: 2rem;
  font-weight: 700;
  color: var(--ifm-color-primary-lightest-dublicate);
  margin: 0 0 0.5rem 0;
}

.campaign-review-header-subtitle {
  font-size: 1rem;
  color: var(--ifm-color-primary-dark);
  opacity: 0.8;
  margin: 0;
}

.campaign-review-loading-container {
  text-align: center;
  padding: 3rem;
  color: var(--ifm-color-primary-dark);
  background: var(--ifm-color-white-lightest);
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-primary-lighter);
}

.campaign-review-loading-icon {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.campaign-review-error-container {
  color: var(--ifm-color-red);
  font-weight: 600;
  text-align: center;
  margin-bottom: 1.5rem;
  padding: 1.5rem;
  background: var(--ifm-color-red-lightest);
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-red-light);
}

.campaign-review-error-icon {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
}

.campaign-review-empty-container {
  text-align: center;
  color: var(--ifm-color-primary-dark);
  padding: 3rem;
  background: var(--ifm-color-white-lightest);
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-primary-lighter);
}

.campaign-review-empty-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.6;
}

.campaign-review-empty-title {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.campaign-review-empty-subtitle {
  font-size: 1rem;
  opacity: 0.8;
}

.campaign-review-search-container {
  margin: 1.5rem 0;
  text-align: center;
}

.campaign-review-search-input {
  width: 100%;
  max-width: 400px;
  padding: 0.8rem 1.2rem;
  border-radius: 0.7rem;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  font-size: 1.1rem;
  font-family: inherit;
  margin: 0 auto;
  box-shadow: var(--ifm-shadow-strong);
  outline: none;
}

.campaign-review-campaigns-container {
  max-height: 70vh;
  overflow-y: auto;
  padding: 0.5rem;
}

.campaign-card {
  background: var(--ifm-color-primary-lightest);
  border-radius: 1rem;
  margin-bottom: 1rem;
  padding: 1.5rem;
  box-shadow: var(--ifm-shadow-strong);
  border: 1px solid var(--ifm-color-primary-lightest);
  transition: all 0.3s ease;
}

.campaign-card.campaign-card-hover {
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow-strong);
}

.campaign-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
  gap: 1rem;
}

.campaign-title {
  font-weight: 700;
  font-size: 1.2rem;
  margin: 0;
  color: var(--ifm-color-primary-lightest-dublicate);
  flex: 1;
}

.campaign-date {
  font-size: 0.9rem;
  color: var(--ifm-color-primary-dark);
  opacity: 0.7;
  white-space: nowrap;
}

.campaign-type {
  font-size: 0.8rem;
  padding: 0.4rem 0.8rem;
  border-radius: 1rem;
  font-weight: 600;
  margin-bottom: 1rem;
  display: inline-block;
}

.campaign-type.public-type {
  background: var(--ifm-color-success-lightest);
  color: var(--ifm-color-success-dark);
  border: 1px solid var(--ifm-color-success-light);
}

.campaign-type.anonymous-type {
  background: var(--ifm-color-red);
  color: var(--ifm-color-primary-lightest-dublicate);
  border: 1px solid var(--ifm-color-primary-lightest-dublicate);
}

.campaign-description {
  font-size: 1rem;
  margin-bottom: 1rem;
  line-height: 1.6;
  white-space: pre-line;
  color: var(--ifm-color-primary-lightest-dublicate);
}

.campaign-email {
  font-size: 0.9rem;
  color: var(--ifm-color-primary-dark);
  margin-bottom: 1rem;
  padding: 0.8rem 1rem;
  background: var(--ifm-color-white-lightest);
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-primary-lightest);
}

.button-container {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
  margin-top: 1rem;
}

.campaign-review-approve-button {
  font-size: 0.9rem;
  background: linear-gradient(-135deg, var(--ifm-color-success) 0%, var(--ifm-color-success-dark) 100%);
  color: var(--ifm-color-white);
  border: none;
  border-radius: 0.5rem;
  padding: 0.7rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: var(--ifm-shadow-strong);
}

.campaign-review-approve-button:hover:not(.campaign-review-approve-button-processing) {
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-strong);
}

.campaign-review-approve-button-processing {
  opacity: 0.7;
  cursor: not-allowed;
}

.campaign-review-reject-button {
  font-size: 0.9rem;
  background: linear-gradient(-135deg, var(--ifm-color-red) 0%, var(--ifm-color-red-dark) 100%);
  color: var(--ifm-color-primary-lightest-dublicate);
  border: 1px solid var(--ifm-color-primary-lightest-dublicate);
  border-radius: 0.5rem;
  padding: 0.7rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: var(--ifm-shadow-strong);
}

.campaign-review-reject-button:hover:not(.campaign-review-reject-button-processing) {
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-strong);
}

.campaign-review-reject-button-processing {
  opacity: 0.7;
  cursor: not-allowed;
}

.campaign-review-access-denied {
  text-align: center;
  padding: 3rem;
  color: var(--ifm-color-red);
  background: var(--ifm-color-white-lightest);
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-red-light);
  max-width: 600px;
  margin: 2rem auto;
}

.campaign-review-access-denied-title {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.campaign-review-access-denied-text {
  font-size: 1rem;
  margin-bottom: 1rem;
  line-height: 1.6;
}

.campaign-review-access-denied-role {
  font-size: 0.9rem;
  color: var(--ifm-color-gray-600);
  margin-top: 1rem;
  padding: 1rem;
  background: var(--ifm-color-gray-lightest);
  border-radius: 0.5rem;
}

/* Home Page Component Styles */
.home-hero-section {
  color: var(--ifm-font-color-base);
  padding: 4rem 2rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-hero-overlay {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: var(--ifm-color-black-lightest);
  z-index: 1;
}

.home-hero-content {
  position: relative;
  z-index: 2;
  max-width: 800px;
  margin: 0 auto;
}

.home-hero-title {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 1rem;
  color: var(--ifm-font-color-base);
  text-shadow: var(--ifm-shadow-strong);
}

.home-hero-subtitle {
  font-size: 1.2rem;
  margin-bottom: 2rem;
  color: var(--ifm-color-black);
  line-height: 1.6;
  opacity: 0.9;
}

.home-hero-buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

.home-hero-button {
  padding: 0.8rem 2rem;
  border-radius: 2rem;
  -webkit-text-decoration: none;
  text-decoration: none;
  font-weight: 600;
  font-size: 1rem;
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.home-hero-primary-button {
  background: var(--ifm-color-primary);
  color: var(--ifm-color-white);
}

.home-hero-primary-button:hover {
  transform: scale(1.05);
  box-shadow: var(--ifm-shadow-strong);
}

.home-hero-secondary-button {
  background: transparent;
  color: var(--ifm-color-primary);
  border-color: var(--ifm-color-primary);
}

.home-hero-secondary-button:hover {
  background: var(--ifm-color-primary);
  color: var(--ifm-color-white);
  transform: scale(1.05);
}

.home-publications-section {
  padding: 4rem 2rem;
  background: var(--ifm-color-white);
}

.home-features-container {
  max-width: 1200px;
  margin: 0 auto;
}

.home-section-title {
  text-align: center;
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 3rem;
  color: var(--ifm-font-color-base);
}

.home-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
  margin-top: 2rem;
}

.home-feature-card {
  background: var(--ifm-background-surface-color, var(--ifm-background-surface-color-gradient));
  border-radius: 1rem;
  padding: 0;
  box-shadow: var(--ifm-shadow-strong);
  transition: all 0.3s ease;
  text-align: center;
  border: 1px solid var(--ifm-color-primary-lightest);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.home-feature-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--ifm-shadow-strong);
}

.home-feature-image-container {
  width: 100%;
  min-height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 1rem 1rem 0 0;
}

.home-feature-image {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
  background: var(--ifm-background-surface-color-gradient);
}

.home-feature-content {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.home-feature-title {
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--ifm-font-color-base);
  flex: 1;
}

.home-download-link {
  display: inline-block;
  padding: 0.8rem 2rem;
  background: linear-gradient(-135deg, var(--ifm-color-primary) 0%, var(--ifm-color-primary-dark) 100%);
  color: var(--ifm-color-white);
  -webkit-text-decoration: none;
  text-decoration: none;
  border-radius: 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
  border: none;
  box-shadow: var(--ifm-shadow-strong);
  margin-top: auto;
}

.home-download-link:hover {
  background: var(--ifm-color-primary-dark);
  transform: scale(1.05);
}

.home-coming-soon {
  display: inline-block;
  padding: 0.8rem 2rem;
  background: var(--ifm-color-red);
  color: var(--ifm-color-white);
  border-radius: 2rem;
  font-weight: 600;
  font-size: 0.9rem;
  box-shadow: var(--ifm-shadow-strong);
  margin-top: auto;
}

.home-stats-section {
  padding: 3rem 2rem;
  background: var(--ifm-color-primary-darker);
  color: var(--ifm-color-white);
}

.home-stats-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
  text-align: center;
}

.home-stat-item {
  padding: 1rem;
}

.home-stat-number {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: var(--ifm-color-white);
}

.home-stat-label {
  font-size: 1rem;
  opacity: 0.9;
  color: var(--ifm-color-white);
}

[data-theme='dark'] .home-stat-number {
  color: var(--ifm-color-black);
}

[data-theme='dark'] .home-stat-label {
  color: var(--ifm-font-color-secondary);
}

.home-quick-links-section {
  padding: 4rem 2rem;
  background: var(--ifm-color-primary-lightest);
}

.home-quick-links-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  max-width: 800px;
  margin: 0 auto;
}

.home-quick-link-card {
  background: var(--ifm-color-primary-darker);
  padding: 2rem;
  border-radius: 1rem;
  text-align: center;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: var(--ifm-color-black);
  transition: all 0.3s ease;
  border: 1px solid var(--ifm-color-primary-lightest);
}

.home-quick-link-card:hover {
  background: var(--ifm-color-primary-darker-darkest-dublicate);
  color: var(--ifm-color-white);

  transform: translateY(-3px);
}

.home-quick-link-icon {
  font-size: 2rem;
  margin-bottom: 1rem;
}

.home-quick-link-title {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.home-quick-link-description {
  font-size: 0.9rem;
  opacity: 0.8;
}

/* CampaignSignatures Component Styles */
.campaign-signatures-loading {
  text-align: center;
  padding: 1rem;
}

.campaign-signatures-loading-text {
  font-size: 1.2rem;
  color: var(--ifm-color-primary);
}

.campaign-signatures-error-container {
  text-align: center;
  padding: 1rem;
}

.campaign-signatures-empty {
  text-align: center;
  padding: 1rem;
}

.campaign-signatures-empty-text {
  font-size: 1rem;
  color: var(--ifm-color-danger-dark);
}

.campaign-signature-email {
  font-weight: 600;
  color: var(--ifm-color-primary-dark);
}

.campaign-signature-date {
  font-size: 0.85rem;
  color: var(--ifm-color-gray-600);
  margin-top: 0.25rem;
}

.campaign-signature-anonymous {
  font-size: 0.8rem;
  color: var(--ifm-color-gray-600);
  font-style: italic;
}

/* Header Mobile Menu Component Styles */
.header-mobile-theme-button {
  color: var(--ifm-color-primary-light);
  background: none;
  border: none;
  padding: 0.5rem 1rem;
  cursor: pointer;
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}

.header-mobile-logout-button {
  color: var(--ifm-color-red);
  background: none;
  border: none;
  padding: 0.5rem 1rem;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  width: 100%;
}

.header-mobile-login-button {
  color: var(--ifm-color-primary-light);
  background: none;
  border: none;
  padding: 0.5rem 1rem;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  width: 100%;
}

/* StatsPanel Component Styles */
.stats-panel-container {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
  padding: 1.5rem;
  border-radius: 1rem;
  border: 1px solid var(--ifm-color-primary-lighter);
  background: var(--ifm-background-surface-color-gradient);
}

.stats-panel-item {
  text-align: center;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
  border: 1px solid var(--ifm-color-primary-lightest);
  background: var(--ifm-background-surface-color, var(--ifm-color-white));
  margin: 0 0.5rem;
}

.stats-panel-number {
  font-size: 2rem;
  font-weight: 700;
  color: var(--ifm-color-primary-lightest-dublicate);
  margin-bottom: 0.5rem;
}

.stats-panel-number.stats-panel-number-color {
  color: var(--ifm-color-primary);
}

.stats-panel-label {
  font-size: 1rem;
  color: var(--ifm-color-primary-lightest-dublicate);
  font-weight: 500;
}

/* Profile Component Styles */
.profile-admin-title {
  font-size: 1.2em;
  font-weight: 700;
  margin-bottom: 16px;
}

.profile-loading {
  text-align: center;
  padding: 1rem;
  color: var(--ifm-color-primary);
}

.profile-users-list {
  max-height: 400px;
  overflow-y: auto;
}

.profile-user-item {
  padding: 0.7em 0.5em;
  border-bottom: 1px solid var(--ifm-color-primary-lightest);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: background-color 0.2s ease;
}

.profile-user-item:hover {
  background-color: var(--ifm-color-primary-lightest);
}

.profile-user-email {
  font-weight: 600;
}

.profile-user-role {
  font-size: 0.95em;
  color: var(--ifm-color-gray-600);
}

.profile-main-title {
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
}

.profile-info-title {
  font-size: 1.2em;
  font-weight: 600;
  margin-bottom: 12px;
}

.profile-info-item {
  font-size: 16px;
  margin-bottom: 8px;
}

.profile-logout-button {
  font-size: 14px;
  background: var(--ifm-color-red);
  color: var(--ifm-color-primary-lightest-dublicate);
  border: none;
  border-radius: 6px;
  padding: 0.5em 1em;
  font-weight: 600;
  cursor: pointer;
  margin-top: 8px;
  transition: background-color 0.2s ease;
}

.profile-logout-button:hover {
  background: var(--ifm-color-red-dark);
}

.profile-campaigns-title, .profile-polls-title {
  font-size: 1.2em;
  font-weight: 600;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.profile-campaigns-title span,
.profile-polls-title span {
  font-weight: 400;
  font-size: 0.9em;
  color: var(--ifm-font-color-secondary);
}

.profile-campaigns-error {
  color: var(--ifm-color-red);
  font-weight: 600;
  margin-bottom: 20px;
}

.profile-campaigns-empty, .profile-polls-empty {
  text-align: center;
  color: var(--ifm-color-gray-600);
  padding: 2em;
}

.profile-campaigns-list, .profile-polls-list {
  max-height: 500px;
  overflow-y: auto;
}

.profile-loading-container {
  text-align: center;
  padding: 2em;
  color: var(--ifm-color-primary);
}

.profile-error-container {
  max-width: 600px;
  margin: 2em auto;
  text-align: center;
}

.profile-error-message {
  color: var(--ifm-color-red);
  font-weight: 600;
  margin-bottom: 20px;
}

.profile-return-link {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.profile-return-link:hover {
  color: var(--ifm-color-primary-light);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

/* Reusable Components */

/* Loading Spinner Component */
.loading-spinner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  text-align: center;
  color: var(--ifm-color-primary-dark);
}

.loading-spinner-icon {
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
}

.loading-spinner-message {
  font-weight: 500;
}

/* Error Message Component */
.error-message {
  display: flex;
  align-items: center;
  padding: 1rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.error-message-error {
  background: var(--ifm-color-red-lightest);
  border: 1px solid var(--ifm-color-red-light);
  color: var(--ifm-color-red);
}

.error-message-warning {
  background: var(--ifm-color-warning-lightest);
  border: 1px solid var(--ifm-color-warning-light);
  color: var(--ifm-color-warning);
}

.error-message-icon {
  margin-right: 0.5rem;
  font-size: 1.1em;
}

.error-message-text {
  flex: 1;
}

.error-message-retry-btn {
  margin-left: 1rem;
  padding: 0.25rem 0.75rem;
  border: 1px solid currentColor;
  border-radius: 0.25rem;
  background: transparent;
  color: inherit;
  font-size: 0.9em;
  cursor: pointer;
  transition: all 0.2s ease;
}

.error-message-retry-btn:hover {
  background: currentColor;
  color: white;
}

/* Empty State Component */
.empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 3rem 2rem;
  text-align: center;
  color: var(--ifm-color-primary-dark);
}

.empty-state-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.7;
}

.empty-state-title {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.empty-state-subtitle {
  font-size: 1rem;
  opacity: 0.8;
  max-width: 400px;
}

/* Campaign List Item Component */
.profile-signed-campaign-item.clickable {
  cursor: pointer;
  transition: all 0.2s ease;
}

.profile-signed-campaign-item.clickable:hover {
  background: var(--ifm-color-primary-lightest);
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow-light);
}

.campaign-ended {
  color: var(--ifm-color-red) !important;
  font-weight: 600;
}

/* User Info Card Component Enhancements */
.profile-info-card {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest);
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  box-shadow: var(--ifm-shadow-light);
  transition: all 0.3s ease;
}

.profile-info-card:hover {
  box-shadow: var(--ifm-shadow);
  transform: translateY(-2px);
}

/* Admin User List Component Enhancements */
.profile-card {
  background: var(--ifm-color-white);
  border: 1px solid var(--ifm-color-primary-lightest);
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  box-shadow: var(--ifm-shadow-light);
  transition: all 0.3s ease;
}

.profile-card:hover {
  box-shadow: var(--ifm-shadow);
  transform: translateY(-2px);
}

.docusaurus-mt-lg {
  margin-top: 0 !important; 
}

/* Layout and Auth Modal Styles */
/* Global gradient background - works like home-bg-logo */
.global-gradient-bg {
  position: fixed;
  z-index: 0;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  background: linear-gradient(-120deg, var(--ifm-hero-gradient-start) 0, transparent 100%);
  background-attachment: fixed;
}

.layout-content-wrapper {
  position: relative;
  z-index: 1;
}

.auth-modal-title {
  margin-bottom: 18px;
  font-weight: 800;
  font-size: 22px;
}

.auth-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.auth-form-label {
  font-weight: 600;
  font-size: 16px;
}

.auth-form-input {
  font-size: 17px;
  padding: 0.7em 1em;
  border-radius: 8px;
  border: 1.5px solid var(--ifm-color-primary-lightest);
  font-family: inherit;
  background: var(--ifm-color-white);
  transition: all 0.3s ease;
}

.auth-form-input:focus {
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow-focus);
  outline: none;
}

.auth-form-input::placeholder {
  color: var(--ifm-font-color-secondary);
  opacity: 0.7;
}


.auth-form-error {
  color: var(--ifm-color-red);
  font-weight: 600;
  font-size: 15px;
}

.auth-form-button {
  margin-top: 10px;
  font-size: 17px;
  background: var(--ifm-color-primary);
  color: var(--ifm-color-white);
  border: none;
  border-radius: 8px;
  padding: 0.7em 0;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
}

.auth-form-button:hover:not(:disabled) {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-1px);
  box-shadow: var(--ifm-shadow);
}

.auth-form-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

/* Hide default Docusaurus navbar since we're using custom header */
.theme-layout-navbar-right,
.navbar__items,
.navbar__items--right {
  display: none !important;
}

/* Hide the entire default navbar */
.navbar {
  display: none !important;
}

/* Hide any other default navbar elements */
.navbar__brand,
.navbar__logo,
.navbar__title,
.navbar__toggle,
.navbar__item,
.navbar__link {
  display: none !important;
}

/* Footer color overrides - make everything white */
.footer__title,
.footer__link-item,
.footer__link-item a,
.footer__link-item a:hover,
.footer__copyright {
  color: var(--ifm-color-white-const) !important;
}

.footer__link-item a {
  color: var(--ifm-color-white) !important;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.footer__link-item a:hover {
  color: var(--ifm-color-white) !important;
  opacity: 0.8;
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* Dropdown container styling to match login button */
.header-dropdown-container {
  position: relative;
  display: inline-block;
  font-family: inherit;
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
  border-radius: 1.5rem;
  font-weight: 600;
  transition: all 0.2s ease;
  background: var(--ifm-color-white);
  color: var(--ifm-color-primary-lightest-dublicate);
  cursor: pointer;
}

.header-dropdown-container:hover {
  background: var(--ifm-color-primary-lightest);
}

/* Dropdown wrapper for correct positioning */
.header-dropdown-wrapper {
  position: relative;
  display: inline-block;
}

/* --- Modernized Profile Page Styles --- */
.profile-main-content {
  max-width: 900px;
  margin: 2.5em auto;
  padding: 2.5em 1.5em;
  background: var(--ifm-background-surface-color);
  border-radius: 1.5rem;
  box-shadow: var(--ifm-shadow-strong);
  display: flex;
  flex-direction: column;
  gap: 2.5em;
  align-items: stretch !important;
}
.profile-card, .profile-info-card, .profile-signed-campaigns-card {
  background: var(--ifm-color-white);
  border-radius: 1.2rem;
  box-shadow: var(--ifm-shadow-light);
  border: 1.5px solid var(--ifm-color-primary-lightest);
  padding: 2em 1.5em;
  margin-bottom: 2.5em;
  transition: box-shadow 0.2s, transform 0.2s;
  color: var(--ifm-color-primary-darkest);
}
.profile-card:hover, .profile-info-card:hover, .profile-signed-campaigns-card:hover {
  box-shadow: var(--ifm-shadow-strong);
  transform: translateY(-2px);
}
.profile-main-title, .profile-admin-title, .profile-info-title, .profile-campaigns-title {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--ifm-color-primary);
  margin-bottom: 1.2em;
}
.profile-info-item {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1.1rem;
  margin-bottom: 0.7em;
  color: var(--ifm-color-primary-lightest-dublicate);
}
.profile-logout-button {
  margin-top: 1.5em;
  background: var(--ifm-color-red);
  border: none;
  border-radius: 0.7em;
  padding: 0.7em 2em;
  font-size: 1.1rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: var(--ifm-shadow-warning);
  transition: all 0.2s;
  align-items: center;
  gap: 0.5em;
}
.profile-logout-button:hover {
  background: var(--ifm-color-red);
  box-shadow: var(--ifm-shadow-strong);
}

.profile-actions {
  display: flex;
  flex-direction: column;
  gap: 0.8em;
  margin-top: 1.5em;
}

.profile-change-password-button {
  background: var(--ifm-color-primary);
  border: none;
  border-radius: 0.7em;
  padding: 0.7em 2em;
  font-size: 1.1rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: var(--ifm-shadow-warning);
  transition: all 0.2s;
  display: flex;
  align-items: center;
  gap: 0.5em;
  justify-content: center;
  color: white;
}

.profile-change-password-button:hover {
  background: var(--ifm-color-primary-dark);
  box-shadow: var(--ifm-shadow-strong);
}
.profile-users-list {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.profile-user-item {
  background: var(--ifm-background-surface-color);
  border-radius: 0.7em;
  padding: 1em 1.2em;
  display: flex;
  align-items: center;
  cursor: pointer;
  border: 1px solid var(--ifm-color-primary-lightest);
  transition: box-shadow 0.2s, background 0.2s;
  color: var(--ifm-color-primary-darkest);
  margin-bottom: 0.5em;
}
.profile-user-item:hover, .profile-user-item:focus {
  background: var(--ifm-color-primary-lightest);
  box-shadow: var(--ifm-shadow-light);
}
.profile-user-email, .profile-user-role {
  display: flex;
  align-items: center;
  gap: 0.3em;
  font-size: 1rem;
  color: var(--ifm-color-primary-lightest-dublicate);
}
.profile-signed-campaigns-card {
  margin-top: 2em;
}
.profile-campaigns-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1.2em;
  margin-top: 1.2em;
  justify-items: stretch !important;
}
.profile-signed-campaign-item {
  background: var(--ifm-background-surface-color);
  border-radius: 0.7em;
  padding: 1em 1.2em;
  border: 1px solid var(--ifm-color-primary-lightest);
  box-shadow: var(--ifm-shadow-light);
  margin-bottom: 0.5em;
  transition: box-shadow 0.2s, background 0.2s;
  color: var(--ifm-color-primary-darkest);
}
.profile-signed-campaign-item:hover {
  background: var(--ifm-color-primary-lightest);
  box-shadow: var(--ifm-shadow-strong);
}
.profile-signed-campaign-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--ifm-color-primary-lightest-dublicate);
  margin-bottom: 0.3em;
  display: flex;
  align-items: center;
  gap: 0.3em;
}
.profile-faded {
  color: var(--ifm-font-color-secondary);
  font-size: 0.95rem;
}
.profile-campaigns-empty, .profile-campaigns-error {
  display: flex;
  align-items: center;
  gap: 0.5em;
  color: var(--ifm-color-red);
  background: var(--ifm-color-white);
  border-radius: 0.7em;
  padding: 1em 1.2em;
  margin-top: 1em;
  font-size: 1.05rem;
  box-shadow: var(--ifm-shadow-light);
}
.profile-campaigns-empty {
  color: var(--ifm-font-color-secondary);
  background: var(--ifm-background-surface-color);
}
@media (max-width: 700px) {
  .profile-main-content {
    padding: 1em 0.2em;
    gap: 1.2em;
  }
  .profile-card, .profile-info-card, .profile-signed-campaigns-card {
    padding: 1em 0.5em;
  }
  .profile-campaigns-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 800px) {
  .header-login-btn-text {
    display: none !important;
  }
  .header-login-btn-icon {
    font-size: 1em;
    margin: 0 !important;
    display: inline;
    vertical-align: middle;
  }
  .header-login-icon-btn {
    padding: 0.7em 0.7em;
    min-width: 0;
    border-radius: 50%;
    color: var(--ifm-color-primary-lightest-dublicate
    );
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .header-user-section {
    display: flex !important;
    align-items: center;
  }
  .header-login-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
  .header-container {
    position: relative;
  }
  .header-hamburger {
    position: absolute !important;
    right: auto;
    left: 0.7em;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
  }
  .header-user-section {
    margin-right: auto;
    margin-left: 0;
    padding-left: 2.5em;
  }
}
@media (min-width: 801px) {
  .header-login-btn-icon {
    margin-inline-start: 0.5em;
    font-size: 1em;
    vertical-align: middle;
  }
}

@media (max-width: 700px) {
  .stats-panel-container {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: stretch;
    padding: 1rem 0.3rem;
  }
  .stats-panel-item {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0 0 1em 0;
    box-sizing: border-box;
  }
}


.approved-campaigns-sort-dropdown {
  color: var(--ifm-color-primary-lightest-dublicate) !important;
}

.new-campaign-loading-overlay {
  position: fixed;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.35);
  z-index: 100000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  color: var(--ifm-color-primary-darkest);
  backdrop-filter: blur(2px);
}
.new-campaign-loading-spinner {
  font-size: 2.5rem;
  margin-bottom: 1.2rem;
  color: var(--ifm-color-primary);
}

.new-campaign-form-animated {
  max-height: 1000px;
  opacity: 1;
  transition: max-height 0.5s cubic-bezier(0.4,0,0.2,1), opacity 0.4s cubic-bezier(0.4,0,0.2,1);
  overflow: hidden;
}
.new-campaign-form-animated.closing {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
}
.new-campaign-form-animated.closed {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
}

/* --- فاصله سراسری بعد از هدر برای همه صفحات --- */
main, .container, .main-campaigns-container{
  padding-top: 20px !important;
  margin-top: 0 !important;
}

h1, h2, h3, h4, h5, h6, [id] {
  scroll-margin-top: 72px !important;
}

:target {
  scroll-margin-top: 72px !important;
}

.campaign-meta-closed {
  color: var(--ifm-color-danger-dark) !important;
}

.campaign-card-ended-label {
  display: block !important;
  opacity: 1 !important;
  pointer-events: auto;
}

.campaign-label-badge {
  display: inline-flex;
  align-items: center;
  color: var(--ifm-color-primary-lightest-dublicate);
  font-weight: 600;
  font-size: 1em;
  border: 1.5px solid var(--ifm-color-primary-lightest-dublicate);
  border-radius: 1.2em;
  padding: 0.32em 1em 0.32em 1.2em;
  margin-bottom: 0.7em;
  margin-top: 0.2em;
  margin-right: 0.5em;
  gap: 0.5em;
  letter-spacing: 0.01em;
  transition: box-shadow 0.2s;
}

@media (max-width: 700px) {
  .campaign-label-badge {
    font-size: 0.9em;
    padding: 0.25em 0.8em 0.25em 1em;
    margin-right: 0.3em;
    gap: 0.3em;
  }
}

/* Sidebar Table of Contents Styling */
.table-of-contents.table-of-contents__left-border {
  background-color: var(--ifm-color-white);
  padding: 1.5rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin: 1rem 0;
  min-width: 250px;
  max-width: 300px;
}

/* Ensure table of contents has proper width */
.table-of-contents {
  min-width: 250px;
  max-width: 300px;
}

/* Fix table of contents in blog posts */
.blog-post-page .table-of-contents,
.blog-enhanced-page .table-of-contents {
  min-width: 250px;
  max-width: 300px;
  position: sticky;
  top: 2rem;
}

.header-dropdown-profile-mobile {
  text-align: center;
  padding: 0.5rem 0.7rem 0.5rem 0.7rem;
  border-bottom: 1px solid var(--ifm-color-primary-lightest-dublicate);
  margin-bottom: 0.5rem;
  gap: 0.2rem;
}
.header-dropdown-profile-mobile .admin-badge {
  margin-bottom: 0.1rem;
}
.header-dropdown-email {
  font-size: 0.97rem;
  color: var(--ifm-color-primary);
  word-break: break-all;
}
@media (min-width: 801px) {
  .header-dropdown-profile-mobile {
    display: none !important;
  }
}

/* ===== DOCUMENTATION STYLES ===== */

/* Documentation sidebar styling */
.theme-doc-sidebar-container {
  border-left: var(--ifm-doc-sidebar-border);
  background: var(--ifm-doc-sidebar-background);
}

.theme-doc-sidebar-item-category-level-1 > .theme-doc-sidebar-item-category-level-1__button {
  font-weight: 600;
  color: var(--ifm-color-primary-dark);
}

.menu_SIkG {
  padding-top: 13px;
}

.theme-doc-sidebar-item-link-level-2 {
  padding-left: 1rem;
}

/* Documentation content styling */
.theme-doc-markdown {
  max-width: 100%;
}

.theme-doc-markdown h1 {
  border-bottom: 2px solid var(--ifm-color-primary);
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
}

.theme-doc-markdown h2 {
  color: var(--ifm-color-primary-dark);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.theme-doc-markdown h3 {
  color: var(--ifm-color-primary);
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}

/* Code blocks in documentation */
.theme-doc-markdown pre {
  border-radius: 8px;
  border: 1px solid var(--ifm-color-emphasis-300);
}

/* Search styling */
.searchBox_node_modules-\@docusaurus-theme-classic-lib-theme-Navbar-SearchBox-styles-module {
  border-radius: 8px;
  border: 1px solid var(--ifm-color-emphasis-300);
}

/* Last updated info */
/* Documentation background styling */
.docs-background-container {
  background-color: var(--ifm-color-white);
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

.docs-background-container h1,
.docs-background-container h2,
.docs-background-container h3,
.docs-background-container h4,
.docs-background-container h5,
.docs-background-container h6 {
  color: var(--ifm-color-primary-darkest);
}

.docs-background-container p,
.docs-background-container li,
.docs-background-container blockquote {
  color: var(--ifm-font-color-secondary);
}

.docs-background-container code {
  background-color: var(--ifm-background-surface-color);
  color: var(--ifm-color-primary-darkest);
}

.docs-background-container pre {
  background-color: var(--ifm-background-surface-color);
  border: 1px solid var(--ifm-color-emphasis-300);
}

/* Dark theme adjustments */
[data-theme='dark'] .docs-background-container {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme='dark'] .docs-background-container h1,
[data-theme='dark'] .docs-background-container h2,
[data-theme='dark'] .docs-background-container h3,
[data-theme='dark'] .docs-background-container h4,
[data-theme='dark'] .docs-background-container h5,
[data-theme='dark'] .docs-background-container h6 {
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .docs-background-container p,
[data-theme='dark'] .docs-background-container li,
[data-theme='dark'] .docs-background-container blockquote {
  color: var(--ifm-color-primary-lighter);
}

[data-theme='dark'] .docs-background-container code {
  background-color: var(--ifm-color-primary-darkest);
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .docs-background-container pre {
  background-color: var(--ifm-color-primary-darkest);
  border: 1px solid var(--ifm-color-primary-darker);
}

/* Blog Background Container - Similar to Docs */
.blog-background-container {
  background-color: var(--ifm-color-white);
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

.blog-background-container h1,
.blog-background-container h2,
.blog-background-container h3,
.blog-background-container h4,
.blog-background-container h5,
.blog-background-container h6 {
  color: var(--ifm-color-primary-darkest);
}

.blog-background-container p,
.blog-background-container li,
.blog-background-container blockquote {
  color: var(--ifm-font-color-secondary);
}

.blog-background-container code {
  background-color: var(--ifm-background-surface-color);
  color: var(--ifm-color-primary-darkest);
}

.blog-background-container pre {
  background-color: var(--ifm-background-surface-color);
  border: 1px solid var(--ifm-color-emphasis-300);
}

/* Dark theme adjustments for blog background */
[data-theme='dark'] .blog-background-container {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme='dark'] .blog-background-container h1,
[data-theme='dark'] .blog-background-container h2,
[data-theme='dark'] .blog-background-container h3,
[data-theme='dark'] .blog-background-container h4,
[data-theme='dark'] .blog-background-container h5,
[data-theme='dark'] .blog-background-container h6 {
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .blog-background-container p,
[data-theme='dark'] .blog-background-container li,
[data-theme='dark'] .blog-background-container blockquote {
  color: var(--ifm-color-primary-lighter);
}

[data-theme='dark'] .blog-background-container code {
  background-color: var(--ifm-color-primary-darkest);
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .blog-background-container pre {
  background-color: var(--ifm-color-primary-darkest);
  border: 1px solid var(--ifm-color-primary-darker);
}

.theme-last-updated {
  background: var(--ifm-color-primary-lightest);
  padding: 0.5rem 1rem;
  border-radius: 6px;
  margin-top: 2rem;
  font-size: 0.9rem;
  color: var(--ifm-color-primary-dark);
}

/* Back to Top Button */
.back-to-top-button {
  position: fixed;
  bottom: 2rem;
  left: 2rem;
  width: 3rem;
  height: 3rem;
  background: var(--ifm-color-primary);
  color: var(--ifm-color-white);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: all 0.3s ease;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  z-index: 1000;
}

.back-to-top-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}

.back-to-top-button.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.back-to-top-button svg {
  width: 1.2rem;
  height: 1.2rem;
}

/* Dark theme adjustments */
[data-theme='dark'] .back-to-top-button {
  background: var(--ifm-color-primary);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme='dark'] .back-to-top-button:hover {
  background: var(--ifm-color-primary-dark);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .back-to-top-button {
    bottom: 1.5rem;
    left: 1.5rem;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1rem;
  }
  
  .back-to-top-button svg {
    width: 1rem;
    height: 1rem;
  }
}

/* Blog Styles */
.blog-list-page {
  background: var(--ifm-background-surface-color);
  min-height: 100vh;
}

.blog-list-page .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

/* Apply blog background container to blog list items */
.blog-list-page .blog-post-item {
  background-color: var(--ifm-color-white);
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

/* Dark theme for blog list items */
[data-theme='dark'] .blog-list-page .blog-post-item {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.blog-list-page .blog-list-title {
  font-size: 2.5rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
}

.blog-list-page .blog-list-description {
  font-size: 1.2rem;
  text-align: center;
  margin-bottom: 3rem;
  color: var(--ifm-font-color-secondary);
}

.blog-post-item {
  background: var(--ifm-background-color);
  border-radius: 12px;
  padding: 2rem;
  margin-bottom: 2rem;
  box-shadow: var(--ifm-shadow-light);
  transition: all 0.3s ease;
  border: 1px solid var(--ifm-color-emphasis-200);
}

.blog-post-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--ifm-shadow-strong);
  border-color: var(--ifm-color-primary);
}

.blog-post-item h2 {
  font-size: 1.8rem;
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
}

.blog-post-item h2 a {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.blog-post-item h2 a:hover {
  color: var(--ifm-color-primary-light);
}

.blog-post-item .blog-post-item-excerpt {
  font-size: 1.1rem;
  line-height: 1.6;
  margin-bottom: 1.5rem;
  color: var(--ifm-font-color-base);
}

.blog-post-item .blog-post-item-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 0.9rem;
  color: var(--ifm-font-color-secondary);
  margin-bottom: 1rem;
}

.blog-post-item .blog-post-item-meta .blog-post-item-author {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.blog-post-item .blog-post-item-meta .blog-post-item-author img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
}

.blog-post-item .blog-post-item-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}

.blog-post-item .blog-post-item-tag {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 500;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.2s ease;
}

.blog-post-item .blog-post-item-tag:hover {
  background: var(--ifm-color-primary);
  color: white;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.blog-post-item .blog-post-item-read-more {
  color: var(--ifm-color-primary);
  font-weight: 600;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.2s ease;
}

.blog-post-item .blog-post-item-read-more:hover {
  color: var(--ifm-color-primary-light);
  -webkit-text-decoration: none;
  text-decoration: none;
  gap: 0.75rem;
}

/* Blog Post Page */
.blog-post-page {
  background: var(--ifm-background-surface-color);
  min-height: 100vh;
}

.blog-post-page .container {
  max-width: 900px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

/* Apply blog background container to blog content */
.blog-post-page .blog-post-content {
  background-color: var(--ifm-color-white);
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

/* Dark theme for blog content */
[data-theme='dark'] .blog-post-page .blog-post-content {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Target actual Docusaurus blog page elements */
.blog-post-page article,
.blog-post-page .theme-doc-markdown {
  background-color: var(--ifm-color-white);
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

/* Dark theme for actual blog elements */
[data-theme='dark'] .blog-post-page article,
[data-theme='dark'] .blog-post-page .theme-doc-markdown {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Target blog list page elements */
.blog-list-page .theme-doc-markdown,
.blog-list-page .theme-blog-list {
  background-color: var(--ifm-color-white);
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

/* Dark theme for blog list elements */
[data-theme='dark'] .blog-list-page .theme-doc-markdown,
[data-theme='dark'] .blog-list-page .theme-blog-list {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Target actual Docusaurus blog list items */
.blog-list-page .theme-blog-list-item,
.blog-list-page .theme-blog-list-item article {
  background-color: var(--ifm-color-white);
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
  padding: 1.5rem;
}

/* Dark theme for actual blog list items */
[data-theme='dark'] .blog-list-page .theme-blog-list-item,
[data-theme='dark'] .blog-list-page .theme-blog-list-item article {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Target main blog container */
.blog-list-page .theme-blog-list,
.blog-post-page .theme-blog-post {
  background-color: var(--ifm-color-white);
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
  padding: 2rem;
}

/* Dark theme for main blog container */
[data-theme='dark'] .blog-list-page .theme-blog-list,
[data-theme='dark'] .blog-post-page .theme-blog-post {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Blog post table of contents styling */
.blog-post-page .table-of-contents {
  position: sticky;
  top: 2rem;
  max-height: calc(100vh - 4rem);
  overflow-y: auto;
  padding: 1rem;
  background-color: var(--ifm-color-white);
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  border-right: 3px solid var(--ifm-color-primary);
}

[data-theme='dark'] .blog-post-page .table-of-contents {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Blog post layout with TOC */
.blog-post-page .container {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2rem;
  max-width: 1200px;
}

.blog-post-page .theme-doc-markdown {
  grid-column: 1;
}

.blog-post-page .table-of-contents {
  grid-column: 2;
  width: 250px;
  align-self: start;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .blog-post-page .container {
    grid-template-columns: 1fr;
  }
  
  .blog-post-page .table-of-contents {
    grid-column: 1;
    width: 100%;
    position: static;
    margin-top: 2rem;
  }
}

.blog-post-page .blog-post-title {
  font-size: 2.5rem;
  font-weight: bold;
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
  line-height: 1.2;
}

.blog-post-page .blog-post-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--ifm-color-emphasis-200);
}

.blog-post-page .blog-post-author {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 500;
}

.blog-post-page .blog-post-author img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
}

.blog-post-page .blog-post-date {
  color: var(--ifm-font-color-secondary);
  font-size: 0.9rem;
}

.blog-post-page .blog-post-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}

.blog-post-page .blog-post-tag {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  padding: 0.5rem 1rem;
  border-radius: 25px;
  font-size: 0.9rem;
  font-weight: 500;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: all 0.2s ease;
}

.blog-post-page .blog-post-tag:hover {
  background: var(--ifm-color-primary);
  color: white;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.blog-post-page .blog-post-featured-image {
  margin: 2rem 0;
  text-align: center;
}

.blog-post-page .blog-post-featured-image .featured-image {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: var(--ifm-shadow);
  max-height: 500px;
  object-fit: cover;
}

.blog-post-page .blog-post-content {
  background: var(--ifm-background-color);
  padding: 2rem;
  border-radius: 12px;
  box-shadow: var(--ifm-shadow-light);
  line-height: 1.7;
}

.blog-post-page .blog-post-content h1,
.blog-post-page .blog-post-content h2,
.blog-post-page .blog-post-content h3,
.blog-post-page .blog-post-content h4,
.blog-post-page .blog-post-content h5,
.blog-post-page .blog-post-content h6 {
  color: var(--ifm-color-primary);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.blog-post-page .blog-post-content h1 {
  font-size: 2rem;
}

.blog-post-page .blog-post-content h2 {
  font-size: 1.6rem;
}

.blog-post-page .blog-post-content h3 {
  font-size: 1.4rem;
}

.blog-post-page .blog-post-content p {
  margin-bottom: 1rem;
  font-size: 1.1rem;
}

.blog-post-page .blog-post-content ul,
.blog-post-page .blog-post-content ol {
  margin-bottom: 1rem;
  padding-right: 2rem;
}

.blog-post-page .blog-post-content li {
  margin-bottom: 0.5rem;
}

.blog-post-page .blog-post-content blockquote {
  border-right: 4px solid var(--ifm-color-primary);
  padding-right: 1rem;
  margin: 1.5rem 0;
  font-style: italic;
  color: var(--ifm-font-color-secondary);
}

.blog-post-page .blog-post-content code {
  background: var(--ifm-color-emphasis-100);
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  font-size: 0.9rem;
}

.blog-post-page .blog-post-content pre {
  background: var(--ifm-color-emphasis-100);
  padding: 1rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 1.5rem 0;
}

.blog-post-page .blog-post-content pre code {
  background: none;
  padding: 0;
}

/* Blog Sidebar */
.blog-sidebar {
  background-color: var(--ifm-color-white);
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}

/* Dark theme for blog sidebar */
[data-theme='dark'] .blog-sidebar {
  background-color: var(--ifm-color-primary-lightest);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}


.blog-search-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  background-color: var(--ifm-color-primary-lightest);
}

.blog-search-input {
  width: 100%;
  padding: 12px 45px 12px 45px;
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 8px;
  font-size: 1rem;
  background-color: var(--ifm-background-color);
  color: var(--ifm-font-color-base);
  transition: all 0.3s ease;
}

.blog-search-input:focus {
  outline: none;
  border-color: var(--ifm-color-primary);
  box-shadow: 0 0 0 3px rgba(var(--ifm-color-primary-rgb), 0.1);
}

.blog-search-icon {
  position: absolute;
  right: 15px;
  color: var(--ifm-color-emphasis-600);
  font-size: 1.1rem;
}

.blog-search-clear-btn {
  position: absolute;
  left: 15px;
  background: none;
  border: none;
  color: var(--ifm-color-emphasis-600);
  cursor: pointer;
  padding: 5px;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.blog-search-clear-btn:hover {
  color: var(--ifm-color-primary);
  background-color: var(--ifm-color-emphasis-100);
}

.blog-search-loading {
  margin-top: 0.5rem;
  text-align: center;
  color: var(--ifm-color-emphasis-600);
  font-size: 0.9rem;
}

/* Blog Filter Styles */
.blog-filter-container {
  margin-bottom: 2rem;
}

.blog-filter-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  background-color: var(--ifm-color-primary-lightest);
}

.blog-filter-toggle-btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 10px 16px;
  background-color: var(--ifm-background-color);
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 8px;
  color: var(--ifm-font-color-base);
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.9rem;
}

.blog-filter-toggle-btn:hover {
  border-color: var(--ifm-color-primary);
  background-color: var(--ifm-color-emphasis-50);
}

.blog-filter-toggle-btn[aria-expanded="true"] {
  border-color: var(--ifm-color-primary);
  background-color: var(--ifm-color-primary-lightest);
}

.blog-filter-icon {
  font-size: 1rem;
}

.blog-filter-active-indicator {
  background-color: var(--ifm-color-primary);
  color: white;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 0.8rem;
  margin-left: 0.5rem;
}

.blog-filter-clear-btn {
  background: none;
  border: none;
  color: var(--ifm-color-emphasis-600);
  cursor: pointer;
  padding: 8px;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.blog-filter-clear-btn:hover {
  color: var(--ifm-color-danger);
  background-color: var(--ifm-color-emphasis-100);
}

.blog-filter-dropdown {
  margin-top: 0.5rem;
  background-color: var(--ifm-background-color);
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.blog-filter-options {
  display: flex;
  flex-direction: column;
}

.blog-filter-option {
  padding: 12px 16px;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
  color: var(--ifm-font-color-base);
  border-bottom: 1px solid var(--ifm-color-emphasis-200);
}

.blog-filter-option:last-child {
  border-bottom: none;
}

.blog-filter-option:hover {
  background-color: var(--ifm-color-emphasis-50);
}

.blog-filter-option-active {
  background-color: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  font-weight: 600;
}

.blog-filter-active {
  margin-top: 1rem;
  padding: 12px;
  background-color: var(--ifm-color-primary-lightest);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.blog-filter-active-label {
  color: var(--ifm-color-emphasis-600);
  font-size: 0.9rem;
}

.blog-filter-active-value {
  color: var(--ifm-color-primary);
  font-weight: 600;
}

/* Blog Pagination Styles */
.blog-pagination-container {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--ifm-color-emphasis-200);
}

.blog-pagination-info {
  text-align: center;
  margin-bottom: 1.5rem;
  color: var(--ifm-font-color-secondary);
  font-size: 0.9rem;
}

.blog-pagination-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

.blog-pagination-btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 8px 16px;
  background-color: var(--ifm-background-color);
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 6px;
  color: var(--ifm-font-color-base);
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.9rem;
}

.blog-pagination-btn:hover:not(:disabled) {
  border-color: var(--ifm-color-primary);
  background-color: var(--ifm-color-primary-lightest);
}

.blog-pagination-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.blog-pagination-pages {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

.blog-pagination-page-btn {
  padding: 8px 12px;
  background-color: var(--ifm-background-color);
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 6px;
  color: var(--ifm-font-color-base);
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.9rem;
  min-width: 40px;
}

.blog-pagination-page-btn:hover:not(:disabled) {
  border-color: var(--ifm-color-primary);
  background-color: var(--ifm-color-primary-lightest);
}

.blog-pagination-page-active {
  background-color: var(--ifm-color-primary);
  border-color: var(--ifm-color-primary);
  color: white;
}

.blog-pagination-ellipsis {
  border: none;
  background: none;
  cursor: default;
  min-width: auto;
  padding: 8px 4px;
}

.blog-pagination-ellipsis:hover {
  background: none;
  border: none;
}

/* Enhanced Blog Sidebar Styles */
.blog-sidebar-section {
  margin-bottom: 2rem;
}

.blog-sidebar-section:last-child {
  margin-bottom: 0;
}

.blog-sidebar-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--ifm-color-primary);
  border-bottom: 2px solid var(--ifm-color-emphasis-200);
  padding-bottom: 0.5rem;
}

.blog-sidebar-icon {
  font-size: 1rem;
}

.blog-sidebar-recent-posts {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.blog-sidebar-post {
  padding: 1rem;
  border-radius: 6px;
  background-color: var(--ifm-color-emphasis-50);
  transition: all 0.3s ease;
}

.blog-sidebar-post:hover {
  background-color: var(--ifm-color-emphasis-100);
}

.blog-sidebar-post-title {
  margin: 0 0 0.5rem 0;
  font-size: 1rem;
  line-height: 1.4;
}

.blog-sidebar-post-link {
  color: var(--ifm-font-color-base);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.blog-sidebar-post-link:hover {
  color: var(--ifm-color-primary);
}

.blog-sidebar-post-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 0.8rem;
  color: var(--ifm-font-color-secondary);
  margin-bottom: 0.5rem;
}

.blog-sidebar-meta-icon {
  font-size: 0.8rem;
}

.blog-sidebar-post-excerpt {
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--ifm-font-color-secondary);
  margin: 0;
}

.blog-sidebar-categories {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.blog-sidebar-category-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  background: none;
  border: 2px solid var(--ifm-color-emphasis-200);
  border-radius: 6px;
  color: var(--ifm-font-color-base);
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: left;
}

.blog-sidebar-category-btn:hover {
  border-color: var(--ifm-color-primary);
  background-color: var(--ifm-color-primary-lightest);
}

.blog-sidebar-category-active {
  background-color: var(--ifm-color-primary-lightest);
  border-color: var(--ifm-color-primary);
  color: var(--ifm-color-primary);
  font-weight: 600;
}

.blog-sidebar-category-count {
  font-size: 0.8rem;
  color: var(--ifm-font-color-secondary);
}

.blog-sidebar-category-active .blog-sidebar-category-count {
  color: var(--ifm-color-primary);
}

.blog-sidebar-stats {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.blog-sidebar-stat {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid var(--ifm-color-emphasis-200);
}

.blog-sidebar-stat:last-child {
  border-bottom: none;
}

.blog-sidebar-stat-label {
  color: var(--ifm-font-color-secondary);
  font-size: 0.9rem;
}

.blog-sidebar-stat-value {
  color: var(--ifm-color-primary);
  font-weight: 600;
  font-size: 0.9rem;
}

/* Dark theme adjustments */
[data-theme='dark'] .blog-search-input {
  background-color: var(--ifm-color-primary-lightest);
  border-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .blog-filter-toggle-btn {
  background-color: var(--ifm-color-primary-lightest);
  border-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .blog-filter-dropdown {
  background-color: var(--ifm-color-primary-lightest);
  border-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .blog-sidebar-post {
  background-color: var(--ifm-color-emphasis-100);
}

[data-theme='dark'] .blog-sidebar-post:hover {
  background-color: var(--ifm-color-emphasis-200);
}

[data-theme='dark'] .blog-sidebar-category-btn {
  border-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .blog-sidebar-category-btn:hover {
  background-color: var(--ifm-color-emphasis-200);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .blog-filter-controls {
    flex-direction: column;
    gap: 1rem;
  }
  
  .blog-pagination-controls {
    flex-direction: column;
    gap: 1rem;
  }
  
  .blog-pagination-pages {
    order: 2;
  }
  
  .blog-sidebar {
    margin-top: 2rem;
  }
}

/* Enhanced Blog Page Styles - Default with Dark/Light Mode Support */
.blog-enhanced-page {
  background: var(--ifm-background-surface-color);
  min-height: 100vh;
  padding: 2rem 0;
  color: var(--ifm-font-color-base);
}

.blog-enhanced-header {
  text-align: center;
}

.blog-enhanced-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  font-size: 2.5rem;
  font-weight: bold;
  color: var(--ifm-color-primary);
  margin-bottom: 1rem;
}

.blog-enhanced-title-icon {
  font-size: 2rem;
}

.blog-enhanced-content {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 3rem;
  max-width: 1200px;
  margin: 0 auto;
}


.blog-enhanced-posts {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.blog-enhanced-post {
  background-color: var(--ifm-color-white);
  border-radius: 12px;
  padding: 2rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  border: 1px solid var(--ifm-color-emphasis-200);
}

.blog-enhanced-post:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.blog-enhanced-post-image {
  margin: 1.5rem 0;
  text-align: center;
}

.blog-enhanced-post-image .post-image {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: var(--ifm-shadow);
  max-height: 300px;
  object-fit: cover;
}

.blog-enhanced-post-header {
  margin-bottom: 1.5rem;
}

.blog-enhanced-post-title {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 1rem;
  line-height: 1.3;
}

.blog-enhanced-post-link {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.blog-enhanced-post-link:hover {
  color: var(--ifm-color-primary-dark);
}

.blog-enhanced-post-meta {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
  color: var(--ifm-font-color-secondary);
  flex-wrap: wrap;
}

.blog-enhanced-meta-icon {
  font-size: 0.8rem;
  margin-right: 0.3rem;
}

.blog-enhanced-post-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.blog-enhanced-post-tag {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  padding: 4px 8px;
  background-color: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  border-radius: 12px;
  font-size: 0.8rem;
  font-weight: 500;
}

.blog-enhanced-tag-icon {
  font-size: 0.7rem;
}

.blog-enhanced-post-excerpt {
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--ifm-font-color-base);
  margin-bottom: 1.5rem;
}

.blog-enhanced-post-footer {
  border-top: 1px solid var(--ifm-color-emphasis-200);
  padding-top: 1rem;
}

.blog-enhanced-read-more {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.2s ease;
}

.blog-enhanced-read-more:hover {
  color: var(--ifm-color-primary-dark);
  transform: translateX(4px);
}

.blog-enhanced-empty {
  text-align: center;
  padding: 3rem;
  background-color: var(--ifm-color-white);
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.blog-enhanced-empty h3 {
  color: var(--ifm-color-primary);
  margin-bottom: 1rem;
}

.blog-enhanced-empty p {
  color: var(--ifm-font-color-secondary);
  font-size: 1.1rem;
}

.blog-enhanced-sidebar {
  position: sticky;
  top: 2rem;
  height: fit-content;
}

/* Dark theme adjustments for enhanced blog */
[data-theme='dark'] .blog-enhanced-post {
  background-color: var(--ifm-color-primary-lightest);
  border-color: var(--ifm-color-emphasis-300);
}

[data-theme='dark'] .blog-enhanced-post:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

[data-theme='dark'] .blog-enhanced-post-tag {
  background-color: var(--ifm-color-emphasis-200);
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .blog-enhanced-empty {
  background-color: var(--ifm-color-primary-lightest);
}

/* Responsive design for enhanced blog */
@media (max-width: 1024px) {
  .blog-enhanced-content {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  
  .blog-enhanced-sidebar {
    position: static;
    order: -1;
  }
}

@media (max-width: 768px) {
  .blog-enhanced-page {
    padding: 1rem 0;
    margin-top: 50px; /* Smaller margin for mobile */
  }
  
  .blog-enhanced-title {
    font-size: 2rem;
  }
  
  .blog-enhanced-title-icon {
    font-size: 1.5rem;
  }

  
  .blog-enhanced-post {
    padding: 1.5rem;
  }
  
  .blog-enhanced-post-title {
    font-size: 1.5rem;
  }
  
  .blog-enhanced-post-meta {
    gap: 1rem;
  }
  
  .blog-enhanced-content {
    gap: 1.5rem;
  }
}

.blog-sidebar h3 {
  color: var(--ifm-color-primary);
  margin-bottom: 1rem;
  font-size: 1.3rem;
}

.blog-sidebar .blog-sidebar-item {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--ifm-color-emphasis-200);
}

.blog-sidebar .blog-sidebar-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.blog-sidebar .blog-sidebar-item a {
  color: var(--ifm-font-color-base);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
}

.blog-sidebar .blog-sidebar-item a:hover {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
}

.blog-sidebar .blog-sidebar-item-date {
  font-size: 0.8rem;
  color: var(--ifm-font-color-secondary);
  margin-top: 0.25rem;
}

/* Responsive Blog */
@media (max-width: 768px) {
  .blog-list-page .blog-list-title {
    font-size: 2rem;
  }
  
  .blog-list-page .blog-list-description {
    font-size: 1rem;
  }
  
  .blog-post-item {
    padding: 1.5rem;
  }
  
  .blog-post-item h2 {
    font-size: 1.5rem;
  }
  
  .blog-post-page .blog-post-title {
    font-size: 2rem;
  }
  
  .blog-post-page .blog-post-content {
    padding: 1.5rem;
  }
  
  .blog-post-page .blog-post-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
}


.blog-management-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--ifm-color-primary);
}

.blog-management-header h1 {
  margin: 0;
  color: var(--ifm-color-primary);
  font-size: 2rem;
  font-weight: bold;
}

.add-post-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  background: var(--ifm-color-primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}

.add-post-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.auth-required,
.access-denied {
  text-align: center;
  padding: 3rem 1rem;
  background: var(--ifm-background-surface-color);
  border-radius: 12px;
  margin: 2rem 0;
  color: var(--ifm-font-color-base);
}

.auth-required h2,
.access-denied h2 {
  color: var(--ifm-color-primary);
  margin-bottom: 1rem;
}

.auth-required p,
.access-denied p {
  color: var(--ifm-font-color-secondary);
  font-size: 1.1rem;
}

.error-message {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  background: #fee2e2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  margin-bottom: 1rem;
  color: #dc2626;
}

.error-message button {
  background: none;
  border: none;
  color: #dc2626;
  font-size: 1.2rem;
  cursor: pointer;
  padding: 0.25rem;
}

.error-message button:hover {
  color: #b91c1c;
}

/* Blog Form Overlay */
.blog-form-overlay {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}

.blog-form {
  background: var(--ifm-background-surface-color);
  border-radius: 12px;
  padding: 2rem;
  width: 100%;
  max-width: 800px;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: var(--ifm-shadow-strong);
  color: var(--ifm-font-color-base);
}

.form-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
}

.form-header h2 {
  margin: 0;
  color: var(--ifm-color-primary);
}

.close-button {
  background: none;
  border: none;
  color: var(--ifm-font-color-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.close-button:hover {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-font-color-base);
}

.form-group {
  margin-bottom: 1.5rem;
}

.form-group label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: var(--ifm-font-color-base);
}

.form-group input,
.form-group textarea,
.form-group select {
  width: 100%;
  padding: 0.75rem;
  border: 2px solid var(--ifm-color-emphasis-300);
  border-radius: 8px;
  font-size: 1rem;
  background: var(--ifm-background-surface-color);
  color: var(--ifm-font-color-base);
  transition: border-color 0.3s ease;
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
  outline: none;
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow-focus);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.form-actions {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--ifm-color-emphasis-300);
}

.save-button,
.cancel-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}

.save-button {
  background: var(--ifm-color-success);
  color: white;
}

.save-button:hover {
  background: #16a34a;
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.cancel-button {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-font-color-base);
}

.cancel-button:hover {
  background: var(--ifm-color-emphasis-300);
}

/* Blog Posts List */
.blog-posts-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.blog-post-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  background: var(--ifm-background-surface-color);
  border-radius: 12px;
  border: 1px solid var(--ifm-color-emphasis-200);
  transition: all 0.3s ease;
  color: var(--ifm-font-color-base);
}

.blog-post-item:hover {
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow);
  transform: translateY(-2px);
}

.post-info h3 {
  margin: 0 0 0.5rem 0;
  color: var(--ifm-font-color-base);
  font-size: 1.2rem;
}

.post-info h3 a {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.post-info h3 a:hover {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.post-meta {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  font-size: 0.9rem;
  color: var(--ifm-font-color-secondary);
}

.post-status {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-weight: 600;
}

.post-status.published {
  background: #dcfce7;
  color: #166534;
}

.post-status.draft {
  background: #fef3c7;
  color: #92400e;
}

.post-actions {
  display: flex;
  gap: 0.5rem;
}

.publish-button,
.edit-button,
.delete-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 1rem;
}

.publish-button {
  background: var(--ifm-color-success);
  color: white;
}

.publish-button.unpublish {
  background: var(--ifm-color-warning);
}

.publish-button:hover {
  transform: scale(1.1);
  box-shadow: var(--ifm-shadow);
}

.edit-button {
  background: var(--ifm-color-primary);
  color: white;
}

.edit-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: scale(1.1);
  box-shadow: var(--ifm-shadow);
}

.delete-button {
  background: var(--ifm-color-red);
  color: white;
}

.delete-button:hover {
  background: var(--ifm-color-danger-dark);
  transform: scale(1.1);
  box-shadow: var(--ifm-shadow);
}

.loading {
  text-align: center;
  padding: 3rem 1rem;
  color: var(--ifm-font-color-secondary);
  background: var(--ifm-background-surface-color);
}

.empty-state {
  text-align: center;
  padding: 3rem 1rem;
  color: var(--ifm-font-color-secondary);
  background: var(--ifm-background-surface-color);
}

/* Blog Post Detail Page */
.blog-post-detail-page {
  padding: 2rem 0;
  min-height: 100vh;
}

.blog-post-navigation {
  margin-bottom: 2rem;
}

.back-to-blog-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  background: var(--ifm-color-primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}

.back-to-blog-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.blog-post-detail {
  max-width: 800px;
  margin: 0 auto;
}

.blog-post-header {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 2px solid var(--ifm-color-emphasis-200);
}

.blog-post-title {
  font-size: 2.5rem;
  font-weight: bold;
  color: var(--ifm-font-color-base);
  margin-bottom: 1rem;
  line-height: 1.2;
}

.blog-post-meta {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  color: var(--ifm-font-color-secondary);
  flex-wrap: wrap;
}

.blog-post-meta-icon {
  margin-right: 0.5rem;
  color: var(--ifm-color-primary);
}

.blog-post-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}

.blog-post-tag {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 1rem;
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  border-radius: 20px;
  font-size: 0.9rem;
  font-weight: 600;
}

.blog-post-tag-icon {
  font-size: 0.8rem;
}

.blog-post-category {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  color: var(--ifm-font-color-secondary);
}

.category-label {
  font-weight: 600;
}

.category-name {
  color: var(--ifm-color-primary);
  font-weight: 600;
}

.blog-post-image {
  margin: 2rem 0;
  text-align: center;
}

.blog-post-image img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: var(--ifm-shadow);
}

.blog-post-content {
  margin: 2rem 0;
}

.blog-post-body {
  font-size: 1.1rem;
  line-height: 1.8;
  color: var(--ifm-font-color-base);
}

.blog-post-body h1,
.blog-post-body h2,
.blog-post-body h3,
.blog-post-body h4,
.blog-post-body h5,
.blog-post-body h6 {
  color: var(--ifm-font-color-base);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.blog-post-body p {
  margin-bottom: 1.5rem;
}

.blog-post-body ul,
.blog-post-body ol {
  margin-bottom: 1.5rem;
  padding-right: 2rem;
}

.blog-post-body li {
  margin-bottom: 0.5rem;
}

.blog-post-body blockquote {
  border-right: 4px solid var(--ifm-color-primary);
  padding-right: 1rem;
  margin: 2rem 0;
  font-style: italic;
  color: var(--ifm-font-color-secondary);
}

.blog-post-body code {
  background: var(--ifm-color-emphasis-200);
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  font-size: 0.9em;
}

.blog-post-body pre {
  background: var(--ifm-color-emphasis-100);
  padding: 1rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 1.5rem 0;
}

.blog-post-body pre code {
  background: none;
  padding: 0;
}

.blog-post-footer {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 2px solid var(--ifm-color-emphasis-200);
}

.blog-post-share h4 {
  margin-bottom: 1rem;
  color: var(--ifm-font-color-base);
}

.share-buttons {
  display: flex;
  gap: 1rem;
}

.share-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  -webkit-text-decoration: none;
  text-decoration: none;
}

.share-button.twitter {
  background: #1da1f2;
  color: white;
}

.share-button.twitter:hover {
  background: #1a91da;
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.share-button.telegram {
  background: #0088cc;
  color: white;
}

.share-button.telegram:hover {
  background: #0077b3;
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.blog-post-loading,
.blog-post-error {
  text-align: center;
  padding: 3rem 1rem;
}

.blog-post-error h1 {
  color: var(--ifm-color-red);
  margin-bottom: 1rem;
}

.back-button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  background: var(--ifm-color-primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 1rem;
}

.back-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

.back-icon {
  transform: rotate(-180deg);
}

/* Blog Enhanced Loading and Error States */
.blog-enhanced-loading,
.blog-enhanced-error {
  text-align: center;
  padding: 3rem 1rem;
  background: var(--ifm-background-surface-color);
  border-radius: 12px;
  margin: 2rem 0;
  color: var(--ifm-font-color-base);
}

.blog-enhanced-loading .loading-spinner {
  margin: 0 auto 1rem;
}

.blog-enhanced-error h3 {
  color: var(--ifm-color-red);
  margin-bottom: 1rem;
}

.retry-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  background: var(--ifm-color-primary);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 1rem;
}

.retry-button:hover {
  background: var(--ifm-color-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow);
}

/* Responsive Design */
@media (max-width: 768px) {
  .blog-management-header {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
  }
  
  .blog-management-header h1 {
    font-size: 1.5rem;
  }
  
  .form-row {
    grid-template-columns: 1fr;
  }
  
  .form-actions {
    flex-direction: column;
  }
  
  .blog-post-item {
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
  }
  
  .post-meta {
    flex-direction: column;
    gap: 0.5rem;
  }
  
  .post-actions {
    align-self: flex-end;
  }
  
  .blog-post-title {
    font-size: 2rem;
  }
  
  .blog-post-meta {
    flex-direction: column;
    gap: 0.5rem;
  }
  
  .share-buttons {
    flex-direction: column;
  }
  
  .blog-form {
    padding: 1rem;
    margin: 1rem;
  }
}

@media (max-width: 480px) {
  
  .blog-post-detail-page {
    padding: 1rem 0;
  }
  
  .blog-post-title {
    font-size: 1.5rem;
  }
  
  .blog-form-overlay {
    padding: 0.5rem;
  }
}

/* Import Blog Styles */
/* removed unused blog-styles import */

/* Blog Post Detail Page Styles - Default with Dark/Light Mode Support */
.blog-post-detail-page {
  padding: 2rem 0;
  min-height: 100vh;
  background: var(--ifm-background-surface-color);
  color: var(--ifm-font-color-base);
}

.blog-post-loading,
.blog-post-error {
  text-align: center;
  padding: 4rem 0;
  background: var(--ifm-background-surface-color);
  color: var(--ifm-font-color-base);
}

.blog-post-loading .loading-spinner {
  width: 40px;
  height: 40px;
  border: 4px solid var(--ifm-color-emphasis-300);
  border-top: 4px solid var(--ifm-color-primary);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin: 0 auto 1rem;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(-360deg); }
}

.blog-post-header {
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--ifm-color-emphasis-300);
  background: var(--ifm-background-surface-color);
}

.back-button {
  background: none;
  border: none;
  color: var(--ifm-font-color-secondary);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  padding: 0.5rem 0;
  font-size: 0.9rem;
  transition: color 0.2s ease;
}

.back-button:hover {
  color: var(--ifm-color-primary);
}

.blog-post-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--ifm-font-color-base);
  margin-bottom: 1rem;
  line-height: 1.2;
}

.blog-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-bottom: 1rem;
}

.meta-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--ifm-font-color-secondary);
  font-size: 0.9rem;
}

.meta-item svg {
  color: var(--ifm-color-primary);
}

.blog-post-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.tag {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 500;
  transition: all 0.2s ease;
}

.tag:hover {
  background: var(--ifm-color-primary-light);
  transform: translateY(-1px);
}

.blog-post-content {
  line-height: 1.8;
  color: var(--ifm-font-color-base);
  background: var(--ifm-background-surface-color);
}

.blog-post-content h1,
.blog-post-content h2,
.blog-post-content h3,
.blog-post-content h4,
.blog-post-content h5,
.blog-post-content h6 {
  color: var(--ifm-font-color-base);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.blog-post-content h2 {
  font-size: 1.8rem;
  border-bottom: 2px solid var(--ifm-color-primary);
  padding-bottom: 0.5rem;
}

.blog-post-content h3 {
  font-size: 1.5rem;
  color: var(--ifm-font-color-base);
}

.blog-post-content p {
  margin-bottom: 1rem;
  color: var(--ifm-font-color-base);
}

.blog-post-content ul,
.blog-post-content ol {
  margin-bottom: 1rem;
  padding-right: 2rem;
  color: var(--ifm-font-color-base);
}

.blog-post-content li {
  margin-bottom: 0.5rem;
  color: var(--ifm-font-color-base);
}

.blog-post-content blockquote {
  border-right: 4px solid var(--ifm-color-primary);
  padding-right: 1rem;
  margin: 1.5rem 0;
  font-style: italic;
  color: var(--ifm-font-color-secondary);
  background: var(--ifm-color-emphasis-50);
  padding: 1rem;
  border-radius: 4px 0 0 4px;
}

.blog-post-content a {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.blog-post-content a:hover {
  color: var(--ifm-color-primary-dark);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.blog-post-content img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  margin: 1rem 0;
  box-shadow: var(--ifm-shadow);
}

.blog-post-content code {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-font-color-base);
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  font-family: 'Courier New', monospace;
  font-size: 0.9rem;
}

.blog-post-content pre {
  background: var(--ifm-color-emphasis-100);
  color: var(--ifm-font-color-base);
  padding: 1rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 1rem 0;
  border: 1px solid var(--ifm-color-emphasis-300);
}

.blog-post-content pre code {
  background: none;
  padding: 0;
  color: inherit;
}

/* Dark Mode Specific Adjustments */
[data-theme='dark'] .blog-post-detail-page {
  background: var(--ifm-background-surface-color);
}

[data-theme='dark'] .blog-post-loading,
[data-theme='dark'] .blog-post-error {
  background: var(--ifm-background-surface-color);
}

[data-theme='dark'] .blog-post-header {
  background: var(--ifm-background-surface-color);
  border-bottom-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .blog-post-content {
  background: var(--ifm-background-surface-color);
}

[data-theme='dark'] .blog-post-content blockquote {
  background: var(--ifm-color-emphasis-100);
  border-right-color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .blog-post-content code {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-font-color-base);
}

[data-theme='dark'] .blog-post-content pre {
  background: var(--ifm-color-emphasis-100);
  border-color: var(--ifm-color-emphasis-400);
}

[data-theme='dark'] .tag {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-color-primary-light);
}

[data-theme='dark'] .tag:hover {
  background: var(--ifm-color-emphasis-300);
}

/* Light Mode Specific Adjustments */
[data-theme='light'] .blog-post-detail-page {
  background: var(--ifm-background-surface-color);
}

[data-theme='light'] .blog-post-loading,
[data-theme='light'] .blog-post-error {
  background: var(--ifm-background-surface-color);
}

[data-theme='light'] .blog-post-header {
  background: var(--ifm-background-surface-color);
  border-bottom-color: var(--ifm-color-emphasis-300);
}

[data-theme='light'] .blog-post-content {
  background: var(--ifm-background-surface-color);
}

[data-theme='light'] .blog-post-content blockquote {
  background: var(--ifm-color-emphasis-50);
  border-right-color: var(--ifm-color-primary);
}

[data-theme='light'] .blog-post-content code {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-font-color-base);
}

[data-theme='light'] .blog-post-content pre {
  background: var(--ifm-color-emphasis-100);
  border-color: var(--ifm-color-emphasis-300);
}

[data-theme='light'] .tag {
  background: var(--ifm-color-primary-lightest);
  color: var(--ifm-color-primary);
}

[data-theme='light'] .tag:hover {
  background: var(--ifm-color-primary-light);
}

/* Responsive Design */
@media (max-width: 768px) {
  .blog-post-title {
    font-size: 2rem;
  }
  
  .blog-post-meta {
    flex-direction: column;
    gap: 0.5rem;
  }
  
  .blog-post-content h2 {
    font-size: 1.5rem;
  }
  
  .blog-post-content h3 {
    font-size: 1.3rem;
  }
  
  .blog-post-detail-page {
    padding: 1rem 0;
  }
}

/* --- استایل دارک‌مود برای فیلترها و dropdownها --- */
[data-theme="dark"] .dropdown-menu {
  background: #23272f !important;
  color: #f3f4f6 !important;
  border: 1px solid #333 !important;
  box-shadow: 0 2px 8px #0008 !important;
}
[data-theme="dark"] .dropdown-button {
  background: #23272f !important;
  color: #f3f4f6 !important;
  border: 1px solid #333 !important;
}
[data-theme="dark"] .dropdown-checkbox-label {
  color: #f3f4f6 !important;
}
[data-theme="dark"] .dropdown-menu input[type="checkbox"],
[data-theme="dark"] .dropdown-menu input[type="radio"] {
  accent-color: #1e40af;
}
[data-theme="dark"] .dropdown-menu label {
  color: #f3f4f6 !important;
}
[data-theme="dark"] .dropdown-menu .dropdown-checkbox-label:hover {
  background: #2d323c !important;
}
[data-theme="dark"] .dropdown-menu .dropdown-checkbox-label:active {
  background: #1e293b !important;
}
/* --- پایان استایل دارک‌مود فیلترها --- */

.blog-enhanced-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
  margin-bottom: 32px;
  width: 100%;
}

.blog-enhanced-controls {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-top: 0.5rem;
}
@media (max-width: 600px) {
  .blog-enhanced-controls {
    flex-direction: column;
    align-items: stretch;
    gap: 0.7rem;
  }
}

.dropdown-button {
  padding: 0.35em 1em;
  border-radius: 1em;
  font-size: 1em;
  border: 1.5px solid var(--ifm-color-primary-lor ightest, #e0e7ff);
  background: var(--ifm-color-primary-lightest);
  min-width: 120px;
  width: auto;
  text-align: left;
  cursor: pointer;
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em;
  color: var(--ifm-font-color-base, #222);
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 0.5em;
}
.dropdown-menu {
  position: absolute;
  top: 110%;
  left: 0;
  z-index: 9999;
  background: var(--ifm-color-primary-lightest, #e0e7ff);
  border: 1.5px solid var(--ifm-color-primary-lightest, #e0e7ff);
  border-radius: 1em;
  box-shadow: 0 4px 16px rgba(30,64,175,0.13);
  padding: 0.5em 0.7em;
  min-width: 120px;
  width: auto;
  max-width: 320px;
  max-height: 320px;
  overflow-y: auto;
  margin-top: 2px;
  color: var(--ifm-font-color-base, #222);
}
.dropdown-checkbox-label {
  display: flex;
  align-items: center;
  gap: 0.5em;
  cursor: pointer;
  font-weight: 500;
  font-size: 0.98em;
  padding: 0.25em 0;
}
.dropdown-checkbox {
  accent-color: var(--ifm-color-primary, #1e40af);
  width: 18px;
  height: 18px;
  margin-right: 4px;
  background: var(--ifm-background-color, #fff);
}

/* Breadcrumb Styles */
.breadcrumbs__link {
  color: var(--ifm-font-color-base, #222) !important;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.breadcrumbs__item {
  color: var(--ifm-font-color-secondary, #6b7280);
}

/* Light mode breadcrumb styles */
[data-theme='light'] .breadcrumbs__link {
  color: var(--ifm-color-primary-lightest) !important;
}

[data-theme='light'] .breadcrumbs__item--active .breadcrumbs__link {
  color: var(--ifm-color-primary-lightest) !important;
}

@media (max-width: 800px) {
  body,
  main,
  .container,
  .main-campaigns-container,
  .theme-doc-markdown {
    padding-top: 0 !important;
  }
}

.column-flex {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Voted Polls Specific Styles */
.voted-poll-item {
  margin-bottom: 1.5rem;
  border-radius: 8px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.voted-poll-item:hover {
  transform: translateY(-2px);
  box-shadow: var(--ifm-shadow-strong);
}

.voted-poll-item .blog-enhanced-post-title a {
  color: var(--ifm-color-primary);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 0.2s ease;
}

.voted-poll-item .blog-enhanced-post-title a:hover {
  color: var(--ifm-color-primary-light);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.voted-poll-item .sign-campaign-success {
  background: #e6fbe8 !important;
  color: #16a34a !important;
  border: 1px solid #16a34a;
}

.voted-poll-item .blog-enhanced-read-more {
  background: var(--ifm-color-primary);
  color: white;
  padding: 0.5rem 1rem;
  border-radius: 6px;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  transition: background-color 0.2s ease;
}

.voted-poll-item .blog-enhanced-read-more:hover {
  background: var(--ifm-color-primary-light);
  -webkit-text-decoration: none;
  text-decoration: none;
}

/* User Created Content Styles */
.user-created-campaign-item,
.user-created-blog-item,
.user-created-poll-item {
  background: var(--ifm-background-surface-color);
  border: 1px solid var(--ifm-color-emphasis-300);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.user-created-campaign-item:hover,
.user-created-blog-item:hover,
.user-created-poll-item:hover {
  border-color: var(--ifm-color-primary);
  box-shadow: var(--ifm-shadow);
  transform: translateY(-1px);
}

.campaign-header,
.blog-header,
.poll-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 12px;
}

.campaign-title,
.blog-title,
.poll-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--ifm-color-primary);
  margin: 0;
  flex: 1;
  margin-right: 8px;
}

.campaign-status,
.blog-status,
.poll-status {
  display: flex;
  align-items: center;
  font-size: 12px;
  font-weight: 500;
}

.status-text {
  margin-left: 4px;
}

.status-approved,
.status-published {
  color: #28a745;
}

.status-rejected {
  color: #dc3545;
}

.status-pending {
  color: #ffc107;
}

.status-draft {
  color: #6c757d;
}

.status-closed {
  color: #6c757d;
}

.blog-excerpt,
.poll-question {
  margin-bottom: 12px;
  color: var(--ifm-font-color-base);
  font-size: 14px;
  line-height: 1.5;
}

.blog-excerpt p,
.poll-question p {
  margin: 0;
}

.campaign-meta,
.blog-meta,
.poll-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 12px;
  color: var(--ifm-font-color-secondary);
}

.meta-item {
  display: flex;
  align-items: center;
}

.meta-item span {
  margin-left: 4px;
}

.profile-created-campaigns-list,
.profile-created-blog-list,
.profile-created-polls-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media (max-width: 768px) {
  .campaign-header,
  .blog-header,
  .poll-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  
  .campaign-title,
  .blog-title,
  .poll-title {
    margin-right: 0;
    font-size: 14px;
    line-height: 1.4;
  }
  
  .campaign-meta,
  .blog-meta,
  .poll-meta {
    gap: 8px;
    flex-direction: column;
  }
  
  .meta-item {
    font-size: 11px;
  }
  
  .user-created-campaign-item,
  .user-created-blog-item,
  .user-created-poll-item {
    padding: 12px;
    margin-bottom: 8px;
  }
  
  .campaign-status,
  .blog-status,
  .poll-status {
    font-size: 11px;
  }
  
  .blog-excerpt,
  .poll-question {
    font-size: 13px;
    margin-bottom: 8px;
  }
}

@media (max-width: 480px) {
  .campaign-title,
  .blog-title,
  .poll-title {
    font-size: 13px;
  }
  
  .meta-item {
    font-size: 10px;
  }
  
  .user-created-campaign-item,
  .user-created-blog-item,
  .user-created-poll-item {
    padding: 10px;
  }
  
  .campaign-meta,
  .blog-meta,
  .poll-meta {
    gap: 6px;
  }
  
  .profile-campaigns-title,
  .profile-polls-title {
    font-size: 1.1em;
    gap: 6px;
  }
  
  .profile-campaigns-title span,
  .profile-polls-title span {
    font-size: 0.8em;
  }
}

/* Loading spinner */
.loading-spinner {
  width: 40px;
  height: 40px;
  border: 4px solid #f3f3f3;
  border-top: 4px solid var(--ifm-color-primary);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(-360deg); }
}

/* Admin guide page styles */
.admin-guide-page {
  padding: 2rem 0;
  min-height: 60vh;
}

/* Specific targeting for common icon libraries */
[data-theme='dark'] .feather,
[data-theme='dark'] .feather * {
  stroke: #ffffff !important;
  fill: none !important;
}

[data-theme='dark'] .fa,
[data-theme='dark'] .fas,
[data-theme='dark'] .far,
[data-theme='dark'] .fal,
[data-theme='dark'] .fab {
  color: #ffffff !important;
}

/* Target any remaining icons */
[data-theme='dark'] i[class*="icon"],
[data-theme='dark'] span[class*="icon"] {
  color: #ffffff !important;
}

/* Dark mode theme toggle specific */
[data-theme='dark'] .navbar__toggle {
  color: #ffffff !important;
}

[data-theme='dark'] .navbar__toggle::before {
  color: #ffffff !important;
}

/* Force all icons to be white in dark mode with higher specificity */
[data-theme='dark'] * {
  --ifm-navbar-link-color: #ffffff !important;
  --ifm-menu-color: #ffffff !important;
  --ifm-toc-link-color: #ffffff !important;
}

[data-theme='dark'] .react-toggle .react-toggle-track {
  background-color: #ffffff !important;
}

[data-theme='dark'] .react-toggle .react-toggle-thumb {
  background-color: #ffffff !important;
}

/* Target React icons specifically */
[data-theme='dark'] [class*="react-icon"],
[data-theme='dark'] [class*="React"] {
  color: #ffffff !important;
}

/* Additional specificity for stubborn icons */
html[data-theme='dark'] svg,
html[data-theme='dark'] svg * {
  color: #ffffff !important;
  fill: #ffffff !important;
}

html[data-theme='dark'] .navbar svg,
html[data-theme='dark'] .navbar svg * {
  color: #ffffff !important;
  fill: #ffffff !important;
}

html[data-theme='dark'] button svg,
html[data-theme='dark'] button svg * {
  color: #ffffff !important;
  fill: #ffffff !important;
}

/* Make PNG images white in dark mode */
[data-theme='dark'] img[alt*="Icon"],
[data-theme='dark'] img[alt*="icon"] {
  filter: invert(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.
 */

body:not(.navigation-with-keyboard) *:not(input):focus {
  outline: none;
}
}

@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_fXgn {
  position: fixed;
  top: 1rem;
  right: 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_fXgn:focus {
  right: 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_CVFx {
  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_knG7 {
  font-size: 85%;
  text-align: center;
  padding: 5px 0;
}

.content_knG7 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_mb4j {
  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_mb4j {
  display: none;
}

.announcementBarPlaceholder_vyr4 {
  flex: 0 0 10px;
}

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

.announcementBarContent_xLdY {
  flex: 1 1 auto;
}

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

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

  .announcementBarPlaceholder_vyr4,
  .announcementBarClose_gvF7 {
    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_vylO {
  width: 2rem;
  height: 2rem;
}

.toggleButton_gllP {
  -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_gllP:hover {
  background: var(--ifm-color-emphasis-200);
}

.toggleIcon_g3eP {
  display: none;
}

[data-theme-choice='system'] .systemToggleIcon_QzmC,
[data-theme-choice='light'] .lightToggleIcon_pyhR,
[data-theme-choice='dark'] .darkToggleIcon_wfgR {
  display: initial;
}

.toggleButtonDisabled_aARS {
  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_X3D1:hover {
  background: var(--ifm-color-gray-800);
}
}

@layer docusaurus.plugin-debug {/**
 * 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_UJDL {
  padding: 20px;
  padding-top: 80px;
  overflow-x: hidden;
  background-color: #18191a;
  color: white;
  min-height: 100vh;
}

.container_UJDL code {
  color: white;
  background-color: #444950;
}

.nav_uyzg {
  position: fixed;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  height: 3.75rem;
  background-color: #242526;
  width: 100%;
  z-index: 1;
}

.navlink_fkkq {
  color: white;
  font-weight: 500;
  font-size: clamp(12px, 4vw, 16px);
  text-align: center;
  border-radius: 4px;
  padding: 6px;
}

.navlink_fkkq:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
  background-color: #292a2b;
}

.active_YJyX {
  background-color: #363739;
}

@media screen and (min-width: 800px) {
  .nav_uyzg {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100vh;
    width: 200px;
    float: right;
    background-color: #18191a;
    border-left: 1px solid #606770;
    padding-top: 20px;
  }

  .navlink_fkkq {
    width: 80%;
    margin-top: 20px;
    text-align: right;
  }

  .container_UJDL {
    padding-top: 40px;
    float: left;
    width: calc(100% - 200px);
  }
}
}

@layer docusaurus.plugin-debug {/**
 * 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.
 */

.containerParaiso_cQJv {
  font-family: monospace;
  cursor: default;
  background-color: rgb(41 42 43);
  position: relative;
  margin-top: 10px;
  padding: 10px;
  border-radius: 4px;
  font-size: 13px;
}

.basicElementParaiso_QZsA {
  color: white;
  padding: 3px 20px 3px 5px;
  border-right: 1px solid rgb(79 66 76);
}

.labelParaiso_wRN4 {
  color: rgb(231 233 219);
  letter-spacing: 0.5px;
  margin-left: 3px;
}

.nullValueParaiso_AoA7 {
  display: inline-block;
  color: rgb(254 196 24);
  font-size: 11px;
  font-weight: bold;
  background-color: rgb(79 66 76);
  padding: 1px 2px;
  border-radius: 3px;
  text-transform: uppercase;
}

.undefinedValueParaiso_FhTI {
  color: rgb(141 134 135);
}

.stringValueParaiso_V3BI {
  color: rgb(249 155 21);
}

.booleanValueParaiso_DtTx {
  color: rgb(129 91 164);
}

.numberValueParaiso_QJS7 {
  color: rgb(233 107 168);
}

.otherValueParaiso_LEJn {
  color: white;
}

.punctuationParaiso_IgdH {
  color: white;
}

.expandIconParaiso_FXv1 {
  display: inline-block;
  color: rgb(129 91 164);
  font-size: 22px;
  vertical-align: baseline;
  margin-left: 3px;
  line-height: 10px;
}

.collapseIconParaiso_vUhq::after {
  content: '\25BE';
}

.collapseIconParaiso_vUhq {
  display: inline-block;
  color: rgb(6 182 239);
  font-size: 22px;
  vertical-align: baseline;
  margin-left: 3px;
  line-height: 10px;
}

.expandIconParaiso_FXv1::after {
  content: '\25B8';
}

.collapseContentParaiso_r7rr {
  color: rgb(249 155 21);
  font-size: 18px;
  line-height: 10px;
  cursor: pointer;
}

.collapseContentParaiso_r7rr::after {
  content: '...';
}

/*
Overrides default ul style from Infima
See https://github.com/AnyRoad/react-json-view-lite/issues/38
*/
.childFieldsContainerParaiso_hs_3 {
  margin: 0;
  padding: 0;
}
}

@layer docusaurus.plugin-debug {/**
 * 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.
 */

.listItem_UIrj {
  background-color: #242526;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}
}

@layer docusaurus.plugin-debug {/**
 * 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.
 */

.listItem_Ild6 {
  background-color: #242526;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}

.route_NfVu {
  margin-bottom: 10px;
}

.routeName_Q1Ui {
  color: #e06b6b;
}
}

@layer docusaurus.plugin-debug {/**
 * 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.
 */

.sectionTitle_gpPX {
  margin-top: 20px;
}

.listItem_KhP1 {
  background-color: #242526;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}

.version_eAdG {
  float: left;
}

.name_omfq {
  font-weight: 800;
  color: #e06b6b;
}
}

@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_zVej {
  border: 1px solid var(--docusaurus-tag-list-border);
  transition: border var(--ifm-transition-fast);
}

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

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

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

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

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

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

.tagWithCount_h2kH 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-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.
 */

.tags_jXut {
  display: inline;
}

.tag_QGVx {
  margin: 0 0 0.5rem 0.4rem;
  display: inline-block;
}
}

@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_Z9Sw {
  margin-left: 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_JAkA {
  font-size: smaller;
  font-style: italic;
  margin-top: 0.2rem;
}

@media (min-width: 997px) {
  .lastUpdated_JAkA {
    text-align: left;
  }
}
}

@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_TO0P {
  font-size: inherit;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.4rem 0.8rem;
  width: 100%;
}

.tocCollapsibleButton_TO0P::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_MG3E::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_ETCw {
  background-color: var(--ifm-menu-color-background-active);
  border-radius: var(--ifm-global-radius);
  margin: 1rem 0;
}

.tocCollapsibleContent_vkbj > ul {
  border-right: none;
  border-top: 1px solid var(--ifm-color-emphasis-300);
  padding: 0.2rem 0;
  font-size: 15px;
}

.tocCollapsibleContent_vkbj ul li {
  margin: 0.4rem 0.8rem;
}

.tocCollapsibleContent_vkbj a {
  display: block;
}

.tocCollapsibleExpanded_sAul {
  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_ITEo {
    display: none;
  }
}

@media print {
  .tocMobile_ITEo {
    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.
 */

.tableOfContents_bqdL {
  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_bqdL {
    display: none;
  }

  .docItemContainer_F8PC {
    padding: 0 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.
 */

.backToTopButton_sjWU {
  position: fixed;
  left: 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_sjWU::after {
  content: ' ';
  display: inline-block;
  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_sjWU:hover {
    background-color: var(--ifm-color-emphasis-300);
  }
}

.backToTopButtonShow_xfvO {
  opacity: 1;
  transform: scale(1);
  visibility: visible;
}
}

@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_mlkZ {
  display: none;
}

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

[data-theme='dark'] .themedComponent--dark_xIcU {
  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_NVdE {
  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.
 */

: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_PEFL {
    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_kv0_ {
    transform: rotate(-180deg);
    margin-top: 4px;
  }

  [dir='rtl'] .collapseSidebarButtonIcon_kv0_ {
    transform: rotate(0);
  }

  .collapseSidebarButton_PEFL:hover,
  .collapseSidebarButton_PEFL:focus {
    background-color: var(--docusaurus-collapse-button-bg-hover);
  }
}

.collapseSidebarButton_PEFL {
  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.
 */

.iconExternalLink_nPIU {
  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.
 */

.dropdownNavbarItemMobile_J0Sd {
  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_nlXk {
  vertical-align: text-bottom;
  margin-left: 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_Bca1:empty {
  display: none;
}

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

@media (min-width: 997px) {
  .navbarSearchContainer_Bca1 {
    padding: var(--ifm-navbar-item-padding-vertical)
      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_m1mJ {
  transition: transform var(--ifm-transition-fast) ease;
}

.navbarHidden_jGov {
  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_a6uf {
  white-space: pre-wrap;
  color: red;
}

.errorBoundaryFallback_VBag {
  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_DEke {
    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-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.
 */

.menuExternalLink_NmtK {
  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.
 */

@media (min-width: 997px) {
  .menuHtmlItem_M9Kj {
    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_SIkG {
    flex-grow: 1;
    padding: 0.5rem;
  }
  @supports (scrollbar-gutter: stable) {
    .menu_SIkG {
      padding: 0.5rem 0.5rem 0.5rem 0;
      scrollbar-gutter: stable;
    }
  }

  .menuWithAnnouncementBar_GW3s {
    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_njMd {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-top: var(--ifm-navbar-height);
    width: var(--doc-sidebar-width);
  }

  .sidebarWithHideableNavbar_wUlq {
    padding-top: 0;
  }

  .sidebarHidden_VK0M {
    opacity: 0;
    visibility: hidden;
  }

  .sidebarLogo_isFc {
    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_isFc img {
    margin-left: 0.5rem;
    height: 2rem;
  }
}

.sidebarLogo_isFc {
  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_TmdG {
    position: absolute;
    top: 0;
    left: 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_TmdG:hover,
  .expandButton_TmdG:focus {
    background-color: var(--docusaurus-collapse-button-bg-hover);
  }

  .expandButtonIcon_i1dp {
    transform: rotate(0);
  }

  [dir='rtl'] .expandButtonIcon_i1dp {
    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_YfHR {
  display: none;
}

@media (min-width: 997px) {
  .docSidebarContainer_YfHR {
    display: block;
    width: var(--doc-sidebar-width);
    margin-top: calc(-1 * var(--ifm-navbar-height));
    border-left: 1px solid var(--ifm-toc-border-color);
    will-change: width;
    transition: width var(--ifm-transition-fast) ease;
    clip-path: inset(0);
  }

  .docSidebarContainerHidden_DPk8 {
    width: var(--doc-sidebar-hidden-width);
    cursor: pointer;
  }

  .sidebarViewport_aRkj {
    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_TBSr {
  display: flex;
  width: 100%;
}

@media (min-width: 997px) {
  .docMainContainer_TBSr {
    flex-grow: 1;
    max-width: calc(100% - var(--doc-sidebar-width));
  }

  .docMainContainerEnhanced_lQrH {
    max-width: calc(100% - var(--doc-sidebar-hidden-width));
  }

  .docItemWrapperEnhanced_JWYK {
    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_UBD9 {
  display: flex;
  width: 100%;
}

.docsWrapper_hBAB {
  display: flex;
  flex: 1 0 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.
 */

/*
When the navbar is sticky, ensure that on anchor click,
the browser does not scroll that anchor behind the navbar
See https://x.com/JoshWComeau/status/1332015868725891076
 */
.anchorWithStickyNavbar_LWe7 {
  scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
}

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

.hash-link {
  opacity: 0;
  padding-right: 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_z2l0 {
  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.
 */

.codeBlockContainer_Ckt0 {
  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_bY9V {
  --ifm-pre-background: var(--prism-background-color);
  margin: 0;
  padding: 0;
}

.codeBlockStandalone_MEMb {
  padding: 0;
}

.codeBlockLines_e6Vv {
  font: inherit;
  float: left;
  min-width: 100%;
  padding: var(--ifm-pre-padding);
}

.codeBlockLinesWithNumbering_o6Pm {
  display: table;
  padding: var(--ifm-pre-padding) 0;
}

@media print {
  .codeBlockLines_e6Vv {
    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_lJS_ {
  display: table-row;
  counter-increment: line-count;
}

.codeLineNumber_Tfdd {
  display: table-cell;
  text-align: left;
  width: 1%;
  position: sticky;
  right: 0;
  padding: 0 var(--ifm-pre-padding);
  background: var(--ifm-pre-background);
  overflow-wrap: normal;
}

.codeLineNumber_Tfdd::before {
  content: counter(line-count);
  opacity: 0.4;
}

.theme-code-block-highlighted-line .codeLineNumber_Tfdd::before {
  opacity: 0.8;
}

.codeLineContent_feaV {
  padding-left: 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_Vdqa {
  opacity: 1 !important;
}

.copyButtonIcons_IEyt {
  position: relative;
  width: 1.125rem;
  height: 1.125rem;
}

.copyButtonIcon_TrPX,
.copyButtonSuccessIcon_cVMy {
  position: absolute;
  top: 0;
  right: 0;
  fill: currentColor;
  opacity: inherit;
  width: inherit;
  height: inherit;
  transition: all var(--ifm-transition-fast) ease;
}

.copyButtonSuccessIcon_cVMy {
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) scale(0.33);
  opacity: 0;
  color: #00d600;
}

.copyButtonCopied_Vdqa .copyButtonIcon_TrPX {
  transform: scale(0.33);
  opacity: 0;
}

.copyButtonCopied_Vdqa .copyButtonSuccessIcon_cVMy {
  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_b1P5 {
  width: 1.2rem;
  height: 1.2rem;
}

.wordWrapButtonEnabled_uzNF .wordWrapButtonIcon_b1P5 {
  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_M5ko {
  display: flex;
  column-gap: 0.2rem;
  position: absolute;
  right: calc(var(--ifm-pre-padding) / 2);
  top: calc(var(--ifm-pre-padding) / 2);
}

.buttonGroup_M5ko 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_M5ko button:focus-visible,
.buttonGroup_M5ko button:hover {
  opacity: 1 !important;
}

.theme-code-block:hover .buttonGroup_M5ko 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_QJqH {
  position: relative;
  direction: ltr;
  border-radius: inherit;
}

.codeBlockTitle_OeMC {
  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-right-radius: inherit;
  border-top-left-radius: inherit;
}

.codeBlockTitle_OeMC + .codeBlockContent_QJqH .codeBlock_a8dz {
  border-top-right-radius: 0;
  border-top-left-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_lb9f {
  --docusaurus-details-summary-arrow-size: 0.38rem;
  --docusaurus-details-transition: transform 200ms ease;
  --docusaurus-details-decoration-color: grey;
}

.details_lb9f > summary {
  position: relative;
  cursor: pointer;
  list-style: none;
  padding-right: 1rem;
}

/* TODO: deprecation, need to remove this after Safari will support `::marker` */
.details_lb9f > summary::-webkit-details-marker {
  display: none;
}

.details_lb9f > summary::before {
  position: absolute;
  top: 0.45rem;
  right: 0;

  /* CSS-only Arrow */
  content: '';
  border-width: var(--docusaurus-details-summary-arrow-size);
  border-style: solid;
  border-color: transparent var(--docusaurus-details-decoration-color) transparent
    transparent;

  /* Arrow rotation anim */
  transform: rotate(0deg);
  transition: var(--docusaurus-details-transition);
  transform-origin: calc(100% - (var(--docusaurus-details-summary-arrow-size) / 2)) 50%;
}

/* When JS disabled/failed to load: we use the open property for arrow animation: */
.details_lb9f[open]:not(.isBrowser_bmU9) > summary::before,

.details_lb9f[data-collapsed='false'].isBrowser_bmU9 > summary::before {
  transform: rotate(-90deg);
}

.collapsibleContent_i85q {
  margin-top: 1rem;
  border-top: 1px solid var(--docusaurus-details-decoration-color);
  padding-top: 1rem;
}

.collapsibleContent_i85q p:last-child {
  margin-bottom: 0;
}

.details_lb9f > 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_b_Ee {
  --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);
}
}

@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_mC6p {
  list-style: none;
}

:not(.containsTaskList_mC6p > li) > .containsTaskList_mC6p {
  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.
 */

.img_ev3q {
  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_xJq3 {
  margin-bottom: 1em;
}

.admonitionHeading_Gvgb {
  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_Gvgb:not(:last-child) {
  margin-bottom: 0.3rem;
}

.admonitionHeading_Gvgb code {
  text-transform: none;
}

.admonitionIcon_Rf37 {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.4em;
}

.admonitionIcon_Rf37 svg {
  display: inline-block;
  height: 1.6em;
  width: 1.6em;
  fill: var(--ifm-alert-foreground-color);
}

.admonitionContent_BuS1 > :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.
 */

.breadcrumbHomeIcon_YNFT {
  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_Z_bl {
  --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.
 */

.docItemContainer_Djhp header + *,
.docItemContainer_Djhp article > *:first-child {
  margin-top: 0;
}

@media (min-width: 997px) {
  .docItemCol_VOVn {
    max-width: 75% !important;
  }
}
}

