/* --- Основные стили --- */
body, html {
    margin: 0; padding: 0; width: 100%; height: 100%;
    font-family: 'Roboto', sans-serif;
    background-color: #121212;
}

/* Фон на весь экран — фиксированный слой позади всего */
body {
    background-image: url('shir2.png');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* --- Главная сетка --- */
.grid-container {
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    width: 100%; height: 100vh;
    overflow: hidden;
}

/* Все колонки полностью прозрачные — фон виден целиком */
.center-column,
.left-column,
.right-column {
    background: transparent;
    backdrop-filter: none;
}

.left-column, .right-column {
    overflow-y: auto;
    padding: 30px;
    color: #f0f0f0;
}

/* --- Правая колонка с плеером --- */
.right-column {
    display: flex; flex-direction: column; justify-content: flex-end;
}
.player-wrapper { width: 100%; margin-bottom: 20px; }

/* --- Адаптивность для мобильных --- */
@media (max-width: 1024px) {
    body {
        background-image: url('vert.png');
    }
    .grid-container {
        grid-template-columns: 1fr;
        height: auto;
        min-height: 100vh;
        overflow-y: auto;
    }
    .center-column {
        order: -1;
        min-height: 300px;
    }
    .right-column { justify-content: flex-start; order: -2; }
    .left-column, .right-column { padding: 20px; }
}

/* --- Стили для переключения экранов --- */
.view {
    display: none;
    animation: fadeIn 0.5s ease-in-out;
}
.view.active { display: block; }
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- Кнопки меню и "Назад" --- */
.menu-button {
    display: block; width: 100%;
    background-color: transparent; border: none;
    color: #ffffff; padding: 15px 0;
    font-size: 1.5em; text-align: left;
    margin-bottom: 10px; cursor: pointer;
    transition: color 0.2s;
    text-shadow: 0 1px 4px rgba(0,0,0,0.9);
}
.menu-button:hover { color: #9f50ff; }

.back-button {
    display: inline-block;
    background-color: rgba(0,0,0,0.5); border: none;
    color: #f0f0f0; padding: 10px 15px;
    margin-bottom: 30px; border-radius: 5px;
    cursor: pointer; font-size: 1em;
    text-shadow: 0 1px 3px rgba(0,0,0,0.9);
}
.back-button:hover { background-color: #9f50ff; }

/* --- Контент рубрик --- */
h2 {
    color: #9f50ff; font-size: 1.8em; margin-top: 0;
    text-shadow: 0 1px 4px rgba(0,0,0,0.9);
}
p, ul {
    font-size: 1.1em; line-height: 1.7; word-wrap: break-word;
    text-shadow: 0 1px 4px rgba(0,0,0,0.9);
}
ul { list-style: none; padding-left: 0; }
li { margin-bottom: 10px; }
a { color: #00aaff; text-decoration: none; text-shadow: 0 1px 4px rgba(0,0,0,0.9); }
.player-wrapper iframe { border-radius: 8px; overflow: hidden; }