/* home.css — главная страница (витрина релизов) */

.home-wrap { max-width: 1400px; margin: 0 auto; }

/* КРИТИЧНО: чтобы горизонтальные ленты не распирали flex-колонку main-content.
   Без этого grid с overflow-x растягивает колонку и ломает двухколоночную раскладку. */
.main-content, .home-wrap { min-width: 0; }
#releaseIndex { min-width: 0; max-width: 100%; overflow: hidden; }
#releaseIndex .home-row { min-width: 0; max-width: 100%; }

/* навигация-пилюли */
.home-nav { display: flex; gap: 8px; flex-wrap: wrap; }
.home-nav .btn { font-weight: 500; }

/* секция-ряд */
.home-row-head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; }
.home-row-title { margin: 0; font-weight: 700; color: var(--t-text, #e8eaed); }
.home-row-all { color: var(--t-accent, #5aa9ff); text-decoration: none; font-size: .9rem; font-weight: 500; }
.home-row-all:hover { text-decoration: underline; }

/* горизонтальная лента с прокруткой */
.home-row-scroll {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 180px;
    grid-template-columns: none !important;
    gap: 14px;
    overflow-x: auto !important;
    overflow-y: hidden;
    padding-bottom: 8px;
    scroll-snap-type: x proximity;
}
.home-row-scroll::-webkit-scrollbar { height: 6px; }
.home-row-scroll::-webkit-scrollbar-thumb { background: var(--t-border, #3a3d42); border-radius: 3px; }

/* карточка */
.home-card {
    scroll-snap-align: start;
    background: var(--t-bg-elevated, #1a1c20);
    border-radius: 12px; overflow: hidden;
    box-shadow: var(--t-shadow-sm, 0 1px 4px rgba(0,0,0,.3));
    transition: transform .12s, box-shadow .12s;
    display: flex; flex-direction: column;
}
.home-card:hover { transform: translateY(-4px); box-shadow: var(--t-shadow, 0 8px 28px rgba(0,0,0,.45)); }
.home-poster-link { display: block; }
.home-poster { position: relative; aspect-ratio: 2/3; overflow: hidden; background: #000; }
.home-poster img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* рейтинги на постере */
.home-ratings { position: absolute; top: 6px; left: 6px; display: flex; flex-direction: column; gap: 4px; z-index: 2; }
.home-rate { font-size: .72rem; font-weight: 700; padding: 2px 6px; border-radius: 5px; color: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.4); }
.home-kp   { background: linear-gradient(135deg,#ff9900,#ff5500); }
.home-imdb { background: #f5c518; color: #000; }
.home-torrents { position: absolute; bottom: 6px; right: 6px; font-size: .7rem; font-weight: 600; color: #fff; background: rgba(0,0,0,.65); padding: 2px 7px; border-radius: 5px; z-index: 2; }

.home-info { padding: 8px 10px; }
.home-title { display: block; font-weight: 600; font-size: .88rem; color: var(--t-text, #e8eaed); text-decoration: none; line-height: 1.25;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.home-title:hover { color: var(--t-accent, #5aa9ff); }
.home-meta { font-size: .76rem; color: var(--t-text-muted, #9aa0a6); margin-top: 2px; }

/* нижние виджеты (чат/новости) */
.home-widget { background: var(--t-bg-elevated,#1a1c20); border-radius: 12px; padding: 16px; box-shadow: var(--t-shadow-sm,0 1px 4px rgba(0,0,0,.3)); }
.home-widget h5 { margin: 0 0 12px; font-weight: 700; }

/* адаптив: на телефоне — та же горизонтальная лента, прокрутка пальцем (свайп) */
@media (max-width: 992px) {
    .home-row-scroll {
        grid-auto-flow: column !important;
        grid-auto-columns: 150px !important;
        grid-template-columns: none !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }
    .home-card { width: 150px; }
}
@media (max-width: 576px) {
    .home-row-scroll { grid-auto-columns: 132px !important; gap: 10px; }
    .home-card { width: 132px; }
    .home-title { font-size: .8rem; }
    .home-row-title { font-size: 1.1rem; }
}

/* навигация ленты (Все + стрелки) */
.home-row-nav { display: flex; align-items: center; gap: 8px; }
.home-arrow {
    width: 32px; height: 32px; border-radius: 50%;
    border: 1px solid var(--t-border, #3a3d42);
    background: var(--t-bg-elevated, #1a1c20);
    color: var(--t-text, #e8eaed);
    font-size: 20px; line-height: 1; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background .12s, transform .12s;
    flex-shrink: 0;
}
.home-arrow:hover { background: var(--t-accent, #4a90e2); color: #fff; border-color: var(--t-accent, #4a90e2); }
.home-arrow:active { transform: scale(.92); }
.home-arrow:disabled { opacity: .35; cursor: default; }

/* на мобильном стрелки прячем (там свайп/сетка), но лента остаётся прокручиваемой пальцем */
@media (max-width: 992px) {
    .home-arrow { display: none; }
}

/* продвинутый скелетон (заглушки лент при загрузке) */
.skeleton {
    background: linear-gradient(90deg, var(--t-bg-elevated,#1a1c20) 25%, var(--t-bg-hover,#24272c) 50%, var(--t-bg-elevated,#1a1c20) 75%);
    background-size: 200% 100%;
    animation: skeleton-shine 1.3s ease-in-out infinite;
    border-radius: 8px;
}
@keyframes skeleton-shine { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
.skeleton-title { width: 180px; height: 26px; border-radius: 6px; }
.skeleton-scroll { grid-auto-flow: column; grid-auto-columns: 180px; overflow: hidden; }
.skeleton-poster { width: 100%; aspect-ratio: 2/3; border-radius: 12px 12px 0 0; }
.skeleton-line { height: 13px; border-radius: 4px; }
