/* Interika DS — сгенерировано build/build.js. Не править руками:
   источник правды — tokens/*.tokens.json. */

:root {

  --color-neutral-0: #FFFFFF;
  --color-neutral-50: #FAFAFA; /* Утопленный фон страницы, полосы таблиц. */
  --color-neutral-100: #F3F3F3; /* Приглушённая подложка. */
  --color-neutral-200: #E0E0E0; /* Разделитель, фон неактивного. */
  --color-neutral-300: #CDCDCD; /* Бордер контролов. */
  --color-neutral-400: #B2B2B2; /* Иконка неактивного. */
  --color-neutral-500: #989898; /* Обводка неактивного. Только обводка: 2.88:1 на белом, текстом быть не может. */
  --color-neutral-600: #6C6C6C; /* Третичный текст и граница контрола. Подпись дизайнера «Серый текст». ИСПРАВЛЕНО с #757575: */
  --color-neutral-700: #595959; /* Иконки и текст повышенного контраста. */
  --color-neutral-800: #3D3D3D;
  --color-neutral-900: #272727; /* Тёмная поверхность на уровень выше основной. */
  --color-neutral-950: #141414; /* Основной текст и тёмная поверхность. Подпись дизайнера «Текст». */
  --color-neutral-1000: #0A0A0A; /* Утопленный фон тёмной темы. Ряд продлён ВНИЗ, а не вверх: утопленная поверхность обязана о */
  --color-blue-300: #93A4E0; /* Ссылка и обводка фокуса на тёмном фоне. 7.57:1 на neutral.950, тогда как blue.500 даёт там */
  --color-blue-500: #5469BD; /* Брендовый синий. Заливка основного действия. */
  --color-blue-700: #4C619D; /* Hover основного действия. */
  --color-blue-900: #0F234D; /* Тёмно-синяя поверхность баннеров. */
  --color-blue-950: #070E20; /* Баннерная поверхность в тёмной теме. Ряд продлён вниз, потому что фирменный blue.900 в тём */
  --color-slate-300: #B5CADD; /* Светло-синяя обводка. */
  --color-slate-600: #576789; /* Вторичный текст с брендовым подтоном. */
  --color-orange-300: #FFC8A2; /* Мелкая подпись на тёмном фоне. */
  --color-orange-500: #F97316; /* Акцентная заливка. Текст на ней только neutral.950 (6.57:1). */
  --color-red-100: #FDECEA; /* Подложка сообщения об ошибке. */
  --color-red-300: #E08985; /* Текст и обводка ошибки в тёмной теме. 7.09:1 на neutral.950, 5.60:1 на собственной тёмной  */
  --color-red-400: #C4342B; /* Hover деструктивного действия в тёмной теме. Светлее заливки, а не темнее: затемнение чере */
  --color-red-500: #B3261E; /* Основной красный: заливка, текст, обводка. */
  --color-red-900: #40201E; /* Подложка сообщения об ошибке в тёмной теме. */
  --color-green-100: #E8F5EC; /* Подложка сообщения об успехе. */
  --color-green-300: #74DC9C; /* Текст и обводка успеха в тёмной теме. 10.93:1 на neutral.950, 7.39:1 на собственной тёмной */
  --color-green-500: #166534;
  --color-green-900: #163B24; /* Подложка сообщения об успехе в тёмной теме. */
  --color-amber-100: #FBF3D5; /* Подложка предупреждения. */
  --color-amber-300: #E2C65A; /* Текст и обводка предупреждения в тёмной теме. 10.93:1 на neutral.950, 7.38:1 на собственно */
  --color-amber-500: #7D6300;
  --color-amber-900: #3B3416; /* Подложка предупреждения в тёмной теме. */
  --color-text-primary: #141414; /* 18.42:1 на белом. */
  --color-text-secondary: #576789; /* Вторичный наборный текст. 5.67:1. */
  --color-text-tertiary: #6C6C6C; /* Плейсхолдеры, подписи полей, мета. 5.25:1 на странице, 4.73:1 на приглушённой подложке — п */
  --color-text-disabled: #989898; /* 2.88:1 — для неактивных контролов WCAG контраста не требует. */
  --color-text-inverse: #FFFFFF; /* Текст на тёмной и брендовой поверхности. */
  --color-text-on-accent: #141414; /* Текст на оранжевой заливке. Тёмный, не белый: 6.57:1 против 2.80:1. */
  --color-text-on-dark-muted: #FFC8A2; /* Мелкая подпись на тёмном фоне тёплым акцентным тоном. 10.26:1 на navy. Берётся там, где по */
  --color-text-on-dark-secondary: #B5CADD; /* Вторичный текст на тёмной и баннерной поверхности. Ровно то же, чем text.secondary служит  */
  --color-text-link: #5469BD; /* Ссылка в тексте. 5.08:1. */
  --color-surface-page: #FFFFFF;
  --color-surface-sunken: #FAFAFA; /* Фон под карточками, полосы таблиц. */
  --color-surface-subtle: #F3F3F3; /* Приглушённая подложка. */
  --color-surface-disabled: #E0E0E0; /* Фон неактивного контрола. */
  --color-surface-inverse: #141414;
  --color-surface-inverse-raised: #272727; /* Слой выше тёмной поверхности. */
  --color-surface-brand: #5469BD;
  --color-surface-banner: #0F234D; /* Фирменная тёмно-синяя поверхность: шапка приложения, баннер. В тёмной теме темнеет до blue */
  --color-surface-accent: #F97316; /* Текст на ней — только text.onAccent. */
  --color-border-subtle: #F3F3F3; /* Слабый разделитель. */
  --color-border-default: #CDCDCD; /* Декоративный разделитель и рамка неинтерактивных блоков. Даёт 1.59:1 к белому — для границ */
  --color-border-control: #6C6C6C; /* Граница интерактивного контрола: поле ввода, чекбокс, селект. 5.25:1 к белому. По WCAG 1.4 */
  --color-border-muted: #989898; /* Обводка неактивного. */
  --color-border-strong: #141414; /* Контурные плашки. */
  --color-border-brand: #5469BD;
  --color-border-accent: #F97316;
  --color-border-cool: #B5CADD;
  --color-border-banner: #0F234D; /* Нижний край баннерной поверхности. В светлой теме совпадает с самой поверхностью и потому  */
  --color-border-focus: #5469BD; /* Обводка фокуса клавиатуры. Обязательна для доступности. */
  --color-action-primary-bg: #5469BD; /* 5.08:1 с белым текстом. */
  --color-action-primary-bg-hover: #4C619D; /* 5.99:1 с белым текстом. */
  --color-action-primary-fg: #FFFFFF;
  --color-action-secondary-bg: #FFFFFF;
  --color-action-secondary-bg-hover: #F3F3F3;
  --color-action-secondary-fg: #141414;
  --color-action-secondary-border: #CDCDCD;
  --color-action-ghost-bg: #FFFFFF; /* Прозрачная в вёрстке; в Figma нужна явная заливка. */
  --color-action-ghost-bg-hover: #F3F3F3;
  --color-action-ghost-fg: #141414;
  --color-action-ghost-border: #141414;
  --color-action-danger-bg: #B3261E; /* Деструктивное действие. 6.54:1 с белым текстом. */
  --color-action-danger-bg-hover: #141414; /* Затемнение через нейтраль: второй красной ступени в системе нет, а изобретать её ради одно */
  --color-action-danger-fg: #FFFFFF;
  --color-action-disabled-bg: #E0E0E0;
  --color-action-disabled-fg: #989898;
  --color-feedback-error-surface: #B3261E; /* Заливка: бейдж, тост. */
  --color-feedback-error-subtle: #FDECEA; /* Подложка блока с сообщением. */
  --color-feedback-error-text: #B3261E; /* 6.54:1 на белом, 5.72:1 на собственной подложке. */
  --color-feedback-error-border: #B3261E; /* Обводка поля с ошибкой. */
  --color-feedback-success-surface: #166534;
  --color-feedback-success-subtle: #E8F5EC;
  --color-feedback-success-text: #166534; /* 7.13:1 на белом. */
  --color-feedback-success-border: #166534;
  --color-feedback-warning-surface: #7D6300;
  --color-feedback-warning-subtle: #FBF3D5;
  --color-feedback-warning-text: #7D6300; /* 5.74:1 на белом, 5.16:1 на собственной подложке. */
  --color-feedback-warning-border: #7D6300;
  --color-feedback-on-solid: #FFFFFF; /* Текст на любой сигнальной заливке. Все три проходят AA с белым: error 6.54, success 7.13,  */

  --dimension-space-0: 0px;
  --dimension-space-4: 4px;
  --dimension-space-8: 8px;
  --dimension-space-12: 12px;
  --dimension-space-16: 16px;
  --dimension-space-20: 20px;
  --dimension-space-24: 24px;
  --dimension-space-28: 28px;
  --dimension-space-32: 32px;
  --dimension-space-40: 40px;
  --dimension-space-48: 48px;
  --dimension-space-64: 64px;
  --dimension-radius-control: 8px; /* Кнопки, поля, контейнеры иконок. */
  --dimension-radius-panel: 20px; /* Аккордеоны, панели, модалки. */
  --dimension-radius-card: 30px; /* Карточки и изображения. */
  --dimension-radius-pill: 9999px; /* Полное скругление. Заменяет номиналы 28/38/48/58, дававшие на высоте 38 одну и ту же форму */
  --dimension-border-hairline: 1px;
  --dimension-border-thick: 2px;
  --dimension-icon-16: 16px;
  --dimension-icon-20: 20px;
  --dimension-icon-24: 24px;
  --dimension-icon-32: 32px;
  --dimension-icon-40: 40px;
  --dimension-icon-48: 48px;

  --font-family-sans: Manrope, "Manrope Fallback", system-ui, sans-serif; /* Единственное семейство: 2721 из 2744 текстовых узлов. Tilda Sans (17) и Montserrat (6) уда */
  --font-family-mono: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, monospace; /* Моноширинный для табличных данных, идентификаторов и кода. */
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --font-size-12: 12px;
  --font-size-14: 14px;
  --font-size-16: 16px; /* Базовый кегль, 67% всех текстов макета. */
  --font-size-20: 20px;
  --font-size-24: 24px;
  --font-size-28: 28px;
  --font-size-36: 36px;
  --font-size-52: 52px;
  --font-line-height-flat: 1; /* Дисплейные заголовки и подписи контролов. */
  --font-line-height-heading: 1.2; /* Заголовки от 24px. */
  --font-line-height-subheading: 1.3; /* Подзаголовок 20px. */
  --font-line-height-body: 1.4; /* Наборный текст. */
  --font-letter-spacing-none: 0px;
  --font-letter-spacing-tight: -0.02em;

  --shadow-1: 0px 1px 2px 0px #0F234D14; /* Поднятая поверхность. */
  --shadow-2: 0px 4px 12px 0px #0F234D1A; /* Дропдаун, поповер, тултип. */
  --shadow-3: 0px 12px 32px 0px #0F234D24; /* Модальный слой. */
  --shadow-on-dark-1: 0px 1px 2px 0px #00000066; /* Поднятая поверхность. */
  --shadow-on-dark-2: 0px 4px 12px 0px #00000080; /* Дропдаун, поповер, тултип. */
  --shadow-on-dark-3: 0px 12px 32px 0px #00000099; /* Модальный слой. */

  --space-inset-xs: 4px;
  --space-inset-sm: 8px;
  --space-inset-md: 12px;
  --space-inset-lg: 16px; /* Внутренний отступ кнопок. */
  --space-inset-xl: 20px; /* Внутренний отступ панелей. */
  --space-inset-2xl: 28px; /* Внутренний отступ карточек. */
  --space-stack-xs: 4px;
  --space-stack-sm: 12px; /* Заголовок и текст под ним. */
  --space-stack-md: 20px; /* Между смысловыми группами. */
  --space-stack-lg: 32px; /* Между блоками. */
  --space-stack-xl: 48px; /* Между секциями. */
  --space-stack-2xl: 64px; /* Отбивка крупных разделов. */
  --space-inline-xs: 4px;
  --space-inline-sm: 8px; /* Иконка и текст. */
  --space-inline-md: 16px; /* Кнопки рядом. */
  --space-inline-lg: 24px; /* Колонки. */

  --radius-control: 8px;
  --radius-panel: 20px;
  --radius-card: 30px;
  --radius-pill: 9999px;

  --border-default: 1px;
  --border-strong: 2px;
  --border-focus: 2px;

  --elevation-raised: 0px 1px 2px 0px #0F234D14; /* Карточка при наведении. */
  --elevation-overlay: 0px 4px 12px 0px #0F234D1A; /* Дропдаун, поповер, тултип. */
  --elevation-modal: 0px 12px 32px 0px #0F234D24; /* Модальное окно. */

  --button-height: 46px;
  --button-radius: 8px;
  --button-padding-inline: 16px;
  --button-gap: 8px;
  --button-border-width: 1px;
  --button-primary-background: #5469BD;
  --button-primary-background-hover: #4C619D;
  --button-primary-foreground: #FFFFFF;
  --button-secondary-background: #FFFFFF;
  --button-secondary-background-hover: #F3F3F3;
  --button-secondary-foreground: #141414;
  --button-secondary-border: #CDCDCD;
  --button-ghost-background: #FFFFFF;
  --button-ghost-foreground: #141414;
  --button-ghost-border: #141414;
  --button-disabled-background: #E0E0E0;
  --button-disabled-foreground: #989898;

  --tag-height: 38px;
  --tag-height-lg: 46px; /* Крупный вариант, 60 экземпляров. */
  --tag-radius: 9999px;
  --tag-padding-inline: 16px;
  --tag-gap: 8px;
  --tag-border-width: 1px;
  --tag-on-light-background: #FFFFFF;
  --tag-on-light-foreground: #141414;
  --tag-on-light-border: #CDCDCD;
  --tag-brand-background: #5469BD;
  --tag-brand-foreground: #FFFFFF; /* Не text.inverse: та роль означает «текст на поверхности, противоположной фону», и в тёмной */
  --tag-accent-background: #F97316;
  --tag-accent-foreground: #141414; /* Тёмный текст, не белый: на оранжевом белый даёт 2.80:1. */
  --tag-muted-background: #F3F3F3;
  --tag-muted-foreground: #141414;
  --tag-outline-foreground: #141414;
  --tag-outline-border: #141414;
  --tag-dot-size: 8px; /* Точка-индикатор перед подписью сигнальной плашки. Нужна потому, что цвет — единственный но */
  --tag-success-background: #E8F5EC;
  --tag-success-foreground: #166534;
  --tag-success-border: #166534;
  --tag-warning-background: #FBF3D5;
  --tag-warning-foreground: #7D6300;
  --tag-warning-border: #7D6300;
  --tag-danger-background: #FDECEA;
  --tag-danger-foreground: #B3261E;
  --tag-danger-border: #B3261E;

  --input-height: 40px;
  --input-height-textarea: 80px;
  --input-radius: 8px;
  --input-padding-inline: 12px;
  --input-padding-block: 8px;
  --input-background: #FFFFFF;
  --input-border: #6C6C6C; /* Не border.default: тот даёт 1.59:1 и не проходит WCAG 1.4.11 для границы контрола. */
  --input-border-width: 1px;
  --input-placeholder-color: #6C6C6C;
  --input-value-color: #141414;
  --input-focus-border: #5469BD;
  --input-focus-border-width: 2px;
  --input-error-border: #B3261E;
  --input-disabled-background: #F3F3F3;
  --input-disabled-text: #989898;

  --checkbox-size: 20px;
  --checkbox-radius: 8px; /* Тот же радиус, что у остальных контролов — система с крупными скруглениями. */
  --checkbox-border-width: 1px;
  --checkbox-border: #6C6C6C;
  --checkbox-background: #FFFFFF;
  --checkbox-checked-background: #5469BD;
  --checkbox-checked-mark: #FFFFFF;
  --checkbox-gap: 4px; /* До текста подписи. */

  --icon-badge-size: 48px; /* Выпрямлено с 50px. */
  --icon-badge-radius: 8px;

  --feature-block-gap: 12px;

  --card-radius: 30px;
  --card-padding: 28px;
  --card-gap: 20px; /* Внутренний gap 42 из карточки отзыва сведён к 40 → space.stack.md (20) для единого ритма. */
  --card-background: #FFFFFF;
  --card-hover-shadow: 0px 1px 2px 0px #0F234D14;

  --accordion-min-height: 82px;
  --accordion-radius: 20px;
  --accordion-padding-block: 28px;
  --accordion-padding-inline: 20px;
  --accordion-background: #FFFFFF;
  --accordion-icon-size: 24px;

  --select-height: 40px;
  --select-radius: 8px;
  --select-padding-inline: 12px;
  --select-padding-inline-end: 28px; /* Справа больше: под шеврон. Значение = отступ + размер иконки, иначе длинная подпись вариан */
  --select-background: #FFFFFF;
  --select-border: #6C6C6C;
  --select-border-width: 1px;
  --select-focus-border: #5469BD;
  --select-error-border: #B3261E;
  --select-value-color: #141414;
  --select-disabled-background: #F3F3F3;
  --select-disabled-text: #989898;
  --select-chevron-size: 16px;
  --select-chevron-color: #6C6C6C;

  --tabs-height: 38px; /* Совпадает с высотой плашки: обе — мелкие управляющие элементы одного ряда. */
  --tabs-radius: 8px;
  --tabs-padding: 4px; /* Отступ дорожки до вкладки. */
  --tabs-item-padding-inline: 12px;
  --tabs-gap: 4px;
  --tabs-track-background: #F3F3F3;
  --tabs-track-border: #F3F3F3;
  --tabs-item-foreground: #6C6C6C;
  --tabs-item-foreground-hover: #141414;
  --tabs-item-selected-background: #FFFFFF;
  --tabs-item-selected-foreground: #141414;
  --tabs-item-selected-shadow: 0px 1px 2px 0px #0F234D14;
  --tabs-underline-thickness: 2px;
  --tabs-underline-color: #F97316;
  --tabs-on-banner-foreground: #B5CADD; /* Холодный, а не тёплый: на onDarkMuted неактивная вкладка выглядела заметнее активной. */
  --tabs-on-banner-foreground-selected: #FFFFFF;

  --toast-max-width: 420px; /* Не шире: длинный текст в одну строку через весь экран не прочитывается, а тост живёт секун */
  --toast-radius: 8px;
  --toast-padding-inline: 16px;
  --toast-padding-block: 12px;
  --toast-gap: 8px;
  --toast-stack-gap: 4px; /* Между тостами в очереди. */
  --toast-shadow: 0px 4px 12px 0px #0F234D1A;
  --toast-neutral-background: #141414;
  --toast-neutral-foreground: #FFFFFF;
  --toast-error-background: #B3261E;
  --toast-error-foreground: #FFFFFF;
  --toast-success-background: #166534;
  --toast-success-foreground: #FFFFFF;

  --spinner-size-sm: 16px;
  --spinner-size-md: 20px;
  --spinner-stroke-width: 2px;

  --empty-state-padding-block: 48px;
  --empty-state-padding-inline: 20px;
  --empty-state-gap: 12px;
  --empty-state-icon-size: 40px;
  --empty-state-icon-color: #6C6C6C;
  --empty-state-body-color: #576789;
}

/* Тёмная тема. Значения — из $extensions → com.interika → dark на
   семантическом уровне. Переменных здесь меньше, чем в :root: роль без
   тёмного значения наследует светлое, и это намеренно. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --color-text-primary: #FFFFFF;
    --color-text-secondary: #B5CADD;
    --color-text-tertiary: #989898;
    --color-text-disabled: #6C6C6C;
    --color-text-inverse: #141414;
    --color-text-link: #93A4E0;
    --color-surface-page: #141414;
    --color-surface-sunken: #0A0A0A;
    --color-surface-subtle: #272727;
    --color-surface-disabled: #3D3D3D;
    --color-surface-inverse: #FFFFFF;
    --color-surface-inverse-raised: #FAFAFA;
    --color-surface-banner: #070E20;
    --color-border-subtle: #272727;
    --color-border-default: #3D3D3D;
    --color-border-control: #6C6C6C;
    --color-border-muted: #595959;
    --color-border-strong: #FFFFFF;
    --color-border-cool: #576789;
    --color-border-banner: #576789;
    --color-border-focus: #93A4E0;
    --color-action-secondary-bg: #272727;
    --color-action-secondary-bg-hover: #3D3D3D;
    --color-action-secondary-fg: #FFFFFF;
    --color-action-secondary-border: #595959;
    --color-action-ghost-bg: #141414;
    --color-action-ghost-bg-hover: #272727;
    --color-action-ghost-fg: #FFFFFF;
    --color-action-ghost-border: #FFFFFF;
    --color-action-danger-bg-hover: #C4342B;
    --color-action-disabled-bg: #3D3D3D;
    --color-action-disabled-fg: #6C6C6C;
    --color-feedback-error-subtle: #40201E;
    --color-feedback-error-text: #E08985;
    --color-feedback-error-border: #E08985;
    --color-feedback-success-subtle: #163B24;
    --color-feedback-success-text: #74DC9C;
    --color-feedback-success-border: #74DC9C;
    --color-feedback-warning-subtle: #3B3416;
    --color-feedback-warning-text: #E2C65A;
    --color-feedback-warning-border: #E2C65A;
    --elevation-raised: 0px 1px 2px 0px #00000066;
    --elevation-overlay: 0px 4px 12px 0px #00000080;
    --elevation-modal: 0px 12px 32px 0px #00000099;
  }
}

:root[data-theme="dark"] {
  --color-text-primary: #FFFFFF;
  --color-text-secondary: #B5CADD;
  --color-text-tertiary: #989898;
  --color-text-disabled: #6C6C6C;
  --color-text-inverse: #141414;
  --color-text-link: #93A4E0;
  --color-surface-page: #141414;
  --color-surface-sunken: #0A0A0A;
  --color-surface-subtle: #272727;
  --color-surface-disabled: #3D3D3D;
  --color-surface-inverse: #FFFFFF;
  --color-surface-inverse-raised: #FAFAFA;
  --color-surface-banner: #070E20;
  --color-border-subtle: #272727;
  --color-border-default: #3D3D3D;
  --color-border-control: #6C6C6C;
  --color-border-muted: #595959;
  --color-border-strong: #FFFFFF;
  --color-border-cool: #576789;
  --color-border-banner: #576789;
  --color-border-focus: #93A4E0;
  --color-action-secondary-bg: #272727;
  --color-action-secondary-bg-hover: #3D3D3D;
  --color-action-secondary-fg: #FFFFFF;
  --color-action-secondary-border: #595959;
  --color-action-ghost-bg: #141414;
  --color-action-ghost-bg-hover: #272727;
  --color-action-ghost-fg: #FFFFFF;
  --color-action-ghost-border: #FFFFFF;
  --color-action-danger-bg-hover: #C4342B;
  --color-action-disabled-bg: #3D3D3D;
  --color-action-disabled-fg: #6C6C6C;
  --color-feedback-error-subtle: #40201E;
  --color-feedback-error-text: #E08985;
  --color-feedback-error-border: #E08985;
  --color-feedback-success-subtle: #163B24;
  --color-feedback-success-text: #74DC9C;
  --color-feedback-success-border: #74DC9C;
  --color-feedback-warning-subtle: #3B3416;
  --color-feedback-warning-text: #E2C65A;
  --color-feedback-warning-border: #E2C65A;
  --elevation-raised: 0px 1px 2px 0px #00000066;
  --elevation-overlay: 0px 4px 12px 0px #00000080;
  --elevation-modal: 0px 12px 32px 0px #00000099;
}

/* Композитные текстовые стили */
.type-display-desktop {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 52px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.type-display-tablet {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 36px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.type-display-phone {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.type-heading-h2 {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.type-heading-h2-tablet {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.type-heading-h2-phone {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.type-heading-h3 {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.type-heading-h4 {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0px;
}
.type-body-default {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.type-body-strong {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0px;
}
.type-body-small {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.type-body-small-strong {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0px;
}
.type-body-caption {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.type-control-label {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0px;
}
.type-control-label-small {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0px;
}
.type-data-default {
  font-family: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, monospace;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.button-label {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0px;
}
.tag-label {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0px;
}
.input-text {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.checkbox-label-text {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.feature-block-title {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0px;
}
.feature-block-body {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.card-title {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0px;
}
.card-body {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.accordion-title {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0px;
}
.accordion-body {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.select-text {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.tabs-label {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0px;
}
.toast-text {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
.empty-state-title {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0px;
}
.empty-state-body {
  font-family: Manrope, "Manrope Fallback", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0px;
}
