@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

/* ==========================================================================
   BALI RUST — конфигурация цветов
   Палитра взята с постера логотипа: закат/лава (оранжево-красный градиент),
   тлеющий костёр (золото), океан (бирюза), пепельно-чёрный фон.
   Селектор data-theme оставлен как в оригинале (red_black) — именно под
   этим атрибутом платформа применяет кастомную тему. Если в панели
   администратора имя темы отличается, поменяйте [data-theme=...] здесь.
   ========================================================================== */
:root[data-theme=red_black] {
    /* тёплое стекло / нейтральные поверхности (пепел) */
    --accent-color-200: rgba(24, 14, 9, 0.55);
    --accent-color-300: rgba(24, 14, 9, 0.78);
    --accent-color-400: rgb(224 137 74);
    --accent-color-500: rgba(140, 40, 12, 0.55);
    --accent-color-600: rgba(255, 122, 26, 0.18);

    /* фирменные цвета: лава/закат */
    --accent-color-800: #ff6a13;
    --accent-color-900: #c81d25;
    --accent-color-1000: #fff6ea;

    /* океан — вторичный акцент (бонусы/промо) */
    --teal-color-300: rgba(31, 182, 166, 0.16);
    --teal-color-600: rgba(31, 182, 166, 0.32);
    --teal-color-800: #1fb6a6;
    --teal-glow: rgba(31, 182, 166, 0.45);

    --button-glow-color1: rgba(255, 170, 110, 0.85);
    --button-glow-color2: #ff8a3d;
    --button-glow-color3: #d62828;

    --bonus-active-color: var(--accent-color-500);
    --bonus-default-color: var(--accent-color-200);

    --font-color-700: #fff6ea;
    --font-color-800: rgba(255, 246, 234, .72);
    --font-color-900: #a3907f;

    --bg-color-600: #201209;
    --bg-color-800: #080503;
    --bg-color-700: #140c07;
    --bg-color-900: #140c07;
    --bg-modal: #0a0503e6;
    --bg-discount: #521608;

    --product-items-trans-bg-color: rgba(12, 7, 5, .45);

    --border-radius-10: 14px;
    --border-radius-5: 8px;

    --font-weight-600: 600;
    --font-weight-800: 800;

    --font-size-12: 12px;
    --font-size-16: 16px;
    --font-size-18: 18px;
    --font-size-30: 30px;
    --font-size-36: 36px;

    /* фон инфоблока — вулканический закат без внешней картинки */
    --bg-block:
        radial-gradient(circle at 25% 15%, rgba(255, 138, 61, .55), transparent 55%),
        radial-gradient(circle at 85% 85%, rgba(31, 182, 166, .28), transparent 55%),
        linear-gradient(160deg, #2a0f05 0%, #140a06 55%, #0a0503 100%);
}

* {
    font-family: Montserrat, sans-serif;
    user-select: none;
    box-sizing: border-box;
}

/* Все изображения по умолчанию декодируются асинхронно и без задержки
   layout-only лейаута — так они прорисовываются сразу по готовности,
   а не только после полной раскладки страницы. */
img {
    image-rendering: -webkit-optimize-contrast;
}

/* Скрытые элементы */
.container.bannerContainer,
.Shop-module__header,
.Header-module__logoWrapper,
.PlayerMenu-module__profileLink,
.LangSwitcher-module__wrapper,
.PlayerBalance-module__wrapper,
.Shop-module__wrapper .boxFooter,
.ProfileContent-module__header,
.BasketContent-module__header.boxHeader,
.BasketSearch-module__wrapper,
.HistoryFilters-module__wrapper,
.HistoryContent-module__header.boxHeader,
.Product-module__oldPrice,
.WelcomeSelectServer-module__header,
/* Звёздочка "добавить в избранное" на карточках товаров */
.Product-module__favorite {
    display: none;
}

.Shop-module__wrapper .boxBody {
    padding: 0px;
    background: transparent;
}

.BasketFilters-module__serverSelector,
.HeaderNav-module__wrapper {
    margin-left: 0px;
}

a, p, button {
    font-size: var(--font-size-16);
}

/* ==========================================================================
   Фоновые «свечения» — как на survive-rust.online (размытые цветные пятна)
   ========================================================================== */
body {
    position: relative;
    min-height: 100vh;
    background-color: var(--bg-color-800);
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: left -25px bottom -10px, right -25px bottom -10px, 8% 0%, 92% 100%, 0 0;
    background-size: 240px auto, 240px auto, 900px 900px, 900px 900px, auto;
    background-attachment: fixed, fixed, fixed, fixed, fixed;
    background-image:
        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20320%20420%22%3E%3Cg%20fill%3D%22%23160d07%22%20fill-opacity%3D%220.6%22%3E%3Cpath%20d%3D%22M150%20420%20C145%20340%20152%20240%20160%20150%20C168%20240%20175%20340%20170%20420%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C90%20130%2040%2090%2010%2030%20C70%2060%20130%20100%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C230%20130%20280%2090%20310%2030%20C250%2060%20190%20100%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C90%20140%2030%20150%200%20190%20C70%20180%20130%20165%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C230%20140%20290%20150%20320%20190%20C250%20180%20190%20165%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C130%2090%20100%2040%2070%200%20C120%2030%20155%2090%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C190%2090%20220%2040%20250%200%20C200%2030%20165%2090%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C152%2080%20150%2030%20150%200%20C175%2030%20170%2090%20160%20150%20Z%22/%3E%3C/g%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20320%20420%22%3E%3Cg%20fill%3D%22%23160d07%22%20fill-opacity%3D%220.6%22%3E%3Cpath%20d%3D%22M150%20420%20C145%20340%20152%20240%20160%20150%20C168%20240%20175%20340%20170%20420%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C90%20130%2040%2090%2010%2030%20C70%2060%20130%20100%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C230%20130%20280%2090%20310%2030%20C250%2060%20190%20100%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C90%20140%2030%20150%200%20190%20C70%20180%20130%20165%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C230%20140%20290%20150%20320%20190%20C250%20180%20190%20165%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C130%2090%20100%2040%2070%200%20C120%2030%20155%2090%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C190%2090%20220%2040%20250%200%20C200%2030%20165%2090%20160%20150%20Z%22/%3E%3Cpath%20d%3D%22M160%20150%20C152%2080%20150%2030%20150%200%20C175%2030%20170%2090%20160%20150%20Z%22/%3E%3C/g%3E%3C/svg%3E"),
        radial-gradient(circle, rgba(255, 106, 19, .22), transparent 70%),
        radial-gradient(circle, rgba(31, 182, 166, .16), transparent 70%),
        linear-gradient(180deg, #0b0603 0%, #150c07 40%, #1c0f08 75%, #170a06 100%);
    overflow-x: hidden;
}

/* Шапка сайта */
.Header-module__wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    row-gap: 12px;
    column-gap: 15px;
    min-height: 80px;
    height: auto;
    border-radius: var(--border-radius-10);
    margin-top: 10px;
    padding: 15px 15px 15px 20px;
    border: 1px solid var(--accent-color-600);
    margin-bottom: 10px;
    background: linear-gradient(180deg, rgba(255, 122, 26, .06), transparent 60%), var(--bg-color-700);
}

.HeaderNav-module__wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    row-gap: 10px;
    column-gap: 18px;
}

.Header-module__wrapper.header-two {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0px 20px !important;
    border: 0px !important;
    background: transparent;
}

.Logo-module__wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.Logo-module__link {
    font-size: var(--font-size-36);
    font-weight: var(--font-weight-800);
    letter-spacing: 0.5px;
    background: linear-gradient(90deg, #ffb84d 0%, #ff6a13 55%, #c81d25 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--accent-color-800);
    text-shadow: 0 0 30px rgba(255, 106, 19, .35);
}

.Logo-module__tagline {
    font-size: var(--font-size-12);
    letter-spacing: .3px;
    color: var(--teal-color-800);
    opacity: 0.85;
    margin-top: 2px;
}

/* Навигация и Ссылки */
.HeaderNav-module__link {
    display: flex;
    align-items: center;
    gap: 5px;
    border-radius: var(--border-radius-5);
    transition: 0.2s;
}

.HeaderNav-module__link img {
    opacity: 0.8;
    transition: 0.2s;
}

.HeaderNav-module__link:hover,
.HeaderNav-module__link:focus {
    color: var(--accent-color-1000);
}

.HeaderNav-module__link:hover img,
.HeaderNav-module__link:focus img {
    opacity: 1;
}

.HeaderNav-module__badge {
    background: linear-gradient(90deg, #ff6a13, #c81d25);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 999px;
    margin-left: 2px;
    letter-spacing: .3px;
    box-shadow: 0 0 10px rgba(255, 106, 19, .45);
    vertical-align: middle;
    line-height: 1.4;
}

/* ==========================================================================
   Страница «Медиа» — стримеры/медиапартнёры + модалка «Стать партнёром»
   ========================================================================== */
.mediaModalWrapper .mediaModalPosition {
    background: var(--bg-color-700);
    border: 1px solid rgba(255, 122, 26, .18);
    border-radius: var(--border-radius-10);
    width: min(920px, 92vw);
    max-height: 85vh;
    overflow-y: auto;
    padding: 24px;
    box-shadow: 0 0 60px rgba(0, 0, 0, .55);
}

.mediaModalHeader {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
    flex-wrap: wrap;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.mediaModalTitle {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: var(--font-size-30);
    font-weight: var(--font-weight-800);
    color: var(--font-color-700);
}

.mediaModalIcon {
    color: var(--accent-color-800);
    font-size: var(--font-size-18);
}

.mediaModalSubtitle {
    color: var(--font-color-900);
    margin-top: 6px;
    font-size: var(--font-size-16);
}

.mediaPartnerBtn {
    width: auto !important;
    padding: 12px 22px;
    white-space: nowrap;
    text-decoration: none;
}

.mediaModalSectionTitle {
    font-weight: var(--font-weight-600);
    letter-spacing: .5px;
    text-transform: uppercase;
    color: var(--font-color-800);
    font-size: var(--font-size-12);
    margin-bottom: 14px;
}

.mediaStreamersGrid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 14px;
}

.mediaStreamerCard {
    background: rgba(0, 0, 0, .3);
    border: 1px solid rgba(255, 122, 26, .1);
    border-radius: var(--border-radius-10);
    padding: 20px;
    text-align: center;
    transition: 0.2s;
}

.mediaStreamerCard:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 122, 26, .35);
    box-shadow: 0 0 22px rgba(255, 106, 19, .18);
}

.mediaStreamerAvatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    margin-bottom: 12px;
    border: 2px solid var(--accent-color-800);
    object-fit: cover;
}

.mediaStreamerName {
    font-weight: var(--font-weight-600);
    color: var(--font-color-700);
    font-size: var(--font-size-16);
}

.mediaStreamerSteam,
.mediaStreamerId {
    color: var(--font-color-900);
    font-size: var(--font-size-12);
    margin-top: 2px;
}

.mediaStreamerPlatform {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 12px;
    padding: 6px 16px;
    border-radius: var(--border-radius-5);
    font-size: var(--font-size-12);
    font-weight: 700;
    color: #fff;
    background: var(--platform-color, var(--accent-color-800));
    text-decoration: none;
    transition: 0.2s;
}

.mediaStreamerPlatform:hover {
    filter: brightness(1.15);
    box-shadow: 0 0 16px var(--platform-color, rgba(255, 106, 19, .5));
    transform: scale(0.97);
}

.partnerModalContent {
    padding: 32px 28px;
    max-width: 420px;
    text-align: center;
}

.partnerModalIcon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--accent-color-600);
    border: 2px solid rgba(255, 122, 26, .4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    font-weight: 800;
    color: var(--accent-color-800);
    margin: 0 auto 16px;
}

.partnerModalTitle {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-800);
    color: var(--accent-color-800);
    margin-bottom: 12px;
}

.partnerModalText {
    color: var(--font-color-800);
    font-size: var(--font-size-16);
    line-height: 1.5;
    margin-bottom: 22px;
}

.partnerModalOkBtn {
    width: 100% !important;
    text-decoration: none;
    display: block;
}

@media (max-width: 680px) {
    .mediaModalHeader { flex-direction: column; align-items: stretch; }
    .mediaPartnerBtn { width: 100% !important; text-align: center; }
}


/* Профиль в шапке */
.PlayerProfileBtn-module__profileLink img {
    max-height: 56px;
    border-radius: var(--border-radius-5);
    border: 1.5px solid var(--accent-color-600);
}

.PlayerProfileBtn-module__wrapper {
    padding: 10px 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s;
}

.PlayerProfileBtn-module__wrapper:hover {
    transform: scale(0.97);
}

.PlayerProfileBtn-module__userProfileContainer {
    display: flex;
    align-items: center;
    gap: 10px;
}

.PlayerProfileBtn-module__playerName {
    color: var(--accent-color-400);
    font-size: var(--font-size-18);
}

.PlayerProfileBtn-module__playerBalance {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    background: var(--accent-color-600);
    border: 1px solid rgba(255, 122, 26, .25);
    border-radius: var(--border-radius-5);
    padding: 5px;
    width: 100%;
    min-width: 100px;
    transition: 0.2s;
    cursor: pointer;
    gap: 5px;
    color: inherit;
}

.PlayerProfileBtn-module__playerBalance:hover {
    transform: scale(0.97);
    color: var(--accent-color-1000);
    box-shadow: 0 0 20px rgba(255, 106, 19, .25);
}

.PlayerProfileBtn-module__playerInfo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
}

.PlayerProfileBtn-module__playerBalance img {
    opacity: 0.8;
    transition: 0.2s;
}

.PlayerProfileBtn-module__playerBalance:hover img {
    opacity: 1;
}

/* Социальные сети */
.SocialIcons-module__wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.SocialIcons-module__icon img {
    width: 28px;
    height: 28px;
    opacity: 0.8;
    transition: 0.2s;
}

.SocialIcons-module__icon:hover img {
    opacity: 1;
    transform: translateY(-2px);
    filter: drop-shadow(0 0 8px rgba(255, 106, 19, .6));
}

/* Информационный блок и Мониторинг */
.InformationBlock-module__wrapper {
    display: flex;
    flex-direction: row;
    min-height: 180px;
    gap: 10px;
    margin-bottom: 10px;
}

.InformationBlock-module__content {
    height: auto;
    width: 70%;
    border-radius: var(--border-radius-10);
    display: block;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    border: 1px solid rgba(255, 122, 26, .18);
    box-shadow: 0 0 40px rgba(255, 106, 19, .12) inset;
    transition: 0.3s;
}

.InformationBlock-module__content:hover {
    box-shadow: 0 0 50px rgba(255, 106, 19, .22) inset;
}

.InformationBlock-module__image {
    width: 100%;
    height: 100%;
    min-height: 180px;
    object-fit: cover;
    display: block;
}

.ServerStatus-module__wrapper {
    width: 30%;
    height: auto;
    display: flex;
    gap: 10px;
    flex-direction: column;
}

.ServerStatus-module__server {
    width: 100%;
    height: 50%;
    padding: 20px;
    border-radius: var(--border-radius-10);
    border: 1px solid rgba(255, 255, 255, .04);
    transition: 0.2s;
}

.ServerStatus-module__server:hover {
    border-color: rgba(255, 122, 26, .25);
}

.ServerStatus-module__server.a {
    background: linear-gradient(90deg, rgb(19, 12, 10), rgb(38, 22, 15) 100%);
}

.ServerStatus-module__server.a .ServerStatus-module__progress-bar {
    background: linear-gradient(90deg, #ff6a13, #c81d25);
    box-shadow: 0 0 12px rgba(255, 106, 19, .6);
}

.ServerStatus-module__server.b {
    background: linear-gradient(90deg, rgb(10, 16, 15), rgb(13, 27, 25) 100%);
}

.ServerStatus-module__server.b .ServerStatus-module__progress-bar {
    background: linear-gradient(90deg, #1fb6a6, rgba(31, 182, 166, .5));
    box-shadow: 0 0 12px rgba(31, 182, 166, .5);
}

.ServerStatus-module__info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

.ServerStatus-module__name {
    font-size: var(--font-size-18);
}

.ServerStatus-module__connect-btn {
    color: var(--accent-color-1000);
    border-radius: var(--border-radius-5);
    font-size: var(--font-size-12);
    padding: 5px 15px;
    background: var(--accent-color-300);
    transition: 0.2s;
    cursor: pointer;
    border: none;
}

.ServerStatus-module__connect-btn:hover {
    background: var(--accent-color-600);
    box-shadow: 0 0 15px rgba(255, 106, 19, .3);
}

.ServerStatus-module__progress-container {
    height: 12px;
    background: var(--accent-color-200);
    border-radius: var(--border-radius-5);
    width: 70%;
}

.ServerStatus-module__progress-bar {
    height: 100%;
    border-radius: var(--border-radius-5);
}

.ServerStatus-module__stats {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

/* Авторизация */
.PlayerMenu-module__loginLink {
    background: linear-gradient(90deg, #ff6a13, #c81d25);
    color: var(--accent-color-1000);
    border-radius: var(--border-radius-5);
    padding: 10px 22px;
    margin-right: 0px;
    white-space: nowrap;
    box-shadow: 0 0 20px rgba(255, 106, 19, .3);
    transition: 0.2s;
}

.PlayerMenu-module__loginLink:hover,
.PlayerMenu-module__loginLink:focus {
    transform: scale(0.97);
    box-shadow: 0 0 28px rgba(255, 106, 19, .45);
}

/* Серверный селектор и Категории */
.Servers-module__server {
    min-width: unset;
    max-width: unset;
    border-radius: var(--border-radius-10);
    color: var(--font-color-800);
    min-height: 50px;
    font-size: var(--font-size-18);
    transition: 0.2s;
}

.Servers-module__server.Servers-module__active,
.Servers-module__server:hover,
.Servers-module__server:focus {
    background-color: var(--bg-color-600);
    box-shadow: 0 0 18px rgba(255, 106, 19, .15) inset;
}

.Servers-module__servers {
    margin: 0px -5px;
}

.Categories-module__categories {
    display: flex;
    width: 101%;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 0px;
}

.Categories-module__category {
    cursor: pointer;
    color: var(--font-color-900);
    background-color: var(--bg-color-700);
    padding: 20px;
    margin: 5px;
    flex-grow: 1;
    display: flex;
    justify-content: flex-start;
    min-height: 80px;
    align-items: center;
    border-radius: var(--border-radius-10);
    position: relative;
    overflow: hidden;
    transition: 0.2s;
    border: 1px solid transparent;
}

.Categories-module__category .Categories-module__image {
    width: 140px;
    position: absolute;
    bottom: 0px;
    right: 0px;
    overflow: hidden;
    transition: 0.2s;
}

.Categories-module__category:hover .Categories-module__image {
    transform: scale(1.05);
}

.Categories-module__category.Categories-module__active,
.Categories-module__category:hover,
.Categories-module__category.Categories-module__enableFocus:focus {
    background-color: var(--accent-color-600);
    color: var(--font-color-700);
    border-color: rgba(255, 122, 26, .35);
    box-shadow: 0 0 22px rgba(255, 106, 19, .2);
}

/* Поиск */
.Search-module__wrapper {
    margin-top: 5px;
    min-height: 50px;
    border-radius: var(--border-radius-10);
}

.Search-module__iconWrapper {
    background: transparent;
}

/* Сетка товаров */
.Products-module__grid5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.Products-module__grid5>div:nth-child(-n+4) {
    grid-column: auto / span 1;
}

.Products-module__grid5>div:nth-child(1),
.Products-module__grid5>div:nth-child(2),
.Products-module__grid5>div:nth-child(3),
.Products-module__grid5>div:nth-child(4) {
    width: calc(25% - 7.5px);
}

.Products-module__grid5>div:nth-child(5) {
    grid-column-start: 1;
}

.Products-module__wrapper {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
    display: flex !important;
}

/* Карточка товара */
.Product-module__wrapper {
    min-height: 270px;
    display: flex;
    align-items: center;
    border-radius: var(--border-radius-10);
    width: calc(20% - 8px);
    justify-content: center;
    transition: 0.2s;
    cursor: pointer;
    position: relative;
    background: var(--product-items-trans-bg-color);
    border: 1px solid rgba(255, 255, 255, .04);
}

.Product-module__wrapper:hover {
    transform: scale(0.97);
    z-index: 1;
    border-color: rgba(255, 122, 26, .3);
    box-shadow: rgba(255, 106, 19, 0.25) 0px 0px 25px 0px;
}

.Product-module__price {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    align-items: center;
    font-size: var(--font-size-18);
    background: var(--accent-color-300);
    padding: 5px 12px;
    border-radius: var(--border-radius-5);
    backdrop-filter: blur(5px);
    color: var(--accent-color-1000);
    border: 1px solid rgba(255, 122, 26, .2);
}

.Product-module__img {
    width: 90%;
    margin: 30px 0px;
    filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .5));
}

.Product-module__name {
    font-size: var(--font-size-16);
    align-items: center;
    justify-content: center;
    display: none !important;
    background-color: var(--accent-color-200);
    backdrop-filter: blur(5px);
}

.Product-module__discount {
    background-color: var(--bg-discount);
    font-size: var(--font-size-18);
    border-radius: var(--border-radius-5);
    position: absolute;
    top: 10px;
    right: 10px;
}

.Product-module__tag {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    align-items: center;
    backdrop-filter: blur(5px);
}

.Product-module__tag span {
    font-size: var(--font-size-18);
    padding: 5px 12px;
    color: var(--accent-color-1000);
    border-radius: var(--border-radius-5);
}

/* Модальные окна */
.customModalPosition {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-modal);
    transition: 1s;
    flex-direction: column;
    gap: 10px;
}

.customModalWrapper .boxHeader {
    font-size: var(--font-size-18);
    border-radius: 10px 10px 0px 0px;
    background: linear-gradient(90deg, rgba(255, 122, 26, .12), transparent);
}

.customModalWrapper .boxFooter {
    display: flex;
    justify-content: space-around;
    gap: 15px;
    border-radius: 0px 0px 10px 10px;
}

.customModalContent {
    background-color: var(--bg-color-700);
    border-radius: 10px;
    overflow: hidden;
    margin: 0px;
    border: 1px solid rgba(255, 122, 26, .1);
}

.ModalLayout-module__positionWrapper {
    align-items: center;
    background: var(--bg-modal);
}

/* Кнопки и анимации */
.Button-module__btn {
    border-radius: var(--border-radius-5);
}

.Button-module__accent {
    width: 60%;
    position: relative;
    background-color: var(--accent-color-800);
    background-image: linear-gradient(90deg, #ff8a3d, #ff6a13 45%, #c81d25 100%);
    background-size: 300% 300%;
    animation: 3s ease 0s infinite normal none running button-shimmer;
    border: none;
    color: var(--accent-color-1000);
    font-weight: var(--font-weight-800);
    transition: 0.3s;
    overflow: hidden;
    box-shadow: rgba(255, 106, 19, 0.35) 0px 0px 25px 0px;
}

.Button-module__accent::after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
    border-radius: var(--border-radius-5);
    opacity: 0;
    animation: 2s ease-in-out 0s infinite normal none running button-pulse;
}

.Button-module__gray,
.Button-module__btn.Button-module__gray {
    width: 40%;
    background-color: var(--teal-color-300);
    border: 1px solid var(--teal-color-600);
    color: rgb(255, 255, 255);
    transition: background-color 0.3s, box-shadow .3s;
}

.Button-module__btn.Button-module__gray:hover,
.Button-module__btn.Button-module__gray:focus {
    background-color: var(--teal-color-600);
    transform: scale(0.97);
    box-shadow: 0 0 20px var(--teal-glow);
}

.Button-module__btn.Button-module__accent:hover,
.Button-module__btn.Button-module__accent:focus {
    transform: scale(0.97);
    box-shadow: rgba(255, 106, 19, 0.5) 0px 0px 32px 0px;
}

@keyframes button-shimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

@keyframes button-pulse {
    0% { transform: scale(1); opacity: 0; }
    50% { opacity: 0.3; }
    100% { transform: scale(1.2); opacity: 0; }
}

/* Пополнение баланса */
.Balance-module__inputWrapper {
    text-align: center;
    position: relative;
}

.Balance-module__input {
    width: 100%;
    padding: 10px 60px;
    margin-top: 8px;
    border: 1px solid rgba(255, 122, 26, 0.15);
    border-radius: 4px;
    font-size: 16px;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.25);
    color: rgb(255, 255, 255);
    height: 45px;
}

.Balance-module__input:focus {
    outline: none;
    border-color: var(--accent-color-800);
    box-shadow: 0 0 14px rgba(255, 106, 19, .25);
}

.Balance-module__label {
    display: flex;
    text-align: left;
}

.Balance-module__currency-left {
    position: absolute;
    left: 15px;
    top: 25px;
    transform: translateY(-50%);
    font-size: 16px;
    color: rgb(255, 255, 255);
    opacity: 0.8;
    pointer-events: none;
}

.Balance-module__currency-right {
    position: absolute;
    right: 10px;
    top: 25px;
    transform: translateY(-50%);
    font-size: 14px;
    color: rgb(255, 255, 255);
    opacity: 0.8;
    pointer-events: none;
    background-color: rgba(0, 0, 0, 0.3);
    padding: 2px 8px;
    border-radius: 3px;
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

.Balance-module__quickAmounts {
    display: flex;
    margin-top: 10px;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

.Balance-module__quickAmount {
    padding: 8px 12px;
    background-color: var(--accent-color-200);
    border-radius: var(--border-radius-5);
    cursor: pointer;
    transition: 0.2s;
    min-width: 50px;
    text-align: center;
    border: 1px solid var(--bg-color-600);
    width: 100%;
}

.Balance-module__quickAmount:hover {
    background-color: var(--accent-color-600);
    border-color: rgba(255, 122, 26, .4);
    transform: scale(0.97);
}

.Balance-module__finalAmount {
    padding: 10px;
    background: var(--accent-color-200);
    border: 1px solid var(--accent-color-600);
    border-radius: var(--border-radius-5);
    margin-top: 20px;
}

/* Бонусы */
.Balance-module__bonusItem {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--bonus-default-color);
    border-radius: var(--border-radius-5);
    padding: 10px 15px;
    margin-bottom: 5px;
    color: rgb(255, 255, 255);
    transition: 0.3s ease-out;
    position: relative;
    overflow: hidden;
}

.Balance-module__bonusItem::before {
    content: "";
    position: absolute;
    top: 0px;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: 0.4s;
}

.Balance-module__bonusItem--active {
    background-color: var(--bonus-active-color);
    box-shadow: rgba(255, 106, 19, 0.7) 0px 0px 15px 0px;
    transform: translateX(0px) scale(1.02);
    z-index: 1;
    border-left: 4px solid var(--accent-color-800);
}

.Balance-module__bonusItem--active::before { left: 100%; }

.Balance-module__bonusItem--active .Balance-module__bonusPercent {
    font-size: 18px;
    text-shadow: rgba(255, 255, 255, 0.5) 0px 0px 5px;
}

.Balance-module__bonusItem--active .Balance-module__bonusAmount {
    font-weight: bold;
    text-shadow: rgba(255, 255, 255, 0.5) 0px 0px 5px;
}

.Balance-module__bonusPercent { font-weight: bold; font-size: 16px; transition: 0.3s; }
.Balance-module__bonusAmount { font-size: 14px; transition: 0.3s; }

.Balance-module__bonusActiveIcon {
    position: absolute;
    right: -30px;
    width: 24px;
    height: 24px;
    background-color: rgba(255, 255, 255, 0.9);
    color: var(--accent-color-900);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    transition: 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    opacity: 0;
}

.Balance-module__bonusItem--active .Balance-module__bonusActiveIcon {
    right: 240px;
    opacity: 1;
}

.has-active-bonus {
    animation: 1s ease-in-out 0s 1 normal none running bonus-pulse;
}

@keyframes bonus-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.02); }
}

#toggleBonusButton {
    border-radius: var(--border-radius-10);
    padding: 10px 15px;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    font-weight: 500;
    background-color: var(--teal-color-300);
    border: 1px solid var(--teal-color-600);
    color: rgb(255, 255, 255);
    transition: 0.3s;
    margin: 0px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 360px;
}

#toggleBonusButton:hover {
    background-color: var(--teal-color-600);
    transform: scale(0.97);
    box-shadow: 0 0 20px var(--teal-glow);
}

.toggleBonusButtonWrapper,
.customModalPosition>.toggleBonusButtonWrapper {
    width: 100%;
    max-width: 380px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0px;
}

.Balance-module__totalAmount {
    font-size: 16px;
    color: var(--font-color-700);
    text-align: center;
    padding: 10px 0px;
    font-weight: 500;
}

#totalAmountWithBonus {
    font-weight: 700;
    color: var(--accent-color-400);
    font-size: 18px;
    transition: 0.3s;
}

.highlight-amount {
    animation: 0.5s ease 0s 1 normal none running highlight-amount;
}

@keyframes highlight-amount {
    0%, 100% { color: var(--accent-color-400); }
    50% { color: var(--accent-color-1000); }
}

/* Платежные методы */
.payment-method-block {
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.payment-method-item {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    padding: 10px;
    background: var(--bonus-default-color);
    border-radius: var(--border-radius-5);
    transition: 0.2s;
    text-decoration: none;
    color: inherit;
    border: 1px solid transparent;
}

.payment-method-item:hover {
    transform: scale(0.97);
    border-color: rgba(255, 122, 26, .3);
}

.payment-method-item img {
    width: 32px;
}

.payment-method-info {
    border-left: solid 2px var(--bg-color-600);
    padding-left: 25px;
}

.payment-method-title {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-600);
}

.payment-method-subtitle {
    text-align: left;
    font-size: var(--font-size-12);
}

/* Внутреннее содержимое модалок продуктов */
.ItemContent-module__footer,
.KitContent-module__footer,
.SelectContent-module__footer {
    gap: 15px;
    border-radius: 0px 0px 10px 10px;
}

.ProductModal-module__header {
    border-radius: 10px 10px 0px 0px;
    justify-content: center;
    font-size: var(--font-size-30);
}

.productModalGiveText {
    color: var(--font-color-900);
    border: 2px dashed var(--bg-color-800);
    padding: 8.5px;
    border-radius: var(--border-radius-5);
    background: var(--accent-color-200);
    font-size: var(--font-size-12);
}

.ProductModal-module__form .productModalFormRow:nth-child(2) {
    display: none;
}

.TotalSum-module__currency,
.TotalSum-module__input,
.CountSelector-module__input {
    background: var(--accent-color-200);
}

.TotalSum-module__currency { border-radius: 5px 0px 0px 5px; }
.TotalSum-module__input { border-radius: 0px 5px 5px 0px; }

.CountSelector-module__changeCountBtn {
    background: var(--bg-color-800);
}

.CountSelector-module__changeCountBtn.CountSelector-module__left {
    border-right: 2px solid var(--bg-color-800);
    border-radius: 5px 0px 0px 5px;
}

.CountSelector-module__changeCountBtn.CountSelector-module__right {
    border-left: 2px solid var(--bg-color-800);
    border-radius: 0px 5px 5px 0px;
}

.CountSelector-module__changeCountBtn:hover,
.CountSelector-module__changeCountBtn:focus {
    background: var(--bg-color-800);
    transform: scale(0.97);
}

.ProductModal-module__command,
.ProductModal-module__bp,
.ProductModal-module__item,
.ProductModal-module__dropdown {
    width: 580px;
}

/* Наборы / КИТы */
.KitContent-module__containsItem {
    border-radius: var(--border-radius-5);
    background-color: var(--accent-color-200);
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s;
}

.KitContent-module__containsItem:hover {
    transform: scale(0.97);
    box-shadow: 0 0 20px rgba(255, 106, 19, .15);
}

.KitContent-module__itemName,
.KitContent-module__itemCount {
    background-color: transparent;
    text-align: center;
}

.KitContent-module__itemCount {
    padding: 10px;
}

.KitContent-module__itemImg {
    width: 80%;
}

/* Профиль пользователя */
.btnContainer {
    margin-top: 10px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.btnContainer .Button-module__back {
    background: var(--bg-color-700);
    transition: 0.2s;
    border-radius: var(--border-radius-10) !important;
    border: 1px solid rgba(255, 122, 26, .12);
}

.btnContainer .Button-module__back:hover {
    background: var(--bg-color-600);
    transform: scale(0.97);
    box-shadow: 0 0 16px rgba(255, 106, 19, .2);
}

.ProfileNav-module__navItem {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--accent-color-200);
    border-radius: var(--border-radius-5);
}

.ProfileNav-module__navItem img {
    width: 20px;
    opacity: 0.8;
    transition: 0.2s;
}

.ProfileNav-module__navItem:hover img,
.ProfileNav-module__navItem:focus img,
.ProfileNav-module__navItem.active img {
    opacity: 1;
}

.ProfileNav-module__logOut {
    width: 100%;
    background: linear-gradient(90deg, #8a1c1c, #521608) !important;
}

.boxBody:last-child {
    border-radius: var(--border-radius-10);
}

.ProfileNav-module__navItem:hover,
.ProfileNav-module__navItem:focus,
.ProfileNav-module__navItem.ProfileNav-module__active {
    color: var(--font-color-800);
    background: var(--accent-color-600);
    border-radius: var(--border-radius-5);
    transform: scale(0.97);
}

.ProfileNav-module__body {
    gap: 5px;
}

.Selector-module__dropDownCurrentItem,
.ProfileContent-module__box {
    padding: 10px;
    background: var(--accent-color-200);
    border-radius: var(--border-radius-5);
    margin-top: 3px;
    margin-bottom: 10px;
}

.ProfileContent-module__title,
.BasketContent-module__header,
.HistoryContent-module__header {
    display: block;
    font-size: var(--font-size-12);
}

.ProfileNav-module__header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 20px;
    overflow: hidden;
    z-index: 1;
    border-radius: 10px 10px 0px 0px;
}

.ProfileNav-module__header::before {
    content: "";
    position: absolute;
    inset: 0px;
    background-image: var(--user-avatar, var(--bg-block));
    background-size: cover;
    background-position: center center;
    filter: blur(5px);
    opacity: 0.3;
    z-index: -1;
    transform: scale(1.1);
}

.ProfileNav-module__img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--accent-color-800);
    z-index: 2;
}

.ProfileNav-module__name {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-600);
    color: var(--font-color-700);
    z-index: 2;
}

.ProfileContent-module__infoWrapper {
    margin-bottom: 10px;
}

.ProfileNav-module__body.boxBody {
    padding: 15px 15px 10px;
}

.ProfileNav-module__wrapper .boxFooter {
    padding: 5px 15px 15px;
}

.ProfileNav-module__wrapper {
    margin-right: 10px;
}

.ProfileContent-module__input {
    background: var(--accent-color-200);
    border: 2px dashed var(--bg-color-800);
    border-radius: var(--border-radius-5);
}

.ProfileContent-module__usePromoBtn {
    width: auto !important;
}

.ProfileContent-module__infoLineValue.ProfileContent-module__steamid {
    color: var(--accent-color-1000);
}

/* Списки / Выпадающие элементы */
.Selector-module__dropDownList,
.dropDownList {
    background: var(--bg-color-600);
}

.Selector-module__dropDownItem:hover,
.Selector-module__dropDownItem:focus,
.Selector-module__dropDownItem.Selector-module__active {
    background-color: var(--accent-color-600);
}

.dropDownCurrentItem {
    background-color: var(--accent-color-200);
    border-radius: var(--border-radius-5);
}

.dropDownItem {
    background: var(--accent-color-300);
}

/* Таблицы */
.BasketTable-module__tableLine.BasketTable-module__canSell,
.BasketTable-module__tableHeader.BasketTable-module__canSell {
    grid-template-columns: 1fr 1fr 170px;
}

.BasketTable-module__tableLine:nth-child(2n-1),
.HistoryTable-module__tableLine:nth-child(2n-1) {
    border-radius: var(--border-radius-5);
}

/* Блоки привилегий и ресурсов */
.privilege-title { font-size: var(--font-size-16); margin-bottom: 10px; text-align: center; }
.privilege-item {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid rgba(255, 122, 26, .08);
}
.privilege-name { font-weight: var(--font-weight-600); font-size: var(--font-size-16); margin-bottom: 5px; }
.privilege-description { color: var(--font-color-900); font-size: var(--font-size-16); }
.privilege-value {
    font-weight: var(--font-size-16);
    color: var(--accent-color-1000);
    background: var(--accent-color-600);
    padding: 5px 10px;
    border-radius: var(--border-radius-5);
}

.productModalDescription,
.SelectContent-module__selectorWrapper {
    margin-bottom: 20px;
}
.productModalDescription { padding: 0px; }

.resources-container {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 10px;
    border: 1px solid rgba(255, 122, 26, .08);
}
.resources-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.resources-title { font-weight: var(--font-weight-600); font-size: var(--font-size-16); }
.resources-reload { color: var(--font-color-900); font-size: var(--font-size-16); }
.reload-icon { display: inline-block; margin-right: 5px; }

.resources-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}
.resource-item {
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 5px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: 0.2s;
}
.resource-item:hover {
    transform: scale(0.97);
    box-shadow: 0 0 14px rgba(255, 106, 19, .18);
}
.resource-item img { max-width: 100%; height: auto; margin-bottom: 5px; }
.resource-amount { color: var(--accent-color-1000); font-size: var(--font-size-12); }

.ProductItemSelector-module__items { grid-template-columns: repeat(4, minmax(50px, 1fr)); }
.ProductItemSelector-module__item { border-radius: var(--border-radius-5); background: var(--accent-color-200); }
.ProductItemSelector-module__item.ProductItemSelector-module__active,
.ProductItemSelector-module__item:hover,
.ProductItemSelector-module__item:focus {
    border: 2px solid var(--accent-color-800);
    background: var(--accent-color-600);
}
.ProductItemSelector-module__item:hover,
.ProductItemSelector-module__item:focus { transform: translateY(-5px); }
.ProductItemSelector-module__label { margin-bottom: 10px; }

.Server-module__server { background-color: var(--accent-color-200); border-radius: var(--border-radius-5); }
.Server-module__serverName { font-size: var(--font-size-18); }
.WelcomeSelectServer-module__description { font-size: var(--font-size-16); }
.productModalImg { margin-bottom: 20px; }

/* Копирайты и Футер */
.DesktopCopyright-module__wrapper {
    position: fixed;
    z-index: 50;
    bottom: 5px;
    left: 5px;
    padding: 10px;
    background-color: rgba(20, 12, 7, 0.35);
    align-items: center;
    border-radius: var(--border-radius-10);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 122, 26, .1);
}
.DesktopCopyright-module__link { color: var(--accent-color-1000); }

.MobileCopyright-module__wrapper { background-color: transparent !important; justify-content: center; }
.MobileCopyright-module__link { color: var(--font-color-700); }

/* Адаптивность / Медиа-запросы */
@media screen and (max-width: 1160px) {
    .Products-module__wrapper.Products-module__grid2,
    .Products-module__wrapper.Products-module__grid3,
    .Products-module__wrapper.Products-module__grid4,
    .Products-module__wrapper.Products-module__grid5,
    .Products-module__wrapper.Products-module__grid6 {
        grid-template-columns: unset !important;
    }
}

@media (max-width: 980px) {
    .InformationBlock-module__content { display: none; }
    .ServerStatus-module__wrapper { width: 100%; }
    .Products-module__wrapper {
        width: 100%;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(160px, 1fr)) !important;
    }
    .Products-module__grid5>div:nth-child(1),
    .Products-module__grid5>div:nth-child(2),
    .Products-module__grid5>div:nth-child(3),
    .Products-module__grid5>div:nth-child(4),
    .Products-module__grid5>div:nth-child(5) {
        width: 100%;
    }
    .Product-module__wrapper { width: 100%; }
    .resource-item { width: 80px; }
    .PlayerMenuMobile-module__mobileMenuBtn { display: none; }
}

@media screen and (max-width: 970px) {
    .Profile-module__wrapper,
    .ProfileBasket-module__wrapper,
    .ProfileHistory-module__wrapper {
        flex-direction: column;
    }
    .resources-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 680px) {
    .Logo-module__link { font-size: 24px; }
    .Logo-module__tagline { font-size: 10px; }
    .resources-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .privilege-title { font-size: 14px; }
    .privilege-description, .resources-reload, .privilege-value { font-size: var(--font-size-12); }
    .resources-header { margin-bottom: 20px; }
    .privilege-value { min-width: 70px; }
    .Categories-module__category .Categories-module__image { display: none; }
    .Categories-module__category { justify-content: center; }
    body {
        background-attachment: scroll, scroll, scroll, scroll, scroll;
        background-size: 130px auto, 130px auto, 500px 500px, 500px 500px, auto;
    }
}

@media (max-width: 600px) {
    .PlayerMenu-module__loginLink.login-button { display: flex !important; }
}