
        /* Дизайн-токены и переменные */
        :root {
            --color-dark: #08080a;
            --color-cyber-red: #ff2a5f;
            --color-cyber-blue: #00f0ff;
            --color-cyber-purple: #ab20fd;
            --font-sans: 'Montserrat', sans-serif;
            --font-display: 'Space Grotesk', sans-serif;
            --shadow-neon-red: 0 0 20px rgba(255, 42, 95, 0.6);
            --shadow-neon-blue: 0 0 20px rgba(0, 240, 255, 0.6);
            --shadow-neon-purple: 0 0 30px rgba(171, 32, 253, 0.4);
        }

        /* Базовые стили страницы */
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
        html {
            scroll-behavior: smooth;
        }
        body {
            background-color: var(--color-dark);
            color: #ffffff;
            font-family: var(--font-sans);
            overflow-x: hidden;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }
        ::selection {
            background-color: var(--color-cyber-red);
            color: #ffffff;
        }

        /* Кастомный скроллбар */
        ::-webkit-scrollbar {
            width: 8px;
            height: 8px;
        }
        ::-webkit-scrollbar-track {
            background: var(--color-dark);
        }
        ::-webkit-scrollbar-thumb {
            background: #222;
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb:hover {
            background: var(--color-cyber-red);
        }

        /* Анимация глитча для текста */
        .glitch {
            position: relative;
            animation: glitch 1s linear infinite;
        }
        @keyframes glitch {
            0% { text-shadow: 2px -2px 0px var(--color-cyber-red), -2px 2px 0px var(--color-cyber-blue); }
            50% { text-shadow: -2px 2px 0px var(--color-cyber-red), 2px -2px 0px var(--color-cyber-blue); }
            100% { text-shadow: 2px 2px 0px var(--color-cyber-red), -2px -2px 0px var(--color-cyber-blue); }
        }

        /* Задний анимированный сетчатый фон */
        .grid-bg {
            position: absolute;
            inset: 0;
            background-image: 
                linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
            background-size: 40px 40px;
            perspective: 500px;
        }

        /* Вспомогательные классы переходов */
        .blur-md {
            filter: blur(12px) !important;
        }
        .opacity-0 {
            opacity: 0 !important;
        }
        .pointer-events-none {
            pointer-events: none !important;
        }

        /* Скрытие полосы прокрутки для каруселей */
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .hide-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }

        /* Заставка (Splash Screen) */
        #splash-screen {
            position: fixed;
            inset: 0;
            z-index: 50;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            background-color: var(--color-dark);
            transition: all 1s ease-in-out;
        }
        .splash-content {
            position: relative;
            z-index: 10;
            text-align: center;
            padding: 0 1rem;
            max-width: 32rem;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        .splash-logo {
            margin-bottom: 2rem;
            letter-spacing: 0.3em;
            font-family: var(--font-display);
            font-size: 2.5rem;
            font-weight: 700;
        }
        @media (min-width: 640px) {
            .splash-logo {
                font-size: 3.75rem;
            }
        }
        .splash-subtitle {
            color: #9ca3af;
            margin-bottom: 3rem;
            font-size: 0.875rem;
            letter-spacing: 0.15em;
            text-transform: uppercase;
        }
        @media (min-width: 640px) {
            .splash-subtitle {
                font-size: 1rem;
            }
        }
        
        /* Кнопки входа */
        .btn-cyber {
            position: relative;
            overflow: hidden;
            padding: 1rem 2rem;
            background: transparent;
            border: 1px solid #ffffff;
            color: #ffffff;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            transition: color 0.3s ease;
            cursor: pointer;
            outline: none;
        }
        .btn-cyber-bg {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            background-color: #ffffff;
            transform: translateX(-100%);
            transition: transform 0.3s ease;
            z-index: -1;
        }
        .btn-cyber:hover {
            color: #000000;
        }
        .btn-cyber:hover .btn-cyber-bg {
            transform: translateX(0);
        }
        .btn-cyber-text {
            position: relative;
            z-index: 10;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.75rem;
        }
        .splash-warning {
            font-size: 0.75rem;
            color: #6b7280;
            margin-top: 1rem;
            font-style: italic;
            margin-bottom: 2rem;
        }

        /* Блок выбора языка внизу заставки */
        .splash-lang-container {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            border: 1px solid rgba(255, 255, 255, 0.05);
            border-radius: 9999px;
            padding: 0.375rem 0.75rem;
            background-color: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(12px);
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
            transition: border-color 0.3s ease;
        }
        .splash-lang-container:hover {
            border-color: rgba(255, 255, 255, 0.1);
        }
        .splash-lang-title {
            font-size: 10px;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            color: #9ca3af;
            font-weight: 600;
            padding-left: 0.5rem;
        }
        .splash-lang-btn {
            font-size: 10px;
            padding: 0.25rem 0.625rem;
            border-radius: 9999px;
            font-weight: 700;
            transition: all 0.3s ease;
            background: transparent;
            color: #9ca3af;
            border: none;
            cursor: pointer;
        }
        .splash-lang-btn.active.ru {
            background-color: var(--color-cyber-red);
            color: #ffffff;
        }
        .splash-lang-btn.active.en {
            background-color: var(--color-cyber-blue);
            color: #000000;
        }
		
		/* Красное сердечко в логотипе */
			.logo-nav .logo-heart {
				color: var(--color-cyber-red);
				font-size: 0.85em;
				margin: 0 0.05em;
				vertical-align: middle;
				filter: drop-shadow(0 0 5px rgba(255, 42, 95, 0.8));
				transition: filter 0.3s ease;
			}

			.logo-nav:hover .logo-heart {
				filter: drop-shadow(0 0 10px rgba(255, 42, 95, 1)) brightness(1.2);
			}

        /* Главная оболочка сайта */
        #main-content {
            transition: all 1s ease-in-out;
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        /* Хедер навигации */
        header.header-nav {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 40;
            background: linear-gradient(to bottom, var(--color-dark), transparent);
            padding: 1.5rem 1.5rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            transition: all 0.3s ease;
        }
        @media (min-width: 768px) {
            header.header-nav {
                padding: 1.5rem 3rem;
            }
        }
        .logo-nav {
            font-family: var(--font-display);
            font-weight: 700;
            font-size: 1.5rem;
            letter-spacing: 0.15em;
            color: #ffffff;
            text-decoration: none;
            transition: color 0.3s ease;
        }
        .logo-nav:hover {
            color: var(--color-cyber-red);
        }
        .logo-dot {
            color: var(--color-cyber-red);
            font-weight: 300;
        }

        /* Плеер статус бар в шапке */
        .nav-player-bar {
            display: none;
            align-items: center;
            gap: 1rem;
            background-color: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 9999px;
            padding: 0.5rem 1.5rem;
            backdrop-filter: blur(12px);
        }
        @media (min-width: 768px) {
            .nav-player-bar {
                display: flex;
            }
        }
        
        /* Круглая точка состояния звука */
        .indicator-dot {
            width: 0.625rem;
            height: 0.625rem;
            border-radius: 50%;
            transition: background-color 0.3s ease;
        }
        .indicator-dot.ambient {
            background-color: var(--color-cyber-blue);
            animation: pulse 2s infinite;
        }
        .indicator-dot.sorry {
            background-color: var(--color-cyber-red);
            animation: pulse 2s infinite;
        }
        .indicator-dot.sofy {
            background-color: var(--color-cyber-blue);
            animation: pulse 2s infinite;
        }
        @keyframes pulse {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 240, 255, 0.7); }
            70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(0, 240, 255, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 240, 255, 0); }
        }
        .indicator-dot.sorry {
            animation: pulse-red 2s infinite;
        }
        @keyframes pulse-red {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(255, 42, 95, 0.7); }
            70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(255, 42, 95, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(255, 42, 95, 0); }
        }
        
        .current-track-text {
            font-size: 0.75rem;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            color: #d1d5db;
        }
        .mute-btn {
            background: transparent;
            border: none;
            color: #9ca3af;
            cursor: pointer;
            transition: color 0.3s ease;
            margin-left: 0.5rem;
        }
        .mute-btn:hover {
            color: #ffffff;
        }

        /* Ссылки навигации в шапке */
        .nav-links {
            display: flex;
            align-items: center;
            gap: 1.5rem;
        }
        .nav-link {
            font-size: 0.875rem;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            color: #d1d5db;
            text-decoration: none;
            transition: color 0.3s ease;
        }
        .nav-link:hover {
            color: var(--color-cyber-red);
        }
        .nav-link.releases:hover {
            color: var(--color-cyber-blue);
        }
        .nav-link.gallery:hover {
            color: var(--color-cyber-purple);
        }

        /* Языковой переключатель в шапке */
        .lang-picker-nav {
            display: flex;
            align-items: center;
            gap: 0.25rem;
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 9999px;
            padding: 0.125rem;
            background-color: rgba(255, 255, 255, 0.05);
            box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);
        }
        .lang-btn {
            font-size: 10px;
            padding: 0.125rem 0.5rem;
            border-radius: 9999px;
            font-weight: 700;
            transition: all 0.3s ease;
            background: transparent;
            color: #9ca3af;
            border: none;
            cursor: pointer;
        }
        .lang-btn.active.ru {
            background-color: var(--color-cyber-red);
            color: #ffffff;
        }
        .lang-btn.active.en {
            background-color: var(--color-cyber-blue);
            color: #000000;
        }

        /* Раздел артистов (Сплит-экран) */
        .main-artists {
            flex-grow: 1;
            padding-top: 6rem;
        }
        @media (min-width: 1024px) {
            .main-artists {
                padding-top: 0;
            }
        }
        .artists-split {
            display: flex;
            flex-direction: column;
            width: 100%;
            position: relative;
        }
        @media (min-width: 1024px) {
            .artists-split {
                flex-direction: row;
                height: 100vh;
            }
        }

        /* Индивидуальная карточка артиста */
        .artist-card {
            position: relative;
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 2rem;
            overflow: hidden;
            cursor: pointer;
            transition: all 0.7s ease-in-out;
            min-height: 60vh;
        }
        #artist-card-sorry {
            border-bottom: 1px solid rgba(255, 255, 255, 0.05);
        }
        @media (min-width: 1024px) {
            #artist-card-sorry {
                border-bottom: none;
                border-right: 1px solid rgba(255, 255, 255, 0.05);
            }
            .artist-card {
                height: 100%;
                min-height: 0;
            }
            .artist-card:hover {
                flex: 1.2;
            }
        }
        @media (min-width: 768px) {
            .artist-card {
                padding: 4rem;
            }
        }

        /* Градиенты и бэкграунды карточек */
        .artist-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, #000000, rgba(0, 0, 0, 0.6) 20%, transparent);
            z-index: 10;
        }
        .artist-neon-glow {
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at center, rgba(255, 42, 95, 0.2), transparent, transparent);
            opacity: 0;
            transition: opacity 1s ease;
            z-index: 5;
        }
        #artist-card-sofy .artist-neon-glow {
            background: radial-gradient(circle at center, rgba(0, 240, 255, 0.2), transparent, transparent);
        }
        .artist-card:hover .artist-neon-glow {
            opacity: 1;
        }
        
        /* Фоновые фото */
        .artist-bg-img {
            position: absolute;
            inset: 0;
            background-size: cover;
            background-position: center;
            filter: grayscale(100%) contrast(125%);
            opacity: 0.3;
            transition: all 1s ease;
            z-index: 0;
        }
        .artist-card:hover .artist-bg-img {
            transform: scale(1.05);
            filter: grayscale(0%) contrast(100%);
            opacity: 0.6;
        }

        /* Декоративные линии сбоку */
        .artist-card-line {
            display: none;
            position: absolute;
            top: 0;
            height: 100%;
            width: 2px;
            z-index: 20;
            transition: all 0.5s ease;
        }
        #artist-card-sorry .artist-card-line {
            right: 0;
            background-color: rgba(255, 42, 95, 0.3);
        }
        #artist-card-sorry:hover .artist-card-line {
            background-color: var(--color-cyber-red);
        }
        #artist-card-sofy .artist-card-line {
            left: 0;
            background-color: rgba(0, 240, 255, 0.3);
        }
        #artist-card-sofy:hover .artist-card-line {
            background-color: var(--color-cyber-blue);
        }
        @media (min-width: 1024px) {
            .artist-card-line {
                display: block;
            }
        }

        /* Контент внутри карточки артиста */
        .artist-content {
            position: relative;
            z-index: 20;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            width: 100%;
        }

        /* Бейдж "Играет превью" */
        .playing-badge {
            opacity: 0;
            transition: opacity 0.3s ease;
            display: flex;
            align-items: center;
            gap: 0.5rem;
            margin-bottom: 1rem;
            padding: 0.25rem 0.75rem;
            border-radius: 9999px;
            font-size: 10px;
            text-transform: uppercase;
            font-weight: 700;
            letter-spacing: 0.15em;
        }
        #artist-card-sorry .playing-badge {
            background-color: rgba(255, 42, 95, 0.2);
            border: 1px solid rgba(255, 42, 95, 0.4);
            color: var(--color-cyber-red);
        }
        #artist-card-sofy .playing-badge {
            background-color: rgba(0, 240, 255, 0.2);
            border: 1px solid rgba(0, 240, 255, 0.4);
            color: var(--color-cyber-blue);
        }
        .artist-card:hover .playing-badge {
            opacity: 1;
        }
        
        /* Пульсирующая точка в бейдже */
        .badge-dot {
            display: flex;
            height: 0.5rem;
            width: 0.5rem;
            position: relative;
        }
        .badge-dot-ping {
            animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
            position: absolute;
            display: inline-flex;
            height: 100%;
            width: 100%;
            border-radius: 9999px;
            opacity: 0.75;
        }
        #artist-card-sorry .badge-dot-ping, #artist-card-sorry .badge-dot-inner {
            background-color: var(--color-cyber-red);
        }
        #artist-card-sofy .badge-dot-ping, #artist-card-sofy .badge-dot-inner {
            background-color: var(--color-cyber-blue);
        }
        .badge-dot-inner {
            position: relative;
            display: inline-flex;
            border-radius: 9999px;
            height: 0.5rem;
            width: 0.5rem;
        }
        @keyframes ping {
            75%, 100% { transform: scale(2); opacity: 0; }
        }

        /* Заголовок артиста */
			.artist-name {
				font-family: 'Montserrat', sans-serif; 
				font-size: 2rem; 
				letter-spacing: 3px;
				color: #ffffff;
				margin-bottom: 0.5rem;
			}
        @media (min-width: 768px) {
            .artist-name {
                font-size: 5rem;
            }
        }
        #artist-card-sorry:hover .artist-name {
            color: var(--color-cyber-red);
        }
        #artist-card-sofy:hover .artist-name {
            color: var(--color-cyber-blue);
        }

        .artist-hr {
            height: 2px;
            width: 4rem;
            margin-bottom: 1.5rem;
            transition: width 0.5s ease;
        }
        #artist-card-sorry .artist-hr { background-color: var(--color-cyber-red); }
        #artist-card-sorry:hover .artist-hr { width: 8rem; }
        #artist-card-sofy .artist-hr { background-color: var(--color-cyber-blue); }
        #artist-card-sofy:hover .artist-hr { width: 8rem; }

        .artist-desc {
            color: #9ca3af;
            max-width: 28rem;
            font-size: 0.875rem;
            line-height: 1.625;
            margin-bottom: 1.5rem;
        }
        @media (min-width: 768px) {
            .artist-desc {
                font-size: 1rem;
            }
        }

        /* Ссылка воспроизведения */
        .artist-track-btn {
            display: flex;
            align-items: center;
            gap: 1rem;
            font-size: 0.75rem;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            font-weight: 600;
            color: #d1d5db;
            transition: color 0.3s ease;
            margin-bottom: 1.5rem;
        }
        .artist-card:hover .artist-track-btn {
            color: #ffffff;
        }
        .artist-play-icon {
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.2);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }
        .artist-play-icon i {
            margin-left: 0.25rem;
        }
        #artist-card-sorry:hover .artist-play-icon {
            border-color: var(--color-cyber-red);
            background-color: var(--color-cyber-red);
            color: #000000;
        }
        #artist-card-sofy:hover .artist-play-icon {
            border-color: var(--color-cyber-blue);
            background-color: var(--color-cyber-blue);
            color: #000000;
        }

/* ==========================================================================
   ПОЛНЫЙ ИТОГОВЫЙ БЛОК ДЛЯ СТРИМИНГОВЫХ КНОПОК (ВСТАВИТЬ ВМЕСТО ВСЕГО СТАРОГО)
   ========================================================================== */

/* Контейнер для кнопок */
.stream-links {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 0.5rem;
}

/* Базовый стиль кнопки (круг, рамка, иконка по центру) */
.stream-btn {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    color: #9ca3af;
    background-color: rgba(255, 255, 255, 0.05);
    text-decoration: none;
}

/* Размер иконки внутри кнопки */
.stream-btn i {
    font-size: 1.125rem;
}

/* --- СВЕЧЕНИЕ КНОПОК ПРИ НАВЕДЕНИИ ДЛЯ КАЖДОЙ ПЛАТФОРМЫ --- */

/* 1. Spotify (Зеленый неон) */
.stream-btn.btn-spotify:hover {
    color: #1DB954;
    border-color: #1DB954;
    background-color: rgba(29, 185, 84, 0.1);
    box-shadow: 0 0 15px rgba(29, 185, 84, 0.6), inset 0 0 10px rgba(29, 185, 84, 0.4);
}
.stream-btn.btn-spotify:hover i {
    text-shadow: 0 0 8px #1DB954;
}

/* 2. YouTube Music (Красный неон) */
.stream-btn.btn-youtube:hover {
    color: #FF0000;
    border-color: #FF0000;
    background-color: rgba(255, 0, 0, 0.1);
    box-shadow: 0 0 15px rgba(255, 0, 0, 0.6), inset 0 0 10px rgba(255, 0, 0, 0.4);
}
.stream-btn.btn-youtube:hover i {
    text-shadow: 0 0 8px #FF0000;
}

/* 3. Apple Music (Белый неон) */
.stream-btn.btn-apple:hover {
    color: #ffffff;
    border-color: #ffffff;
    background-color: rgba(255, 255, 255, 0.15);
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.3);
}
.stream-btn.btn-apple:hover i {
    text-shadow: 0 0 8px #ffffff;
}

        /* Секция релизов */
        .releases-section {
            position: relative;
            padding: 6rem 1.5rem;
            background-color: rgba(0, 0, 0, 0.6);
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            z-index: 30;
            overflow: hidden;
        }
        @media (min-width: 768px) {
            .releases-section {
                padding: 6rem 3rem;
            }
        }
        .section-container {
            max-width: 80rem;
            margin: 0 auto;
        }
        .section-header-flex {
            display: flex;
            flex-direction: column;
            margin-bottom: 4rem;
        }
        @media (min-width: 768px) {
            .section-header-flex {
                flex-direction: row;
                align-items: flex-end;
                justify-content: space-between;
            }
        }
        .section-label {
            font-weight: 700;
            font-size: 0.75rem;
            text-transform: uppercase;
            letter-spacing: 0.2em;
        }
        #releases .section-label { color: var(--color-cyber-red); }
        #gallery .section-label { color: var(--color-cyber-blue); }

        .section-title {
            font-family: var(--font-display);
            font-size: 2.25rem;
            font-weight: 900;
            margin-top: 0.5rem;
            letter-spacing: -0.025em;
        }
        @media (min-width: 768px) {
            .section-title {
                font-size: 3rem;
            }
        }
        .section-desc {
            color: #6b7280;
            max-width: 28rem;
            margin-top: 1rem;
            font-size: 0.875rem;
        }
        @media (min-width: 768px) {
            .section-desc {
                margin-top: 0;
            }
        }

        /* Стрелочки-дверцы управления каруселями */
        .carousel-controls {
            display: flex;
            gap: 1rem;
            margin-top: 1.5rem;
        }
        @media (min-width: 768px) {
            .carousel-controls {
                margin-top: 0;
            }
        }
        .control-arrow-btn {
            width: 3rem;
            height: 3rem;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
            background-color: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(12px);
            color: #ffffff;
            font-size: 1.125rem;
            cursor: pointer;
        }
        #releases .control-arrow-btn:hover {
            border-color: var(--color-cyber-red);
            color: var(--color-cyber-red);
        }
        #gallery .control-arrow-btn:hover {
            border-color: var(--color-cyber-blue);
            color: var(--color-cyber-blue);
        }

        /* Карусельный контейнер */
        .carousel-track {
            display: flex;
            gap: 1.5rem;
            overflow-x: auto;
            scroll-behavior: smooth;
            padding-bottom: 2rem;
            snap-type: x mandatory;
        }
        .carousel-item {
            snap-align: start;
            flex-shrink: 0;
            width: 280px;
            background-color: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            padding: 1.5rem;
            border-radius: 1rem;
            overflow: hidden;
            transition: all 0.3s ease;
            cursor: zoom-in;
        }
        @media (min-width: 640px) {
            .carousel-item {
                width: 350px;
            }
        }
        @media (min-width: 768px) {
            .carousel-item {
                width: 400px;
            }
        }
        .carousel-item:hover {
            background-color: rgba(255, 255, 255, 0.1);
            transform: scale(1.05);
        }

        /* Эффект свечения карт релизов */
        .neon-glow-red:hover {
            box-shadow: var(--shadow-neon-red);
            border-color: rgba(255, 42, 95, 1);
        }
        .neon-glow-blue:hover {
            box-shadow: var(--shadow-neon-blue);
            border-color: rgba(0, 240, 255, 1);
        }
        .neon-glow-purple:hover {
            box-shadow: var(--shadow-neon-purple);
            border-color: rgba(171, 32, 253, 1);
        }

        .cover-wrapper {
            position: relative;
            width: 100%;
            aspect-ratio: 1 / 1;
            margin-bottom: 1.5rem;
            overflow: hidden;
            border-radius: 0.75rem;
            background-color: #111827;
        }
        .cover-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }
        .carousel-item:hover .cover-img {
            transform: scale(1.05);
        }

        .release-meta {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }
        .release-artist-label {
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
        .release-artist-sorry { color: var(--color-cyber-red); }
        .release-artist-sofy { color: var(--color-cyber-blue); }
        .release-artist-collab { color: var(--color-cyber-purple); }

        .release-title {
            font-family: var(--font-display);
            font-size: 1.25rem;
            font-weight: 700;
            margin-top: 0.25rem;
            letter-spacing: -0.025em;
            color: #ffffff;
            transition: color 0.3s ease;
        }
        .carousel-item:hover .release-title.sorry { color: var(--color-cyber-red); }
        .carousel-item:hover .release-title.sofy { color: var(--color-cyber-blue); }
        .carousel-item:hover .release-title.collab { color: var(--color-cyber-purple); }

        .release-year {
            font-size: 0.75rem;
            color: #6b7280;
            border: 1px solid rgba(255, 255, 255, 0.1);
            padding: 0.25rem 0.5rem;
            border-radius: 0.25rem;
        }

        /* Секция галереи */
        .gallery-section {
            position: relative;
            padding: 6rem 1.5rem;
            background-color: var(--color-dark);
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            z-index: 30;
            overflow: hidden;
        }
        @media (min-width: 768px) {
            .gallery-section {
                padding: 6rem 3rem;
            }
        }
        .gallery-item {
            snap-align: start;
            flex-shrink: 0;
            width: 280px;
            aspect-ratio: 4 / 5;
            position: relative;
            overflow: hidden;
            border-radius: 1rem;
            border: 1px solid rgba(255, 255, 255, 0.05);
            cursor: zoom-in;
        }
        @media (min-width: 640px) {
            .gallery-item {
                width: 350px;
            }
        }
        @media (min-width: 768px) {
            .gallery-item {
                width: 400px;
            }
        }
        .gallery-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.75s ease;
        }
        .gallery-item:hover .gallery-img {
            transform: scale(1.1);
        }
        .gallery-card-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.2) 40%, transparent);
            opacity: 0;
            transition: opacity 0.3s ease;
            display: flex;
            align-items: flex-end;
            padding: 1.5rem;
        }
        .gallery-item:hover .gallery-card-overlay {
            opacity: 1;
        }
        .gallery-item-caption {
            font-size: 0.75rem;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            font-weight: 600;
        }
        .gallery-item-caption.sorry { color: var(--color-cyber-red); }
        .gallery-item-caption.sofy { color: var(--color-cyber-blue); }
        .gallery-item-caption.purple { color: var(--color-cyber-purple); }

        /* Подвал */
        footer.main-footer {
            background-color: #000000;
            padding: 4rem 1.5rem;
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            text-align: center;
            position: relative;
            z-index: 30;
        }
			.footer-logo {
				font-family: var(--font-display);
				font-weight: 700;
				font-size: 1.5rem;
				letter-spacing: 0.3em;
				margin-bottom: 1rem;
			}

			.footer-logo .logo-heart {
				color: var(--color-cyber-red);
				font-size: 0.85em; 
				margin: 0 0.05em; 
				vertical-align: middle; 
				filter: drop-shadow(0 0 5px rgba(255, 42, 95, 0.8)); 
				transition: filter 0.3s ease;
			}

        .footer-rights {
            font-size: 0.75rem;
            color: #6b7280;
            letter-spacing: 0.15em;
            text-transform: uppercase;
			margin-bottom: 20px;
        }

        /* Нижняя фиксированная панель плеера */
        .bottom-player-bar {
            position: fixed;
            bottom: 0;
            left: 0;
            width: 100%;
            z-index: 40;
            background-color: rgba(8, 8, 10, 0.9);
            backdrop-filter: blur(12px);
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            padding: 1rem 1.5rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .player-visualizer-wrap {
            display: flex;
            align-items: center;
            gap: 1rem;
            width: 33.333%;
            min-width: 120px;
        }
        #visualizer-canvas {
            width: 100%;
            height: 2rem;
            max-width: 200px;
        }
        .player-status-center {
            text-align: center;
            width: 33.333%;
        }
        .player-status-title {
            font-size: 0.75rem;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            font-weight: 700;
            color: var(--color-cyber-red);
            animation: text-pulse 2s infinite;
        }
        @keyframes text-pulse {
            0%, 100% { opacity: 0.75; }
            50% { opacity: 1; }
        }
        .player-volume-end {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.75rem;
            width: 33.333%;
        }
        .volume-icon {
            font-size: 0.75rem;
            color: #6b7280;
        }
        .volume-range {
            width: 4rem;
            accent-color: var(--color-cyber-red);
            background-color: rgba(255, 255, 255, 0.1);
            height: 0.25rem;
            border-radius: 9999px;
            cursor: pointer;
            outline: none;
            border: none;
        }
        @media (min-width: 640px) {
            .volume-range {
                width: 6rem;
            }
        }

        /* Полноэкранный модал (Интерфейс галереи и лайтбокса) */
        .modal-overlay {
            position: fixed;
            inset: 0;
            z-index: 100;
            background-color: rgba(0, 0, 0, 0.95);
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: center;
            opacity: 0;
            pointer-events: none;
            transition: all 0.5s ease;
            padding: 2rem 1rem;
        }
        @media (min-width: 768px) {
            .modal-overlay {
                padding: 2rem 3rem;
            }
        }
        .modal-overlay.active {
            opacity: 1;
            pointer-events: auto;
        }

        .modal-top {
            width: 100%;
            max-width: 80rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 10;
        }
        .modal-counter {
            font-family: var(--font-display);
            font-size: 0.875rem;
            letter-spacing: 0.15em;
            color: #9ca3af;
            font-style: italic;
        }
        .modal-close-btn {
            width: 3rem;
            height: 3rem;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgba(255, 255, 255, 0.05);
            color: #ffffff;
            font-size: 1.125rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        .modal-close-btn:hover {
            border-color: var(--color-cyber-red);
            color: var(--color-cyber-red);
        }

        .modal-center-viewport {
            position: relative;
            width: 100%;
            max-width: 64rem;
            flex-grow: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 1rem 0;
        }

        /* Стрелочки внутри модалок */
        .modal-arrow {
            position: absolute;
            z-index: 20;
            width: 3.5rem;
            height: 3.5rem;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgba(0, 0, 0, 0.5);
            color: #ffffff;
            font-size: 1.25rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        .modal-arrow:hover {
            border-color: var(--color-cyber-blue);
            color: var(--color-cyber-blue);
            background-color: rgba(0, 0, 0, 0.8);
        }
        .modal-arrow.arrow-left {
            left: 0;
        }
        .modal-arrow.arrow-right {
            right: 0;
        }
        @media (min-width: 768px) {
            .modal-arrow.arrow-left { left: -4rem; }
            .modal-arrow.arrow-right { right: -4rem; }
        }

        .lightbox-img-box {
            width: 100%;
            height: 100%;
            max-height: 70vh;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }
        #lightbox-img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
            border-radius: 0.5rem;
            border: 1px solid rgba(255, 255, 255, 0.05);
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.55);
            transition: all 0.5s ease;
            transform: scale(0.95);
        }
        .modal-bottom-caption {
            font-size: 0.75rem;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: #6b7280;
            user-select: none;
            z-index: 10;
        }

        /* Полноэкранный детальный модал для релизов (Сплит) */
        .release-split-container {
            width: 100%;
            height: 100%;
            max-height: 75vh;
            display: flex;
            flex-direction: column;
            background-color: rgba(10, 10, 10, 0.9);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 1.5rem;
            overflow: hidden;
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.55);
            transition: all 0.5s ease;
            transform: scale(0.95);
        }
        @media (min-width: 768px) {
            .release-split-container {
                flex-direction: row;
            }
        }
        .release-modal-left {
            width: 100%;
            height: 11rem;
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #000000;
        }
        @media (min-width: 768px) {
            .release-modal-left {
                width: 50%;
                height: auto;
            }
        }
        .release-modal-cover-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s ease;
        }
        .release-modal-cover-img:hover {
            transform: scale(1.05);
        }
        .release-modal-left-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, #000000, rgba(0, 0, 0, 0.4), transparent);
        }
        .release-modal-meta-box {
            position: absolute;
            bottom: 1.5rem;
            left: 1.5rem;
            right: 1.5rem;
            z-index: 10;
        }

        /* Динамические бейджи для модала */
        .release-badge {
            padding: 0.25rem 0.75rem;
            font-size: 10px;
            text-transform: uppercase;
            font-weight: 700;
            letter-spacing: 0.1em;
            border-radius: 9999px;
        }
        .release-badge.cyberRed {
            background-color: rgba(255, 42, 95, 0.2);
            border: 1px solid rgba(255, 42, 95, 0.4);
            color: var(--color-cyber-red);
        }
        .release-badge.cyberBlue {
            background-color: rgba(0, 240, 255, 0.2);
            border: 1px solid rgba(0, 240, 255, 0.4);
            color: var(--color-cyber-blue);
        }
        .release-badge.cyberPurple {
            background-color: rgba(171, 32, 253, 0.2);
            border: 1px solid rgba(171, 32, 253, 0.4);
            color: var(--color-cyber-purple);
        }

        .release-modal-title {
            font-family: var(--font-display);
            font-size: 1.875rem;
            font-weight: 900;
            margin-top: 0.75rem;
            letter-spacing: -0.025em;
            color: #ffffff;
            text-transform: uppercase;
        }
        @media (min-width: 768px) {
            .release-modal-title {
                font-size: 2.25rem;
            }
        }
        .release-modal-year {
            font-size: 0.75rem;
            color: #9ca3af;
            margin-top: 0.25rem;
            text-transform: uppercase;
            letter-spacing: 0.15em;
        }

        /* Правая сторона модалки: Треклист */
        .release-modal-right {
            width: 100%;
            padding: 1.5rem;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            overflow-y: auto;
            max-height: 45vh;
        }
        @media (min-width: 768px) {
            .release-modal-right {
                width: 50%;
                padding: 2rem;
                max-height: none;
                border-left: 1px solid rgba(255, 255, 255, 0.1);
            }
        }
        .tracklist-header {
            font-family: var(--font-display);
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.15em;
            color: #6b7280;
            text-transform: uppercase;
            margin-bottom: 1rem;
            border-bottom: 1px solid rgba(255, 255, 255, 0.05);
            padding-bottom: 0.5rem;
        }
        .tracklist-rows-wrap {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }

        /* Элегантная строка трека */
        .tracklist-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0.75rem;
            border-radius: 0.75rem;
            background-color: rgba(255, 255, 255, 0.03);
            transition: all 0.3s ease;
            cursor: pointer;
        }
        .tracklist-row:hover {
            background-color: rgba(255, 255, 255, 0.08);
        }
        .row-left-content {
            display: flex;
            align-items: center;
            gap: 1rem;
        }
        .track-number {
            font-size: 0.75rem;
            font-weight: 700;
            color: #6b7280;
            transition: color 0.3s ease;
        }
        .tracklist-row:hover .track-number {
            color: #ffffff;
        }
        .track-row-play-btn {
            width: 2rem;
            height: 2rem;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #000000;
            transition: all 0.3s ease;
        }
        .track-row-play-btn i {
            font-size: 9px;
            color: #9ca3af;
            margin-left: 0.125rem;
        }
        .track-name-text {
            font-size: 0.875rem;
            font-weight: 600;
            color: #e5e7eb;
            transition: color 0.3s ease;
        }
        .tracklist-row:hover .track-name-text {
            color: #ffffff;
        }
        .track-duration-text {
            font-size: 0.75rem;
            font-weight: 500;
            color: #6b7280;
            transition: color 0.3s ease;
        }
        .tracklist-row:hover .track-duration-text {
            color: #d1d5db;
        }

		.release-modal-footer {
			display: flex !important;
			justify-content: space-between !important;
			align-items: center !important; 
		}

		.release-modal-footer > span:first-child {
			font-size: 0.95rem !important;
			color: #ffffff !important;
		}

		.release-modal-footer .stream-links {
			display: flex !important;
			align-items: center !important;
			margin-top: 0 !important; 
			gap: 14px !important;
		}
/* ==========================================================================
   НЕОНОВОЕ МОБИЛЬНОЕ МЕНЮ И КНОПКА-ГАМБУРГЕР
   ========================================================================== */

/* На десктопе (ПК) кнопка гамбургера полностью скрыта */
.menu-hamburger {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 26px;
    height: 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1002; /* Гамбургер всегда поверх выезжающего меню */
}

/* Линии самого гамбургера */
.hamburger-line {
    width: 100%;
    height: 2px;
    background-color: #fff;
    border-radius: 4px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 0 4px rgba(255, 255, 255, 0.4);
}

/* АНИМАЦИЯ: превращаем три полоски в неоновый крестик при активации (класс .active) */
.menu-hamburger.active .hamburger-line:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
    background-color: var(--color-cyber-red, #ff2a5f);
    box-shadow: 0 0 10px var(--color-cyber-red, #ff2a5f);
}

.menu-hamburger.active .hamburger-line:nth-child(2) {
    opacity: 0;
    transform: translateX(-10px);
}

.menu-hamburger.active .hamburger-line:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
    background-color: var(--color-cyber-red, #ff2a5f);
    box-shadow: 0 0 10px var(--color-cyber-red, #ff2a5f);
}

/* АДАПТИВНАЯ ВЕРСТКА ПОД МОБИЛЬНЫЕ УСТРОЙСТВА */
@media (max-width: 1023px) {
    /* Показываем гамбургер на смартфонах и планшетах */
    .menu-hamburger {
        display: flex;
        margin-left: auto; /* Авто-отступ, чтобы кнопка прижалась к правому краю шапки */
    }

    /* Мобильное полноэкранное меню */
    .nav-links {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(5, 5, 8, 0.98); /* Глубокий темный киберпанк фон */
        backdrop-filter: blur(15px); /* Размытие заднего плана сайта */
        -webkit-backdrop-filter: blur(15px);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 3rem; /* Отступы между ссылками */
        
        /* Меню изначально скрыто выше экрана */
        transform: translateY(-100%); 
        transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
        z-index: 1001;
    }

    /* Когда кликаем на гамбургер, JS добавляет класс active, и меню плавно выезжает */
    .nav-links.active {
        transform: translateY(0);
    }

    /* Ссылки внутри мобильного меню */
    .nav-links .nav-link {
        font-family: 'Space Grotesk', sans-serif;
        font-size: 2rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.2em;
        color: #fff;
        text-decoration: none;
        transition: all 0.3s ease;
    }

    /* Эффект наведения/активного состояния на мобилке */
    .nav-links .nav-link:hover,
    .nav-links .nav-link:active {
        color: var(--color-cyber-red, #ff2a5f);
        text-shadow: 0 0 15px var(--color-cyber-red, #ff2a5f);
    }

    /* Блок переключателя языков внутри выезжающего меню */
    .nav-links .lang-picker-nav {
        margin-top: 2rem;
        display: flex;
        gap: 1.5rem;
    }

    .nav-links .lang-btn {
        font-size: 1.2rem;
        padding: 0.5rem 1.2rem;
    }
}

.footer-contact-zone {
    margin: 20px 0;
    text-align: center;
    color: #666;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 0.9rem;
}

.producer-signature {
    margin-top: 5px;
    color: #aaa;
}

.producer-signature a {
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
}

.producer-signature a:hover {
    color: var(--color-cyber-red, #ff2a5f);
    text-shadow: 0 0 10px var(--color-cyber-red, #ff2a5f);
}
.player-controls-left { display: flex; align-items: center; padding: 0 10px; }
.main-play-btn { background: transparent; border: 1px solid #444; color: #fff; cursor: pointer; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.main-play-btn:hover { border-color: #ff2a5f; color: #ff2a5f; }

/* 4. Instagram (Неоновый градиент бренда) */
.stream-btn.btn-instagram:hover {
    color: #ff3040; /* Базовый красный/розовый для иконки */
    border-color: #d62976;
    background-image: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d62976 60%, #962fbf 90%);
    background-origin: border-box;
    /* Текстурированное полупрозрачное смешивание фона для сохранения стиля остальных кнопок */
    background-color: rgba(214, 41, 118, 0.15); 
    box-shadow: 0 0 15px rgba(214, 41, 118, 0.6), inset 0 0 10px rgba(150, 47, 191, 0.4);
}

.stream-btn.btn-instagram:hover i {
    color: #ffffff; /* Белая иконка на фоне градиента смотрится гораздо отчетливее */
    text-shadow: 0 0 8px #ff3040;
}

/* ==========================================================================
   ДОБАВЛЕНО ПРИ ПЕРЕХОДЕ НА ru/ + en/ И НОВЫЙ ПЛЕЕР
   ========================================================================== */

/* Скрытый, но читаемый поисковиками/скринридерами заголовок */
.visually-hidden {
    position: absolute !important;
    width: 1px; height: 1px;
    margin: -1px; padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Кнопки языка теперь ссылки */
.splash-lang-btn, .lang-btn {
    display: inline-block;
    text-decoration: none;
    line-height: 1.4;
}
.lang-picker-group { display: flex; gap: 0.25rem; }
.splash-lang-btn:hover, .lang-btn:hover { color: #ffffff; }

/* Заставка-шлюз на корневой странице: выбор языка */
.btn-cyber { display: inline-block; text-decoration: none; font-family: inherit; font-size: 1rem; }
.gateway .splash-logo { font-size: 2.5rem; }
@media (min-width: 640px) { .gateway .splash-logo { font-size: 3.75rem; } }
.gateway .splash-subtitle { margin-bottom: 0.5rem; }
.gateway-subtitle-alt {
    color: #6b7280;
    margin-bottom: 3rem;
    font-size: 0.8rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}
.gateway-buttons { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.gateway-btn.recommended { border-color: var(--color-cyber-red); box-shadow: var(--shadow-neon-red); }
.gateway-btn.recommended .btn-cyber-bg { background-color: var(--color-cyber-red); }
.gateway-btn.recommended:hover { color: #ffffff; }
.gateway .splash-warning { margin-top: 2rem; margin-bottom: 0; font-style: normal; letter-spacing: 0.2em; }

/* Кнопка «Слушать трек» в карточке артиста (раньше стили были inline) */
.artist-track-btn {
    cursor: pointer;
    background: transparent;
    border: none;
    padding: 0;
    color: #d1d5db;
    font-family: inherit;
    text-align: left;
}
.artist-track-btn:focus-visible { outline: 2px solid var(--color-cyber-blue); outline-offset: 4px; }
.artist-card.is-playing .playing-badge { opacity: 1; }
.artist-card.is-playing .artist-track-btn { color: #ffffff; }
#artist-card-sorry.is-playing .artist-play-icon {
    border-color: var(--color-cyber-red); background-color: var(--color-cyber-red); color: #000000;
}
#artist-card-sofy.is-playing .artist-play-icon {
    border-color: var(--color-cyber-blue); background-color: var(--color-cyber-blue); color: #000000;
}

/* Подвал не прячется под фиксированным плеером */
footer.main-footer { padding-bottom: 7rem; }

/* ---------- Нижняя панель плеера ---------- */
.bottom-player-bar {
    gap: 1.25rem;
    padding: 0.75rem 1.5rem;
}
.bp-controls { display: flex; align-items: center; gap: 0.5rem; flex-shrink: 0; }
.bp-btn {
    background: transparent;
    border: none;
    color: #9ca3af;
    cursor: pointer;
    width: 2rem; height: 2rem;
    border-radius: 50%;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}
.bp-btn:hover { color: #ffffff; }
.main-play-btn { width: 2.5rem; height: 2.5rem; font-size: 0.95rem; transition: all 0.3s ease; }
.main-play-btn i { margin-left: 0; }
.bp-btn:focus-visible, .main-play-btn:focus-visible { outline: 2px solid var(--color-cyber-blue); outline-offset: 2px; }

.bp-center { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 0.35rem; }
.bp-meta { display: flex; align-items: baseline; gap: 0.75rem; min-width: 0; }
.player-status-title {
    animation: none;
    font-size: 0.75rem;
    letter-spacing: 0.15em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
.bp-state {
    font-size: 0.65rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #6b7280;
    flex-shrink: 0;
}
.bp-progress { display: flex; align-items: center; gap: 0.6rem; }
.bp-time { font-size: 0.65rem; color: #6b7280; font-variant-numeric: tabular-nums; min-width: 2.2rem; }
.bp-time:last-child { text-align: right; }

/* Полоса прогресса */
.bp-range {
    --progress: 0%;
    flex: 1;
    min-width: 0;
    height: 0.9rem;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    cursor: pointer;
    outline: none;
}
.bp-range::-webkit-slider-runnable-track {
    height: 4px; border-radius: 9999px;
    background: linear-gradient(to right, var(--color-cyber-red) var(--progress), rgba(255,255,255,0.12) var(--progress));
}
.bp-range::-moz-range-track { height: 4px; border-radius: 9999px; background: rgba(255,255,255,0.12); }
.bp-range::-moz-range-progress { height: 4px; border-radius: 9999px; background: var(--color-cyber-red); }
.bp-range::-webkit-slider-thumb {
    -webkit-appearance: none; appearance: none;
    width: 12px; height: 12px; margin-top: -4px;
    border-radius: 50%; background: #ffffff; border: none;
    box-shadow: 0 0 8px rgba(255, 42, 95, 0.8);
}
.bp-range::-moz-range-thumb {
    width: 12px; height: 12px; border: none; border-radius: 50%;
    background: #ffffff; box-shadow: 0 0 8px rgba(255, 42, 95, 0.8);
}

.player-visualizer-wrap { width: 9rem; min-width: 0; flex-shrink: 0; }
#visualizer-canvas { width: 100%; height: 2rem; max-width: none; display: block; }
.player-volume-end { width: auto; flex-shrink: 0; }

@media (max-width: 899px) { .player-visualizer-wrap { display: none; } }
@media (max-width: 639px) {
    .bottom-player-bar { gap: 0.75rem; padding: 0.6rem 1rem; }
    .player-volume-end { display: none; }
    .bp-time { min-width: 1.9rem; }
}

/* Строки треклиста */
.tracklist-row.no-audio { cursor: default; }
.tracklist-row.no-audio .track-row-play-btn { display: none; }
.tracklist-row.is-playing { background-color: rgba(255, 42, 95, 0.12); }
.tracklist-row.is-playing .track-name-text { color: var(--color-cyber-red); }
.tracklist-row:not(.no-audio):hover .track-row-play-btn { border-color: var(--color-cyber-red); }
.tracklist-row:not(.no-audio):hover .track-row-play-btn i { color: var(--color-cyber-red); }

/* Карточки релизов/галереи доступны с клавиатуры */
.carousel-item:focus-visible, .gallery-item:focus-visible { outline: 2px solid var(--color-cyber-blue); outline-offset: 3px; }

.release-tracks[hidden] { display: none !important; }

/* Заставка уже пройдена в этой сессии: прячем сразу, без мигания (класс ставит скрипт в <head>) */
html.skip-splash #splash-screen { display: none !important; }
html.skip-splash #main-content.blur-md { filter: none !important; }
