/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* ═══════════ Формы входа и регистрации ═══════════ */
.auth-title[b-aqv9h2fqnj] {
    font-size: clamp(1.5rem, 5.5vw, 1.875rem);
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: .35rem;
}

.auth-subtitle[b-aqv9h2fqnj] {
    font-size: .9375rem;
    color: var(--bs-secondary-color);
}

.auth-perks[b-aqv9h2fqnj] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .875rem;
    margin-bottom: 1.25rem;
    font-size: .8125rem;
    color: var(--bs-secondary-color);
}

    .auth-perks span[b-aqv9h2fqnj] {
        display: inline-flex;
        align-items: center;
        gap: .3rem;
    }

    .auth-perks i[b-aqv9h2fqnj] {
        color: #059669;
    }

/* Разделитель «или» */
.auth-divider[b-aqv9h2fqnj] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-block: 1.25rem;
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

    .auth-divider[b-aqv9h2fqnj]::before,
    .auth-divider[b-aqv9h2fqnj]::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
        background-color: var(--bs-border-color);
    }

/* Переключатель «не выходить»: увеличенная зона касания */
.auth-switch[b-aqv9h2fqnj] {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding-left: 3rem;
}

    .auth-switch .form-check-input[b-aqv9h2fqnj] {
        width: 2.25rem;
        height: 1.25rem;
        margin-left: -3rem;
    }

    .auth-switch .form-check-label[b-aqv9h2fqnj] {
        font-size: .9375rem;
        cursor: pointer;
    }

/* Подсказки к паролю */
.auth-hints[b-aqv9h2fqnj] {
    list-style: none;
    padding: 0;
    margin: .5rem 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: .15rem .75rem;
    font-size: .75rem;
    color: var(--bs-secondary-color);
}

    .auth-hints li[b-aqv9h2fqnj] {
        display: inline-flex;
        align-items: center;
    }

    .auth-hints i[b-aqv9h2fqnj] {
        font-size: 1rem;
        margin-right: -.15rem;
    }

/* Внешние провайдеры: сообщение «не настроены» не должно кричать */
.auth-external[b-aqv9h2fqnj] {
    margin-top: .25rem;
}

    .auth-external[b-aqv9h2fqnj]  p {
        font-size: .8125rem;
        color: var(--bs-secondary-color);
        margin-bottom: 0;
    }

    .auth-external[b-aqv9h2fqnj]  .btn {
        min-height: 44px;
    }

    .auth-external[b-aqv9h2fqnj]  form {
        display: grid;
        gap: .5rem;
    }

/* Свёрнутая подсказка */
.auth-help[b-aqv9h2fqnj] {
    margin-top: 1.5rem;
    padding: .75rem 1rem;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    background-color: var(--bs-tertiary-bg);
    font-size: .8125rem;
}

    .auth-help summary[b-aqv9h2fqnj] {
        cursor: pointer;
        font-weight: 600;
        list-style: none;
    }

        .auth-help summary[b-aqv9h2fqnj]::-webkit-details-marker {
            display: none;
        }

    .auth-help > p[b-aqv9h2fqnj] {
        margin-top: .5rem;
        color: var(--bs-secondary-color);
    }

/* StatusMessage приходит из шаблона Identity — приводим к общему виду */
[b-aqv9h2fqnj] .alert {
    border-radius: var(--dlx-radius-sm);
}
/* /Components/Account/Pages/Manage/Email.razor.rz.scp.css */
.email-page[b-uwv8j4b2uq] {
    max-width: 54rem;
}

.email-heading[b-uwv8j4b2uq] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.email-eyebrow[b-uwv8j4b2uq] {
    margin-bottom: .4rem;
    color: var(--dlx-primary-600);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.email-lead[b-uwv8j4b2uq] {
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.email-heading-icon[b-uwv8j4b2uq],
.email-status[b-uwv8j4b2uq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.email-heading-icon[b-uwv8j4b2uq] {
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
    border-radius: .85rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.35rem;
}

.email-card[b-uwv8j4b2uq] {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.email-current[b-uwv8j4b2uq] {
    padding: 1rem 1.1rem;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    background: var(--bs-tertiary-bg);
}

.email-current--unconfirmed[b-uwv8j4b2uq] {
    border-color: rgb(245 158 11 / .35);
    background: rgb(255 251 235 / .72);
}

[data-bs-theme="dark"] .email-current--unconfirmed[b-uwv8j4b2uq] {
    background: rgb(120 53 15 / .16);
}

.email-label[b-uwv8j4b2uq] {
    margin-bottom: .35rem;
    color: var(--bs-secondary-color);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.email-address-row[b-uwv8j4b2uq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.email-address[b-uwv8j4b2uq] {
    min-width: 0;
    font-weight: 600;
}

.email-status[b-uwv8j4b2uq] {
    flex-shrink: 0;
    font-size: .8125rem;
    font-weight: 600;
}

.email-status--confirmed[b-uwv8j4b2uq] {
    color: #059669;
}

.email-status--pending[b-uwv8j4b2uq] {
    color: #b45309;
}

.email-form .form-label[b-uwv8j4b2uq] {
    font-weight: 600;
}

.email-form .form-control[b-uwv8j4b2uq] {
    min-height: 3.25rem;
}

.email-form .form-text[b-uwv8j4b2uq] {
    margin-top: .45rem;
    color: var(--bs-secondary-color);
}

.email-page .alert[b-uwv8j4b2uq] {
    border-radius: var(--dlx-radius-sm);
}

@media (max-width: 575.98px) {
    .email-heading[b-uwv8j4b2uq] {
        align-items: center;
    }

    .email-heading-icon[b-uwv8j4b2uq] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .email-address-row[b-uwv8j4b2uq] {
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }
}
/* /Components/Account/Pages/Manage/EnableAuthenticator.razor.rz.scp.css */
.enable-authenticator-page[b-a38zy3fd4n] {
    max-width: 54rem;
}

.enable-authenticator-heading[b-a38zy3fd4n] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.enable-authenticator-eyebrow[b-a38zy3fd4n] {
    margin-bottom: .4rem;
    color: var(--dlx-primary-600);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.enable-authenticator-lead[b-a38zy3fd4n] {
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.enable-authenticator-heading-icon[b-a38zy3fd4n],
.enable-authenticator-step-title[b-a38zy3fd4n]::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.enable-authenticator-heading-icon[b-a38zy3fd4n] {
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
    border-radius: .85rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.35rem;
}

.enable-authenticator-card[b-a38zy3fd4n] {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.enable-authenticator-steps[b-a38zy3fd4n] {
    margin: 0;
    padding-left: 1.6rem;
}

.enable-authenticator-steps > li[b-a38zy3fd4n] {
    padding-left: .5rem;
}

.enable-authenticator-steps > li + li[b-a38zy3fd4n] {
    margin-top: 1.75rem;
    padding-top: 1.75rem;
    border-top: 1px solid var(--bs-border-color-translucent);
}

.enable-authenticator-step-title[b-a38zy3fd4n] {
    margin-bottom: .5rem;
    font-size: 1rem;
    font-weight: 700;
}

.enable-authenticator-step-title[b-a38zy3fd4n]::marker {
    color: var(--dlx-primary);
    font-weight: 800;
}

.authenticator-qr-wrap[b-a38zy3fd4n] {
    display: flex;
    justify-content: center;
    width: fit-content;
    margin: 1.25rem auto;
    padding: .75rem;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: .85rem;
    background: #fff;
    box-shadow: var(--dlx-shadow);
}

.authenticator-qr-wrap canvas[b-a38zy3fd4n],
.authenticator-qr-wrap img[b-a38zy3fd4n] {
    display: block;
}

.authenticator-key[b-a38zy3fd4n] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .75rem 1rem;
    border: 1px dashed var(--bs-border-color);
    border-radius: var(--dlx-radius-sm);
    background: var(--bs-tertiary-bg);
}

.authenticator-key-label[b-a38zy3fd4n] {
    color: var(--bs-secondary-color);
    font-size: .8125rem;
    font-weight: 600;
}

.authenticator-key kbd[b-a38zy3fd4n] {
    color: var(--bs-body-color);
    background: transparent;
    font-size: .875rem;
    letter-spacing: .08em;
    word-break: break-all;
}

.enable-authenticator-form[b-a38zy3fd4n] {
    max-width: 28rem;
}

.enable-authenticator-page .alert[b-a38zy3fd4n] {
    border-radius: var(--dlx-radius-sm);
}

@media (max-width: 575.98px) {
    .enable-authenticator-heading[b-a38zy3fd4n] {
        align-items: center;
    }

    .enable-authenticator-heading-icon[b-a38zy3fd4n] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .authenticator-key[b-a38zy3fd4n] {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* /Components/Account/Pages/Manage/Index.razor.rz.scp.css */
.mng-card-title[b-c55mr2qi62] {
    font-size: .9375rem;
    font-weight: 600;
}

.mng-sub-title[b-c55mr2qi62] {
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--bs-secondary-color);
}

.mng-stat[b-c55mr2qi62] {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.2;
}

@media (min-width: 992px) {
    .mng-card-title[b-c55mr2qi62] {
        font-size: 1.0625rem;
    }

    .mng-stat[b-c55mr2qi62] {
        font-size: 1.75rem;
    }
}

/* ─── Шапка тарифа ─── */
.mng-plan-head[b-c55mr2qi62] {
    overflow: hidden;
    background: linear-gradient(135deg, #312e81 0%, #4f46e5 60%, #0891b2 100%);
    color: #fff;
    border-bottom: 0;
}

.mng-plan-eyebrow[b-c55mr2qi62] {
    font-size: .6875rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    opacity: .7;
}

.mng-plan-name[b-c55mr2qi62] {
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

/* ─── Список возможностей ─── */
.mng-features[b-c55mr2qi62] {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .mng-features li[b-c55mr2qi62] {
        display: flex;
        gap: .55rem;
        padding: .3rem 0;
        font-size: .875rem;
        line-height: 1.4;
    }

    .mng-features i[b-c55mr2qi62] {
        color: #059669;
        margin-top: .18rem;
        flex-shrink: 0;
    }

.mng-feature-off[b-c55mr2qi62] {
    color: var(--bs-secondary-color);
}

    .mng-feature-off i[b-c55mr2qi62] {
        color: var(--bs-border-color);
    }

/* ─── Строки действий ─── */
.mng-action[b-c55mr2qi62] {
    display: flex;
    align-items: center;
    gap: .875rem;
    min-height: 64px;
    padding-block: .75rem;
    text-align: start;
    border: 0;
    border-top: 1px solid var(--bs-border-color-translucent);
    background-color: transparent;
    width: 100%;
}

.list-group-flush > .mng-action:first-child[b-c55mr2qi62] {
    border-top: 0;
}

.mng-action-icon[b-c55mr2qi62] {
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .7rem;
    background-color: var(--bs-tertiary-bg);
    font-size: 1.05rem;
}

/* ─── Модальное окно удаления ─── */
.mng-modal[b-c55mr2qi62] {
    background-color: rgb(0 0 0 / .5);
    overflow-y: auto;
    overscroll-behavior: contain;
    z-index: 1055;
}

.mng-modal-title[b-c55mr2qi62] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0;
}

.mng-danger-list[b-c55mr2qi62] {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .mng-danger-list li[b-c55mr2qi62] {
        display: flex;
        gap: .55rem;
        padding: .25rem 0;
        font-size: .875rem;
    }

    .mng-danger-list i[b-c55mr2qi62] {
        color: #dc2626;
        margin-top: .2rem;
        flex-shrink: 0;
    }

.mng-confirm[b-c55mr2qi62] {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: .25rem;
}

    .mng-confirm .form-check-input[b-c55mr2qi62] {
        width: 1.25rem;
        height: 1.25rem;
        margin-top: 0;
    }

    .mng-confirm .form-check-label[b-c55mr2qi62] {
        cursor: pointer;
        font-size: .9375rem;
    }

@media (max-width: 575.98px) {
    .mng-modal .modal-footer[b-c55mr2qi62] {
        padding-bottom: calc(.75rem + env(safe-area-inset-bottom));
    }
}
/* /Components/Account/Pages/Manage/Passkeys.razor.rz.scp.css */
.passkeys-page[b-zbyyjtepyw] {
    max-width: 54rem;
}

.passkeys-heading[b-zbyyjtepyw] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.passkeys-eyebrow[b-zbyyjtepyw] {
    margin-bottom: .4rem;
    color: var(--dlx-primary-600);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.passkeys-lead[b-zbyyjtepyw] {
    max-width: 40rem;
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.passkeys-heading-icon[b-zbyyjtepyw],
.passkeys-feature-icon[b-zbyyjtepyw],
.passkey-device-icon[b-zbyyjtepyw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .85rem;
}

.passkeys-heading-icon[b-zbyyjtepyw] {
    width: 3rem;
    height: 3rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.35rem;
}

.passkeys-add-card[b-zbyyjtepyw],
.passkeys-list-card[b-zbyyjtepyw] {
    overflow: hidden;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.passkeys-add-card[b-zbyyjtepyw] {
    background: linear-gradient(135deg, rgb(238 242 255 / .72), rgb(236 254 255 / .72));
}

[data-bs-theme="dark"] .passkeys-add-card[b-zbyyjtepyw] {
    background: linear-gradient(135deg, rgb(49 46 129 / .24), rgb(8 145 178 / .18));
}

.passkeys-feature-icon[b-zbyyjtepyw] {
    width: 2.75rem;
    height: 2.75rem;
    background: rgb(255 255 255 / .8);
    color: var(--dlx-primary);
    font-size: 1.25rem;
}

[data-bs-theme="dark"] .passkeys-feature-icon[b-zbyyjtepyw] {
    background: rgb(255 255 255 / .1);
}

.passkeys-section-title[b-zbyyjtepyw] {
    font-size: 1rem;
    font-weight: 700;
}

.passkeys-list-card .card-header[b-zbyyjtepyw] {
    padding: 1rem 1.25rem;
    border-bottom-color: var(--bs-border-color-translucent);
    background: transparent;
}

.passkeys-table td[b-zbyyjtepyw] {
    padding: 1rem 1.25rem;
    border-color: var(--bs-border-color-translucent);
}

.passkeys-table tr:last-child td[b-zbyyjtepyw] {
    border-bottom: 0;
}

.passkey-device-icon[b-zbyyjtepyw] {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--bs-tertiary-bg);
    color: var(--dlx-primary);
}

.passkey-actions[b-zbyyjtepyw] {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .5rem;
}

.passkeys-empty[b-zbyyjtepyw] {
    padding: 2.5rem 1.25rem;
    text-align: center;
}

.passkeys-empty .account-icon[b-zbyyjtepyw] {
    margin-bottom: .75rem;
}

.passkeys-page .alert[b-zbyyjtepyw] {
    border-radius: var(--dlx-radius-sm);
}

@media (max-width: 575.98px) {
    .passkeys-heading[b-zbyyjtepyw] {
        align-items: center;
    }

    .passkeys-heading-icon[b-zbyyjtepyw] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .passkeys-table td[b-zbyyjtepyw] {
        padding: .875rem .75rem;
    }

    .passkey-actions[b-zbyyjtepyw] {
        gap: .35rem;
    }
}
/* /Components/Account/Pages/Manage/PersonalData.razor.rz.scp.css */
.personal-data-page[b-5vld0ktu9l] {
    max-width: 54rem;
}

.personal-data-heading[b-5vld0ktu9l] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.personal-data-eyebrow[b-5vld0ktu9l] {
    margin-bottom: .4rem;
    color: var(--dlx-primary-600);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.personal-data-lead[b-5vld0ktu9l] {
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.personal-data-heading-icon[b-5vld0ktu9l],
.personal-data-icon[b-5vld0ktu9l],
.personal-data-action-icon[b-5vld0ktu9l] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .85rem;
}

.personal-data-heading-icon[b-5vld0ktu9l] {
    width: 3rem;
    height: 3rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.35rem;
}

.personal-data-info[b-5vld0ktu9l],
.personal-data-action-card[b-5vld0ktu9l] {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.personal-data-info[b-5vld0ktu9l] {
    background: linear-gradient(135deg, rgb(238 242 255 / .72), rgb(236 254 255 / .72));
}

[data-bs-theme="dark"] .personal-data-info[b-5vld0ktu9l] {
    background: linear-gradient(135deg, rgb(49 46 129 / .24), rgb(8 145 178 / .18));
}

.personal-data-icon[b-5vld0ktu9l] {
    width: 2.75rem;
    height: 2.75rem;
    background: rgb(255 255 255 / .8);
    color: var(--dlx-primary);
    font-size: 1.25rem;
}

[data-bs-theme="dark"] .personal-data-icon[b-5vld0ktu9l] {
    background: rgb(255 255 255 / .1);
}

.personal-data-section-title[b-5vld0ktu9l] {
    font-size: 1rem;
    font-weight: 700;
}

.personal-data-action-card[b-5vld0ktu9l] {
    transition: transform .15s ease, box-shadow .15s ease;
}

.personal-data-action-card:hover[b-5vld0ktu9l] {
    transform: translateY(-2px);
    box-shadow: var(--dlx-shadow-lg);
}

.personal-data-action-icon[b-5vld0ktu9l] {
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid currentColor;
    background: var(--bs-tertiary-bg);
    font-size: 1.15rem;
}

.personal-data-danger[b-5vld0ktu9l] {
    border-color: rgb(220 38 38 / .25);
}

@media (max-width: 575.98px) {
    .personal-data-heading[b-5vld0ktu9l] {
        align-items: center;
    }

    .personal-data-heading-icon[b-5vld0ktu9l] {
        width: 2.5rem;
        height: 2.5rem;
    }
}
/* /Components/Account/Pages/Manage/ResetAuthenticator.razor.rz.scp.css */
.reset-authenticator-page[b-4froapm3n2] {
    max-width: 54rem;
}

.reset-authenticator-heading[b-4froapm3n2] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.reset-authenticator-eyebrow[b-4froapm3n2] {
    margin-bottom: .4rem;
    color: #b45309;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.reset-authenticator-lead[b-4froapm3n2] {
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.reset-authenticator-heading-icon[b-4froapm3n2],
.reset-authenticator-warning-icon[b-4froapm3n2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .85rem;
}

.reset-authenticator-heading-icon[b-4froapm3n2] {
    width: 3rem;
    height: 3rem;
    background: rgb(255 247 237 / .9);
    color: #b45309;
    font-size: 1.35rem;
}

.reset-authenticator-card[b-4froapm3n2] {
    border: 1px solid rgb(245 158 11 / .3);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.reset-authenticator-warning[b-4froapm3n2] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.1rem;
    border-radius: var(--dlx-radius-sm);
    background: rgb(255 251 235 / .8);
    color: #713f12;
}

[data-bs-theme="dark"] .reset-authenticator-heading-icon[b-4froapm3n2] {
    background: rgb(120 53 15 / .2);
}

[data-bs-theme="dark"] .reset-authenticator-warning[b-4froapm3n2] {
    background: rgb(120 53 15 / .18);
    color: #fde68a;
}

.reset-authenticator-warning-icon[b-4froapm3n2] {
    width: 2.5rem;
    height: 2.5rem;
    background: rgb(245 158 11 / .16);
    color: #b45309;
}

.reset-authenticator-section-title[b-4froapm3n2] {
    margin-bottom: .5rem;
    font-size: 1rem;
    font-weight: 700;
}

.reset-authenticator-form[b-4froapm3n2] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.5rem;
}

@media (max-width: 575.98px) {
    .reset-authenticator-heading[b-4froapm3n2] {
        align-items: center;
    }

    .reset-authenticator-heading-icon[b-4froapm3n2] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .reset-authenticator-form .btn[b-4froapm3n2] {
        width: 100%;
    }
}
/* /Components/Account/Pages/Manage/TwoFactorAuthentication.razor.rz.scp.css */
.two-factor-page[b-0fbh0ztttk] {
    max-width: 54rem;
}

.two-factor-heading[b-0fbh0ztttk] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.two-factor-eyebrow[b-0fbh0ztttk] {
    margin-bottom: .4rem;
    color: var(--dlx-primary-600);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.two-factor-lead[b-0fbh0ztttk] {
    color: var(--bs-secondary-color);
    font-size: .9375rem;
}

.two-factor-heading-icon[b-0fbh0ztttk],
.two-factor-status-icon[b-0fbh0ztttk],
.two-factor-feature-icon[b-0fbh0ztttk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .85rem;
}

.two-factor-heading-icon[b-0fbh0ztttk] {
    width: 3rem;
    height: 3rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.35rem;
}

.two-factor-status-card[b-0fbh0ztttk],
.two-factor-authenticator-card[b-0fbh0ztttk] {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    box-shadow: var(--dlx-shadow);
}

.two-factor-status-card[b-0fbh0ztttk] {
    background: linear-gradient(135deg, rgb(236 253 245 / .8), rgb(240 253 250 / .8));
}

[data-bs-theme="dark"] .two-factor-status-card[b-0fbh0ztttk] {
    background: linear-gradient(135deg, rgb(6 78 59 / .25), rgb(17 94 89 / .22));
}

.two-factor-status-icon[b-0fbh0ztttk] {
    width: 2.75rem;
    height: 2.75rem;
    background: rgb(255 255 255 / .75);
    color: #059669;
    font-size: 1.25rem;
}

.two-factor-feature-icon[b-0fbh0ztttk] {
    width: 2.75rem;
    height: 2.75rem;
    background: var(--dlx-gradient-soft);
    color: var(--dlx-primary);
    font-size: 1.2rem;
}

.two-factor-section-title[b-0fbh0ztttk] {
    font-size: 1rem;
    font-weight: 700;
}

.two-factor-alert[b-0fbh0ztttk] {
    border-radius: var(--dlx-radius-sm);
}

.two-factor-actions[b-0fbh0ztttk] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

@media (max-width: 575.98px) {
    .two-factor-heading[b-0fbh0ztttk] {
        align-items: center;
    }

    .two-factor-heading-icon[b-0fbh0ztttk] {
        width: 2.5rem;
        height: 2.5rem;
    }
}
/* /Components/Account/Pages/Register.razor.rz.scp.css */
/* ═══════════ Формы входа и регистрации ═══════════ */
.auth-title[b-hqjvib6ymw] {
    font-size: clamp(1.5rem, 5.5vw, 1.875rem);
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: .35rem;
}

.auth-subtitle[b-hqjvib6ymw] {
    font-size: .9375rem;
    color: var(--bs-secondary-color);
}

.auth-perks[b-hqjvib6ymw] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .875rem;
    margin-bottom: 1.25rem;
    font-size: .8125rem;
    color: var(--bs-secondary-color);
}

    .auth-perks span[b-hqjvib6ymw] {
        display: inline-flex;
        align-items: center;
        gap: .3rem;
    }

    .auth-perks i[b-hqjvib6ymw] {
        color: #059669;
    }

/* Разделитель «или» */
.auth-divider[b-hqjvib6ymw] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-block: 1.25rem;
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

    .auth-divider[b-hqjvib6ymw]::before,
    .auth-divider[b-hqjvib6ymw]::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
        background-color: var(--bs-border-color);
    }

/* Переключатель «не выходить»: увеличенная зона касания */
.auth-switch[b-hqjvib6ymw] {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding-left: 3rem;
}

    .auth-switch .form-check-input[b-hqjvib6ymw] {
        width: 2.25rem;
        height: 1.25rem;
        margin-left: -3rem;
    }

    .auth-switch .form-check-label[b-hqjvib6ymw] {
        font-size: .9375rem;
        cursor: pointer;
    }

/* Подсказки к паролю */
.auth-hints[b-hqjvib6ymw] {
    list-style: none;
    padding: 0;
    margin: .5rem 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: .15rem .75rem;
    font-size: .75rem;
    color: var(--bs-secondary-color);
}

    .auth-hints li[b-hqjvib6ymw] {
        display: inline-flex;
        align-items: center;
    }

    .auth-hints i[b-hqjvib6ymw] {
        font-size: 1rem;
        margin-right: -.15rem;
    }

/* Внешние провайдеры: сообщение «не настроены» не должно кричать */
.auth-external[b-hqjvib6ymw] {
    margin-top: .25rem;
}

    .auth-external[b-hqjvib6ymw]  p {
        font-size: .8125rem;
        color: var(--bs-secondary-color);
        margin-bottom: 0;
    }

    .auth-external[b-hqjvib6ymw]  .btn {
        min-height: 44px;
    }

    .auth-external[b-hqjvib6ymw]  form {
        display: grid;
        gap: .5rem;
    }

/* Свёрнутая подсказка */
.auth-help[b-hqjvib6ymw] {
    margin-top: 1.5rem;
    padding: .75rem 1rem;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    background-color: var(--bs-tertiary-bg);
    font-size: .8125rem;
}

    .auth-help summary[b-hqjvib6ymw] {
        cursor: pointer;
        font-weight: 600;
        list-style: none;
    }

        .auth-help summary[b-hqjvib6ymw]::-webkit-details-marker {
            display: none;
        }

    .auth-help > p[b-hqjvib6ymw] {
        margin-top: .5rem;
        color: var(--bs-secondary-color);
    }

/* StatusMessage приходит из шаблона Identity — приводим к общему виду */
[b-hqjvib6ymw] .alert {
    border-radius: var(--dlx-radius-sm);
}
/* /Components/Account/Shared/AuthLayout.razor.rz.scp.css */
.auth-shell[b-7rhuy6eip4] {
    min-height: 100dvh;
    display: grid;
    grid-template-columns: 1fr;
    background-color: var(--bs-body-bg);
}

@media (min-width: 992px) {
    .auth-shell[b-7rhuy6eip4] {
        grid-template-columns: 1.05fr 1fr;
    }
}

/* ─── Брендовая панель ─── */
.auth-aside[b-7rhuy6eip4] {
    display: none;
}

@media (min-width: 992px) {
    .auth-aside[b-7rhuy6eip4] {
        position: relative;
        display: block;
        overflow: hidden;
        background: linear-gradient(155deg, #312e81 0%, #4f46e5 52%, #0891b2 100%);
        color: #fff;
    }
}

.auth-aside-inner[b-7rhuy6eip4] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    height: 100%;
    padding: 2.5rem;
}

@media (min-width: 1400px) {
    .auth-aside-inner[b-7rhuy6eip4] {
        padding: 3.5rem;
    }
}

.auth-logo[b-7rhuy6eip4] {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .7rem;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 6px 16px -6px rgb(79 70 229 / .7);
}

.auth-logo-sm[b-7rhuy6eip4] {
    width: 1.85rem;
    height: 1.85rem;
    border-radius: .55rem;
    font-size: .95rem;
}

.auth-aside-title[b-7rhuy6eip4] {
    font-size: clamp(1.5rem, 2.2vw, 2rem);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: .75rem;
}

.auth-aside-text[b-7rhuy6eip4] {
    font-size: 1rem;
    line-height: 1.6;
    color: rgb(255 255 255 / .78);
    max-width: 26rem;
    margin-bottom: 1.5rem;
}

.auth-benefits[b-7rhuy6eip4] {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .auth-benefits li[b-7rhuy6eip4] {
        display: flex;
        gap: .625rem;
        padding: .35rem 0;
        font-size: .9375rem;
        color: rgb(255 255 255 / .88);
    }

    .auth-benefits i[b-7rhuy6eip4] {
        color: #6ee7b7;
        margin-top: .2rem;
        flex-shrink: 0;
    }

.auth-aside-note[b-7rhuy6eip4] {
    font-size: .8125rem;
    color: rgb(255 255 255 / .6);
}

/* ─── Правая часть ─── */
.auth-main[b-7rhuy6eip4] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.auth-topbar[b-7rhuy6eip4] {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 3.5rem;
    padding-inline: 1rem;
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

@media (min-width: 992px) {
    .auth-topbar[b-7rhuy6eip4] {
        border-bottom: 0;
        justify-content: flex-end;
        padding-inline: 2rem;
    }
}

.auth-body[b-7rhuy6eip4] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.5rem 1rem 2.5rem;
}

@media (min-width: 576px) {
    .auth-body[b-7rhuy6eip4] {
        padding-inline: 2rem;
    }
}

.auth-card[b-7rhuy6eip4] {
    width: 100%;
    max-width: 27rem;
    margin-inline: auto;
}

.auth-legal[b-7rhuy6eip4] {
    width: 100%;
    max-width: 27rem;
    margin: 1.5rem auto 0;
    font-size: .75rem;
    line-height: 1.5;
    text-align: center;
    color: var(--bs-secondary-color);
}
/* /Components/Account/Shared/ManageLayout.razor.rz.scp.css */
.mng-shell[b-w0g28iezfq] {
    max-width: 62rem;
}

.mng-header[b-w0g28iezfq] {
    display: flex;
    align-items: center;
    gap: .875rem;
    margin-bottom: 1rem;
}

.mng-avatar[b-w0g28iezfq] {
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 800;
    font-size: 1.15rem;
}

.mng-title[b-w0g28iezfq] {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
}

.mng-email[b-w0g28iezfq] {
    font-size: .8125rem;
    color: var(--bs-secondary-color);
}

@media (min-width: 992px) {
    .mng-avatar[b-w0g28iezfq] {
        width: 3.25rem;
        height: 3.25rem;
        font-size: 1.35rem;
    }

    .mng-title[b-w0g28iezfq] {
        font-size: 1.625rem;
    }

    .mng-email[b-w0g28iezfq] {
        font-size: .9375rem;
    }
}

.mng-body[b-w0g28iezfq] {
    margin-top: 1.25rem;
}
/* /Components/Account/Shared/ManageNavMenu.razor.rz.scp.css */
.mng-tabs[b-1v6doiurud] {
    position: relative; /* обязательно, если внутрь попадут .btn-check */
    display: flex;
    gap: .375rem;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    padding-bottom: .5rem;
    border-bottom: 1px solid var(--bs-border-color-translucent);
    scrollbar-width: none;
    -ms-overflow-style: none;
}

    .mng-tabs[b-1v6doiurud]::-webkit-scrollbar {
        display: none;
    }

.mng-tab[b-1v6doiurud] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    flex: 0 0 auto;
    min-height: 42px;
    padding-inline: .875rem;
    border-radius: 2rem;
    white-space: nowrap;
    font-size: .875rem;
    font-weight: 500;
    color: var(--bs-secondary-color);
    text-decoration: none;
    background-color: var(--bs-tertiary-bg);
    transition: background-color .15s ease, color .15s ease;
}

    .mng-tab:hover[b-1v6doiurud] {
        background-color: var(--bs-secondary-bg);
        color: var(--bs-body-color);
    }

    .mng-tab.active[b-1v6doiurud] {
        background: var(--dlx-gradient);
        color: #fff;
        box-shadow: 0 6px 16px -8px rgb(79 70 229 / .8);
    }

@media (max-width: 575.98px) {
    .mng-tab span[b-1v6doiurud] {
        font-size: .8125rem;
    }
}
/* /Components/Layout/LandingLayout.razor.rz.scp.css */
.lnd-shell[b-dwonnwbz7f] {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

    .lnd-shell > main[b-dwonnwbz7f] {
        flex: 1 1 auto;
    }

/* ─── Шапка ─── */
.lnd-header[b-dwonnwbz7f] {
    position: sticky;
    top: 0;
    z-index: 1035;
    background-color: rgb(255 255 255 / .82);
    backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

.lnd-logo[b-dwonnwbz7f] {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .7rem;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 800;
    letter-spacing: -.02em;
    box-shadow: 0 6px 16px -6px rgb(79 70 229 / .7);
}

.lnd-menu[b-dwonnwbz7f] {
    display: none;
    gap: .25rem;
}

@media (min-width: 992px) {
    .lnd-menu[b-dwonnwbz7f] {
        display: flex;
    }
}

.lnd-menu-link[b-dwonnwbz7f] {
    padding: .5rem .75rem;
    border-radius: .6rem;
    color: var(--bs-secondary-color);
    text-decoration: none;
    font-size: .9375rem;
    font-weight: 500;
    transition: background-color .15s ease, color .15s ease;
}

    .lnd-menu-link:hover[b-dwonnwbz7f] {
        background-color: var(--bs-tertiary-bg);
        color: var(--bs-body-color);
    }

/* ─── Мобильная панель: чекбокс-состояние ─── */
.lnd-icon-close[b-dwonnwbz7f] {
    display: none;
}

.lnd-nav-state:checked ~ .lnd-header .lnd-icon-open[b-dwonnwbz7f] {
    display: none;
}

.lnd-nav-state:checked ~ .lnd-header .lnd-icon-close[b-dwonnwbz7f] {
    display: inline-block;
}

.lnd-drawer[b-dwonnwbz7f] {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    border-top: 1px solid transparent;
    transition: grid-template-rows .22s ease, border-color .22s ease;
    background-color: var(--bs-body-bg);
}

    .lnd-drawer > *[b-dwonnwbz7f] {
        min-height: 0;
        overflow: hidden;
    }

.lnd-nav-state:checked ~ .lnd-header .lnd-drawer[b-dwonnwbz7f] {
    grid-template-rows: 1fr;
    border-top-color: var(--bs-border-color-translucent);
}

.lnd-drawer-link[b-dwonnwbz7f] {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 0 .75rem;
    border-radius: .7rem;
    color: var(--bs-body-color);
    text-decoration: none;
    font-weight: 500;
}

    .lnd-drawer-link:active[b-dwonnwbz7f] {
        background-color: var(--bs-tertiary-bg);
    }

@media (prefers-reduced-motion: reduce) {
    .lnd-drawer[b-dwonnwbz7f] {
        transition: none;
    }
}

/* ─── Подвал ─── */
.lnd-footer[b-dwonnwbz7f] {
    background-color: var(--dlx-ink);
    color: #fff;
}

.lnd-footer-title[b-dwonnwbz7f] {
    font-size: .8125rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: rgb(255 255 255 / .55);
    margin-bottom: .75rem;
}

.lnd-footer-link[b-dwonnwbz7f] {
    display: inline-block;
    padding: .3rem 0;
    color: rgb(255 255 255 / .75);
    text-decoration: none;
}

    .lnd-footer-link:hover[b-dwonnwbz7f] {
        color: #fff;
        text-decoration: underline;
    }

.lnd-legal[b-dwonnwbz7f] {
    font-size: .8125rem;
    line-height: 1.5;
}

.lnd-social[b-dwonnwbz7f] {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .6rem;
    background-color: rgb(255 255 255 / .08);
    color: #fff;
    text-decoration: none;
}

    .lnd-social:hover[b-dwonnwbz7f] {
        background-color: rgb(255 255 255 / .16);
        color: #fff;
    }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-0qfnobvh6g] {
    min-height: 100dvh;
    display: flex;
}

/* ─── Сайдбар ─── */
.app-sidebar[b-0qfnobvh6g] {
    position: fixed;
    inset-block: 0;
    inset-inline-start: 0;
    z-index: 1045;
    width: min(84vw, 20rem);
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, var(--dlx-ink) 0%, #1b1338 70%, #241243 100%);
    transform: translateX(-100%);
    transition: transform .24s ease;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: env(safe-area-inset-bottom);
}

.app-nav-state:checked ~ .app-shell .app-sidebar[b-0qfnobvh6g] {
    transform: translateX(0);
}

/* Затемнение под drawer'ом */
.app-scrim[b-0qfnobvh6g] {
    position: fixed;
    inset: 0;
    z-index: 1040;
    margin: 0;
    background-color: rgb(2 6 23 / .5);
    opacity: 0;
    pointer-events: none;
    transition: opacity .24s ease;
}

.app-nav-state:checked ~ .app-shell .app-scrim[b-0qfnobvh6g] {
    opacity: 1;
    pointer-events: auto;
}

/* ─── Контент ─── */
.app-main[b-0qfnobvh6g] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.app-topbar[b-0qfnobvh6g] {
    position: sticky;
    top: 0;
    z-index: 1035;
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 3.5rem;
    padding-inline: .75rem;
    background-color: rgb(255 255 255 / .88);
    backdrop-filter: saturate(180%) blur(12px);
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

.app-content[b-0qfnobvh6g] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 1rem .75rem 2rem;
    background-color: var(--bs-body-bg);
}

.app-logo[b-0qfnobvh6g] {
    width: 1.85rem;
    height: 1.85rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .55rem;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 800;
    font-size: .95rem;
}

/* ─── От lg: постоянный сайдбар ─── */
@media (min-width: 992px) {
    .app-sidebar[b-0qfnobvh6g] {
        position: sticky;
        top: 0;
        height: 100dvh;
        width: 17rem;
        transform: none;
        flex-shrink: 0;
    }

    .app-scrim[b-0qfnobvh6g] {
        display: none;
    }

    .app-topbar[b-0qfnobvh6g] {
        min-height: 4rem;
        padding-inline: 1.5rem;
    }

    .app-content[b-0qfnobvh6g] {
        padding: 1.5rem 1.5rem 3rem;
    }
}

@media (min-width: 1400px) {
    .app-sidebar[b-0qfnobvh6g] {
        width: 18rem;
    }

    .app-content[b-0qfnobvh6g] {
        padding-inline: 2.5rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .app-sidebar[b-0qfnobvh6g], .app-scrim[b-0qfnobvh6g] {
        transition: none;
    }
}

/* ─── Панель ошибки ─── */
#blazor-error-ui[b-0qfnobvh6g] {
    color-scheme: light only;
    display: none;
    position: fixed;
    inset-inline: 0;
    bottom: 0;
    z-index: 1080;
    padding: .75rem 1.25rem;
    background: #fff8dd;
    border-top: 1px solid #f0d97a;
    box-shadow: 0 -6px 20px rgb(0 0 0 / .12);
}

    #blazor-error-ui .dismiss[b-0qfnobvh6g] {
        cursor: pointer;
        position: absolute;
        right: .9rem;
        top: .6rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* Прежние SVG-иконки в data:URL удалены — используем шрифт Bootstrap Icons */
.nav-root[b-4svb0a9bkb] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: .75rem;
    color: #fff;
}

.nav-brand[b-4svb0a9bkb] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .5rem .5rem .75rem;
    margin-bottom: .5rem;
    border-bottom: 1px solid rgb(255 255 255 / .1);
}

.nav-logo[b-4svb0a9bkb] {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: .7rem;
    background: var(--dlx-gradient);
    font-weight: 800;
}

.nav-brand-sub[b-4svb0a9bkb] {
    font-size: .6875rem;
    color: rgb(255 255 255 / .5);
    letter-spacing: .02em;
}

.nav-close[b-4svb0a9bkb] {
    margin-left: auto;
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .6rem;
    color: rgb(255 255 255 / .7);
    cursor: pointer;
}

    .nav-close:hover[b-4svb0a9bkb] {
        background-color: rgb(255 255 255 / .1);
        color: #fff;
    }

.nav-body[b-4svb0a9bkb] {
    flex: 1 1 auto;
}

.nav-group[b-4svb0a9bkb] {
    margin: 1rem .75rem .35rem;
    font-size: .6875rem;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgb(255 255 255 / .38);
}

.nav-body > .nav-group:first-child[b-4svb0a9bkb] {
    margin-top: .25rem;
}

/* ::deep — NavLink рендерит <a> вне области действия scoped-стилей */
[b-4svb0a9bkb] .nav-item-link {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 44px;
    padding: 0 .75rem;
    margin-bottom: .125rem;
    border-radius: .7rem;
    color: rgb(255 255 255 / .78);
    text-decoration: none;
    font-size: .9375rem;
    font-weight: 500;
    transition: background-color .15s ease, color .15s ease;
}

    [b-4svb0a9bkb] .nav-item-link i {
        font-size: 1.05rem;
        flex-shrink: 0;
    }

    [b-4svb0a9bkb] .nav-item-link:hover {
        background-color: rgb(255 255 255 / .1);
        color: #fff;
    }

    [b-4svb0a9bkb] .nav-item-link.active {
        background: rgb(255 255 255 / .14);
        color: #fff;
        box-shadow: inset 3px 0 0 var(--dlx-accent);
    }

.nav-footer[b-4svb0a9bkb] {
    padding-top: .75rem;
    border-top: 1px solid rgb(255 255 255 / .1);
}

.nav-user[b-4svb0a9bkb] {
    display: flex;
    align-items: center;
    gap: .625rem;
    min-height: 52px;
    padding: .5rem .625rem;
    border-radius: .8rem;
    background-color: rgb(255 255 255 / .06);
    color: rgb(255 255 255 / .7);
    text-decoration: none;
}

    .nav-user:hover[b-4svb0a9bkb] {
        background-color: rgb(255 255 255 / .12);
        color: #fff;
    }

.nav-avatar[b-4svb0a9bkb] {
    width: 2.25rem;
    height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 700;
}

.nav-user-name[b-4svb0a9bkb] {
    font-size: .875rem;
    font-weight: 600;
}

.nav-user-hint[b-4svb0a9bkb] {
    font-size: .6875rem;
    color: rgb(255 255 255 / .5);
}

.nav-promo[b-4svb0a9bkb] {
    padding: 1rem;
    border-radius: .9rem;
    background: linear-gradient(140deg, rgb(79 70 229 / .35), rgb(6 182 212 / .25));
    border: 1px solid rgb(255 255 255 / .12);
}

.nav-promo-title[b-4svb0a9bkb] {
    font-size: .9375rem;
    font-weight: 600;
    margin-bottom: .25rem;
}

.nav-promo-text[b-4svb0a9bkb] {
    font-size: .8125rem;
    color: rgb(255 255 255 / .65);
    margin-bottom: .75rem;
}
/* /Components/Layout/NavNotice.razor.rz.scp.css */
.nav-notice[b-ach47ek43d] {
    margin-bottom: .75rem;
    padding: .75rem .9rem;
    border-radius: .9rem;
    background: rgb(255 255 255 / .06);
    border: 1px solid rgb(255 255 255 / .14);
    color: rgb(255 255 255 / .75);
    font-size: .8rem;
    line-height: 1.45;
}

.nav-notice-item[b-ach47ek43d] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    margin: 0;
}

    .nav-notice-item + .nav-notice-item[b-ach47ek43d] {
        margin-top: .5rem;
    }

.nav-notice-icon[b-ach47ek43d] {
    flex-shrink: 0;
    margin-top: .1rem;
    color: var(--dlx-accent);
}

.nav-notice-icon-warn[b-ach47ek43d] {
    color: #fbbf24;
}

.nav-notice-link[b-ach47ek43d] {
    margin-left: .35rem;
    color: #fff;
    text-decoration: underline;
}

    .nav-notice-link:hover[b-ach47ek43d] {
        color: #fff;
    }
/* /Components/Layout/NotFoundLayout.razor.rz.scp.css */
.nfl-shell[b-5rnrordpa8] {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(60rem 30rem at 85% -10%, rgba(99, 102, 241, .12), transparent 60%),
        radial-gradient(50rem 26rem at 0% 110%, rgba(139, 92, 246, .10), transparent 60%),
        var(--bs-body-bg);
}

.nfl-header[b-5rnrordpa8] {
    padding: 1.25rem 1.5rem 0;
}

.nfl-main[b-5rnrordpa8] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.nfl-footer[b-5rnrordpa8] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    padding: 1rem 1.5rem 1.5rem;
    font-size: .8125rem;
    color: var(--bs-secondary-color);
}

.nfl-footer-link[b-5rnrordpa8] {
    color: var(--bs-secondary-color);
    text-decoration: none;
}

.nfl-footer-link:hover[b-5rnrordpa8] {
    color: var(--bs-primary);
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-os7t6wfkmv],
.components-reconnect-repeated-attempt-visible[b-os7t6wfkmv],
.components-reconnect-failed-visible[b-os7t6wfkmv],
.components-pause-visible[b-os7t6wfkmv],
.components-resume-failed-visible[b-os7t6wfkmv],
.components-rejoining-animation[b-os7t6wfkmv] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-retrying[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-failed[b-os7t6wfkmv],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-os7t6wfkmv] {
    display: block;
}


#components-reconnect-modal[b-os7t6wfkmv] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-os7t6wfkmv 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-os7t6wfkmv 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-os7t6wfkmv 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-os7t6wfkmv]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-os7t6wfkmv 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-os7t6wfkmv {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-os7t6wfkmv {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-os7t6wfkmv {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-os7t6wfkmv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-os7t6wfkmv] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-os7t6wfkmv] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-os7t6wfkmv] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-os7t6wfkmv] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-os7t6wfkmv] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-os7t6wfkmv] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-os7t6wfkmv 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-os7t6wfkmv] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-os7t6wfkmv {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* ═══════════ Секции и типографика ═══════════ */
.section[b-q47u88ojkb] {
    padding-block: 3rem;
}

.section-tight[b-q47u88ojkb] {
    padding-block: 1.75rem;
}

@media (min-width: 992px) {
    .section[b-q47u88ojkb] {
        padding-block: 5.5rem;
    }

    .section-tight[b-q47u88ojkb] {
        padding-block: 2.5rem;
    }
}

.eyebrow[b-q47u88ojkb] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--dlx-primary);
    margin-bottom: .5rem;
}

.section-title[b-q47u88ojkb] {
    font-size: clamp(1.5rem, 4.6vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin-bottom: .75rem;
}

.section-lead[b-q47u88ojkb] {
    font-size: clamp(.9375rem, 2.4vw, 1.125rem);
    line-height: 1.65;
    color: var(--bs-secondary-color);
    max-width: 46rem;
    margin-bottom: 0;
}

/* ═══════════ Hero ═══════════ */
.hero[b-q47u88ojkb] {
    position: relative;
    overflow: hidden;
    padding-top: 2.5rem;
    padding-bottom: 3rem;
    background: radial-gradient(120% 80% at 50% 0%, #eef2ff 0%, rgb(238 242 255 / 0) 60%), linear-gradient(180deg, #fbfcff 0%, var(--bs-body-bg) 100%);
}

@media (min-width: 992px) {
    .hero[b-q47u88ojkb] {
        padding-top: 4.5rem;
        padding-bottom: 5rem;
    }
}

.hero-glow[b-q47u88ojkb] {
    position: absolute;
    top: -18rem;
    left: 50%;
    width: 52rem;
    height: 34rem;
    transform: translateX(-50%);
    background: radial-gradient(closest-side, rgb(99 102 241 / .28), transparent);
    filter: blur(28px);
    pointer-events: none;
}

.hero-badge[b-q47u88ojkb] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .4rem .9rem;
    border-radius: 2rem;
    background-color: #fff;
    border: 1px solid var(--bs-primary-border-subtle);
    box-shadow: 0 4px 14px -8px rgb(79 70 229 / .5);
    font-size: .8125rem;
    font-weight: 600;
    color: var(--dlx-primary-700);
}

.hero-dot[b-q47u88ojkb] {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background-color: #22c55e;
    box-shadow: 0 0 0 .2rem rgb(34 197 94 / .22);
}

.hero-title[b-q47u88ojkb] {
    font-size: clamp(1.85rem, 7.4vw, 4rem);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.08;
    margin-bottom: 0;
}

.hero-lead[b-q47u88ojkb] {
    max-width: 44rem;
    font-size: clamp(1rem, 2.7vw, 1.25rem);
    line-height: 1.6;
    color: var(--bs-secondary-color);
    margin-bottom: 0;
}

.hero-cta[b-q47u88ojkb] {
    box-shadow: 0 16px 34px -16px rgb(79 70 229 / .75);
}

.hero-trust[b-q47u88ojkb] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .35rem 1.25rem;
    font-size: .8125rem;
    color: var(--bs-secondary-color);
}

    .hero-trust li[b-q47u88ojkb] {
        display: inline-flex;
        align-items: center;
        gap: .35rem;
    }

    .hero-trust i[b-q47u88ojkb] {
        color: #22c55e;
    }

.hero-shot[b-q47u88ojkb] {
    position: relative;
}

.hero-phone[b-q47u88ojkb] {
    position: absolute;
    right: -1.5rem;
    bottom: -2.5rem;
    width: 12rem;
    filter: drop-shadow(0 26px 40px rgb(15 23 42 / .3));
}

/* ═══════════ Универсальная рамка изображения ═══════════ */
.media-frame[b-q47u88ojkb] {
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: var(--dlx-radius);
    background: var(--dlx-gradient-soft);
    border: 1px solid var(--bs-border-color-translucent);
    box-shadow: var(--dlx-shadow);
}

    .media-frame img[b-q47u88ojkb] {
        grid-area: 1 / 1;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Подсказка видна, только пока картинки нет (img лежит выше по слою) */
    .media-frame .media-hint[b-q47u88ojkb] {
        grid-area: 1 / 1;
        text-align: center;
        font-size: .8125rem;
        color: var(--bs-secondary-color);
        padding: 1rem;
    }

.media-frame-wide[b-q47u88ojkb] {
    aspect-ratio: 16 / 10;
    box-shadow: var(--dlx-shadow-lg);
}

.media-frame-16x10[b-q47u88ojkb] {
    aspect-ratio: 16 / 10;
}

.media-frame-4x3[b-q47u88ojkb] {
    aspect-ratio: 4 / 3;
}

.media-frame-phone[b-q47u88ojkb] {
    aspect-ratio: 9 / 19;
    border-radius: 1.75rem;
    border-width: 6px;
    border-color: #0f172a;
}

.media-frame-flush[b-q47u88ojkb] {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    aspect-ratio: 16 / 8;
    margin-top: auto;
}

@media (min-width: 992px) {
    .media-frame-wide[b-q47u88ojkb] {
        aspect-ratio: 16 / 9;
    }
}

/* ═══════════ Метрики ═══════════ */
.metric[b-q47u88ojkb] {
    font-size: clamp(1.5rem, 5vw, 2.25rem);
    font-weight: 800;
    letter-spacing: -.02em;
    color: var(--dlx-primary-700);
    margin-bottom: .25rem;
    font-variant-numeric: tabular-nums;
}

.metric-note[b-q47u88ojkb] {
    font-size: .8125rem;
    line-height: 1.4;
    color: var(--bs-secondary-color);
    margin-bottom: 0;
}

/* ═══════════ Боли ═══════════ */
.pain[b-q47u88ojkb] {
    display: flex;
    gap: .875rem;
    padding: 1rem;
    border-radius: var(--dlx-radius-sm);
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color-translucent);
}

.pain-icon[b-q47u88ojkb] {
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .7rem;
    background-color: #fef2f2;
    color: #dc2626;
    font-size: 1.1rem;
}

.pain-title[b-q47u88ojkb] {
    font-weight: 600;
    margin-bottom: .15rem;
}

.pain-text[b-q47u88ojkb] {
    font-size: .875rem;
    line-height: 1.55;
    color: var(--bs-secondary-color);
}

/* ═══════════ Bento ═══════════ */
.bento[b-q47u88ojkb] {
    display: grid;
    gap: .75rem;
    grid-template-columns: 1fr;
}

@media (min-width: 768px) {
    .bento[b-q47u88ojkb] {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .bento-card-hero[b-q47u88ojkb] {
        grid-column: span 2;
    }

    .bento-card-wide[b-q47u88ojkb] {
        grid-column: span 2;
    }
}

@media (min-width: 992px) {
    .bento[b-q47u88ojkb] {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.25rem;
    }

    .bento-card-hero[b-q47u88ojkb] {
        grid-column: span 2;
        grid-row: span 2;
    }

    .bento-card-wide[b-q47u88ojkb] {
        grid-column: span 2;
    }
}

.bento-card[b-q47u88ojkb] {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    border-radius: var(--dlx-radius);
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color-translucent);
    box-shadow: 0 2px 10px -6px rgb(15 23 42 / .12);
    transition: transform .18s ease, box-shadow .18s ease;
}

@media (hover: hover) and (pointer: fine) {
    .bento-card:hover[b-q47u88ojkb] {
        transform: translateY(-3px);
        box-shadow: var(--dlx-shadow);
    }
}

.bento-card-hero[b-q47u88ojkb] {
    padding: 0;
    overflow: hidden;
}

    .bento-card-hero .bento-body[b-q47u88ojkb] {
        padding: 1.75rem 1.75rem 1.25rem;
    }

.bento-icon[b-q47u88ojkb] {
    width: 2.75rem;
    height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .8rem;
    font-size: 1.35rem;
    margin-bottom: 1rem;
}

.bento-icon-primary[b-q47u88ojkb] {
    background-color: #eef2ff;
    color: #4338ca;
}

.bento-icon-success[b-q47u88ojkb] {
    background-color: #ecfdf5;
    color: #059669;
}

.bento-icon-warning[b-q47u88ojkb] {
    background-color: #fffbeb;
    color: #d97706;
}

.bento-icon-info[b-q47u88ojkb] {
    background-color: #ecfeff;
    color: #0891b2;
}

.bento-icon-danger[b-q47u88ojkb] {
    background-color: #fef2f2;
    color: #dc2626;
}

.bento-icon-dark[b-q47u88ojkb] {
    background-color: #f1f5f9;
    color: #334155;
}

.bento-title[b-q47u88ojkb] {
    font-size: 1.0625rem;
    font-weight: 700;
    margin-bottom: .5rem;
}

@media (min-width: 992px) {
    .bento-card-hero .bento-title[b-q47u88ojkb] {
        font-size: 1.375rem;
    }
}

.bento-text[b-q47u88ojkb] {
    font-size: .9375rem;
    line-height: 1.6;
    color: var(--bs-secondary-color);
    margin-bottom: 0;
}

.bento-list[b-q47u88ojkb] {
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
    font-size: .875rem;
}

    .bento-list li[b-q47u88ojkb] {
        display: flex;
        gap: .5rem;
        padding: .2rem 0;
        color: var(--bs-secondary-color);
    }

    .bento-list i[b-q47u88ojkb] {
        color: #059669;
    }

.bento-link[b-q47u88ojkb] {
    margin-top: 1rem;
    font-size: .9375rem;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

    .bento-link:hover i[b-q47u88ojkb] {
        transform: translateX(3px);
    }

    .bento-link i[b-q47u88ojkb] {
        transition: transform .15s ease;
    }

/* ═══════════ Шаги ═══════════ */
.steps[b-q47u88ojkb] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 1.25rem;
}

@media (min-width: 768px) {
    .steps[b-q47u88ojkb] {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.5rem;
    }
}

.step[b-q47u88ojkb] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.step-head[b-q47u88ojkb] {
    display: flex;
    gap: .875rem;
}

.step-num[b-q47u88ojkb] {
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--dlx-gradient);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 8px 18px -8px rgb(79 70 229 / .7);
}

.step-title[b-q47u88ojkb] {
    font-size: 1.0625rem;
    font-weight: 700;
    margin-bottom: .25rem;
}

.step-text[b-q47u88ojkb] {
    font-size: .9375rem;
    line-height: 1.6;
    color: var(--bs-secondary-color);
    margin-bottom: 0;
}

/* ═══════════ Чек-листы ═══════════ */
.check-list[b-q47u88ojkb] {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .check-list li[b-q47u88ojkb] {
        display: flex;
        gap: .625rem;
        padding: .35rem 0;
        font-size: .9375rem;
        color: var(--bs-body-color);
    }

    .check-list i[b-q47u88ojkb] {
        color: #059669;
        margin-top: .2rem;
        flex-shrink: 0;
    }

/* ═══════════ Сравнение ═══════════ */
.cmp-table th[b-q47u88ojkb], .cmp-table td[b-q47u88ojkb] {
    padding: .85rem 1rem;
}

.cmp-table thead th[b-q47u88ojkb] {
    background-color: var(--bs-tertiary-bg);
    vertical-align: top;
}

.cmp-highlight[b-q47u88ojkb] {
    background-color: rgb(79 70 229 / .06);
}

.cmp-table thead .cmp-highlight[b-q47u88ojkb] {
    background: var(--dlx-gradient);
    color: #fff;
}

.cmp-yes[b-q47u88ojkb] {
    color: #059669;
    font-size: 1.15rem;
}

.cmp-part[b-q47u88ojkb] {
    color: #d97706;
    font-size: 1.15rem;
}

.cmp-no[b-q47u88ojkb] {
    color: #cbd5e1;
    font-size: 1.15rem;
}

.cmp-mini[b-q47u88ojkb] {
    font-size: .75rem;
    line-height: 1.3;
}

/* ═══════════ Отзывы ═══════════ */
.reviews[b-q47u88ojkb] {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 85%;
    gap: .75rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: .75rem;
    scrollbar-width: none;
}

    .reviews[b-q47u88ojkb]::-webkit-scrollbar {
        display: none;
    }

.review[b-q47u88ojkb] {
    scroll-snap-align: center;
}

@media (min-width: 992px) {
    .reviews[b-q47u88ojkb] {
        grid-auto-flow: row;
        grid-template-columns: repeat(3, 1fr);
        grid-auto-columns: auto;
        gap: 1.25rem;
        overflow: visible;
    }
}

.review[b-q47u88ojkb] {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 1.5rem;
    border-radius: var(--dlx-radius);
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color-translucent);
    box-shadow: 0 2px 10px -6px rgb(15 23 42 / .12);
}

.review-stars[b-q47u88ojkb] {
    color: #f59e0b;
    font-size: .8125rem;
    letter-spacing: .1em;
    margin-bottom: .75rem;
}

.review-text[b-q47u88ojkb] {
    flex: 1 1 auto;
    margin: 0 0 1.25rem;
    font-size: .9375rem;
    line-height: 1.65;
    color: var(--bs-body-color);
}

.review-author[b-q47u88ojkb] {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.review-avatar[b-q47u88ojkb] {
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    border-radius: 50%;
    object-fit: cover;
    background-color: var(--bs-tertiary-bg);
}

/* ═══════════ Тарифы: стили карточек перенесены в Shared/TariffPlanCards.razor.css ═══════════ */

/* ═══════════ FAQ ═══════════ */
.faq[b-q47u88ojkb] {
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--dlx-radius-sm);
    background-color: var(--bs-body-bg);
    margin-bottom: .625rem;
    overflow: hidden;
}

.faq-q[b-q47u88ojkb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 56px;
    padding: .875rem 1.125rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}

    .faq-q[b-q47u88ojkb]::-webkit-details-marker {
        display: none;
    }

    .faq-q:hover[b-q47u88ojkb] {
        background-color: var(--bs-tertiary-bg);
    }

.faq-icon[b-q47u88ojkb] {
    flex-shrink: 0;
    color: var(--dlx-primary);
    transition: transform .18s ease;
}

.faq[open] .faq-icon[b-q47u88ojkb] {
    transform: rotate(45deg);
}

.faq-a[b-q47u88ojkb] {
    padding: 0 1.125rem 1.125rem;
    font-size: .9375rem;
    line-height: 1.65;
    color: var(--bs-secondary-color);
}

/* ═══════════ Финальный CTA ═══════════ */
.cta[b-q47u88ojkb] {
    position: relative;
    overflow: hidden;
    border-radius: 1.75rem;
    background: linear-gradient(135deg, #312e81 0%, #4f46e5 48%, #0891b2 100%);
    color: #fff;
    box-shadow: var(--dlx-shadow-lg);
}

.cta-glow[b-q47u88ojkb] {
    position: absolute;
    top: -8rem;
    right: -6rem;
    width: 28rem;
    height: 28rem;
    background: radial-gradient(closest-side, rgb(255 255 255 / .28), transparent);
    pointer-events: none;
}

.cta-title[b-q47u88ojkb] {
    font-size: clamp(1.4rem, 5vw, 2.4rem);
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: .75rem;
}

.cta-lead[b-q47u88ojkb] {
    max-width: 34rem;
    font-size: clamp(.9375rem, 2.4vw, 1.125rem);
    color: rgb(255 255 255 / .85);
    margin-bottom: 0;
}

.cta-note[b-q47u88ojkb] {
    font-size: .8125rem;
    color: rgb(255 255 255 / .7);
}

/* ═══════════ Появление при скролле (только там, где поддерживается) ═══════════ */
@supports (animation-timeline: view()) {
    @media (prefers-reduced-motion: no-preference) {
        .bento-card[b-q47u88ojkb], .step[b-q47u88ojkb], .review[b-q47u88ojkb], .pain[b-q47u88ojkb], .media-frame-4x3[b-q47u88ojkb], .media-frame-16x10[b-q47u88ojkb] {
            animation: rise-b-q47u88ojkb linear both;
            animation-timeline: view();
            animation-range: entry 5% cover 26%;
        }

        @keyframes rise-b-q47u88ojkb {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: none;
            }
        }
    }
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
.nf-card[b-8iy6znaxdr] {
    max-width: 34rem;
    width: 100%;
    text-align: center;
    padding: 2.5rem 2rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 1.5rem;
    box-shadow: 0 1.5rem 3rem rgba(49, 46, 129, .10);
}

.nf-illustration[b-8iy6znaxdr] {
    width: 100%;
    max-width: 20rem;
    height: auto;
    margin-bottom: .5rem;
}

.nf-code[b-8iy6znaxdr] {
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1;
    margin: 0;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.nf-title[b-8iy6znaxdr] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: .5rem 0 .75rem;
}

.nf-text[b-8iy6znaxdr] {
    color: var(--bs-secondary-color);
    margin-bottom: 1.5rem;
}

.nf-links[b-8iy6znaxdr] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
}
/* /Components/Pages/Projects/BusinessPlan.razor.rz.scp.css */
/* ─── Заголовки: Bootstrap не имеет responsive .fs-*, добавляем сами ─── */
.bp-title[b-cd6iat55t6] {
    font-size: 1rem;
    line-height: 1.35;
}

.bp-eyebrow[b-cd6iat55t6] {
    font-size: .75rem;
}

@media (min-width: 768px) {
    .bp-title[b-cd6iat55t6] {
        font-size: 1.125rem;
    }
}

/* ─── Круглая иконочная кнопка в мобильном заголовке ─── */
.bp-icon-btn[b-cd6iat55t6] {
    width: 2.5rem;
    height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* ─── Обрезка длинного имени проекта в крошках ─── */
.bp-crumb[b-cd6iat55t6] {
    max-width: 40vw;
}

@media (min-width: 992px) {
    .bp-crumb[b-cd6iat55t6] {
        max-width: 28rem;
    }
}

.bp-badge-scenario[b-cd6iat55t6] {
    max-width: 45vw;
}

/* ─── Комфортные зоны касания (Apple HIG / Material: 44–48px) ─── */
.bp-touch[b-cd6iat55t6] {
    min-height: 44px;
}

/* Переключатели разделов: увеличенная область нажатия на всю строку */
.bp-switch[b-cd6iat55t6] {
    display: flex;
    align-items: flex-start;
    gap: .25rem;
    min-height: 44px;
    padding: .5rem .5rem .5rem 3rem;
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: var(--bs-border-radius);
    background-color: var(--bs-body-bg);
}

    .bp-switch .form-check-input[b-cd6iat55t6] {
        margin-left: -2.5rem;
        width: 2.25rem;
        height: 1.25rem;
        flex-shrink: 0;
    }

    .bp-switch .form-check-label[b-cd6iat55t6] {
        cursor: pointer;
        line-height: 1.3;
    }

/* ─── Карточки стиля на базе btn-check: текст должен переноситься ─── */
.bp-style[b-cd6iat55t6] {
    white-space: normal;
    text-align: start;
}

.bp-style-hint[b-cd6iat55t6] {
    line-height: 1.25;
}

@media (max-width: 575.98px) {
    /* На телефоне подсказка короче не нужна — просто компактнее */
    .bp-style[b-cd6iat55t6] {
        padding-block: .75rem !important;
    }
}

/* ─── Значения метрик: моноширинные цифры, чтобы не «прыгали» ─── */
.bp-metric[b-cd6iat55t6] {
    font-size: 1.0625rem;
    line-height: 1.3;
    font-variant-numeric: tabular-nums;
}

@media (min-width: 992px) {
    .bp-metric[b-cd6iat55t6] {
        font-size: 1.25rem;
    }
}

/* ─── Шаги генерации ─── */
.bp-step-icon[b-cd6iat55t6] {
    width: 1.25rem;
    text-align: center;
}

/* ─── Sticky-панель действий (только < lg) ─── */
.bp-actionbar[b-cd6iat55t6] {
    position: fixed;
    inset-inline: 0;
    bottom: 0;
    z-index: 1030; /* ниже .modal (1055) */
    padding-bottom: env(safe-area-inset-bottom);
    background-color: var(--bs-body-bg);
}

.bp-actionbar-spacer[b-cd6iat55t6] {
    height: calc(4.25rem + env(safe-area-inset-bottom));
}

/* ─── Модалка предпросмотра ─── */
.bp-modal[b-cd6iat55t6] {
    background-color: rgba(0, 0, 0, .5);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.bp-preview-body[b-cd6iat55t6] {
    height: 75vh;
}

/* В fullscreen-режиме (<lg) высоту задаёт flex-контейнер модалки */
@media (max-width: 991.98px) {
    .bp-preview-body[b-cd6iat55t6] {
        height: auto;
        flex: 1 1 auto;
        min-height: 12rem;
    }
}

/* ─── iOS: date-input и предотвращение зума при фокусе (<16px) ─── */
.bp-date[b-cd6iat55t6] {
    min-height: 44px;
}

@media (max-width: 767.98px) {
    .form-control[b-cd6iat55t6],
    .form-select[b-cd6iat55t6],
    textarea.form-control[b-cd6iat55t6] {
        font-size: 1rem; /* >= 16px, иначе Safari зумит страницу */
    }
}
/* /Components/Pages/Projects/Create.razor.rz.scp.css */
.crt-h1[b-1udrxszeuc] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.25;
}

.crt-h2[b-1udrxszeuc] {
    font-size: 1rem;
    font-weight: 600;
}

.crt-note[b-1udrxszeuc] {
    font-size: .75rem;
    line-height: 1.2;
}

.crt-step[b-1udrxszeuc] {
    width: 1.5rem;
    height: 1.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

@media (min-width: 992px) {
    .crt-h1[b-1udrxszeuc] {
        font-size: 1.75rem;
    }

    .crt-h2[b-1udrxszeuc] {
        font-size: 1.125rem;
    }
}

/* Текст в кнопках-карточках должен переноситься */
.crt-mode[b-1udrxszeuc], .crt-template[b-1udrxszeuc] {
    white-space: normal;
}

/* Убираем «залипший» hover на тач-устройствах */
@media (hover: none) {
    .crt-template:hover[b-1udrxszeuc] {
        background-color: transparent;
        color: var(--bs-body-color);
    }
}
/* /Components/Pages/Projects/Details.razor.rz.scp.css */
/* Адаптивная типографика — в Bootstrap нет responsive .fs-* */
.prj-h1[b-fkzzlrwiig] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.25;
}

.prj-h2[b-fkzzlrwiig] {
    font-size: 1.125rem;
    font-weight: 600;
}

.prj-kpi[b-fkzzlrwiig] {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

@media (min-width: 992px) {
    .prj-h1[b-fkzzlrwiig] {
        font-size: 1.75rem;
    }

    .prj-kpi[b-fkzzlrwiig] {
        font-size: 1.5rem;
    }
}

/* Зоны касания 44px */
.prj-touch[b-fkzzlrwiig] {
    min-height: 44px;
}

.prj-icon-btn[b-fkzzlrwiig] {
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Вкладки: скролл без видимой полосы */
.prj-tabs[b-fkzzlrwiig] {
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x proximity;
}

    .prj-tabs[b-fkzzlrwiig]::-webkit-scrollbar {
        display: none;
    }

    .prj-tabs .nav-link[b-fkzzlrwiig] {
        scroll-snap-align: start;
        min-height: 44px;
    }

/* iOS не зумит страницу при фокусе, если шрифт >= 16px */
@media (max-width: 767.98px) {
    .form-select[b-fkzzlrwiig], .form-control[b-fkzzlrwiig] {
        font-size: 1rem;
    }
}
/* /Components/Pages/Projects/Index.razor.rz.scp.css */
/* Bootstrap не содержит утилиты min-width:0, а она нужна для text-truncate во flex */
.min-w-0[b-vttegqfac9] {
    min-width: 0;
}

/* ─── Адаптивная типографика (в Bootstrap нет responsive .fs-*) ─── */
.prj-h1[b-vttegqfac9] {
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.25;
}

.prj-h2[b-vttegqfac9] {
    font-size: 1.125rem;
    font-weight: 600;
}

.prj-card-title[b-vttegqfac9] {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.prj-stat[b-vttegqfac9] {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.2;
}

@media (min-width: 768px) {
    .prj-h1[b-vttegqfac9] {
        font-size: 1.75rem;
    }

    .prj-h2[b-vttegqfac9] {
        font-size: 1.375rem;
    }

    .prj-card-title[b-vttegqfac9] {
        font-size: 1.0625rem;
    }

    .prj-stat[b-vttegqfac9] {
        font-size: 1.75rem;
    }
}

/* Цифры не «прыгают» при обновлении */
.prj-nums[b-vttegqfac9] {
    font-variant-numeric: tabular-nums;
}

/* ─── Зоны касания 44px (Apple HIG) ─── */
.prj-touch[b-vttegqfac9] {
    min-height: 44px;
}

.prj-icon-btn[b-vttegqfac9] {
    width: 2.75rem;
    height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* ─── Чипы статусов: горизонтальный скролл строго внутри контейнера ─── */
.prj-chips[b-vttegqfac9] {
    /* ГЛАВНОЕ: делаем скроллер containing block'ом для абсолютных .btn-check,
       иначе их переполнение уходит в документ и страница едет по горизонтали */
    position: relative;
    max-width: 100%;
    overflow-y: hidden; /* не даём появиться вертикальной полосе */
    overscroll-behavior-x: contain; /* прокрутка чипов не тянет за собой страницу */
    -webkit-overflow-scrolling: touch;
    /* вертикальный запас под focus-ring (.25rem), т.к. overflow-y: hidden */
    padding-block: .25rem .375rem;
    /* прячем полосу прокрутки */
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* никаких margin-inline: отрицательные внешние отступы прибавляются
       к 100% ширины и сами создают переполнение */
}

    .prj-chips[b-vttegqfac9]::-webkit-scrollbar {
        display: none;
    }

    /* Пришпиливаем скрытые радиокнопки к началу скроллера:
   так они не влияют на overflow ни страницы, ни самого скроллера.
   Селектор `.btn-check:checked + .btn` в Bootstrap работает по DOM,
   а не по раскладке, поэтому подсветка активного чипа не ломается. */
    .prj-chips .btn-check[b-vttegqfac9] {
        top: 0;
        left: 0;
    }

.prj-chip[b-vttegqfac9] {
    min-height: 38px;
    white-space: nowrap;
}

/* ─── Карточка проекта ─── */
.prj-card[b-vttegqfac9] {
    transition: transform .15s ease, box-shadow .15s ease;
}

/* Hover-эффект только для устройств с курсором */
@media (hover: hover) and (pointer: fine) {
    .prj-card:hover[b-vttegqfac9] {
        transform: translateY(-2px);
        box-shadow: var(--bs-box-shadow) !important;
    }
}

/* Описание — ровно 2 строки */
.prj-desc[b-vttegqfac9] {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}

/* Метаданные-чипы */
.prj-meta[b-vttegqfac9] {
    display: inline-flex;
    align-items: center;
    padding: .125rem .5rem;
    border-radius: var(--bs-border-radius-pill);
    background-color: var(--bs-tertiary-bg);
    white-space: nowrap;
}

/* ─── FAB ─── */
.prj-fab[b-vttegqfac9] {
    position: fixed;
    right: 1rem;
    bottom: calc(1rem + env(safe-area-inset-bottom));
    z-index: 1030; /* ниже .modal (1055) */
    width: 3.5rem;
    height: 3.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.prj-fab-spacer[b-vttegqfac9] {
    height: calc(4.5rem + env(safe-area-inset-bottom));
}

/* ─── Toast: на телефоне снизу по центру, на десктопе — снизу справа ─── */
.prj-toast[b-vttegqfac9] {
    left: 0;
    right: 0;
    bottom: env(safe-area-inset-bottom);
    z-index: 1090;
    display: flex;
    justify-content: center;
}

@media (min-width: 992px) {
    .prj-toast[b-vttegqfac9] {
        left: auto;
        justify-content: flex-end;
    }
}

/* iOS не зумит страницу при фокусе, если размер шрифта >= 16px */
@media (max-width: 767.98px) {
    .form-control[b-vttegqfac9],
    .form-select[b-vttegqfac9] {
        font-size: 1rem;
    }
}
/* /Components/Pages/Projects/Modals/ScenarioModal.razor.rz.scp.css */
.sm-modal[b-6ytvfywwyi] {
    background-color: rgba(0, 0, 0, .5);
    overflow-y: auto;
    overscroll-behavior: contain;
    z-index: 1055;
}

.sm-title[b-6ytvfywwyi] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0;
}

.sm-touch[b-6ytvfywwyi] {
    min-height: 44px;
}

/* В fullscreen-режиме футер прижат к низу с учётом safe-area */
@media (max-width: 575.98px) {
    .sm-modal .modal-footer[b-6ytvfywwyi] {
        padding-bottom: calc(.75rem + env(safe-area-inset-bottom));
    }
}
/* /Components/Pages/Projects/ProjectMenuModal.razor.rz.scp.css */
.min-w-0[b-dnkiwbvy0j] {
    min-width: 0;
}

.pmm-modal[b-dnkiwbvy0j] {
    background-color: rgba(0, 0, 0, .5);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.pmm-title[b-dnkiwbvy0j] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: .25rem;
}

.pmm-touch[b-dnkiwbvy0j] {
    min-height: 44px;
}

/* Пункт меню: иконка + двухстрочный текст, комфортная высота для касания */
.pmm-item[b-dnkiwbvy0j] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    min-height: 56px;
    padding-block: .75rem;
    text-align: start;
    line-height: 1.3;
}

.pmm-icon[b-dnkiwbvy0j] {
    flex-shrink: 0;
    width: 1.25rem;
    margin-top: .15rem;
    text-align: center;
}

/* ─── Bottom sheet на телефонах ─── */
@media (max-width: 575.98px) {
    .pmm-sheet[b-dnkiwbvy0j] {
        position: fixed;
        inset-inline: 0;
        bottom: 0;
        max-width: none;
        width: 100%;
        margin: 0;
        /* прижимаем к низу, ограничивая высоту */
        max-height: 92dvh;
        display: flex;
        align-items: flex-end;
    }

        .pmm-sheet .modal-content[b-dnkiwbvy0j] {
            width: 100%;
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
            border-top-left-radius: 1rem;
            border-top-right-radius: 1rem;
            border-bottom: 0;
            padding-bottom: env(safe-area-inset-bottom);
            animation: pmm-slide-up-b-dnkiwbvy0j .2s ease-out;
        }

            /* «Ручка» листа */
            .pmm-sheet .modal-content[b-dnkiwbvy0j]::before {
                content: "";
                display: block;
                width: 2.5rem;
                height: .25rem;
                margin: .5rem auto 0;
                border-radius: var(--bs-border-radius-pill);
                background-color: var(--bs-border-color);
            }

        .pmm-sheet .modal-footer > .btn[b-dnkiwbvy0j] {
            width: 100%;
        }
}

@keyframes pmm-slide-up-b-dnkiwbvy0j {
    from {
        transform: translateY(100%);
    }

    to {
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .pmm-sheet .modal-content[b-dnkiwbvy0j] {
        animation: none;
    }
}
/* /Components/Pages/Projects/Tabs/BudgetItemsTab.razor.rz.scp.css */
.bit-group-title[b-71tl6c66bg] {
    font-size: .9375rem;
    font-weight: 600;
}

@media (min-width: 992px) {
    .bit-group-title[b-71tl6c66bg] {
        font-size: 1rem;
    }
}

.bit-touch[b-71tl6c66bg] {
    min-height: 40px;
}

@media (max-width: 991.98px) {
    .bit-touch[b-71tl6c66bg] {
        min-height: 44px;
    }
}

/* Горизонтальный скролл кнопок без видимой полосы */
.bit-scroller[b-71tl6c66bg] {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

    .bit-scroller[b-71tl6c66bg]::-webkit-scrollbar {
        display: none;
    }
/* /Components/Pages/Projects/Tabs/CashFlowTab.razor.rz.scp.css */
.cft-title[b-w1x8ta2paw] {
    font-size: 1rem;
    font-weight: 600;
}

.cft-nums[b-w1x8ta2paw] {
    font-variant-numeric: tabular-nums;
}

.cft-touch[b-w1x8ta2paw] {
    min-height: 40px;
}

@media (min-width: 992px) {
    .cft-title[b-w1x8ta2paw] {
        font-size: 1.125rem;
    }
}

/* Высота canvas: Chart.js настроен с maintainAspectRatio: false */
.cft-chart[b-w1x8ta2paw] {
    position: relative;
    height: 240px;
}

@media (min-width: 768px) {
    .cft-chart[b-w1x8ta2paw] {
        height: 300px;
    }
}

@media (min-width: 1200px) {
    .cft-chart[b-w1x8ta2paw] {
        height: 360px;
    }
}

/* Прокрутка с залипающей шапкой и первым столбцом */
.cft-scroll[b-w1x8ta2paw] {
    max-height: 65vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.cft-table thead th[b-w1x8ta2paw] {
    position: sticky;
    top: 0;
    z-index: 2;
}

.cft-table th:first-child[b-w1x8ta2paw],
.cft-table td:first-child[b-w1x8ta2paw] {
    position: sticky;
    left: 0;
    z-index: 1;
    background-color: var(--bs-body-bg);
    box-shadow: 1px 0 0 var(--bs-border-color);
}

.cft-table thead th:first-child[b-w1x8ta2paw],
.cft-table tfoot th:first-child[b-w1x8ta2paw] {
    z-index: 3;
    background-color: var(--bs-tertiary-bg);
}

.cft-table tfoot th[b-w1x8ta2paw],
.cft-table tfoot td[b-w1x8ta2paw] {
    position: sticky;
    bottom: 0;
    z-index: 2;
    background-color: var(--bs-tertiary-bg);
}

/* Строка «Старт» сохраняет подсветку и в залипающем столбце */
.cft-table tr.table-warning td:first-child[b-w1x8ta2paw],
.cft-table tr.table-warning th:first-child[b-w1x8ta2paw] {
    background-color: var(--bs-warning-bg-subtle);
}
/* /Components/Pages/Projects/Tabs/MetricsTab.razor.rz.scp.css */
.mtab-title[b-sw6bqdilgk] {
    font-size: 1rem;
    font-weight: 600;
}

.mtab-card-title[b-sw6bqdilgk] {
    font-size: .9375rem;
    font-weight: 600;
}

.mtab-metric-value[b-sw6bqdilgk] {
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.mtab-value[b-sw6bqdilgk] {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.25;
    font-variant-numeric: tabular-nums;
}

.mtab-note[b-sw6bqdilgk] {
    font-size: .75rem;
    line-height: 1.2;
}

.mtab-metric-icon[b-sw6bqdilgk] {
    width: 44px;
    height: 44px;
}

@media (min-width: 992px) {
    .mtab-title[b-sw6bqdilgk] {
        font-size: 1.125rem;
    }

    .mtab-card-title[b-sw6bqdilgk] {
        font-size: 1rem;
    }

    .mtab-metric-value[b-sw6bqdilgk] {
        font-size: 1.5rem;
    }

    .mtab-value[b-sw6bqdilgk] {
        font-size: 1.375rem;
    }

    .mtab-metric-icon[b-sw6bqdilgk] {
        width: 48px;
        height: 48px;
    }
}

/* Высота canvas: Chart.js с maintainAspectRatio: false */
.mtab-chart[b-sw6bqdilgk] {
    position: relative;
    height: 220px;
}

@media (min-width: 992px) {
    .mtab-chart[b-sw6bqdilgk] {
        height: 280px;
    }
}
/* /Components/Pages/Projects/Tabs/RevenueDriversTab.razor.rz.scp.css */
.rdt-title[b-py2zk0w7mi] {
    font-size: 1rem;
    font-weight: 600;
}

.rdt-card-title[b-py2zk0w7mi] {
    font-size: .9375rem;
    font-weight: 600;
}

.rdt-stat[b-py2zk0w7mi] {
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.25;
    font-variant-numeric: tabular-nums;
}

.rdt-touch[b-py2zk0w7mi] {
    min-height: 40px;
}

@media (min-width: 992px) {
    .rdt-title[b-py2zk0w7mi] {
        font-size: 1.125rem;
    }

    .rdt-card-title[b-py2zk0w7mi] {
        font-size: 1rem;
    }

    .rdt-stat[b-py2zk0w7mi] {
        font-size: 1.25rem;
    }
}
/* /Components/Pages/Templates/Compare.razor.rz.scp.css */
.cmp-h1[b-w5qrz2qkmk] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.25;
}

.cmp-h2[b-w5qrz2qkmk] {
    font-size: 1.125rem;
    font-weight: 600;
}

.cmp-card-title[b-w5qrz2qkmk] {
    font-size: .9375rem;
    font-weight: 600;
}

.cmp-note[b-w5qrz2qkmk] {
    font-size: .75rem;
    line-height: 1.2;
}

.cmp-best[b-w5qrz2qkmk] {
    font-size: .8125rem;
}

@media (min-width: 992px) {
    .cmp-h1[b-w5qrz2qkmk] {
        font-size: 1.75rem;
    }

    .cmp-card-title[b-w5qrz2qkmk] {
        font-size: 1rem;
    }
}

/* Chart.js работает с maintainAspectRatio: false — высоту задаёт контейнер */
.cmp-chart[b-w5qrz2qkmk] {
    position: relative;
    height: 260px;
}

@media (min-width: 768px) {
    .cmp-chart[b-w5qrz2qkmk] {
        height: 320px;
    }
}

@media (min-width: 1200px) {
    .cmp-chart[b-w5qrz2qkmk] {
        height: 380px;
    }
}

/* Залипающая колонка показателей при узком окне десктопа */
.cmp-table th:first-child[b-w5qrz2qkmk],
.cmp-table td:first-child[b-w5qrz2qkmk] {
    position: sticky;
    left: 0;
    z-index: 1;
    background-color: var(--bs-body-bg);
}

.cmp-table thead th:first-child[b-w5qrz2qkmk] {
    z-index: 2;
    background-color: var(--bs-tertiary-bg);
}

/* Кнопки добавления: текст переносится */
.cmp-add[b-w5qrz2qkmk] {
    white-space: normal;
}

.cmp-search[b-w5qrz2qkmk] {
    max-width: 100%;
}

@media (min-width: 576px) {
    .cmp-search[b-w5qrz2qkmk] {
        max-width: 16rem;
    }
}
/* /Components/Pages/Templates/Index.razor.rz.scp.css */
.tpl-h1[b-lbiiaokkyu] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.25;
}

.tpl-h2[b-lbiiaokkyu] {
    font-size: 1.125rem;
    font-weight: 600;
}

.tpl-card-title[b-lbiiaokkyu] {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.tpl-stat[b-lbiiaokkyu] {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2;
}

.tpl-kpi[b-lbiiaokkyu] {
    font-size: .9375rem;
}

@media (min-width: 992px) {
    .tpl-h1[b-lbiiaokkyu] {
        font-size: 1.75rem;
    }

    .tpl-card-title[b-lbiiaokkyu] {
        font-size: 1.0625rem;
    }

    .tpl-stat[b-lbiiaokkyu] {
        font-size: 1.5rem;
    }

    .tpl-kpi[b-lbiiaokkyu] {
        font-size: 1rem;
    }
}

/* Описание — ровно 2 строки, без «...» из C# */
.tpl-desc[b-lbiiaokkyu] {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.tpl-card[b-lbiiaokkyu] {
    transition: transform .15s ease, box-shadow .15s ease;
}

/* Hover только для мыши: на тач-устройствах он «залипает» */
@media (hover: hover) and (pointer: fine) {
    .tpl-card:hover[b-lbiiaokkyu] {
        transform: translateY(-2px);
        box-shadow: var(--bs-box-shadow) !important;
    }
}
/* /Components/Pages/Templates/TemplatePreviewModal.razor.rz.scp.css */
.tpm-modal[b-f5zbk7zget] {
    background-color: rgba(0, 0, 0, .5);
    overflow-y: auto;
    overscroll-behavior: contain;
    z-index: 1055;
}

.tpm-title[b-f5zbk7zget] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0;
}

.tpm-card-title[b-f5zbk7zget] {
    font-size: .9375rem;
    font-weight: 600;
}

.tpm-kpi[b-f5zbk7zget] {
    font-size: 1rem;
}

.tpm-note[b-f5zbk7zget] {
    font-size: .75rem;
    line-height: 1.25;
}

@media (min-width: 992px) {
    .tpm-title[b-f5zbk7zget] {
        font-size: 1.125rem;
    }

    .tpm-kpi[b-f5zbk7zget] {
        font-size: 1.125rem;
    }
}

/* В fullscreen футер прижат к низу с учётом safe-area */
@media (max-width: 991.98px) {
    .tpm-modal .modal-footer[b-f5zbk7zget] {
        padding-bottom: calc(.75rem + env(safe-area-inset-bottom));
    }
}
/* /Components/Shared/LegalDocument.razor.rz.scp.css */
/* Общий каркас юридических документов (/legal/*) */

.legal-doc[b-3fktq6gaec] {
    background: var(--bs-body-bg);
}

.legal-doc-title[b-3fktq6gaec] {
    font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.4rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: 0.35rem;
}

.legal-doc-updated[b-3fktq6gaec] {
    color: var(--bs-secondary-color);
    font-size: 0.875rem;
    margin-bottom: 2rem;
}

/* Содержимое приходит через ChildContent — стилизуем глубоко */
.legal-doc-body[b-3fktq6gaec]  h2 {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 2rem 0 0.75rem;
    scroll-margin-top: 5rem;
}

.legal-doc-body[b-3fktq6gaec]  h3 {
    font-size: 1.05rem;
    font-weight: 600;
    margin: 1.25rem 0 0.5rem;
}

.legal-doc-body[b-3fktq6gaec]  p {
    margin-bottom: 0.75rem;
    line-height: 1.65;
}

.legal-doc-body[b-3fktq6gaec]  ul,
.legal-doc-body[b-3fktq6gaec]  ol {
    margin-bottom: 0.75rem;
    padding-left: 1.4rem;
    line-height: 1.65;
}

.legal-doc-body[b-3fktq6gaec]  li {
    margin-bottom: 0.3rem;
}

.legal-doc-body[b-3fktq6gaec]  table {
    width: 100%;
    margin: 1rem 0 1.25rem;
    border-collapse: collapse;
    font-size: 0.95rem;
}

.legal-doc-body[b-3fktq6gaec]  th,
.legal-doc-body[b-3fktq6gaec]  td {
    border: 1px solid var(--bs-border-color);
    padding: 0.55rem 0.8rem;
    text-align: left;
    vertical-align: top;
}

.legal-doc-body[b-3fktq6gaec]  th {
    background: var(--bs-tertiary-bg);
    font-weight: 600;
}

.legal-doc-body[b-3fktq6gaec]  .legal-note {
    background: var(--bs-tertiary-bg);
    border-left: 3px solid var(--dlx-primary);
    border-radius: 0 var(--dlx-radius-sm) var(--dlx-radius-sm) 0;
    padding: 0.85rem 1rem;
    margin: 1rem 0 1.25rem;
    font-size: 0.95rem;
}
/* /Components/Shared/TariffPlanCards.razor.rz.scp.css */
/* ═══════════ Тарифные карточки (общий блок лендинга и /account/upgrade) ═══════════ */
.pricing-switch[b-bn0qau79dy] {
    display: inline-flex;
    gap: .35rem;
    padding: .3rem;
    border-radius: 2rem;
    background-color: var(--bs-body-bg);
    box-shadow: inset 0 0 0 1px var(--bs-border-color);
}

.price-card[b-bn0qau79dy] {
    border-radius: var(--dlx-radius);
    border-color: var(--bs-border-color-translucent);
}

.price-card-featured[b-bn0qau79dy] {
    border: 2px solid var(--dlx-primary);
    box-shadow: var(--dlx-shadow-lg);
}

@media (min-width: 992px) {
    .price-card-featured[b-bn0qau79dy] {
        transform: scale(1.03);
    }
}

.price-name[b-bn0qau79dy] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: .25rem;
}

.price-note[b-bn0qau79dy] {
    font-size: .8125rem;
    color: var(--bs-secondary-color);
    margin-bottom: 1rem;
}

.price-value[b-bn0qau79dy] {
    font-size: 2.25rem;
    font-weight: 800;
    letter-spacing: -.03em;
    margin-bottom: 1.25rem;
    font-variant-numeric: tabular-nums;
}

.price-period[b-bn0qau79dy] {
    display: block;
    font-size: .8125rem;
    font-weight: 500;
    letter-spacing: normal;
    color: var(--bs-secondary-color);
}

.price-year-total[b-bn0qau79dy] {
    display: none;
    font-size: .8125rem;
    font-weight: 500;
    letter-spacing: normal;
    color: var(--bs-secondary-color);
}

/* Переключение периода без JS. :has() поддерживается всеми актуальными браузерами;
   если нет — остаётся видимой месячная цена. */
.price-year[b-bn0qau79dy] {
    display: none;
}

.pricing:has(.price-input-year:checked) .price-month[b-bn0qau79dy] {
    display: none;
}

.pricing:has(.price-input-year:checked) .price-year[b-bn0qau79dy] {
    display: inline;
}

.pricing:has(.price-input-year:checked) .price-year-total[b-bn0qau79dy] {
    display: block;
}

.price-list[b-bn0qau79dy] {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .price-list li[b-bn0qau79dy] {
        display: flex;
        gap: .55rem;
        padding: .3rem 0;
        font-size: .875rem;
        color: var(--bs-body-color);
    }

    .price-list i[b-bn0qau79dy] {
        color: #059669;
        margin-top: .2rem;
        flex-shrink: 0;
    }

    .price-list .price-feature-off[b-bn0qau79dy] {
        color: var(--bs-secondary-color);
    }

        .price-list .price-feature-off i[b-bn0qau79dy] {
            color: var(--bs-border-color);
        }
