/* === CSS variables (DS2025) — только используемые в калькуляторе === */
:root {
    --space2_m: 4px;
    --space3_m: 6px;
    --space4_m: 8px;
    --space5_m: 12px;
    --space6_m: 16px;
    --space7_m: 16px;
    --space8_m: 20px;
    --space10_m: 24px;
    --space12_m: 38px;
  
    --space2_d: 4px;
    --space3_d: 8px;
    --space4_d: 10px;
    --space5_d: 12px;
    --space6_d: 16px;
    --space8_d: 24px;
    --space10_d: 32px;
    --space12_d: 48px;
  
    --font_raleway: 'Raleway', 'Arial', sans-serif;
    --font_roboto: 'Roboto', 'Arial', sans-serif;
  
    --titles: #2E2E3C;
    --white: #FFFFFF;
    --body: #4C4C59;
    --body2: #8D8DA8;
    --body2_on_color: #C8C8DA;
    --inputs: #D8D8E7;
    --inputs_active: #2E2E3C;
  
    --accent_blue: #498EF5;
    --accent_red: #F03B5C;
    --error: #D1053B;
  
    --bg_white: #FFFFFF;
    --bg_neutral1: #F4F4F9;
    --bg_neutral3: #D9D9EE;
    --bg_neutral5: #7A8093;
    --bg_black: #2E2E3C;
    --bg_accent_blue_lite: #ECF3FF;
    --bg_accent_blue_normal: #CFDEF5;
    --bg_accent_red_lite: #FFD0D0;
  
    --button_red: #F03B5C;
    --button_red_hover: #C60437;
    --button_blue: #498EF5;
    --button_blue_hover: #1F65CC;
  
    --border_lite: #F0F0F3;
    --border_normal: #C8C8DA;
  
    --shadow_s: 0px 8px 8px 0px rgba(46, 46, 60, 0.10);
    --icon_muted: #D8D8E7;
  
    --space3: 12px;
    --space6: 16px;
    --space8: 12px;
  }
  
  /* === Reset === */
  .calc2026__wrapper *{
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-feature-settings: "lnum";
    font-variant-numeric: lining-nums;
  }
  
  .calc2026__wrapper {
    width: 100%;
    font-weight: 400;
    font-family: var(--font_raleway);
    font-size: 16px;
    line-height: 140%;
    color: var(--body);
    background: var(--white);
    min-width: 320px;
  }
  
  .calc2026__wrapper img, .calc2026__wrapper video, .calc2026__wrapper svg {
    max-width: 100%;
    height: auto;
  }
  
  .calc2026__wrapper b, .calc2026__wrapper strong {
    font-weight: 700 !important;
  }
  
  .calc2026__wrapper a {
    text-decoration: none;
  }
  
  .calc2026__wrapper button, .calc2026__wrapper input[type="submit"] {
    border: none;
    background: none;
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
  }
  
  /* === Typography === */
  .calc2026__wrapper .h1, .calc2026__wrapper .h2, .calc2026__wrapper .h3, .calc2026__wrapper .h4 {
    line-height: 110%;
    color: var(--titles);
    font-family: var(--font_roboto);
    font-weight: 500;
  }
  
  .calc2026__wrapper .h1 { font-size: 32px; }
  .calc2026__wrapper .h2 { font-size: 24px; }
  .calc2026__wrapper .h3 { font-size: 18px; }
  .calc2026__wrapper .h4 { font-size: 18px; }
  
  .calc2026__wrapper .txt_medium {
    font-size: 16px;
    line-height: 140%;
    font-weight: 400;
    color: var(--body);
  }
  
  .calc2026__wrapper .txt_small {
    font-size: 14px;
    line-height: 140%;
    font-weight: 400;
  }
  
  .calc2026__wrapper .small {
    font-family: var(--font_raleway);
    font-size: 14px;
    line-height: 140%;
  }
  
  .calc2026__wrapper .txt_link {
    text-decoration: underline;
    color: var(--body);
  }
  
  .calc2026__wrapper .txt_accent_blue { color: var(--accent_blue); }
  .calc2026__wrapper .txt_inputs_active { color: var(--inputs_active); }
  
  @media (min-width: 992px) {
    .calc2026__wrapper .h1 { font-size: 52px; }
    .calc2026__wrapper .h2 { font-size: 32px; }
    .calc2026__wrapper .h3 { font-size: 24px; }
    .calc2026__wrapper .h4 { font-size: 18px; }
  }
  
  /* === Layout / Display === */
  .calc2026__wrapper .w100 { width: 100%; }
  .calc2026__wrapper .flex { display: -webkit-box; display: -ms-flexbox; display: flex; }
  .calc2026__wrapper .flex_column { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  .calc2026__wrapper .flex_wrap { flex-wrap: wrap; }
  .calc2026__wrapper .align_center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  .calc2026__wrapper .space_between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .calc2026__wrapper .justify_end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: end; }
  .calc2026__wrapper .hidden { display: none; }
  
  /* === Spacing (margin-bottom) === */
  .calc2026__wrapper .space3 { margin-bottom: var(--space3_m); }
  .calc2026__wrapper .space4 { margin-bottom: var(--space4_m); }
  .calc2026__wrapper .space5 { margin-bottom: var(--space5_m); }
  .calc2026__wrapper .space6 { margin-bottom: var(--space6_m); }
  .calc2026__wrapper .space8 { margin-bottom: var(--space8_m); }
  .calc2026__wrapper .space10 { margin-bottom: var(--space10_m); }
  .calc2026__wrapper .space12 { margin-bottom: var(--space12_m); }
  
  @media (min-width: 992px) {
    .calc2026__wrapper .space3 { margin-bottom: var(--space3_d); }
    .calc2026__wrapper .space4 { margin-bottom: var(--space4_d); }
    .calc2026__wrapper .space5 { margin-bottom: var(--space5_d); }
    .calc2026__wrapper .space6 { margin-bottom: var(--space6_d); }
    .calc2026__wrapper .space8 { margin-bottom: var(--space8_d); }
    .calc2026__wrapper .space10 { margin-bottom: var(--space10_d); }
    .calc2026__wrapper .space12 { margin-bottom: var(--space12_d); }
  }
  
  /* === Corners === */
  .calc2026__wrapper .corner4 { border-radius: 8px; }
  .calc2026__wrapper .corner7 { border-radius: 22px; }
  
  @media (min-width: 992px) {
    .calc2026__wrapper .corner4 { border-radius: 12px; }
    .calc2026__wrapper .corner7 { border-radius: 32px; }
  }
  
  /* === Gaps === */
  .calc2026__wrapper .gap3 { gap: var(--space3_m); }
  .calc2026__wrapper .gap8 { gap: var(--space8_m); }
  
  @media (min-width: 992px) {
    .calc2026__wrapper .gap3 { gap: var(--space3_d); }
    .calc2026__wrapper .gap8 { gap: var(--space8_d); }
  }
  
  /* === Buttons === */
  .calc2026__wrapper .button,
  #popup--configs .button_line {
    font-family: var(--font_roboto);
    font-weight: 500;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    display: inline-flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--white);
    white-space: nowrap;
    flex-shrink: 0;
    cursor: pointer;
    line-height: 48px;
    height: 48px;
    padding: 0 20px;
  }
  
  #popup--configs .button span, #popup--configs .button_line span {
    line-height: 100%;
    font-weight: 500;
    letter-spacing: 1.4px;
  }
  
  .calc2026__wrapper .button.button_red {
    border-radius: 4px;
    background: var(--button_red);
  }
  
  .calc2026__wrapper .button.button_red:hover {
    background: var(--button_red_hover);
  }
  
  #popup--configs .button_line {
    color: var(--button_blue);
    border: 1.5px var(--button_blue) solid;
    border-radius: 4px;
  }
  
  #popup--configs .button_line:hover {
    color: var(--button_blue_hover);
    border-color: var(--button_blue_hover);
  }
  
  .calc2026__wrapper .button.button_blue {
    border-radius: 4px;
    background: var(--button_blue);
  }
  
  .calc2026__wrapper .button.button_blue:hover {
    background: var(--button_blue_hover);
  }
  #popup--configs .button_line.button_blue {
      background: transparent;
  }
  .calc2026__wrapper .form__input.error, .calc2026__wrapper .form__input.form__error {
      border: 1px solid var(--error);
  }
  /* === Form elements === */
  .calc2026__wrapper .form__input {
    height: 48px;
    width: 100%;
    line-height: 48px;
    padding: 0 16px;
    border-radius: 4px;
    border: 1px solid var(--body2_on_color);
    background: var(--white);
    color: var(--inputs_active);
    font-family: var(--font_raleway);
    font-size: 16px;
    font-weight: 400;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    outline: none;
  }
  
  .calc2026__wrapper .form__input::-webkit-input-placeholder,
  .calc2026__wrapper .form__input::-moz-placeholder,
  .calc2026__wrapper .form__input:-ms-input-placeholder,
  .calc2026__wrapper .form__input::placeholder {
    color: var(--body2_on_color);
  }
  
  .calc2026__wrapper .form__input:focus {
    outline: none;
    border: 1px solid var(--accent_blue);
  }
  
  .calc2026__wrapper .form__checkbox_wrap {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    line-height: normal;
  }
  
  .calc2026__wrapper .form__checkbox_wrap input[type="checkbox"] {
    display: none;
  }
  
  .calc2026__wrapper .form__checkbox_content {
    display: inline-flex;
    gap: 12px;
    align-items: flex-start;
  }
  
  .calc2026__wrapper .form__checkbox_content:before {
    content: '';
    border-radius: 4px;
    border: 1.5px solid var(--body2_on_color);
    background-color: var(--white);
    width: 18px;
    height: 18px;
    display: inline-flex;
    flex-shrink: 0;
    box-sizing: border-box;
  }
  
  .calc2026__wrapper .form__checkbox_wrap:hover .form__checkbox_content:before {
    border-color: var(--inputs_active);
  }
  
  .calc2026__wrapper .form__checkbox_wrap input:checked + .form__checkbox_content:before {
    background: url(/themes/1c/assets/i/ds_2025/check.svg) center center no-repeat var(--button_blue);
    border-color: var(--button_blue);
  }
  
  .calc2026__wrapper .form__checkbox_wrap:hover input:checked + .form__checkbox_content:before {
    background-color: var(--button_blue_hover);
    border-color: var(--button_blue_hover);
  }
  
  .calc2026__wrapper .form__checkbox_content .form__checkbox_text {
    min-height: 18px;
    line-height: 140%;
  }
  
  .calc2026__wrapper .form__checkbox.form__error + .form__checkbox_content:before {
    border: 1px solid var(--error);
  }
  
  @media (min-width: 992px) {
    .calc2026__wrapper .form__input {
      min-width: 280px;
    }
  
    .calc2026__wrapper .form__checkbox_content:before {
      width: 24px;
      height: 24px;
      border-radius: 8px;
    }
  
    .calc2026__wrapper .form__checkbox_content .form__checkbox_text {
      min-height: 24px;
      line-height: 24px;
    }
  }
  
  /* ==== Стили калькулятора (calc2026.css) ==== */
  
  /* Отступы */
  .calc2026__wrapper .space3 {
      margin-bottom: var(--space3, 12px);
  }

/* Шапка */
.calc__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

@media (min-width: 992px) {
    .calc__header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

.calc__types {
    display: flex;
    align-items: center;
    justify-content: center;
}

.calc__type {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    padding: 0 14.5px;
    font-family: var(--font_raleway);
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    color: #2E2E3C;
    border: 1px solid #C8C8DA;
    transition: all .2s ease;
}

.calc__type:first-child {
    border-radius: 8px 0 0 8px;
}

.calc__type:last-child {
    border-radius: 0 8px 8px 0;
}

.calc__type:not(:first-child) {
    margin-left: -1px;
}

.calc__type.active {
    color: #FFFFFF;
    background: var(--button_blue, #498EF5);
    border-color: var(--button_blue, #498EF5);
    cursor: pointer;
}

/* Тело калькулятора */
.calc2026__body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 38px;
    background: var(--bg_accent_blue_lite, #ECF3FF);
    padding: 0;
}

/* Конфигурация */
.calc2026__config {
    padding-left: var(--space10_m);
    padding-top: var(--space10_m);
    padding-bottom: var(--space10_m);
    padding-right: var(--space10_m);
}

/* Секция конфигурации */
.calc__config-section {
    padding: 0;
}

/* Разделитель */
.calc__divider {
    display: block;
    width: 100%;
    height: 1px;
    background: #CFDEF5;
    margin: var(--space10_m) 0;
}

/* Список продуктов */
.calc__product-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space6_m);
}

.calc__product-item {
    display: inline-flex;
    align-items: center;
    gap: var(--space5_m);
    min-height: 48px;
    padding: var(--space2_m) var(--space3_m) var(--space2_m) var(--space6_m);
    font-family: var(--font_raleway);
    font-size: 16px;
    color: var(--titles);
    background: #E1ECFF;
    border-radius: 12px;
    cursor: pointer;
    position: relative;
}

.calc__product-item svg {
    flex-shrink: 0;
}

@media (min-width: 992px) {
    .calc__product-item {
        padding: var(--space2_d) var(--space3_d) var(--space2_d) var(--space6_d);
    }
}

/* .calc__product-name {
} */

.calc__product-add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: var(--button_red, #F03B5C);
    border-radius: 12px;
    cursor: pointer;
    transition: background .2s ease;
}

.calc__product-add:hover {
    background: var(--button_red_hover, #C60437);
}

/* Параметры аккаунта — внешняя обёртка (отступы через space10) */
/* .calc__params-account-outer {
} */

/* Новая обёртка для группы параметров аккаунта */
.calc__params-accounts-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space8, 12px);
}

/* Планшет и выше: 2 колонки */
@media (min-width: 768px) {
    .calc__params-accounts-wrapper {
        grid-template-columns: 1fr 1fr;
    }
}

/* Параметры аккаунта — внутренняя обёртка */
/* .calc__params-account-wrapper {
} */

/* Параметры аккаунта — карточка */
.calc__params-account {
    padding: var(--space6_m) var(--space6_m) 0 var(--space6_m);
    border-radius: 8px;
    background: var(--bg_white, #FFFFFF);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Слайдер для количества пользователей */
.calc__range-slider {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 2px;
    background: var(--backgrounds-element-bg-accent-red-strong, #F03B5C);
    border-radius: var(--space4_m, 12px);
    outline: none;
    cursor: pointer;
    margin: var(--space6_m) 0 0 0;
}

/* Цена за сеанс */
.calc__params-price {
    color: var(--body2, #8D8DA8);
    font-variant-numeric: lining-nums proportional-nums;
    font-family: var(--font_raleway);
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    margin-top: var(--space6_m);
    text-align: right;
}

/* Трек (фон ползунка) - WebKit */
.calc__range-slider::-webkit-slider-runnable-track {
    height: 2px;
    background: var(--backgrounds-element-bg-accent-red-strong, #F03B5C);
    border-radius: var(--space4_m, 12px);
}

/* Ползунок (thumb) - WebKit */
.calc__range-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: var(--space7_m, 32px);
    background: var(--backgrounds-element-bg-accent-red-strong, #F03B5C);
    box-shadow: 0 0 0 6px rgba(240, 59, 92, 0.25);
    cursor: pointer;
    margin-top: -7px; /* centers thumb on track */
}

/* Трек (фон ползунка) - Firefox */
.calc__range-slider::-moz-range-track {
    height: 2px;
    background: var(--backgrounds-element-bg-accent-red-strong, #F03B5C);
    border-radius: var(--space4_m, 12px);
}

/* Ползунок (thumb) - Firefox */
.calc__range-slider::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border-radius: var(--space7_m, 32px);
    background: var(--backgrounds-element-bg-accent-red-strong, #F03B5C);
    box-shadow: 0 0 0 6px rgba(240, 59, 92, 0.25);
    cursor: pointer;
    border: none;
}

/* Строка параметров (тестовый период) */
.calc__params-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.calc__params-label {
    font-family: var(--font_raleway);
    font-size: 16px;
    font-weight: 400;
    color: var(--titles);
}

/* Способы доступа */
.calc__access-options {
    display: flex;
    flex-direction: column;
    gap: var(--space6_m);
}

.calc__access-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space4_m);
}

@media (min-width: 768px) {
    .calc__access-row {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: var(--space4_d);
    }
}

.calc__access-item {
    display: flex;
    align-items: center;
    flex: 1;
    position: relative;
}

.calc__access-name {
    font-family: var(--font_raleway);
    font-size: 16px;
    font-weight: 400;
    color: var(--titles);
    margin-right: var(--space5_m);
}

/* Подсказки (хинты) */
.calc__access-hint-open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.calc__access-hint {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 2;
    box-sizing: border-box;
    padding: 12px 40px 12px 12px;
    width: 280px;
    border-radius: var(--space2_m, 8px);
    background: var(--bg_black);
    color: var(--white);
    font-family: var(--font_roboto);
    font-size: 14px;
    line-height: 140%;
}

.calc__access-hint-close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3007;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity .2s ease;
}

.calc__access-hint-close:hover {
    opacity: 1;
}

/* Правый элемент "Способы доступа" */
.calc__access-included {
    display: block;
    color: var(--button_blue);
    font-family: var(--font_raleway);
    font-weight: 700;
}

@media (min-width: 992px) {
    .calc__access-included {
        width: 142px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-shrink: 0;
    }
}

/* Широкие экраны (1200px+) */
@media (min-width: 1200px) {
    .calc2026__body {
        grid-template-columns:1fr 520px;
    }

    .calc2026__config {
        padding-left: var(--space10_d);
        padding-top: var(--space10_d);
        padding-bottom: var(--space10_d);
        padding-right: 0;
    }

    .calc__divider {
        margin: var(--space10_d) 0;
    }

    .calc__access-toggle-outer {
        width: 142px;
    }

    .calc__access-included {
        display: block;
        color: var(--button_blue);
        text-align: center;
        font-variant-numeric: lining-nums proportional-nums;
        font-family: var(--font_raleway);
        font-size: 16px;
        font-weight: 700;
        line-height: 140%;
        width: 142px;
        flex-shrink: 0;
    }
}

/* Переключатель (toggle) */
.calc__access-toggle {
    display: inline-block;
    width: 48px;
    height: 24px;
    position: relative;
}

.calc__access-toggle-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.calc__access-toggle-label {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    background: var(--body2, #8D8DA8);
    position: relative;
    cursor: pointer;
    transition: background .2s ease;
}

.calc__access-toggle-input:checked + .calc__access-toggle-label {
    background: var(--button_blue, #498EF5);
}

.calc__access-toggle-input:hover + .calc__access-toggle-label {
    background: #1E1E23;
}

.calc__access-toggle-circle {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 4px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    transition: left .2s ease;
}

.calc__access-toggle-input:checked + .calc__access-toggle-label .calc__access-toggle-circle {
    left: calc(100% - 20px);
}

.calc__access-toggle-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Обёртка для переключателя (ширина как у calc__access-included) */
.calc__access-toggle-outer {
    display: flex;
    flex-shrink:0;
}

@media (max-width: 767px) {
    .calc__access-toggle-outer {
        justify-content: flex-start;
    }
}

@media (min-width: 992px) {
    .calc__access-toggle-outer {
        width: 142px;
        justify-content: center;
        align-items: center;
    }
}

/* Результат */

.calc2026__result {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    align-self: stretch;
    background: var(--white, #FFF);
    box-shadow: 0 32px 48px 0 rgba(32, 34, 37, 0.10);
    padding: var(--space10_m);
    gap: var(--space10_m);
}

@media (min-width: 992px) {
    .calc2026__result {
        padding: var(--space10_d);
        gap: var(--space10_d);
    }
}

/* Внутренняя обёртка для содержимого результата */
.calc__result-inner {
    display: flex;
    flex-direction: column;
    gap: var(--space10_m);
    align-self: stretch;
    height: 100%;
}

@media (min-width: 992px) {
    .calc__result-inner {
        gap: var(--space10_d);
    }
}

/* Список возможностей в результате */
.calc__result-features {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space3, 12px);
}

.calc__result-features li {
    list-style: none;
    position: relative;
    padding-left: 27px;
}

.calc__result-features li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: url('/themes/1c/assets/i/blue_point.svg') no-repeat center;
    background-size: contain;
}

/* Секция выбора периода */
.calc__result-periods {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space8_m);
}

@media (min-width: 576px) {
    .calc__result-periods {
        flex-direction: row;
        align-items: center;
        gap: var(--space8_d);
    }
}

/* Контейнер для radio-кнопок периодов */
.calc__period-options {
    display: flex;
    gap: var(--space3_m);
    flex-wrap: nowrap;
}

@media (min-width: 992px) {
    .calc__period-options {
        gap: var(--space3_d);
    }
}

/* Блок с ценой */
.calc__result-price {
    display: flex;
    flex-direction: column;
    gap: var(--space4_m);
}

.calc__result-price-value {
    white-space: nowrap;
    position: relative;
    /* padding-bottom: 22px; */
}
.calc__result-price-value__sale{
    padding-bottom: 22px;
}
.calc__result-price-value .h3 {
    color: var(--body2, #8D8DA8);
}

.calc__result-price-old {
    position: absolute;
    left: 0;
    bottom: 0;
    color: var(--border_normal, #C8C8DA);
    text-decoration: line-through;
}

.calc__result-bonus {
    display: flex;
    padding: var(--space3_m) var(--space6_m) var(--space3_m) var(--space5_m);
    align-items: center;
    gap: 10px;
    border-radius: var(--space2_m);
    background: #FEECEC;
    width: fit-content;
}

@media (min-width: 992px) {
    .calc__result-bonus {
        padding: var(--space3_d) var(--space6_d) var(--space3_d) var(--space5_d);
        border-radius: var(--space2_d);
    }
}

.calc__result-price-divider {
    display: none;
    width:1px;
    height: 58px;
    background: var(--bg_neutral3, #D9D9EE);
}

@media (min-width: 576px) {
    .calc__result-price-divider {
        display: block;
    }
}

.calc__result-price-desc {
    font-family: var(--font_raleway);
    font-size: 14px;
    font-weight: 400;
    color: var(--body2, #8D8DA8);
}

@media (min-width: 576px) {
    .calc__result-price {
        flex-direction: row;
        align-items: center;
        gap: var(--space6_m);
    }
}

/* Продукт в итоговой информации */
.calc__total-product {
    display: flex;
    height: 24px;
    padding: 2px 4px 2px 8px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: var(--space4_m);
    border-radius: 6px;
    background: var(--bg_accent_blue_lite, #ECF3FF);
    font-size: 9px;
}

/* Фиксированная ширина и центрирование для значений в итоговом блоке на десктопе */
@media (min-width: 992px) {
    #calc2026-total-info .txt_medium.txt_accent_blue {
        width: 142px;
        text-align: center;
        flex-shrink: 0;
    }
}

/* .calc__total-row--label-items: мобильный — колонка, 576px+ — строка */
.calc__total-row--label-items {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space4_m);
}

/* #calc__total-products: десктоп — по правому краю */
@media (min-width: 575px) {
    #calc__total-products {
        justify-content: flex-end;
    }
}

@media (min-width: 576px) {
    .calc__total-row--label-items {
        flex-direction: row;
    }
}

/* Скрытые radio-кнопки */
.calc__period-radio {
    display: none;
}

/* Стиль label как кнопки (неактивная) */
.calc__period-label {
    display: flex;
    height: 48px;
    padding: 0 var(--space6, 16px);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex:1 0 0;
    border-radius: var(--space4_m, 8px);
    background: var(--bg_accent_blue_lite, #ECF3FF);
    color: var(--titles, #2E2E3C);
    font-family: var(--font_raleway);
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    transition: all .2s ease;
    user-select: none;
    white-space: nowrap;
    position: relative;
    max-width: 73px;
}

/* Шильдик скидки */
.calc__period-badge {
    display: flex;
    padding: 0 4px;
    height: 21px;
    align-items: center;
    border-radius: var(--space2_m, 4px);
    border: 1px solid var(--Stroke-colors-Border-Blue, #498EF5);
    background: var(--backgrounds-element-bg-white, #FFF);
    box-shadow: var(--shadow_s, 0 8px 8px 0 rgba(46, 46, 60, 0.10));
    color: var(--Text-colors-Accent-Blue, #498EF5);
    font-variant-numeric: lining-nums proportional-nums;
    font-family: var(--font_raleway);
    font-size: var(--Font-size-Small-Caption, 12px);
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    position: absolute;
    top: -10px;
    right: 7px;
}

/* Выбранный radio → активный стиль label */
.calc__period-radio:checked + .calc__period-label {
    background: var(--button_blue, #498EF5);
    color: var(--white, #FFFFFF);
}

@media (min-width: 576px) {
    .calc__period-label {
        max-width: none;
    }
}

/* Кнопка "Попробовать" - использует глобальный класс button_red (определён в теме) */

/* Итоговая информация после переключения */
.calc__result-total-info {
    display: flex;
    align-items: flex-start;
    gap: var(--space4_m);
    width: 100%;
}

/* Обёртка для итоговой информации (бордер здесь) */
.calc__result-total-wrapper {
    min-height: 0;
    display: flex;
    padding-right: 6px;
}
/* Скролл для итоговой информации на планшете и десктопе */
@media (min-width: 576px) {
    .calc__result-total-wrapper {
        max-height: 181px;
        border: 1px solid var(--bg_accent_blue_normal, #CFDEF5);
    }
    .calc__result-total-info{
        padding: var(--space6_m);
        overflow-y: auto;
        min-height: 636px;
    }

    /* Кастомный скролл для WebKit */
    .calc__result-total-info::-webkit-scrollbar {
        width: 6px;
    }

    .calc__result-total-info::-webkit-scrollbar-track {
    background: #E1ECFF;
        border: none;
    }

    .calc__result-total-info::-webkit-scrollbar-button {
        display: none;
        height: 0;
    }

    .calc__result-total-info::-webkit-scrollbar-thumb {
        border-radius: var(--space6_m, 24px);
        background: rgba(73, 142, 245, 0.50);
        border: none;
    }

    .calc__result-total-info::-webkit-scrollbar-track {
        margin: 6px 0;
    }
}
@media (min-width: 1200px) {
    .calc__result-total-wrapper {
        max-height: unset;
        flex:1 0 0;
    }
    .calc__result-total-info {
        padding: var(--space6_d);
        gap: var(--space4_d);
        min-height: unset;
    }
    .calc__result-total-info::-webkit-scrollbar-thumb {
        border-radius: var(--space6_d, 24px);
    }
}

/* Обёртка для инпутов формы */
.calc__form-inputs {
    display: flex;
    flex-direction: column;
    gap: var(--space6_m);
}

@media (min-width: 992px) {
    .calc__form-inputs {
        gap: var(--space6_d);
    }
}

 /* Флекс-колонка для формы */
.calc__form-flex {
    display: flex;
    flex-direction: column;
    gap: var(--space10_m);
    position: relative;
}

@media (min-width: 992px) {
    .calc__form-flex {
        gap: var(--space10_d);
    }
}

.calc2026__result .button {
    width: 100%;
    gap: 0;
}

/* Хинт для продуктов (при попытке удалить последний) */
.calc__product-hint {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 2;
    box-sizing: border-box;
    padding: 12px 40px 12px 12px;
    width: 280px;
    border-radius: var(--space2_m, 8px);
    background: var(--bg_black);
    color: var(--white);
    font-family: var(--font_roboto);
    font-size: 14px;
    line-height: 140%;
    margin-top: 8px;
}

.calc__product-hint-close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3007;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity .2s ease;
}

.calc__product-hint-close:hover {
    opacity: 1;
}

/* Кнопка: скрываем часть текста на мобилке */
.calc__button-text-mobile {
    display: none;
}

@media (min-width: 768px) {
    .calc__button-text-mobile {
        display: inline;
    }
}

/* Стили попапа конфигураций */

/* popup */
.popup__configs {
    max-width: 750px !important;
    background: var(--bg_white, #FFFFFF);
    padding: 30px 32px 32px;
    margin: 0px auto;
    position: relative;
    overflow: hidden;
    font-family: var(--font_raleway);
    font-size: 16px;
    line-height: 150%;
    color: var(--titles, #2E2E3C);
}

.popup__graftitle {
    font-family: var(--font_roboto);
    font-size: 20px;
    line-height: 130%;
    color: var(--titles, #2E2E3C);
    margin-top: 0;
    margin-bottom: 20px;
}

.popup__graftitle_first {
    margin-bottom: 30px;
}

/* calc */
.grm__cltitle {
    padding-top: 96px;
    margin-bottom: 32px;
}

.configs-block {
    max-height: calc(100vh - 300px);
    overflow-y: auto;
}

.configs-block .grm__cltext {
    max-width: 820px;
}

.configs-block .grm__clprod {
    height: 76px;
}

.configs-block .grm__clprod td {
    padding-top: 1px;
    padding-bottom: 1px;
    vertical-align: middle;
}

.configs-block .grm__clcontrl {
    display: flex;
    align-items: center;
    cursor: pointer;
}

.configs-block .grm__clcontrl a {
    display: flex;
    align-items: center;
    width: 100%;
}

.configs-block .grm__clcontrl,
.configs-block .grm__clcontrl * {
    text-decoration: none !important;
}

.configs-block .grm__clprice {
    color: var(--titles, #2E2E3C) !important;
    white-space: normal;
    word-wrap: break-word;
}

.configs-block .grm__clper {
    color: var(--body2, #8D8DA8);
}

.configs-block .grm__clcheckbox {
    border: 1px solid var(--body2, #8D8DA8);
    box-shadow: inset 2px 2px 8px rgba(60, 61, 77, 0.25);
    border-radius: var(--space2_m, 4px);
    width: 28px;
    height: 28px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 16px;
    min-width: 28px;
}

.configs-block .grm__clcheckbox:before {
    content: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.1864 0L4.48674 5.78485L1.56622 2.86308L0 4.42374L4.60449 9L12 1.85399L10.1864 0Z' fill='white'/%3E%3C/svg%3E");
    opacity: 0;
    margin-top: -3px;
}

.configs-block .grm__clcontrl_active .grm__clcheckbox:before {
    opacity: 1;
}

.configs-block .grm__clcontrl_active .grm__clcheckbox {
    background: var(--accent_red, #F03B5C);
    border-color: var(--accent_red, #F03B5C);
}

.configs-buttons {
    display: flex;
    flex-direction: column;
    padding-top: 32px;
    gap: 16px;
}

.configs-buttons .button {
    width: 100%;
}

@media (min-width: 576px) {
    .configs-buttons {
        flex-direction: row;
    }
    .configs-buttons .button {
        width: auto;
    }
}

@media (min-width: 992px) {
    .configs-buttons {
        gap: 32px;
    }
}

.no-items-is-checked {
    color: var(--accent_red, #F03B5C);
    width: 100%;
    margin-top: 12px;
    display: none;
}

.configs-buttons .button_ghost {
    margin-left: 30px;
    border: 0;
}

.configs-buttons .button-check {
    cursor: pointer;
}

.configs-buttons .button-check.disabled {
    background: var(--inputs, #D8D8E7) !important;
    cursor: default;
    color: #fff !important;
}

/* Скрытие на мобилке, показ на планшете+ */
.calc2026__wrapper .hidden-tablet {
    display: none;
}

/* Ответ формы внутри калькулятора (без попапа) */
.calc2026__wrapper .form__answer_nopopup {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 48px);
    height: calc(100% + 48px);
    transform: translate(-24px, -24px);
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(4px);
    padding: 48px 32px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

@media (min-width: 576px) {
    .hidden-tablet {
        display: inline;
    }
}

/* scrollbar */
.configs-block::-webkit-scrollbar-track {
    padding: 2px 0;
    background-color: var(--border_lite, #F0F0F3);
    border-radius: var(--space6_m, 10px);
}

.configs-block::-webkit-scrollbar {
    width: 10px;
}

.configs-block::-webkit-scrollbar-thumb {
    border-radius: var(--space6_m, 10px);
    background-color: var(--inputs, #D8D8E7);
}


/* last fix */
#calc2026-wrapper .form__checkbox_content .form__checkbox_text:before{
    content: none;
}
#calc2026-wrapper .form__checkbox_text {
    display: inline-block;
}
#popup--configs .button_line{
    background: transparent;
}


/* кнопка назад */
.calc2026__backbutton{
    position: absolute;
    right: 12px;
    top: 12px;
    display: flex;
    width: 32px;
    height: 32px;
    border-radius: var(--4, 12px);
    background: #E1ECFF;
    align-items: center;
    justify-content: center;
}
@media (min-width: 576px) {
    .calc2026__backbutton{
        width: 48px;
        height: 48px;
    }
}
/*доп*/
.calc__product-item:hover{
    background: var(--backgrounds-element-bg-accent-blue-normal, #CFDEF5);
}
/* Трек (фон ползунка) - WebKit */
.calc__range-slider:hover::-webkit-slider-runnable-track {
    background: var(--backgrounds-element-bg-accent-red-strong, #C60437);
}

/* Ползунок (thumb) - WebKit */
.calc__range-slider:hover::-webkit-slider-thumb {
    background: var(--backgrounds-element-bg-accent-red-strong, #C60437);
}

/* Трек (фон ползунка) - Firefox */
.calc__range-slider:hover::-moz-range-track {
    background: var(--backgrounds-element-bg-accent-red-strong, #C60437);
}

/* Ползунок (thumb) - Firefox */
.calc__range-slider:hover::-moz-range-thumb {
    background: var(--backgrounds-element-bg-accent-red-strong, #C60437);
}
.calc__period-label:hover{
    background: var(--backgrounds-element-bg-accent-blue-normal, #CFDEF5);
}
.calc__type:hover:not(.active){
    border: 1px solid var(--Stroke-colors-Border-Blue, #498EF5);
    background: var(--backgrounds-element-bg-accent-blue-lite, #ECF3FF);
}