/* ========================================
   ASTRA PADEL CLUB - Бежево-золотистая тема
   Цветовая палитра:
   - Акцент: #c9a86c (золотой)
   - Фон: #f5f0e8 (бежевый)
   - Хедер: #2d2d2d (тёмно-серый)
   - Текст: #2d2d2d
   ======================================== */

:root {
    /* Astra Padel Club — бежево-золотистый стиль */
    --astra-orange: #c9a86c;          /* основной золотой */
    --astra-orange-light: #d4bc8e;    /* светлый золотой */
    --astra-orange-dark: #b8956a;     /* тёмный золотой */
    --astra-black: #2d2d2d;           /* тёмно-серый */
    --astra-cream: #f5f0e8;           /* бежевый фон */
    --astra-cream-dark: #ebe6de;
    --astra-text: #2d2d2d;            /* тёмный текст */
    --astra-text-light: #888888;
    --astra-white: #FFFFFF;
    --astra-border: #e5e0d8;          /* цвет рамок */
    --astra-gradient: linear-gradient(135deg, #c9a86c 0%, #d4bc8e 100%);
}

/* ========================================
   Базовые стили
   ======================================== */

div.game__list-user-name a {
    color: var(--astra-text);
}

.slots__item-record.alert-info {
    padding: 8px 11px;
}

.game__description-item--coach:before,
.slots__item-description-item--coach:before {
    content: url(../img/ico-coach.svg);
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-right: 5px;
}

.game__description-item--status:before {
    content: url(../img/cancel.svg);
}

.slots__item-description-item--status:before {
    content: url(../img/cancel.svg);
}

.navbar-form {
    border-top: none;
}

.navbar-collapse {
    box-shadow: none;
}

div.place-info {
    background-color: var(--astra-orange);
    border-color: transparent;
    color: var(--astra-white);
    padding: 8px 11px;
    padding-left: 15px;
    border-radius: 10px;
    margin-bottom: 12px;
}

#id_level {
    margin-left: 4px;
}

#level_btn {
    background: var(--astra-orange);
    color: var(--astra-white);
    margin-top: 4px;
    border-radius: 18px;
    border-color: transparent;
}

#level_btn:hover {
    background: var(--astra-orange-dark);
}

button.small_btn {
    background: var(--astra-orange);
    color: var(--astra-white);
    border-radius: 18px;
    border-color: transparent;
}

button.small_btn:hover {
    background: var(--astra-orange-dark);
}

.level_selector_form {
    box-sizing: border-box;
}

.level_selector_form input[type="text"], select {
    height: 30px;
    width: 180px;
    margin-left: 4px;
    margin-top: 4px;
    margin-bottom: 2px;
}

.bold_link {
    font-weight: 600;
}

ul.menu li {
    text-align: right;
    padding-right: 30px;
}

.navbar-inverse .navbar-nav>.active>a,
.navbar-inverse .navbar-nav>.active>a:hover {
    background-color: transparent;
}

.game__list-pair-photo {
    margin-bottom: 25px;
}

a.payment-info {
    color: var(--astra-orange);
    font-weight: bold;
    font-style: italic;
}

@media (min-width: 1200px) {
    ul.menu {
        margin-top: 15px;
    }

    .header__button {
        margin-top: 20px;
        position: static;
        transform: none;
        top: auto;
        right: auto;
    }

    ul.menu li {
        padding-right: 0;
    }

    .container-fluid>.navbar-collapse,
    .container-fluid>.navbar-header,
    .container>.navbar-collapse,
    .container>.navbar-header {
        margin-right: -15px;
        margin-left: -15px;
    }
}

/* ========================================
   Таблицы
   ======================================== */

.table {
    width: 100%;
    border: none;
    border-collapse: separate;
}

.table thead th {
    font-weight: bold;
    text-align: center;
    border: none;
    background: var(--astra-black);
    color: var(--astra-white);
    font-size: 14px;
    border-top: 1px solid #ddd;
}

.table tr th:first-child,
.table tr td:first-child {
    border-left: 1px solid #ddd;
}

.table tr th:last-child,
.table tr td:last-child {
    border-right: 1px solid #ddd;
}

.table thead tr th:first-child {
    border-radius: 20px 0 0 0;
}

.table thead tr th:last-child {
    border-radius: 0 20px 0 0;
}

.table tbody td {
    text-align: center;
    border: none;
    vertical-align: middle;
    background-color: var(--astra-white);
    color: var(--astra-text);
}

.table tbody tr td {
    vertical-align: middle;
}

.table tbody tr:nth-child(even) {
    background: var(--astra-cream);
}

.table tbody tr:nth-child(even) td {
    background: var(--astra-cream);
}

.table tbody tr:last-child td {
    border-bottom: 1px solid #ddd;
}

.table tbody tr:last-child td:first-child {
    border-radius: 0 0 0 20px;
}

.table tbody tr:last-child td:last-child {
    border-radius: 0 0 20px 0;
}

/* ========================================
   Детали и аккордеоны
   ======================================== */

.custom-summary {
    font-weight: bold;
    color: var(--astra-orange);
    display: inline-block;
    position: relative;
    cursor: pointer;
    padding-right: 1em;
}

.custom-summary span {
    display: inline-block;
    transition: transform 0.2s;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.custom-summary::-webkit-details-marker {
    display: none;
}

.custom-summary::before {
    content: '►';
    display: inline-block;
    transform: rotate(0deg);
    transition: transform 0.2s;
    margin-right: 0.3em;
    line-height: 1;
}

details[open] .custom-summary::before {
    transform: rotate(90deg);
}

/* ========================================
   Модальные окна
   ======================================== */

.email-popup {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
}

.email-popup-content {
    background-color: var(--astra-white);
    padding: 20px;
    border-radius: 5px;
    max-width: 400px;
    width: 100%;
}

.email-popup-open {
    overflow: hidden;
}

/* ========================================
   Хедер - ASTRA стиль
   ======================================== */

.header__address {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.header__address .address-text {
    font-size: 13px !important;
    display: block !important;
}

.header__address .phone-number {
    font-size: 13px !important;
    display: block !important;
}

.header__separator {
    display: inline-block;
    width: 10px;
}

.game__block1 {
    border: 2px solid var(--astra-orange);
    padding: 30px;
    box-shadow: 0 2px 8px rgba(201, 168, 108, 0.2);
    border-radius: 10px;
    background-clip: padding-box;
}

.btn-pink {
    background-color: #f350a2;
    color: var(--astra-white);
}

.btn-pink:hover {
    background-color: #ff1493;
    color: var(--astra-white);
}

.toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: var(--astra-white);
    padding: 10px 20px;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    z-index: 9999;
}

.toast.show {
    opacity: 1;
}

.environment-info {
    margin-left: 10px;
    font-size: 12px;
    color: #888;
}

.push-indicator {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.push-enabled {
    background-color: #28a745;
}

.push-disabled {
    background-color: #dc3545;
}

.avatar-container {
    position: relative;
    display: inline-block;
}

/* ========================================
   ASTRA Header - Чёрный хедер с оранжевой полосой
   ======================================== */

.header::before {
    content: '';
    display: block;
    height: 4px;
    background-color: var(--astra-orange);
}

.header .navbar-inverse {
    background: var(--astra-black);
    border-color: var(--astra-black);
    border-bottom: 1px solid var(--astra-border);
    margin-bottom: 0;
    position: relative;
    z-index: 1000;
}

.header .navbar-inverse .navbar-brand {
    position: relative;
    z-index: 100;
    margin-top: 5px;
    margin-bottom: 5px;
}

.header .navbar-inverse .navbar-brand img {
    width: 120px;
    height: auto;
    position: relative;
    z-index: 100;
    transition: opacity 0.3s ease;
}

.header .navbar-inverse .navbar-brand img:hover {
    opacity: 0.9;
}

.header .navbar-inverse .navbar-nav > li > a {
    color: var(--astra-white);
    transition: color 0.2s ease;
    font-weight: 500;
}

.header .navbar-inverse .navbar-nav > li > a:hover,
.header .navbar-inverse .navbar-nav > li > a:focus {
    color: var(--astra-orange);
    background-color: transparent;
}

.header .navbar-inverse .navbar-nav > .active > a,
.header .navbar-inverse .navbar-nav > .active > a:hover,
.header .navbar-inverse .navbar-nav > .active > a:focus {
    color: var(--astra-white);
    background-color: var(--astra-orange);
    border-radius: 6px;
    font-weight: 600;
}

.header .navbar-text,
.header .header__address,
.header .address-text,
.header .phone-number {
    color: rgba(255, 255, 255, 0.8) !important;
}

.header .navbar-inverse .navbar-toggle {
    border-color: var(--astra-orange);
}

.header .navbar-inverse .navbar-toggle .icon-bar {
    background-color: var(--astra-orange);
}

.header .navbar-inverse .navbar-toggle:hover,
.header .navbar-inverse .navbar-toggle:focus {
    background-color: rgba(201, 168, 108, 0.2);
}

.header .btn-primary {
    background-color: var(--astra-orange);
    border-color: var(--astra-orange);
    color: var(--astra-white);
}

.header .btn-primary:hover {
    background-color: var(--astra-orange-dark);
    border-color: var(--astra-orange-dark);
    color: var(--astra-white);
}

.header .navbar-form a[style*="color:#ffffff"],
.header .navbar-form a[style*="color: #ffffff"],
.header .navbar-form a[style*="color:#7c3aed"],
.header .navbar-form a[style*="color: #7c3aed"] {
    color: var(--astra-white) !important;
}

/* Мобильный хедер - как на bigbeach.ru с absolute positioning */
@media (max-width: 1199px) {
    .header .navbar-header {
        position: relative !important;
        min-height: 80px !important;
        overflow: visible !important;
    }
    
    .header .navbar-header .header__address {
        position: absolute !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        max-width: none !important;
        margin-left: 0 !important;
        display: block !important;
        z-index: 50 !important;
        overflow: visible !important;
        height: auto !important;
    }
    
    .header .navbar-header .header__address .address-text {
        display: block !important;
        visibility: visible !important;
        white-space: normal !important;
    }
    
    .header .navbar-header .header__address .address-text,
    .header .navbar-header .header__address .phone-number {
        color: rgba(255, 255, 255, 0.9) !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        display: block !important;
        white-space: normal !important;
    }
    
    .header .navbar-toggle {
        margin: 0 !important;
        position: absolute !important;
        right: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    
    .header .navbar-header .navbar-brand {
        position: relative !important;
        z-index: 100 !important;
        margin: 5px 0 !important;
    }
    
    .header .navbar-header .navbar-brand img {
        width: 90px !important;
        height: auto !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 479px) {
    .header .navbar-header .header__address {
        font-size: 11px !important;
        max-width: none !important;
        margin-left: 0 !important;
    }
    
    .header .navbar-header .header__address .address-text,
    .header .navbar-header .header__address .phone-number {
        font-size: 11px !important;
    }
}

@media (max-width: 419px) {
    .header .navbar-header .header__address {
        max-width: none !important;
        margin-left: 0 !important;
    }
}

/* Убираем старую золотую полосу */
.header::after {
    display: none !important;
}

/* ========================================
   ASTRA - Светлая тема страницы
   ======================================== */

body {
    background-color: var(--astra-cream) !important;
    color: var(--astra-text);
}

.main-content,
.container {
    background-color: transparent;
}

h1, h2, h3, h4, h5, h6,
.slots__title,
.game__title {
    color: var(--astra-text) !important;
}

.slots__date-title,
.game__date-title {
    color: var(--astra-orange) !important;
}

/* ========================================
   Панели и блоки - светлая тема
   ======================================== */

.panel,
.panel-default,
.panel-primary,
.panel-info {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.panel-heading {
    background-color: var(--astra-black) !important;
    border-bottom: none !important;
    color: var(--astra-white) !important;
}

.panel-body {
    background-color: var(--astra-white) !important;
    color: var(--astra-text) !important;
}

.panel-title {
    color: var(--astra-white) !important;
}

.well {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
}

/* ========================================
   Формы и инпуты - светлая тема
   ======================================== */

.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
textarea,
select {
    background-color: var(--astra-white) !important;
    border: 1px solid #ccc !important;
    color: var(--astra-text) !important;
}

.form-control:focus,
input:focus,
textarea:focus,
select:focus {
    background-color: var(--astra-white) !important;
    border-color: var(--astra-orange) !important;
    color: var(--astra-text) !important;
    box-shadow: 0 0 0 2px rgba(201, 168, 108, 0.25) !important;
}

.form-control::placeholder {
    color: #999 !important;
}

label,
.control-label {
    color: var(--astra-text) !important;
}

/* ========================================
   Карточки игроков и игр - светлая тема
   ======================================== */

.game,
.game__item,
.player-card,
.profile-card {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.game__block,
.game__block1 {
    background-color: var(--astra-white) !important;
    border-color: #ddd !important;
}

ul, ol, li, p {
    color: var(--astra-text);
}

/* ========================================
   Алерты - светлая тема с акцентами
   ======================================== */

.alert {
    background-color: var(--astra-white) !important;
    border-color: #ddd !important;
    color: var(--astra-text) !important;
}

.alert-info {
    background-color: #e3f2fd !important;
    border-color: #90caf9 !important;
    color: #1565c0 !important;
}

.alert-success {
    background-color: #e8f5e9 !important;
    border-color: #a5d6a7 !important;
    color: #2e7d32 !important;
}

.alert-warning {
    background-color: #fff3e0 !important;
    border-color: #ffcc80 !important;
    color: #e65100 !important;
}

.alert-danger {
    background-color: #ffebee !important;
    border-color: #ef9a9a !important;
    color: #c62828 !important;
}

/* ========================================
   Модальные окна - светлая тема
   ======================================== */

.modal-content {
    background-color: var(--astra-white) !important;
    border: none !important;
    color: var(--astra-text) !important;
    box-shadow: 0 5px 30px rgba(0, 0, 0, 0.2) !important;
}

.modal-header {
    background-color: var(--astra-black) !important;
    border-bottom: none !important;
    color: var(--astra-white) !important;
}

.modal-body {
    background-color: var(--astra-white) !important;
    color: var(--astra-text) !important;
}

.modal-footer {
    background-color: var(--astra-cream) !important;
    border-top: 1px solid #ddd !important;
}

.modal-title {
    color: var(--astra-white) !important;
}

/* ========================================
   Навигация и пагинация
   ======================================== */

.pagination > li > a,
.pagination > li > span {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
}

.pagination > li > a:hover,
.pagination > li > span:hover {
    background-color: var(--astra-cream) !important;
    border-color: var(--astra-orange) !important;
}

.pagination > .active > a,
.pagination > .active > span {
    background-color: var(--astra-orange) !important;
    border-color: var(--astra-orange) !important;
    color: var(--astra-white) !important;
}

.badge,
.label {
    background-color: var(--astra-orange) !important;
    color: var(--astra-white) !important;
}

/* ========================================
   Вкладки
   ======================================== */

.nav-tabs > li > a {
    background-color: var(--astra-cream) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    background-color: var(--astra-white) !important;
    border-color: var(--astra-orange) !important;
    border-bottom-color: var(--astra-white) !important;
    color: var(--astra-orange) !important;
}

/* ========================================
   Дропдауны
   ======================================== */

.dropdown-menu {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

.dropdown-menu > li > a {
    color: var(--astra-text) !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    background-color: var(--astra-cream) !important;
    color: var(--astra-orange) !important;
}

/* ========================================
   Breadcrumbs
   ======================================== */

.breadcrumb {
    background-color: var(--astra-cream) !important;
    color: var(--astra-text) !important;
}

.breadcrumb > li > a {
    color: var(--astra-orange) !important;
}

/* ========================================
   Progress bars
   ======================================== */

.progress {
    background-color: var(--astra-cream) !important;
}

.progress-bar {
    background-color: var(--astra-orange) !important;
}

/* ========================================
   Страница бронирования
   ======================================== */

.booking-table-wrapper,
.booking-new-container {
    background-color: transparent !important;
}

.booking-table {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
}

.booking-table th {
    background-color: var(--astra-black) !important;
    color: var(--astra-white) !important;
    border: 1px solid #333 !important;
}

.booking-table td.time-cell {
    background-color: #16213E !important;
    color: #FFFFFF !important;
}

.booking-table .time-cell {
    background-color: var(--astra-black) !important;
    color: var(--astra-white) !important;
}

.booking-btn,
.book-button {
    background-color: var(--astra-orange) !important;
    border: none !important;
    color: var(--astra-white) !important;
}

.booking-btn:hover,
.book-button:hover {
    background-color: var(--astra-orange-dark) !important;
    color: var(--astra-white) !important;
}

.booking-btn:disabled,
.book-button:disabled {
    background-color: #ccc !important;
    color: #666 !important;
    opacity: 0.7 !important;
}

/* Bootstrap tooltips: поверх карточки (.slots__item overflow:hidden + z-index кнопок) */
.tooltip {
    z-index: 20000 !important;
}

/* ========================================
   Карточки слотов - светлая тема ASTRA
   ======================================== */

.slots__item {
    background: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    color: var(--astra-text);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.slots__item:hover {
    border-color: var(--astra-orange) !important;
    box-shadow: 0 6px 24px rgba(201, 168, 108, 0.25) !important;
    transform: translateY(-3px);
}

.slots__item-description-item-label {
    color: var(--astra-text-light) !important;
    font-size: 12px;
    text-transform: uppercase;
}

.slots__item-description-item-value {
    color: var(--astra-text) !important;
    font-weight: 500;
}

.slots__item-description-item--time .slots__item-description-item-value {
    color: var(--astra-orange) !important;
    font-weight: bold;
    font-size: 1.3em;
}

.slots__item-place-user--empty {
    background-color: var(--astra-cream) !important;
    border: 1px dashed #ccc !important;
}

/* ========================================
   Кнопки в карточках
   ======================================== */

.slots__item .btn-primary,
.slots__item-record.btn-primary {
    background: var(--astra-gradient) !important;
    border: none !important;
    color: var(--astra-white) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 14px rgba(201, 168, 108, 0.35) !important;
    transition: all 0.2s ease !important;
}

.slots__item .btn-primary:hover,
.slots__item-record.btn-primary:hover {
    background: linear-gradient(135deg, #b8956a 0%, #c9a86c 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(201, 168, 108, 0.45) !important;
}

.slots__item .btn-danger,
.slots__item-record.btn-danger {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    border: none !important;
    color: var(--astra-white) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 14px rgba(239, 68, 68, 0.35) !important;
}

.slots__item .btn-success,
.slots__item-record.btn-success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    border: none !important;
    color: var(--astra-white) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35) !important;
}

.slots__item .btn-pink {
    background-color: #f06292 !important;
    border-color: #f06292 !important;
    color: var(--astra-white) !important;
    border-radius: 8px !important;
}

.slots__item .btn-info {
    background-color: #17a2b8 !important;
    border-color: #17a2b8 !important;
    color: var(--astra-white) !important;
    border-radius: 8px !important;
}

.slots__item .alert-info,
.slots__item-record.alert-info {
    background-color: var(--astra-cream) !important;
    border-color: #ddd !important;
    color: var(--astra-text-light) !important;
}

/* ========================================
   Календарь - ASTRA стиль
   ======================================== */

.calendar-wrapper,
.slots__calendar,
.search__calendar {
    background-color: transparent !important;
}

.calendar-button,
.search__item {
    background: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    border-radius: 12px !important;
    color: var(--astra-text) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.2s ease;
}

.calendar-button:hover,
.search__item:hover {
    border-color: var(--astra-orange) !important;
}

.calendar-button.active,
.calendar-button--active,
.search__item.active,
.search__item--active {
    background: var(--astra-black) !important;
    border: 2px solid var(--astra-orange) !important;
    color: var(--astra-white) !important;
}

.search__item-day,
.search__item-date {
    color: var(--astra-text) !important;
}

.search__item.active .search__item-date,
.search__item--active .search__item-date,
.search__item.active .search__item-day,
.search__item--active .search__item-day {
    color: var(--astra-white) !important;
}

.search__item-week {
    color: var(--astra-text-light) !important;
}

.search__item-label {
    background-color: var(--astra-orange) !important;
    color: var(--astra-white) !important;
}

/* ========================================
   Фильтры
   ======================================== */

.filter-buttons,
.slots__filter {
    background-color: transparent !important;
}

.filter-btn,
.slots__filter-btn,
.filter-link {
    background: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
    border-radius: 20px !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease;
}

.filter-btn:hover,
.slots__filter-btn:hover,
.filter-link:hover {
    border-color: var(--astra-orange) !important;
    color: var(--astra-orange) !important;
}

.filter-btn.active,
.filter-btn--active,
.slots__filter-btn.active,
.filter-link.active {
    background: var(--astra-orange) !important;
    border: none !important;
    color: var(--astra-white) !important;
    font-weight: 600;
}

/* ========================================
   Футер - тёмный ASTRA стиль
   ======================================== */

.footer,
footer {
    background: var(--astra-black) !important;
    border-top: 3px solid var(--astra-orange) !important;
    color: rgba(255, 255, 255, 0.8) !important;
}

.footer a,
footer a {
    color: var(--astra-orange) !important;
}

.footer a:hover,
footer a:hover {
    color: var(--astra-orange-light) !important;
}

/* ========================================
   Ссылки
   ======================================== */

a {
    color: var(--astra-orange);
}

a:hover {
    color: var(--astra-orange-dark);
}

.game__list-user-name a,
.slots__item a {
    color: var(--astra-text) !important;
}

.game__list-user-name a:hover,
.slots__item a:hover {
    color: var(--astra-orange) !important;
}

/* ========================================
   Секция с играми
   ======================================== */

.content,
.days,
.content.days {
    background-color: var(--astra-cream) !important;
    color: var(--astra-text) !important;
}

.slots,
.games-section,
.slots__list {
    background-color: transparent !important;
}

.slots__section-title,
.slots h3,
.slots h4,
.days__title,
.days__item-title {
    color: var(--astra-text) !important;
}

.slots__empty,
.slots__item--empty,
.no-games-message {
    background: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    border-radius: 16px !important;
    color: var(--astra-text-light) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
}

/* ========================================
   Глобальные btn стили
   ======================================== */

.btn-primary {
    background-color: var(--astra-orange) !important;
    border-color: var(--astra-orange) !important;
    color: var(--astra-white) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--astra-orange-dark) !important;
    border-color: var(--astra-orange-dark) !important;
}

.btn-default {
    background-color: var(--astra-white) !important;
    border-color: #ddd !important;
    color: var(--astra-text) !important;
}

.btn-default:hover {
    background-color: var(--astra-cream) !important;
    border-color: var(--astra-orange) !important;
}

/* ========================================
   Разделитель
   ======================================== */

hr {
    border-color: #ddd;
}

/* ========================================
   Профиль и статистика
   ======================================== */

.profile,
.profile-info,
.user-profile,
.stats,
.statistics {
    background-color: var(--astra-white) !important;
    border: 1px solid #ddd !important;
    color: var(--astra-text) !important;
}

/* ========================================
   Иконки карточек - оранжевый цвет
   ======================================== */

.slots__item-description-item:before,
.game__description-item:before {
    filter: brightness(0) saturate(100%) invert(11%) sepia(31%) saturate(2500%) hue-rotate(200deg) brightness(95%) contrast(92%) !important;
}

.slots__item-description-item--time:before,
.game__description-item--time:before,
.slots__item-description-item--place:before,
.game__description-item--place:before,
.slots__item-description-item--level:before,
.game__description-item--level:before,
.slots__item-description-item--price:before,
.game__description-item--price:before,
.slots__item-description-item--coach:before,
.game__description-item--coach:before,
.slots__item-description-item--status:before,
.game__description-item--status:before,
.slots__item-description-item--format:before,
.game__description-item--format:before,
.slots__item-description-item--club:before,
.game__description-item--club:before,
.slots__item-description-item--organizer:before,
.game__description-item--organizer:before {
    filter: brightness(0) saturate(100%) invert(11%) sepia(31%) saturate(2500%) hue-rotate(200deg) brightness(95%) contrast(92%) !important;
}

/* Кнопки записи поверх ссылки-оверлея (.slots__item-link z-index: 101 в custom.css) */
.slots__item-record {
    position: relative;
    z-index: 102;
}

.slots__item-record a,
.slots__item a.btn {
    position: relative;
    z-index: 102;
}

/* Блок с кнопками и игроками — выше оверлея карточки */
.slots__item .slots__item-place,
.slots__item > p {
    position: relative;
    z-index: 102;
}

/* Страница игры: кнопки как в Django (game__record) */
.game__block .slots__item-record,
.game__block .game__record {
    position: relative;
    z-index: 2;
}

/* Иконка формата */
.slots__item-description-item--format:before,
.game__description-item--format:before {
    content: "🏆" !important;
    filter: none !important;
}

/* Иконка клуба */
.slots__item-description-item--club:before,
.game__description-item--club:before {
    content: "🏠" !important;
    filter: none !important;
}

/* Иконка организатора */
.slots__item-description-item--organizer:before,
.game__description-item--organizer:before {
    content: "👤" !important;
    filter: none !important;
}
