body {
    background-color: #18181b;
    color: #e4e4e7;
}

/* Убираем обводку (синюю рамку) при клике */
*,
*:focus,
*:active,
button:focus {
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
}

/* Скроллбар */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: #18181b;
}

::-webkit-scrollbar-thumb {
    background: #3f3f46;
    border-radius: 10px;
}

/* Стили для фильтра */
.ai-card {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.hidden-card {
    display: none !important;
}

.filter-btn.active {
    background-color: #ffffff;
    color: #000000;
}

.filter-btn.active:hover {
    color: #000000 !important;
}

/* --------------------------------------------------------------------------
   Список диалогов в боковом меню.
   Больше четырёх чатов — и меню растягивалось на весь экран, поэтому список
   прокручивается внутри себя, а низ уходит в градиент цвета сайдбара:
   так сразу видно, что диалоги продолжаются ниже.
   -------------------------------------------------------------------------- */

.sidebar-chat-scroll-wrap {
    position: relative;
    margin-top: 0.25rem;
}

.sidebar-chat-scroll {
    max-height: 11rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #3f3f46 transparent;
}

.sidebar-chat-scroll::-webkit-scrollbar {
    width: 4px;
}

.sidebar-chat-scroll::-webkit-scrollbar-track {
    background: transparent;
}

.sidebar-chat-scroll::-webkit-scrollbar-thumb {
    background: #3f3f46;
    border-radius: 4px;
}

/* Градиент живёт на обёртке, а не внутри прокручиваемой области —
   иначе он уезжал бы вместе с содержимым */
.sidebar-chat-scroll-wrap::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2.5rem;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.25s ease;
    background: linear-gradient(to bottom,
        rgba(24, 24, 27, 0) 0%,
        rgba(24, 24, 27, 0.75) 55%,
        rgb(24, 24, 27) 100%);
}

.sidebar-chat-scroll-wrap.has-more:not(.at-end)::after {
    opacity: 1;
}
