/* Мобильная и планшетная доработка чатов (персонаж + генератор рассказов) */
@media (max-width: 1024px) {
    .chat-page {
        height: calc(100dvh - 84px);
        min-height: 320px;
    }

    /* Компактная шапка: больше места под переписку */
    .chat-character-bar,
    .chat-header-bar {
        padding: 8px 0;
        gap: 10px;
    }
    .chat-character-bar .char-avatar,
    .chat-header-bar .char-avatar {
        width: 40px;
        height: 40px;
        font-size: 1.1rem;
    }
    .chat-character-bar .char-details {
        flex-wrap: wrap;
        align-items: center;
        gap: 0 6px;
        overflow: hidden;
    }
    .chat-character-bar .char-name {
        flex: 0 0 100%;
        font-size: 1rem;
        line-height: 1.25;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .chat-character-bar .char-age,
    .chat-character-bar .char-status {
        display: inline;
        font-size: 0.75rem;
        white-space: nowrap;
    }
    .chat-header-bar .char-name {
        font-size: 0.95rem;
        line-height: 1.25;
    }
    .memory-btn,
    .char-messages-left {
        min-height: 36px;
    }
    .chat-header-bar .char-messages-left.mobile-only {
        padding: 2px 10px;
        font-size: 0.75rem;
        margin-top: 2px;
    }

    /* Переписка */
    .chat-messages {
        padding: 12px 0;
        gap: 12px;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }
    .message {
        max-width: 90%;
        font-size: 0.97rem;
    }

    /* Поле ввода: 16px — иначе iOS зумит страницу при фокусе */
    .chat-input-area {
        padding: 10px 0 calc(6px + env(safe-area-inset-bottom, 0px));
        gap: 8px;
    }
    .chat-input {
        font-size: 16px;
        padding: 11px 14px;
        min-height: 44px;
    }
    .delete-btn,
    .send-btn,
    .settings-btn {
        width: 44px;
        height: 44px;
        flex-shrink: 0;
    }

    /* Кнопки под рассказом: удобные для пальца */
    .story-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }
    .story-actions .action-btn {
        flex: 1 1 calc(50% - 6px);
        justify-content: center;
        min-height: 40px;
    }
}

@media (max-width: 480px) {
    .memory-card {
        width: 94%;
        max-height: 86dvh;
    }
    .memory-act {
        padding: 8px 10px;
    }
}

/* Телефон: имя персонажа на всю ширину, кнопки действий — второй строкой */
@media (max-width: 480px) {
    .chat-character-bar { flex-wrap: wrap; row-gap: 8px; }
    .chat-character-bar .char-details { flex: 1 1 calc(100% - 100px); min-width: 0; }
    .chat-character-bar .memory-btn:first-of-type { margin-left: auto; }
    .chat-character-bar .char-messages-left { margin-left: 0; }
}
