.btf_table td {
    padding: 1rem;
    border: 1px solid #d1d1d1;
}

.btf_table tr:first-child td {
    background: #f1f1f1;
}

/* --- AI-CHANGE START: выравнивание размера иконки Max Messenger --- */
/* Дата: 2026-04-10 */
/* Причина: SVG Max Messenger имеет viewBox 720x720 без внутренних отступов, */
/* визуально крупнее VK/Telegram (viewBox 34x34 с отступами). */
/* Откат: удалить этот блок */
.social-list li a svg[viewBox="0 0 720 720"] {
    padding: 15%;
    box-sizing: border-box;
}
/* --- AI-CHANGE END --- */

/* --- AI-CHANGE START: WebView-режим для мобильного приложения --- */
/* Дата: 2026-04-10 */
/* Причина: При ?view=app скрываем header, footer, breadcrumbs для Flutter WebView. */
/* HTML остаётся (скрипты, login-modal, APP_CONFIG работают). */
/* Откат: удалить этот блок */
body.app-view .header {
    display: none;
}
body.app-view .footer {
    display: none;
}
body.app-view .breadcrumbs {
    display: none;
}
body.app-view .main {
    padding-top: env(safe-area-inset-top);
}
body.app-view {
    overscroll-behavior: none;
}
/* --- AI-CHANGE END --- */

/* --- AI-CHANGE START: Страница авторизации /login/ --- */
/* Дата: 2026-04-10 */
/* Причина: Полноэкранная страница логина для WebView и десктопа. */
/* Откат: удалить этот блок */
.login-page {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: 4rem 2rem;
}
.login-page__container {
    width: 100%;
    max-width: 40rem;
}
/* --- AI-CHANGE END --- */

/* --- AI-CHANGE START: App-view редизайн страницы /login/ --- */
/* Дата: 2026-05-28 */
/* Причина: App-only UI — лого, pill-инпуты, кнопка, pin-ячейки. */
/* Все стили изолированы через body.app-view + .login-page__container */
/* чтобы не затронуть ни десктоп, ни другие WebView-страницы (/personal/). */
/* Откат: удалить этот блок */

/* Контейнер страницы в app-view: полная высота, без центрирования */
body.app-view .login-page {
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 100dvh;
    padding: 0;
}
body.app-view .login-page__container {
    max-width: 100%;
    padding: 3.2rem 1.6rem 4rem;
}

/* Логотип */
body.app-view .login-logo {
    display: flex;
    justify-content: center;
    margin-top: 6.4rem;
}
body.app-view .login-logo img {
    width: 25rem;
    height: auto;
    display: block;
}

/* Телефонный инпут → pill */
/* Изолировано через input.field__input — отличаем от div.field__input (pin-ячейки) */
body.app-view .login-page__container input.field__input {
    height: 5.2rem;
    border-radius: 3rem;
    border-color: #D1EDE9;
    caret-color: #F54B2A;
    font-size: 1.6rem;
    padding: 0 2rem;
}
body.app-view .login-page__container input.field__input:focus {
    border-color: #40B09E;
    box-shadow: none;
    outline: none;
}

/* Pin-ячейки (react-verification-input рендерит div.field__input) */
body.app-view .login-page__container div.field__input {
    height: 6.4rem;
    border-radius: 2rem;
    font-family: 'Multiround Pro', system-ui, sans-serif;
    font-size: 2.8rem;
    border-color: #D1EDE9;
}
body.app-view .login-page__container div.field__input:focus,
body.app-view .login-page__container div.field__input[class*="filled"] {
    border-color: #40B09E;
}

/* Кнопка → pill */
/* Изолировано через .login-page__container чтобы не задеть кнопки в /personal/ */
body.app-view .login-page__container .button_variant-red.button_size-large {
    height: 5.2rem;
    border-radius: 3rem;
    background-color: #F54B2A;
}
body.app-view .login-page__container .button_variant-red.button_size-large:active {
    background-color: #E94420;
}

/* Legal text под кнопкой (шаг 1) */
body.app-view .login-legal {
    margin-top: 1.6rem;
    text-align: center;
    font-family: 'Onest', system-ui, sans-serif;
    font-size: 1.2rem;
    line-height: 1.8rem;
    color: #56585E;
}
body.app-view .login-legal a {
    color: #40B09E;
    text-decoration: none;
}
/* --- AI-CHANGE END --- */