:root {
    --bg-color: #1f0035;
    --bg-color-dark: #17002d;
    --bg-color-mid: #3a1a5e;
    --bg-color-light: #5a3a8a;
    --custom-text-color: #ffffff;
    --span-color: #a379fe;
    --span-color-low: rgb(0 1 248 / 15%);
    --span-color-middle: rgb(56 189 248 / 35%);
    --sidebar-gradient-1: #0ea5e9;
    --sidebar-gradient-2: #242426;
    --border-bottom-line: #334155;
    --navbar-color: #24053c;
    --card-color: #2b0047;
    --button-color: #63009881;
    --button-color-hover: #63009881;
    --tooltip-color: #242426;
    --bg-table-color: #252424;
    --grey-color: #620098;
    --input-form: #620098;
    --menu-bg-color: #0f172a;
    --money: #e0f2fe;
    --bg-money: rgb(224 242 254 / 20%);
    --default-text-color: #f1f5f9;
    --green-color: #2dd4bf;
    --orange-color: #f97316;
    --red-color: #f87171;
    --purple-color: #c084fc;
    --top-one-color: #fef08a;
    --top-two-color: #bae6fd;
    --top-three-color: #fdba74;
    --inactive-text-color: rgb(241 245 249 / 40%);
    --top-text-color: #cbd5e1;
    --t-color: #7dd3fc;
    --ct-color: #fbbf24;
    --default-text-color-invert: #0f172a;
    --bottom-line-table: rgb(255 255 255 / 10%);
    --scrollbar-bg--color: rgb(255 255 255 / 8%);
    --sidebar-color: #242426;
    --checkbox-bg-color: #38bdf8;
    --navbar-first-color: rgb(0 1 248 / 15%);
    --pagination-active-button: rgb(0 1 248 / 15%);
    --button-gradient: linear-gradient(135deg, #0ea5e9, #0369a1);
    --card-gradient: linear-gradient(135deg,#161616, #161616);
    --navbar-gradient: linear-gradient(135deg, #0f172a, #161616);
    --sidebar-gradient: linear-gradient(135deg, #0ea5e9, #161616);
    --success-color: #2dd4bf;
    --warning-color: #f97316;
    --error-color: #ef4444;
    --info-color: #38bdf8;
    --primary-50: #f0f9ff;
    --primary-100: #e0f2fe;
    --primary-200: #bae6fd;
    --primary-300: #7dd3fc;
    --primary-400: #38bdf8;
    --primary-500: #0ea5e9;
    --primary-600: #0284c7;
    --primary-700: #0369a1;
    --primary-800: #075985;
    --primary-900: #0c4a6e;
}

.weapons-container, .skins-container, .skin-settings-container,
.agents-container, .music-container, .collectibles-container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 20px;
}


/* ============== СТИЛИ РЕДКОСТИ ДЛЯ СКИНОВ ============== */

/* Ширпотреб (Consumer Grade) - ⚪ */
.rarity-consumer-grade {
    border: 2px solid rgba(255, 255, 255, 0.3);
}

.rarity-consumer-grade:hover {
    border-color: #ffffff;
 
}

.rarity-consumer-grade .skin-image {
    background: linear-gradient(135deg, 
        rgba(255, 255, 255, 0.05), 
        rgba(255, 255, 255, 0.1));
}

/* Промышленный класс (Industrial Grade) - 🏙 */
.rarity-industrial-grade {
    border: 2px solid #5d9cec;
}

.rarity-industrial-grade:hover {
    border-color: #5d9cec;
  
}

.rarity-industrial-grade .skin-image {
    background: linear-gradient(135deg, 
        rgba(93, 156, 236, 0.1), 
        rgba(93, 156, 236, 0.2));
}

/* Армейское качество (Mil-Spec) - 🔵 */
.rarity-mil-spec {
    border: 2px solid #4b69ff;
}

.rarity-mil-spec:hover {
    border-color: #4b69ff;
   
}

.rarity-mil-spec .skin-image {
    background: linear-gradient(135deg, 
        rgba(75, 105, 255, 0.15), 
        rgba(75, 105, 255, 0.25));
}

/* Запрещенное (Restricted) - 🟣 */
.rarity-restricted {
    border: 2px solid #d32ce6;
}

.rarity-restricted:hover {
    border-color: #d32ce6;
   
}

.rarity-restricted .skin-image {
    background: linear-gradient(135deg, 
        rgba(211, 44, 230, 0.2), 
        rgba(211, 44, 230, 0.3));
}

/* Засекреченное (Classified) - 💖 */
.rarity-classified {
    border: 2px solid #eb4b4b;
}

.rarity-classified:hover {
    border-color: #eb4b4b;
    border: 2px solid #eb4b4b;
    
}

.rarity-classified .skin-image {
    background: linear-gradient(135deg, 
        rgba(235, 75, 75, 0.25), 
        rgba(235, 75, 75, 0.35));
}

/* Тайное (Covert) - 🔴 */
.rarity-covert {
    border: 2px solid #e4ae39;
}

.rarity-covert:hover {
    border-color: #e4ae39;
    
}

.rarity-covert .skin-image {
    background: linear-gradient(135deg, 
        rgba(228, 174, 57, 0.3), 
        rgba(228, 174, 57, 0.4));
}

/* Чрезвычайно редкое (Exceedingly Rare) - 🟡 */
.rarity-exceedingly-rare {
    border: 2px solid #ffd700;
}

.rarity-exceedingly-rare:hover {
    border-color: #ffd700;
    
}

.rarity-exceedingly-rare .skin-image {
    background: linear-gradient(135deg, 
        rgba(255, 215, 0, 0.4), 
        rgba(255, 215, 0, 0.5));
}

/* Контрабандное (Contraband) - 🟠 */
.rarity-contraband {
    border: 2px solid #ff7f00;
}

.rarity-contraband:hover {
    border-color: #ff7f00;
    
}

.rarity-contraband .skin-image {
    background: linear-gradient(135deg, 
        rgba(255, 127, 0, 0.4), 
        rgba(255, 127, 0, 0.5));
}

/* Бейдж редкости на карточке */
.rarity-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 4;
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: none; /* Скрыт по умолчанию */
}

.rarity-consumer-grade .rarity-badge {
    background: rgba(255, 255, 255, 0.9);
    color: #000;
}

.rarity-industrial-grade .rarity-badge {
    background: rgba(93, 156, 236, 0.9);
    color: white;
}

.rarity-mil-spec .rarity-badge {
    background: rgba(75, 105, 255, 0.9);
    color: white;
}

.rarity-restricted .rarity-badge {
    background: rgba(211, 44, 230, 0.9);
    color: white;
}

.rarity-classified .rarity-badge {
    background: rgba(235, 75, 75, 0.9);
    color: white;
}

.rarity-covert .rarity-badge {
    background: rgba(228, 174, 57, 0.9);
    color: white;
}

.rarity-exceedingly-rare .rarity-badge {
    background: rgba(255, 215, 0, 0.9);
    color: #000;
}

.rarity-contraband .rarity-badge {
    background: rgba(255, 127, 0, 0.9);
    color: white;
}

/* Показываем бейдж при наведении */
.skin-card:hover .rarity-badge {
    display: block;
}

/* Индикатор редкости в виде полоски снизу */
.rarity-indicator {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    z-index: 3;
}

.rarity-consumer-grade .rarity-indicator {
    background: #ffffff;
}

.rarity-industrial-grade .rarity-indicator {
    background: #5d9cec;
}

.rarity-mil-spec .rarity-indicator {
    background: #4b69ff;
}

.rarity-restricted .rarity-indicator {
    background: #d32ce6;
}

.rarity-classified .rarity-indicator {
    background: #eb4b4b;
}

.rarity-covert .rarity-indicator {
    background: #e4ae39;
}

.rarity-exceedingly-rare .rarity-indicator {
    background: #ffd700;
}

.rarity-contraband .rarity-indicator {
    background: #ff7f00;
}

/* Адаптивность для бейджей */
@media (max-width: 768px) {
    .rarity-badge {
        display: block !important; /* Всегда показываем на мобильных */
        padding: 2px 6px;
        font-size: 8px;
    }
}

/* Modal overlay styles */
.skin-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.85);
    z-index: 1000;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 40px 0;
    backdrop-filter: blur(5px);
}

.skin-modal-content {
    width: 1400px;
    max-width: 95vw;
    max-height: calc(100vh - 80px);
    background: var(--bg-color);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    border: 1px solid var(--bg-color-mid);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7);
}

.skin-modal-body {
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    padding: 30px;
}

.weapons-header, .skins-header, .settings-header,
.agents-header, .music-header, .collectibles-header,
.gloves-header {
    text-align: left;
    margin-bottom: 40px;
    background: var(--card-color);
    padding: 25px 30px;
    border-radius: 15px;
}

.weapons-header h2, .skins-header h2, .settings-header h2,
.agents-header h2, .music-header h2, .collectibles-header h2,
.gloves-header h2 {
    color: var(--custom-text-color);
    font-size: 25px;
    
    text-transform: uppercase;
    letter-spacing: 1px;
    
    background-clip: text;
}

.weapons-header p, .skins-header p, .settings-header p,
.agents-header p, .music-header p, .collectibles-header p,
.gloves-header p {
    color: #ffffff;
    font-size: 16px;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.6;
}

/* ============== ОБНОВЛЕННЫЕ СТИЛИ ДЛЯ ВСЕХ КАРТОЧЕК ============== */

.weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
    margin-bottom: 50px;
    padding: 10px 5px;
}

/* Базовый стиль для всех карточек */
.weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
    position: relative;
    background: linear-gradient(145deg, var(--card-color), var(--bg-color-dark));
    border-radius: 14px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    border: 2px solid transparent;
    cursor: pointer;
    /* Делаем карточки квадратными */
    aspect-ratio: 1 / 1; /* Соотношение сторон 1:1 */
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    isolation: isolate;
}

/* Эффект при наведении на карточку */
.weapon-card:hover, .skin-card:hover, .agent-card:hover, 
.glove-card:hover, .music-card:hover, .collectible-card:hover {
    transform: translateY(-10px) perspective(1000px) rotateX(5deg);
    border-color: var(--span-color);
    z-index: 10;
}



/* ============== СТИЛИ ДЛЯ КОНТЕЙНЕРА ИЗОБРАЖЕНИЙ ============== */

.weapon-image, .skin-image, .agent-image, 
.glove-image, .music-image, .collectible-image {
    width: 100%; /* Занимаем всю ширину карточки */
    height: 100%; /* Занимаем всю высоту карточки */
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.25);
    padding: 25px; /* Увеличиваем паддинг для лучшего отображения */
    transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
    overflow: hidden;
}



/* Эффект при наведении */
.weapon-card:hover .weapon-image,
.skin-card:hover .skin-image,
.agent-card:hover .agent-image,
.glove-card:hover .glove-image,
.music-card:hover .music-image,
.collectible-card:hover .collectible-image {
    transform: scale(1.08) translateZ(20px);
    background-size: 200% 200%;
    animation: gradientShift 2s ease infinite;
}

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

.weapon-image img, .skin-image img, .agent-image img, 
.glove-image img, .music-image img, .collectible-image img {
    max-width: 85%; /* Немного уменьшаем максимальную ширину */
    max-height: 85%; /* И высоту тоже */
    width: auto; /* Автоматическая ширина для пропорций */
    height: auto; /* Автоматическая высота для пропорций */
    object-fit: contain; /* Сохраняем пропорции, вписывая в контейнер */
    transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    filter: 
        drop-shadow(0 4px 8px rgba(0, 0, 0, 0.6))
        brightness(1.05);
    transform-style: preserve-3d;
}

/* Эффект увеличения картинки при наведении */
.weapon-card:hover .weapon-image img,
.skin-card:hover .skin-image img,
.agent-card:hover .agent-image img,
.glove-card:hover .glove-image img,
.music-card:hover .music-image img,
.collectible-card:hover .collectible-image img {
    transform: scale(1.3) translateZ(30px);
    filter: 
        drop-shadow(0 8px 16px rgba(0, 0, 0, 0.8))
        brightness(1.2)
        contrast(1.1);
}



.weapon-card:hover .weapon-image::before,
.skin-card:hover .skin-image::before,
.agent-card:hover .agent-image::before,
.glove-card:hover .glove-image::before,
.music-card:hover .music-image::before,
.collectible-card:hover .collectible-image::before {
    border-color: rgba(255, 255, 255, 0.25);
    border-width: 2px;
    box-shadow: 
        inset 0 0 30px rgba(163, 121, 254, 0.2),
        0 0 20px rgba(163, 121, 254, 0.3);
}



.weapon-card:hover .weapon-image::after,
.skin-card:hover .skin-image::after,
.agent-card:hover .agent-image::after,
.glove-card:hover .glove-image::after,
.music-card:hover .music-image::after,
.collectible-card:hover .collectible-image::after {
    opacity: 1;
}

/* ============== НАЗВАНИЕ НА КАРТОЧКЕ ============== */

.card-name-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    
    color: var(--custom-text-color);
    padding: 15px 10px 12px;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 3;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    opacity: 0.9;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
    
}

.weapon-card:hover .card-name-overlay,
.skin-card:hover .card-name-overlay,
.agent-card:hover .card-name-overlay,
.glove-card:hover .card-name-overlay,
.music-card:hover .card-name-overlay,
.collectible-card:hover .card-name-overlay {
    
    opacity: 1;
    padding-bottom: 14px;
    font-size: 13px;
    letter-spacing: 1px;
    border-top-color: rgba(163, 121, 254, 0.2);
}

/* ============== КНОПКИ (СКРЫТЫ ПО УМОЛЧАНИЮ) ============== */


.skin-info {
    font-size: 12px;
}

.select-button, .apply-button {
    position: absolute;
    bottom: -70px;
    left: 0;
    width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, 
        var(--button-color), 
        rgba(99, 0, 152, 0.6),
        var(--bg-color-mid));
    color: var(--custom-text-color);
    border: none;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s;
    z-index: 4;
    text-decoration: none;
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    border-top: 2px solid rgba(255, 255, 255, 0.1);
    box-shadow: 
        0 -10px 25px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    opacity: 0;
    
}

/* Показываем кнопку при наведении */
.weapon-card:hover .select-button,
.skin-card:hover .apply-button,
.agent-card:hover .apply-button,
.glove-card:hover .select-button,
.music-card:hover .apply-button,
.collectible-card:hover .apply-button {
    bottom: 0;
    opacity: 1;
    transform: translateY(0);
}

/* Эффект при наведении на кнопку */


/* ============== ИНДИКАТОРЫ И БЕЙДЖИ ============== */

.selected-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 26px;
    height: 26px;
    background: var(--card-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    z-index: 5;
    box-shadow: 
        0 4px 12px rgba(0, 0, 0, 0.4),
        0 0 0 2px rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.3);
    animation: badgePulse 2.5s ease-in-out infinite;
    transform-origin: center;
}

@keyframes badgePulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 
            0 4px 12px rgba(0, 0, 0, 0.4),
            0 0 0 2px rgba(255, 255, 255, 0.1);
    }
    50% {
        transform: scale(1.1);
        box-shadow: 
            0 6px 20px rgba(45, 212, 191, 0.4),
            0 0 0 3px rgba(255, 255, 255, 0.2);
    }
}









/* Индикатор наличия скина */
.skin-indicator {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: linear-gradient(135deg, 
        var(--span-color), 
        var(--purple-color),
        var(--bg-color-light));
    color: white;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    z-index: 4;
    box-shadow: 
        0 3px 10px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s ease;
}

.weapon-card:hover .skin-indicator,
.skin-card:hover .skin-indicator {
    transform: scale(1.2);
    box-shadow: 
        0 5px 15px rgba(163, 121, 254, 0.5),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

/* ============== ЭФФЕКТЫ НАВЕДЕНИЯ И АНИМАЦИИ ============== */





.weapon-card:hover::before, .skin-card:hover::before, .agent-card:hover::before,
.glove-card:hover::before, .music-card:hover::before, .collectible-card:hover::before {
    transform: rotate(45deg) translate(50%, 50%);
    opacity: 1;
}



/* ============== АДАПТИВНОСТЬ ============== */

@media (max-width: 1800px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: repeat(5, 1fr);
        gap: 16px;
    }
    
    .weapons-container, .skins-container, .skin-settings-container,
    .agents-container, .music-container, .collectibles-container {
        max-width: 1400px;
    }
}

@media (max-width: 1400px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 14px;
    }
    
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        height: 180px;
    }
    
    .weapon-image, .skin-image, .agent-image, .glove-image, .music-image, .collectible-image {
        height: 130px;
        padding: 20px;
    }
    
    .skin-modal-content {
        width: 1200px;
    }
}

@media (max-width: 1200px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }
    
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        height: 160px;
        border-radius: 12px;
    }
    
    .weapon-image, .skin-image, .agent-image, .glove-image, .music-image, .collectible-image {
        height: 110px;
        padding: 18px;
    }
    
    .card-name-overlay {
        font-size: 11px;
        padding: 12px 8px 10px;
    }
    
    .select-button, .apply-button {
        padding: 14px;
        font-size: 11px;
    }
}

@media (max-width: 992px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        padding: 0 15px;
    }
    
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        height: 180px;
        max-width: 300px;
        margin: 0 auto;
    }
    
    .weapon-image, .skin-image, .agent-image, .glove-image, .music-image, .collectible-image {
        height: 120px;
    }
    
    .skin-modal-content {
        width: 95vw;
        margin: 20px;
    }
    
    .skin-modal-body {
        padding: 20px;
    }
}

@media (max-width: 768px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        padding: 0 10px;
    }
    
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        height: 150px;
        border-radius: 10px;
    }
    
    .weapon-image, .skin-image, .agent-image, .glove-image, .music-image, .collectible-image {
        height: 100px;
        padding: 15px;
    }
    
    .selected-badge {
        width: 22px;
        height: 22px;
        font-size: 10px;
        top: 8px;
        right: 8px;
    }
    

    
    .skin-indicator {
        width: 18px;
        height: 18px;
        font-size: 9px;
    }
    
    .card-name-overlay {
        font-size: 10px;
        padding: 10px 6px 8px;
        letter-spacing: 0.6px;
    }
}

@media (max-width: 576px) {
    .weapons-grid, .skins-grid, .agents-grid, .gloves-grid, .music-grid, .collectibles-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 0;
    }
    
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        height: 160px;
        max-width: 280px;
        margin: 0 auto;
    }
    
    .weapon-image, .skin-image, .agent-image, .glove-image, .music-image, .collectible-image {
        height: 110px;
    }
    
    /* На мобильных устройствах кнопки всегда видны */
    .select-button, .apply-button {
        position: relative;
        bottom: 0;
        opacity: 1;
        margin-top: auto;
        padding: 12px;
        font-size: 11px;
        display: block;
        transform: none !important;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow: 
            inset 0 1px 0 rgba(255, 255, 255, 0.05),
            0 2px 8px rgba(0, 0, 0, 0.2);
        backdrop-filter: none;
    }
    
    .select-button:hover, .apply-button:hover {
        padding: 14px 12px;
    }
    
    .card-name-overlay {
        font-size: 11px;
        padding: 12px 8px 10px;
        background: linear-gradient(
            to top, 
            rgba(0, 0, 0, 0.9) 0%,
            rgba(0, 0, 0, 0.7) 50%,
            rgba(0, 0, 0, 0.4) 80%,
            transparent 100%
        );
    }
    
    .weapons-header h2, .skins-header h2, .settings-header h2,
    .agents-header h2, .music-header h2, .collectibles-header h2,
    .gloves-header h2 {
        color: #ffffff;
        font-size: 24px;
    }
    
    .weapons-header, .skins-header, .settings-header,
    .agents-header, .music-header, .collectibles-header,
    .gloves-header {
        padding: 20px;
        margin-bottom: 30px;
    }
}

/* ============== АНИМАЦИЯ ПОЯВЛЕНИЯ ============== */

@keyframes cardAppear {
    0% {
        opacity: 0;
        transform: translateY(30px) scale(0.9) rotateX(10deg);
        filter: blur(5px);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1) rotateX(0);
        filter: blur(0);
    }
}

.weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
    animation: cardAppear 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    opacity: 0;
    animation-fill-mode: both;
}

/* Задержка для каждой карточки */
.weapon-card:nth-child(1), .skin-card:nth-child(1), .agent-card:nth-child(1),
.glove-card:nth-child(1), .music-card:nth-child(1), .collectible-card:nth-child(1) {
    animation-delay: 0.05s;
}

.weapon-card:nth-child(2), .skin-card:nth-child(2), .agent-card:nth-child(2),
.glove-card:nth-child(2), .music-card:nth-child(2), .collectible-card:nth-child(2) {
    animation-delay: 0.1s;
}

.weapon-card:nth-child(3), .skin-card:nth-child(3), .agent-card:nth-child(3),
.glove-card:nth-child(3), .music-card:nth-child(3), .collectible-card:nth-child(3) {
    animation-delay: 0.15s;
}

.weapon-card:nth-child(4), .skin-card:nth-child(4), .agent-card:nth-child(4),
.glove-card:nth-child(4), .music-card:nth-child(4), .collectible-card:nth-child(4) {
    animation-delay: 0.2s;
}

.weapon-card:nth-child(5), .skin-card:nth-child(5), .agent-card:nth-child(5),
.glove-card:nth-child(5), .music-card:nth-child(5), .collectible-card:nth-child(5) {
    animation-delay: 0.25s;
}

.weapon-card:nth-child(6), .skin-card:nth-child(6), .agent-card:nth-child(6),
.glove-card:nth-child(6), .music-card:nth-child(6), .collectible-card:nth-child(6) {
    animation-delay: 0.3s;
}

.weapon-card:nth-child(7), .skin-card:nth-child(7), .agent-card:nth-child(7),
.glove-card:nth-child(7), .music-card:nth-child(7), .collectible-card:nth-child(7) {
    animation-delay: 0.35s;
}

.weapon-card:nth-child(8), .skin-card:nth-child(8), .agent-card:nth-child(8),
.glove-card:nth-child(8), .music-card:nth-child(8), .collectible-card:nth-child(8) {
    animation-delay: 0.4s;
}

.weapon-card:nth-child(9), .skin-card:nth-child(9), .agent-card:nth-child(9),
.glove-card:nth-child(9), .music-card:nth-child(9), .collectible-card:nth-child(9) {
    animation-delay: 0.45s;
}

.weapon-card:nth-child(10), .skin-card:nth-child(10), .agent-card:nth-child(10),
.glove-card:nth-child(10), .music-card:nth-child(10), .collectible-card:nth-child(10) {
    animation-delay: 0.5s;
}

/* ============== ТЕНИ И ЭФФЕКТЫ ГЛУБИНЫ ============== */

.weapon-card .depth-shadow, .skin-card .depth-shadow, .agent-card .depth-shadow,
.glove-card .depth-shadow, .music-card .depth-shadow, .collectible-card .depth-shadow {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s ease;
    filter: blur(10px);
}

.weapon-card:hover .depth-shadow,
.skin-card:hover .depth-shadow,
.agent-card:hover .depth-shadow,
.glove-card:hover .depth-shadow,
.music-card:hover .depth-shadow,
.collectible-card:hover .depth-shadow {
    opacity: 0.5;
}

/* ============== ДОПОЛНИТЕЛЬНЫЕ СТИЛИ ДЛЯ РАЗНЫХ СОСТОЯНИЙ ============== */

/* Карточка в процессе загрузки */
.weapon-card.loading, .skin-card.loading, .agent-card.loading,
.glove-card.loading, .music-card.loading, .collectible-card.loading {
    background: linear-gradient(90deg, 
        var(--card-color) 25%, 
        var(--bg-color-mid) 50%, 
        var(--card-color) 75%);
    background-size: 200% 100%;
    animation: loading 1.5s ease-in-out infinite;
}

@keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Карточка отключена */
.weapon-card.disabled, .skin-card.disabled, .agent-card.disabled,
.glove-card.disabled, .music-card.disabled, .collectible-card.disabled {
    opacity: 0.5;
    filter: grayscale(0.8);
    cursor: not-allowed;
    transform: none !important;
}

.weapon-card.disabled:hover, .skin-card.disabled:hover, .agent-card.disabled:hover,
.glove-card.disabled:hover, .music-card.disabled:hover, .collectible-card.disabled:hover {
    transform: none !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
    
}

.weapon-card.disabled .select-button,
.skin-card.disabled .apply-button,
.agent-card.disabled .apply-button,
.glove-card.disabled .select-button,
.music-card.disabled .apply-button,
.collectible-card.disabled .apply-button {
    display: none;
}

/* Новые карточки (подсветка) */
.weapon-card.new::after, .skin-card.new::after, .agent-card.new::after,
.glove-card.new::after, .music-card.new::after, .collectible-card.new::after {
    content: 'NEW';
    position: absolute;
    top: -5px;
    right: -5px;
    background: linear-gradient(135deg, var(--orange-color), var(--warning-color));
    color: white;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 8px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 10;
    box-shadow: 0 3px 10px rgba(249, 115, 22, 0.4);
    animation: newPulse 2s ease-in-out infinite;
}

@keyframes newPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}

/* ============== ПРОКРУТКА СЕТКИ ============== */

.weapons-grid::-webkit-scrollbar,
.skins-grid::-webkit-scrollbar,
.agents-grid::-webkit-scrollbar,
.gloves-grid::-webkit-scrollbar,
.music-grid::-webkit-scrollbar,
.collectibles-grid::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.weapons-grid::-webkit-scrollbar-track,
.skins-grid::-webkit-scrollbar-track,
.agents-grid::-webkit-scrollbar-track,
.gloves-grid::-webkit-scrollbar-track,
.music-grid::-webkit-scrollbar-track,
.collectibles-grid::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 4px;
}

.weapons-grid::-webkit-scrollbar-thumb,
.skins-grid::-webkit-scrollbar-thumb,
.agents-grid::-webkit-scrollbar-thumb,
.gloves-grid::-webkit-scrollbar-thumb,
.music-grid::-webkit-scrollbar-thumb,
.collectibles-grid::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--span-color), var(--purple-color));
    border-radius: 4px;
}

.weapons-grid::-webkit-scrollbar-thumb:hover,
.skins-grid::-webkit-scrollbar-thumb:hover,
.agents-grid::-webkit-scrollbar-thumb:hover,
.gloves-grid::-webkit-scrollbar-thumb:hover,
.music-grid::-webkit-scrollbar-thumb:hover,
.collectibles-grid::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, var(--purple-color), var(--primary-400));
}

/* ============== ОСТАЛЬНЫЕ СТИЛИ КОТОРЫЕ У ВАС УЖЕ БЫЛИ ============== */

.back-button, .modal-close-btn {
    display: inline-block;
    padding: 10px 20px;
    background: var(--button-color);
    color: var(--custom-text-color);
    text-decoration: none;
    border-radius: 6px;
    margin-top: 12px;
    transition: all 0.3s ease;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.back-button:hover, .modal-close-btn:hover {
    background: #F44336;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

.modal-close-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 28px;
    color: var(--custom-text-color);
    padding: 0;
    margin: 0;
    width: auto;
    height: auto;
}

.modal-close-btn:hover {
    background: transparent;
    color: #F44336;
    transform: rotate(90deg);
}

/* Team selector styles */
/* ============== ОБНОВЛЕННЫЙ ВЫБОР КОМАНДЫ ============== */

.team-selector {
    background: var(--card-color);
    padding: 5px 5px;
    border-radius: 12px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
    text-align: left; /* Изменено с center на left */
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* Изменено с center на flex-start */
}

.team-selector h3 {
    color: var(--custom-text-color);
    margin-bottom: 15px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: flex-start; /* Изменено с center на flex-start */
    gap: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    position: relative;
    z-index: 1;
    width: 100%;
}



.team-buttons {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0px;
    flex-wrap: nowrap;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    background: rgba(0, 0, 0, 0);
}

.skin-search-input {
    padding: 12px 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 9px;
    margin-left: 10px;
    background: rgba(0, 0, 0, 0.3);
    color: var(--custom-text-color);
    font-size: 14px;
    width: 200px;
    outline: none;
}

.skin-search-input::placeholder {
    color: var(--inactive-text-color);
    opacity: 0.7;
}

.team-btn {
    flex: none;
    min-width: 120px;
    width: 150px; /* Уменьшили минимальную ширину */
    padding: 12px 15px; /* Уменьшили паддинг */
    border: none;
    color: var(--custom-text-color);
    border-radius: 0;
    margin: 0; /* Убираем внешние отступы */
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px; /* Уменьшили отступ между иконкой и текстом */
    position: relative;
    font-weight: 600; /* Сделали текст менее жирным */
    font-size: 14px; /* Уменьшили размер шрифта */
    text-transform: uppercase;
    letter-spacing: 0.8px;
    overflow: hidden;
    z-index: 1;
    backdrop-filter: blur(5px);
    isolation: isolate;
}

/* Убираем правую границу у последней кнопки */
.team-btn:last-child {
    border-right: none;
}

/* Восстанавливаем скругления только у крайних кнопок */
.team-btn:first-child {
    border-bottom-left-radius: 9px;
    border-top-left-radius: 9px;
}

.team-btn:last-child {
    border-bottom-right-radius: 9px;
    border-top-right-radius: 9px;
}

.team-btn[data-team="2"],
.team-btn[data-agent-team="2"],
.team-btn[data-music-team="2"],
.team-btn[data-collectible-team="2"],
.team-btn[data-team="3"],
.team-btn[data-agent-team="3"],
.team-btn[data-music-team="3"],
.team-btn[data-collectible-team="3"] {
    border: none; /* Убираем границы, они теперь задаются через .team-btn */
}

/* Кнопка Террористов (оранжевая) */
.team-btn[data-team="2"],
.team-btn[data-agent-team="2"],
.team-btn[data-music-team="2"],
.team-btn[data-collectible-team="2"] {
    background: #ffa02342;
    color: #ffa0234d;
     border: 0.5px solid #ffcc234d;
     border-bottom-left-radius: 9px;
    border-top-left-radius: 9px;
}

/* Кнопка Контр-Террористов (голубая) */
.team-btn[data-team="3"],
.team-btn[data-agent-team="3"],
.team-btn[data-music-team="3"],
.team-btn[data-collectible-team="3"] {
    background: #0ea4e936;
    border: 0.5px solid #1562bb50;
    color: #0ea4e950;
    border-bottom-right-radius: 9px;
    border-top-right-radius: 9px;
}


.load-more-btn {
    background-color: var(--button-color);
    border-radius: 9px;
    padding: 12px 24px;
    border: none;
    color: #f0f9ff;
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: block;
    margin: 80px auto;
    min-width: 160px;
}

.load-more-btn:hover {
    background-color: var(--button-color-hover);
    color: #ffffff;
}

/* Эффект разделения между кнопками */

/* Эффект при наведении */
.team-btn:hover {
    transform: scale(1.03);
    z-index: 10;
    box-shadow: 
        0 8px 20px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.team-btn:hover[data-team="2"],
.team-btn:hover[data-agent-team="2"],
.team-btn:hover[data-music-team="2"],
.team-btn:hover[data-collectible-team="2"] {
     background: #ffa02385;
    color: white;
     border: 0.5px solid #ffa023;
}

.team-btn:hover[data-team="3"],
.team-btn:hover[data-agent-team="3"],
.team-btn:hover[data-music-team="3"],
.team-btn:hover[data-collectible-team="3"] {
    background: #0ea4e981;
    border: 0.5px solid #0ea4e9;
    color: #0ea4e9;
}

/* Активное состояние с пульсацией */
.team-btn.active {
    animation: teamPulseCompact 2s infinite;
    z-index: 20;
}

@keyframes teamPulseCompact {
    0% {
        box-shadow: 
            0 0 0 0 rgba(255, 255, 255, 0.3),
            0 5px 15px rgba(0, 0, 0, 0.2);
    }
    50% {
        box-shadow: 
            0 0 0 8px rgba(255, 255, 255, 0),
            0 5px 15px rgba(0, 0, 0, 0.2);
    }
    100% {
        box-shadow: 
            0 0 0 0 rgba(255, 255, 255, 0),
            0 5px 15px rgba(0, 0, 0, 0.2);
    }
}

/* Активное состояние для Т */
.team-btn.active[data-team="2"],
.team-btn.active[data-agent-team="2"],
.team-btn.active[data-music-team="2"],
.team-btn.active[data-collectible-team="2"] {
     background: #ffa02385;
    color: white;
     border: 0.5px solid #ffa023;
    color: #ffa023;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3);
}

/* Активное состояние для КТ */
.team-btn.active[data-team="3"],
.team-btn.active[data-agent-team="3"],
.team-btn.active[data-music-team="3"],
.team-btn.active[data-collectible-team="3"] {
    background: #0ea4e981;
    border: 0.5px solid #0ea4e9;
    color: #0ea4e9;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3);
}

/* Иконки в кнопках */
.team-btn i {
    font-size: 16px; /* Уменьшили размер иконок */
    transition: all 0.3s ease;
}

.team-btn.active i {
    transform: scale(1.1);
    animation: iconFloatCompact 1.5s ease-in-out infinite;
}

@keyframes iconFloatCompact {
    0%, 100% {
        transform: translateY(0) scale(1.1);
    }
    50% {
        transform: translateY(-2px) scale(1.2);
    }
}

/* Анимация границы */
@keyframes borderGlow {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

/* Индикатор выбранной команды */
.selected-team-indicator {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, var(--error-color), var(--primary-500));
    color: white;
    padding: 4px 15px;
    border-radius: 15px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    z-index: 5;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.selected-team-indicator::before {
    content: '';
    width: 6px;
    height: 6px;
    background: currentColor;
    border-radius: 50%;
    animation: indicatorPulse 1.5s ease-in-out infinite;
}

/* Адаптивность для кнопок команды */
@media (max-width: 768px) {
    .team-selector {
        max-width: 100%;
        width: 100%;
        margin: 0 auto 25px;
    }
    
    .team-buttons {
        flex-direction: row; /* Оставляем горизонтальное расположение на мобильных */
    }
    
    .team-btn {
        padding: 10px 15px;
        min-width: 110px;
        font-size: 13px;
    }
    
    .team-btn i {
        font-size: 14px;
    }
    
    .team-buttons::after {
        display: none;
    }
}

@media (max-width: 576px) {
    .team-btn {
        padding: 10px 12px;
        font-size: 12px;
        letter-spacing: 0.5px;
        min-width: 100px;
    }
    
    .team-btn i {
        font-size: 12px;
    }
    
    .team-selector {
        padding: 12px 15px;
    }
    
    .team-selector h3 {
        font-size: 14px;
        margin-bottom: 12px;
    }
    
    .team-selector h3::before {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }
}

/* Page navigation */
/* Page navigation - уже существующие стили */
.page-navigation {
    padding: 5px;
    border-radius: 16px;
    background-color: var(--card-color);
    display: flex;
    justify-content: center;
    gap: 25px;
    margin-bottom: 40px;
    margin-top: 40px;
    width: 1400px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.nav-btn {
    display: flex;
    align-items: center;
    justify-content: left;
    gap: 12px;
    padding: 16px 16px;
    background: var(--button-color);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #ececec;
    text-decoration: none;
    border-radius: 10px;
    transition: all 0.3s ease;
    font-weight: 700;
    flex: 1;
    font-size: 16px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.nav-btn:hover {
    background: var(--button-color-hover);
    border-color: rgba(255, 255, 255, 0.25);
    color: var(--custom-text-color);
}

.nav-btn.active {
    background: var(--button-color-hover);
    color: #ececec;
    border-color: var(--border-bottom-line);
}

/* ============== АДАПТАЦИЯ ДЛЯ PAGE-NAVIGATION ============== */

/* Для экранов до 1400px */
@media (max-width: 1400px) {
    .page-navigation {
        width: 1200px;
        gap: 20px;
        padding: 8px;
    }
    
    .nav-btn {
        padding: 14px 14px;
        font-size: 15px;
        gap: 10px;
    }
}

/* Для экранов до 1200px */
@media (max-width: 1200px) {
    .page-navigation {
        width: 95%;
        gap: 15px;
        margin-bottom: 35px;
        margin-top: 35px;
    }
    
    .nav-btn {
        padding: 12px 14px;
        font-size: 14px;
        letter-spacing: 0.3px;
    }
}

/* Для экранов до 992px (планшеты) - горизонтальное расположение */
@media (max-width: 992px) {
    .page-navigation {
        gap: 12px;
        padding: 15px;
        border-radius: 14px;
        margin-bottom: 30px;
        margin-top: 30px;
        flex-wrap: wrap;
    }
    
    .nav-btn {
        flex: 1 1 calc(33.333% - 12px);
        min-width: 150px;
        padding: 12px 10px;
        font-size: 13px;
        justify-content: center;
        text-align: center;
        gap: 8px;
    }
    
    .skins-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 2px;
    }
    
    .line1, .line2 {
        font-size: 9px;
    }
}

/* Для экранов до 768px (большие мобильные) - начинаем вертикальное расположение */
@media (max-width: 768px) {
    .page-navigation {
        flex-direction: column; /* Меняем направление на вертикальное */
        gap: 10px;
        padding: 20px; /* Увеличиваем паддинг для лучшего отображения */
        margin-bottom: 25px;
        margin-top: 25px;
        border-radius: 12px;
        align-items: stretch; /* Растягиваем кнопки на всю ширину */
    }
    
    .nav-btn {
        flex: 1 1 auto; /* Убираем фиксированные размеры */
        width: 100%; /* Занимаем всю ширину */
        min-width: auto; /* Убираем минимальную ширину */
        padding: 15px 20px; /* Увеличиваем паддинг для удобства нажатия */
        font-size: 14px; /* Сохраняем читаемый размер шрифта */
        gap: 12px;
        justify-content: flex-start; /* Выравниваем по левому краю */
        text-align: left;
        margin-bottom: 0; /* Убираем отступ снизу, так как gap работает */
    }
    
    /* Убираем переносы на несколько строк */
    .page-navigation {
        flex-wrap: nowrap;
    }
    
    .nav-btn i {
        font-size: 18px; /* Увеличиваем иконки для мобильных */
        min-width: 24px; /* Фиксируем ширину иконок для выравнивания */
        text-align: center;
    }
    
    .skins-text {
        display: flex;
        flex-direction: column;
        gap: 3px;
        flex-grow: 1; /* Позволяем тексту занимать доступное пространство */
    }
    
    .line1 {
        font-size: 12px; /* Увеличиваем для читаемости */
        color: var(--custom-text-color);
    }
    
    .line2 {
        font-size: 10px;
        color: #8a8a8a; /* Более светлый цвет для второго ряда */
    }
}

/* Для экранов до 576px (маленькие мобильные) */
@media (max-width: 576px) {
    .page-navigation {
        gap: 8px;
        padding: 15px;
        margin-bottom: 20px;
        margin-top: 20px;
        border-radius: 10px;
    }
    
    .nav-btn {
        padding: 14px 16px; /* Немного уменьшаем паддинг */
        font-size: 13px;
        gap: 10px;
        border-radius: 8px;
    }
    
    .nav-btn i {
        font-size: 16px;
        min-width: 22px;
    }
    
    .line1 {
        font-size: 11px;
    }
    
    .line2 {
        font-size: 9px;
    }
}

/* Для очень маленьких экранов (например, iPhone SE) */
@media (max-width: 375px) {
    .page-navigation {
        padding: 12px;
        gap: 6px;
    }
    
    .nav-btn {
        padding: 12px 14px;
        font-size: 12px;
        gap: 8px;
    }
    
    .nav-btn i {
        font-size: 14px;
        min-width: 20px;
    }
    
    /* На очень маленьких экранах можно скрыть второй ряд текста */
    @media (max-width: 320px) {
        .line2 {
            display: none;
        }
        
        .skins-text {
            justify-content: center;
        }
        
        .line1 {
            font-size: 11px;
            text-align: center;
        }
        
        .nav-btn {
            justify-content: center;
            text-align: center;
        }
        
        .nav-btn i {
            display: none; /* Скрываем иконки на совсем маленьких экранах */
        }
    }
}

/* Для ландшафтной ориентации на мобильных - возвращаем горизонтальное расположение */
@media (max-width: 992px) and (orientation: landscape) {
    .page-navigation {
        flex-direction: row; /* Возвращаем горизонтальное расположение */
        flex-wrap: wrap;
        gap: 10px;
        padding: 10px;
    }
    
    .nav-btn {
        flex: 1 1 calc(50% - 10px); /* Две кнопки в ряд */
        min-width: auto;
        padding: 10px 8px;
        font-size: 12px;
        justify-content: center;
        text-align: center;
    }
    
    .nav-btn i {
        display: inline-block;
        font-size: 14px;
        min-width: auto;
    }
    
    .skins-text {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

/* Для планшетов в портретной ориентации - также вертикальное расположение */
@media (min-width: 577px) and (max-width: 768px) and (orientation: portrait) {
    .page-navigation {
        flex-direction: column;
        padding: 20px;
        gap: 12px;
    }
    
    .nav-btn {
        padding: 16px 22px;
        font-size: 15px;
    }
    
    .nav-btn i {
        font-size: 20px;
        min-width: 26px;
    }
    
    .line1 {
        font-size: 14px;
    }
    
    .line2 {
        font-size: 11px;
    }
}

/* Для устройств с высоким DPI (ретина) */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .nav-btn {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}

/* Для темной темы (уже установлена по умолчанию) */
@media (prefers-color-scheme: dark) {
    .page-navigation {
        background-color: var(--card-color);
    }
    
    .nav-btn {
        background: var(--button-color);
        color: #ececec;
    }
    
    .nav-btn:hover {
        background: var(--button-color-hover);
        color: var(--custom-text-color);
    }
}

/* Для светлой темы */
@media (prefers-color-scheme: light) {
    .page-navigation {
        background-color: #f5f5f5;
        border: 1px solid #e0e0e0;
    }
    
    .nav-btn {
        background: #620098;
        color: white;
        border-color: rgba(255, 255, 255, 0.2);
    }
    
    .nav-btn:hover {
        background: #7a00c0;
        color: white;
    }
    
    .nav-btn.active {
        background: #7a00c0;
        color: white;
        border-color: #4a0066;
    }
}

/* Для пользователей с ограниченным движением */
@media (prefers-reduced-motion: reduce) {
    .nav-btn {
        transition: none;
    }
    
    .nav-btn:hover {
        transform: none;
    }
}

/* Для пользователей с высокой контрастностью */
@media (prefers-contrast: high) {
    .nav-btn {
        border: 2px solid #000;
    }
    
    .nav-btn.active {
        border: 3px solid #000;
    }
}

/* Дополнительные улучшения для вертикальной навигации */
.nav-btn:last-child {
    margin-bottom: 0;
}

/* Анимация при нажатии на мобильных */
@media (max-width: 768px) {
    .nav-btn:active {
        transform: scale(0.98);
        background: var(--button-color-hover);
    }
}

/* Улучшение отступов для лучшего UX на мобильных */
@media (max-width: 768px) {
    .page-navigation + .weapons-container,
    .page-navigation + .skins-container,
    .page-navigation + .agents-container,
    .page-navigation + .music-container,
    .page-navigation + .collectibles-container {
        padding-top: 10px;
    }
}

.skins-text {
  
  white-space: pre-line; /* Сохраняет переносы строк */
 
}
.line2 {
    font-size: 10px;
    color: #4e4e4e;
}
.line1 {
    font-size: 10px;
    
}

.nav-btn {
    display: flex;
    align-items: center;
    justify-content: left;
    gap: 12px;
    padding: 16px 16px;
    background: var(--button-color);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #ececec;
    text-decoration: none;
    border-radius: 10px;
    transition: all 0.3s ease;
    font-weight: 700;
    flex: 1;
    font-size: 16px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.nav-btn:hover {
    background: var(--button-color-hover);
    border-color: rgba(255, 255, 255, 0.25);
    color: var(--custom-text-color);
}

.nav-btn.active {
    background: var(--button-color-hover);
    color: #ececec;
    border-color: var(--border-bottom-line);
    
}

/* Error and success messages */
.skins-error, .skins-success, .skins-not-authorized,
.agents-error, .music-error, .collectibles-error {
    padding: 20px;
    margin: 25px auto;
    max-width: 900px;
    border-radius: 10px;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    border: 2px solid;
    backdrop-filter: blur(10px);
}

.skins-error {
    background: linear-gradient(135deg, rgba(255, 87, 87, 0.15), rgba(239, 68, 68, 0.1));
    border-color: var(--error-color);
    color: var(--error-color);
    box-shadow: 0 8px 25px rgba(239, 68, 68, 0.2);
}

.skins-success {
    background: linear-gradient(135deg, rgba(76, 175, 80, 0.15), rgba(45, 212, 191, 0.1));
    border-color: var(--success-color);
    color: var(--success-color);
    box-shadow: 0 8px 25px rgba(45, 212, 191, 0.2);
}

.skins-not-authorized {
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.15), rgba(251, 191, 36, 0.1));
    border-color: var(--warning-color);
    color: var(--warning-color);
    box-shadow: 0 8px 25px rgba(251, 191, 36, 0.2);
}

.skins-guest-notice {
    background: linear-gradient(135deg, var(--info-color), var(--primary-500));
    border: 2px solid var(--primary-400);
    color: var(--custom-text-color);
    padding: 20px;
    margin: 25px auto;
    max-width: 900px;
    border-radius: 12px;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    box-shadow: 0 10px 30px rgba(56, 189, 248, 0.3);
}

.current-skin-preview img {
    max-width: 100%; /* Адаптивность */
    width: 300px; /* Или нужный вам размер */
    height: auto; /* Сохраняет пропорции */
    display: block;
    margin: 0 auto; /* Центрирование */
}

/* Current skin display */
.current-skin-display {
    background: var(--card-color);
    padding: 25px;
    border-radius: 12px;
    margin-bottom: 40px;
}

.selected-skin-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 2px solid var(--bg-color-mid);
}

.selected-skin-header h4 {
    color: var(--custom-text-color);
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.skin-name-text {
    color: var(--span-color);
    font-weight: 600;
    
}

.skin-actions {
    display: flex;
    gap: 15px;
}

.remove-button {
    background: var(--button-color);
    color: var(--custom-text-color);
    display: inline-flex;

    padding: 12px 20px;
    border-radius: 6px;
    cursor: pointer;
    
    transition: all 0.3s ease;
    
    align-items: center;
    gap: 10px;
    font-weight: 600;
}

.remove-button:hover {
    background: var(--button-color-hover);
    
}

.settings-button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 20px;
    background: var(--button-color);
    color: white;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.3s ease;
    font-weight: 600;
}

.settings-button:hover {
    background: var(--button-color-hover);
}

/* Modal styles */
.skin-modal-overlay {
    backdrop-filter: blur(10px);
}

.skin-modal-content {
    backdrop-filter: blur(20px);
}

/* Loading animation for cards */
@keyframes shimmer {
    0% {
        background-position: -468px 0;
    }
    100% {
        background-position: 468px 0;
    }
}

.weapon-card.loading .weapon-image,
.skin-card.loading .skin-image,
.agent-card.loading .agent-image,
.glove-card.loading .glove-image,
.music-card.loading .music-image,
.collectible-card.loading .collectible-image {
    background: linear-gradient(
        to right,
        rgba(255, 255, 255, 0.1) 8%,
        rgba(255, 255, 255, 0.2) 18%,
        rgba(255, 255, 255, 0.1) 33%
    );
    background-size: 800px 104px;
    animation: shimmer 1.5s infinite linear;
}

/* Focus states for accessibility */
.weapon-card:focus-visible,
.skin-card:focus-visible,
.agent-card:focus-visible,
.glove-card:focus-visible,
.music-card:focus-visible,
.collectible-card:focus-visible {
    outline: 3px solid var(--primary-400);
    outline-offset: 3px;
    transform: scale(1.02);
}

.select-button:focus-visible,
.apply-button:focus-visible {
    outline: 2px solid var(--primary-400);
    outline-offset: 2px;
}

/* Print styles */
@media print {
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        break-inside: avoid;
        box-shadow: none !important;
        border: 1px solid #000 !important;
    }
    
    .select-button, .apply-button {
        display: none !important;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card {
        border: 2px solid #000;
    }
    
    .weapon-card:hover, .skin-card:hover, .agent-card:hover, 
    .glove-card:hover, .music-card:hover, .collectible-card:hover {
        border: 3px solid #000;
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .weapon-card, .skin-card, .agent-card, .glove-card, .music-card, .collectible-card,
    .select-button, .apply-button,
    .weapon-image img, .skin-image img, .agent-image img,
    .glove-image img, .music-image img, .collectible-image img,
    .selected-badge,
    .team-btn,
    .nav-btn,
    .remove-button,
    .settings-button {
        transition: none !important;
        animation: none !important;
    }
}

/* ============== СТРАНИЦА НАСТРОЕК СКИНА ============== */

.skin-settings-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 20px;
    background: linear-gradient(135deg, var(--bg-color-dark), var(--bg-color));
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
    border: 1px solid var(--bg-color-mid);
    margin-top: 30px;
    margin-bottom: 50px;
}

.settings-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 30px;
    background: var(--card-color);
    border-radius: 16px;
   
    position: relative;
    overflow: hidden;
}

.settings-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
   background: var(--card-color);
    z-index: 1;
}

.settings-header h2 {
    color: var(--custom-text-color);
    font-size: 32px;
    margin-bottom: 10px;
    position: relative;
    z-index: 2;
    text-transform: uppercase;
    letter-spacing: 1px;
    background: #ffffff;
    background-clip: text;
}

.settings-header p {
    color: var(--inactive-text-color);
    font-size: 16px;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.6;
    position: relative;
    z-index: 2;
}

/* Предпросмотр скина */
.skin-preview-section {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01));
    padding: 40px;
    border-radius: 16px;
    margin-bottom: 40px;
    border: 2px solid rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    position: relative;
    overflow: hidden;
}

.skin-preview-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--span-color), var(--purple-color), var(--span-color));
}

.preview-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.preview-header h3 {
    color: var(--custom-text-color);
    font-size: 24px;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.preview-header h3 i {
    color: var(--span-color);
}

.team-indicator {
    display: flex;
    align-items: center;
    gap: 15px;
    background: rgba(0, 0, 0, 0.3);
    padding: 10px 20px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.team-indicator span {
    font-weight: 700;
    color: var(--custom-text-color);
}



/* Основной превью скина */
.main-skin-preview {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding: 30px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.skin-preview-image {
    width: 300px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.4), rgba(43, 0, 71, 0.6));
    border-radius: 10px;
    padding: 25px;
    border: 2px solid rgba(163, 121, 254, 0.2);
    box-shadow: 
        0 15px 35px rgba(0, 0, 0, 0.5),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    position: relative;
    overflow: hidden;
}

.skin-preview-image::before {
    content: '';
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    pointer-events: none;
}

.skin-preview-image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.8));
    transform-style: preserve-3d;
    transition: transform 0.5s ease;
}

.skin-preview-image:hover img {
    transform: scale(1.05) rotateY(5deg);
}

.skin-preview-info {
    text-align: center;
}

.skin-preview-info h4 {
    color: var(--custom-text-color);
    font-size: 22px;
    margin-bottom: 10px;
    font-weight: 700;
}

.skin-preview-info .skin-name {
    color: var(--span-color);
    font-weight: 900;
    font-size: 18px;
    margin-bottom: 15px;
    display: block;
    text-shadow: 0 0 10px rgba(163, 121, 254, 0.3);
}

.weapon-name {
    color: var(--inactive-text-color);
    font-size: 14px;
    font-style: italic;
}

/* ============== ФОРМА НАСТРОЕК ============== */

.settings-form-section {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0.01));
    padding: 40px;
    border-radius: 16px;
    border: 2px solid rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
}

.settings-form-section h3 {
    color: var(--custom-text-color);
    font-size: 24px;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    gap: 12px;
}

.settings-form-section h3 i {
    color: var(--primary-400);
}

/* Группы формы */
.form-group {
    margin-bottom: 30px;
    background: rgba(0, 0, 0, 0.2);
    padding: 25px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.3s ease;
}



.form-group label {
    display: block;
    color: var(--custom-text-color);
    margin-bottom: 12px;
    font-weight: 700;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.form-group label i {
    color: var(--span-color);
    width: 24px;
    text-align: center;
}

.form-control {
    width: 100%;
    padding: 15px 20px;
    background: rgba(0, 0, 0, 0.4);
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    color: var(--custom-text-color);
    font-size: 16px;
    transition: all 0.3s ease;
    font-family: inherit;
}

.form-control1 {
    background-color: var(--card-color);
    border-radius: 6px;
    color: #ffffff;
    padding: 5px;
    padding-left: 10px;
}

.form-control::placeholder {
    color: var(--inactive-text-color);
    opacity: 0.7;
}

/* Стили для текстовых полей */
.input-with-icon {
    position: relative;
}

.input-with-icon i {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--inactive-text-color);
    z-index: 1;
}

.input-with-icon .form-control {
    padding-left: 50px;
}

/* Слайдер для износа */
.wear-slider-container {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.wear-slider {
    flex: 1;
    min-width: 300px;
    -webkit-appearance: none;
    height: 8px;
    background: linear-gradient(to right, 
        #4CAF50 0%,      /* Factory New */
        #8BC34A 25%,     /* Minimal Wear */
        #FF9800 50%,     /* Field-Tested */
        #FF5722 75%,     /* Well-Worn */
        #F44336 100%     /* Battle-Scarred */
    );
    border-radius: 4px;
    outline: none;
}

.wear-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    background: var(--custom-text-color);
    border-radius: 50%;
    cursor: pointer;
    border: 3px solid var(--span-color);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
    transition: all 0.2s ease;
}

.wear-slider::-webkit-slider-thumb:hover {
    transform: scale(1.2);
    box-shadow: 0 3px 12px rgba(163, 121, 254, 0.5);
}

.wear-value {
    min-width: 120px;
    padding: 10px 20px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--custom-text-color);
    font-weight: 700;
    text-align: center;
    font-size: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

.wear-value .value {
    color: var(--span-color);
    font-size: 16px;
    font-weight: 900;
}

.wear-value .label {
    color: var(--inactive-text-color);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Чекбоксы */
.checkbox-group {
    display: flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    user-select: none;
}

.checkbox-custom {
    width: 24px;
    height: 24px;
    background: rgba(0, 0, 0, 0.3);
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    position: relative;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.checkbox-custom::after {
    content: '';
    width: 12px;
    height: 12px;
    background: var(--span-color);
    border-radius: 3px;
    transform: scale(0);
    transition: transform 0.2s ease;
}

.checkbox-group input:checked + .checkbox-custom {
    border-color: var(--span-color);
    background: rgba(163, 121, 254, 0.1);
}

.checkbox-group input:checked + .checkbox-custom::after {
    transform: scale(1);
}

.checkbox-group input {
    display: none;
}

.checkbox-label {
    color: var(--custom-text-color);
    font-weight: 600;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.checkbox-label i {
    color: var(--span-color);
}

/* Stattrak counter */
.stattrak-counter {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 15px;
}

.counter-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(0, 0, 0, 0.3);
    padding: 10px 15px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.counter-btn {
    width: 36px;
    height: 36px;
    background: var(--button-color);
    color: var(--custom-text-color);
    border: none;
    border-radius: 6px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.counter-btn:hover {
    background: var(--button-color-hover);
    transform: scale(1.1);
}

.counter-display {
    min-width: 100px;
    padding: 12px 20px;
    background: rgba(0, 0, 0, 0.4);
    border-radius: 8px;
    text-align: center;
    font-weight: 900;
    font-size: 18px;
    color: var(--custom-text-color);
    border: 2px solid var(--error-color);
    box-shadow: 0 0 15px rgba(239, 68, 68, 0.2);
}

.counter-display .label {
    display: block;
    font-size: 11px;
    color: var(--inactive-text-color);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

/* Стикеры */
.stickers-section {
    margin-top: 30px;
}

/* Контейнер слотов стикеров - в одну строку как кнопки */
.stickers-grid-settings, 
.stickers-grid {
    display: flex;
    flex-direction: row;
    gap: 12px;
    margin-top: 15px;
    flex-wrap: wrap;
}

/* Слоты стикеров - квадратные как кнопки */
.sticker-slot-settings,
.sticker-slot {
    aspect-ratio: 1 / 1;
    width: 80px;
    min-width: 80px;
    max-width: 80px;
    background: var(--button-color);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    padding: 8px;
}

.sticker-slot-settings,
.sticker-slot {
    aspect-ratio: 1 / 1;
    width: 80px;
    min-width: 80px;
    max-width: 80px;
    background: var(--button-color);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    padding: 8px;
}

.sticker-slot-settings:hover,
.sticker-slot:hover {
    background: var(--button-color-hover);
    border-color: rgba(255, 255, 255, 0.25);
    transform: translateY(-2px);
}

.sticker-slot-settings.filled,
.sticker-slot.filled {
    border-style: solid;
    border-color: var(--success-color);
    background: rgba(45, 212, 191, 0.1);
}

.sticker-content,
.sticker-slot-content {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
}

.sticker-content img,
.sticker-slot-content img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.5));
}

.sticker-label,
.sticker-slot-label {
    font-size: 10px;
    color: var(--inactive-text-color);
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.2;
}

.sticker-slot-remove {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 18px;
    height: 18px;
    background: var(--error-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    opacity: 0;
    transition: opacity 0.3s ease;
    cursor: pointer;
    z-index: 2;
    border: none;
}

.sticker-slot-settings:hover .sticker-slot-remove,
.sticker-slot:hover .sticker-slot-remove {
    opacity: 1;
}

.sticker-slot-remove:hover {
    background: #dc2626;
    transform: scale(1.1);
}

.sticker-slot-settings:hover .sticker-slot-remove {
    opacity: 1;
}

.sticker-slot-remove:hover {
    background: #dc2626;
    transform: scale(1.1);
}

/* Брелок */
.keychain-section {
    margin-top: 30px;
}

.keychain-slot-settings {
    height: 140px;
    background: rgba(0, 0, 0, 0.3);
    border: 2px dashed rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    margin-top: 15px;
}

.keychain-slot-settings:hover {
    border-color: var(--warning-color);
    background: rgba(251, 191, 36, 0.1);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}

.keychain-slot-settings.filled {
    border-style: solid;
    border-color: var(--warning-color);
    background: rgba(251, 191, 36, 0.1);
}

.keychain-slot-content {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

.keychain-slot-content img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.5));
}

.keychain-slot-label {
    font-size: 13px;
    color: var(--inactive-text-color);
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.keychain-slot-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 24px;
    height: 24px;
    background: var(--error-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    opacity: 0;
    transition: opacity 0.3s ease;
    cursor: pointer;
    z-index: 2;
}

.keychain-slot-settings:hover .keychain-slot-remove {
    opacity: 1;
}

.keychain-slot-remove:hover {
    background: #dc2626;
    transform: scale(1.1);
}

/* Подпись к полям */
.help-text {
    display: block;
    color: var(--inactive-text-color);
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.4;
}

.help-text i {
    color: var(--span-color);
    margin-right: 5px;
}

/* Кнопки действия */
.settings-actions {
    display: flex;
    gap: 20px;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 2px solid rgba(255, 255, 255, 0.1);
}

.save-button {
    flex: 1;
    padding: 18px 30px;
    background: var(--button-color);
    color: var(--custom-text-color);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 700;
    font-size: 18px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
  
}

.save-button:hover {
    background: var(--button-color-hover);
   
}

.save-button:active {
    transform: translateY(-2px);
}

.cancel-button {
    flex: 1;
    padding: 18px 30px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
    color: var(--custom-text-color);
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    cursor: pointer;
    font-weight: 700;
    font-size: 18px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    backdrop-filter: blur(10px);
}

.cancel-button:hover {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.1));
    border-color: var(--inactive-text-color);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}

.reset-button {
    padding: 18px 30px;
    background: linear-gradient(135deg, var(--error-color), #dc2626);
    color: var(--custom-text-color);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 700;
    font-size: 18px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    box-shadow: 0 10px 25px rgba(239, 68, 68, 0.2);
}

.reset-button:hover {
    background: linear-gradient(135deg, #dc2626, var(--error-color));
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(239, 68, 68, 0.3);
}

/* ============== АДАПТИВНОСТЬ ДЛЯ СТРАНИЦЫ НАСТРОЕК ============== */

@media (max-width: 1200px) {
    .stickers-grid-settings {
        grid-template-columns: repeat(4, 1fr);
    }
    
    .skin-preview-image {
        width: 250px;
        height: 125px;
    }
}

@media (max-width: 992px) {
    .skin-settings-container {
        padding: 20px;
        margin: 20px;
    }
    
    .stickers-grid-settings {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .settings-actions {
        flex-direction: column;
    }
    
    .wear-slider-container {
        flex-direction: column;
        align-items: stretch;
    }
    
    .wear-slider {
        min-width: 100%;
    }
    
    .wear-value {
        min-width: 100%;
    }
    
    .main-skin-preview {
        padding: 20px;
    }
    
    .skin-preview-section,
    .settings-form-section {
        padding: 30px;
    }
}

@media (max-width: 768px) {
    .skin-settings-container {
        padding: 15px;
        margin: 15px;
        border-radius: 15px;
    }
    
    .stickers-grid-settings {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    
    .settings-header {
        padding: 20px;
    }
    
    .settings-header h2 {
        font-size: 24px;
    }
    
    .preview-header {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }
    
    .team-indicator {
        align-self: flex-start;
    }
    
    .skin-preview-image {
        width: 200px;
        height: 100px;
        padding: 20px;
    }
    
    .skin-preview-info h4 {
        font-size: 18px;
    }
    
    .skin-preview-info .skin-name {
        font-size: 16px;
    }
    
    .form-group {
        padding: 20px;
    }
    
    .form-control {
        padding: 12px 16px;
        font-size: 14px;
    }
    
    .counter-controls {
        justify-content: center;
    }
    
    .save-button,
    .cancel-button,
    .reset-button {
        padding: 15px 20px;
        font-size: 16px;
    }
    
    .keychain-slot-settings {
        height: 120px;
    }
    
    .keychain-slot-content {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 576px) {
    .stickers-grid-settings {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    
    .sticker-slot-content {
        width: 50px;
        height: 50px;
    }
    
    .skin-preview-section,
    .settings-form-section {
        padding: 20px;
    }
    
    .skin-preview-image {
        width: 180px;
        height: 90px;
        padding: 15px;
    }
    
    .settings-header h2 {
        font-size: 20px;
    }
    
    .preview-header h3 {
        font-size: 18px;
    }
    
    .form-group label {
        font-size: 14px;
    }
    
    .checkbox-label {
        font-size: 14px;
    }
    
    .help-text {
        font-size: 12px;
    }
}

/* ============== МОДАЛЬНЫЕ ОКНА ДЛЯ СТИКЕРОВ И БРЕЛКОВ ============== */

.sticker-modal-overlay, .keychain-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.9);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
    animation: modalFadeIn 0.3s ease;
}

@keyframes modalFadeIn {
    from {
        opacity: 0;
        backdrop-filter: blur(0);
    }
    to {
        opacity: 1;
        backdrop-filter: blur(10px);
    }
}

.sticker-modal-content, .keychain-modal-content {
    background: linear-gradient(135deg, var(--bg-color-dark), var(--bg-color));
    border-radius: 20px;
    width: 90vw;
    max-width: 1000px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    border: 2px solid var(--bg-color-mid);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7);
    animation: modalSlideIn 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: translateY(-50px) scale(0.9);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.sticker-modal-header, .keychain-modal-header {
    padding: 25px 30px;
    border-bottom: 2px solid var(--bg-color-mid);
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(135deg, rgba(43, 0, 71, 0.8), rgba(58, 26, 94, 0.8));
    border-radius: 20px 20px 0 0;
}

.sticker-modal-header h3, .keychain-modal-header h3 {
    color: var(--custom-text-color);
    margin: 0;
    font-size: 28px;
    background: linear-gradient(135deg, var(--primary-400), var(--purple-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.sticker-modal-close, .keychain-modal-close {
    background: rgba(255, 255, 255, 0.1);
    border: none;
    color: var(--custom-text-color);
    font-size: 28px;
    cursor: pointer;
    padding: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.sticker-modal-close:hover, .keychain-modal-close:hover {
    background: var(--bg-color-mid);
    transform: rotate(90deg);
    color: var(--span-color);
}

.sticker-modal-body, .keychain-modal-body {
    padding: 30px;
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.sticker-search, .keychain-search {
    margin-bottom: 25px;
    position: relative;
}

.sticker-search input, .keychain-search input {
    width: 100%;
    padding: 15px 20px 15px 50px;
    background: rgba(0, 0, 0, 0.3);
    border: 2px solid var(--bg-color-light);
    border-radius: 10px;
    color: var(--custom-text-color);
    font-size: 16px;
    transition: all 0.3s ease;
}

.sticker-search input:focus, .keychain-search input:focus {
    outline: none;
    border-color: var(--button-color);
    box-shadow: 0 0 0 3px rgba(99, 0, 152, 0.2);
}

.sticker-search i, .keychain-search i {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--inactive-text-color);
    font-size: 18px;
}

.stickers-selection-grid, .keychains-selection-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); /* Уменьшил с 300px до 180px */
    gap: 15px; /* Уменьшил отступы */
    overflow-y: auto;
    flex: 1;
    padding: 10px 5px;
}

.sticker-item, .keychain-item {
    background: var(--card-color);
    border-radius: 10px;
    padding: 15px; /* Уменьшил паддинг */
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    border: 2px solid var(--bg-color-mid);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1; /* Делаем карточки квадратными */
}

.sticker-item:hover, .keychain-item:hover {
    transform: translateY(-5px) scale(1.03); /* Уменьшил эффект наведения */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
    border-color: var(--button-color);
    z-index: 1;
}

.sticker-item img, .keychain-item img {
    width: 100%; /* Занимаем всю ширину контейнера */
    height: 100px; /* Фиксированная высота для изображения */
    max-width: 120px; /* Максимальная ширина */
    max-height: 120px; /* Максимальная высота */
    object-fit: contain;
    margin-bottom: 10px;
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.4));
    position: relative;
    z-index: 1;
    padding: 10px;
}

.sticker-name, .keychain-name {
    font-size: 11px; /* Уменьшил размер шрифта */
    color: var(--custom-text-color);
    font-weight: 600;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
    z-index: 1;
    margin-top: auto; /* Прижимаем текст к низу */
    padding-top: 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
}

/* ============== АДАПТИВНОСТЬ ДЛЯ МОДАЛЬНЫХ ОКОН ============== */

@media (max-width: 1200px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        gap: 12px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 90px;
        max-width: 110px;
        max-height: 110px;
    }
}

@media (max-width: 992px) {
    .sticker-modal-content, .keychain-modal-content {
        width: 95vw;
        max-height: 85vh;
    }
    
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: 10px;
    }
    
    .sticker-item, .keychain-item {
        padding: 12px;
        border-radius: 8px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 80px;
        max-width: 100px;
        max-height: 100px;
        padding: 8px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 10px;
    }
    
    .sticker-modal-header h3, .keychain-modal-header h3 {
        font-size: 22px;
    }
}

@media (max-width: 768px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
        gap: 8px;
    }
    
    .sticker-item, .keychain-item {
        padding: 10px;
        border-radius: 6px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 70px;
        max-width: 90px;
        max-height: 90px;
        padding: 6px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 9px;
        padding-top: 6px;
    }
    
    .sticker-modal-header, .keychain-modal-header {
        padding: 15px 20px;
    }
    
    .sticker-modal-body, .keychain-modal-body {
        padding: 15px;
    }
    
    .sticker-search input, .keychain-search input {
        padding: 12px 15px 12px 40px;
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
        gap: 6px;
    }
    
    .sticker-item, .keychain-item {
        padding: 8px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 60px;
        max-width: 80px;
        max-height: 80px;
        padding: 5px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 8px;
        padding-top: 4px;
    }
    
    .sticker-modal-header h3, .keychain-modal-header h3 {
        font-size: 18px;
    }
}

/* ============== УЛУЧШЕНИЯ ДЛЯ ПРОСМОТРА ============== */

/* Контейнер для изображения стикера */
.sticker-image-container, .keychain-image-container {
    width: 100%;
    height: 70%; /* Изображение занимает 70% высоты карточки */
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    margin-bottom: 8px;
    padding: 5px;
}

/* Эффект при наведении на изображение */
.sticker-item:hover .sticker-image-container,
.keychain-item:hover .keychain-image-container {
    background: rgba(163, 121, 254, 0.1);
}

/* Выделение выбранного стикера */
.sticker-item.selected, .keychain-item.selected {
    border-color: var(--success-color);
    background: rgba(45, 212, 191, 0.1);
    box-shadow: 0 0 0 2px rgba(45, 212, 191, 0.3);
}

.sticker-item.selected::before, .keychain-item.selected::before {
    content: '✓';
    position: absolute;
    top: 5px;
    right: 5px;
    width: 18px;
    height: 18px;
    background: var(--success-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: bold;
    z-index: 2;
}

/* Эффект пульсации для выбранного элемента */
@keyframes selectedPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(45, 212, 191, 0.4);
    }
    70% {
        box-shadow: 0 0 0 6px rgba(45, 212, 191, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(45, 212, 191, 0);
    }
}

.sticker-item.selected:hover, .keychain-item.selected:hover {
    animation: selectedPulse 1.5s infinite;
}

/* ============== ПРОГРЕСС БАР ЗАГРУЗКИ ============== */

.stickers-loading, .keychains-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    color: var(--inactive-text-color);
    font-size: 14px;
    text-align: center;
    grid-column: 1 / -1; /* Занимает всю ширину грида */
}

.loading-spinner {
    width: 40px;
    height: 40px;
    border: 3px solid rgba(163, 121, 254, 0.2);
    border-top-color: var(--span-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 15px;
}

/* ============== ПУСТОЕ СОСТОЯНИЕ ============== */

.stickers-empty, .keychains-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    color: var(--inactive-text-color);
    font-size: 14px;
    text-align: center;
    grid-column: 1 / -1;
}

.stickers-empty i, .keychains-empty i {
    font-size: 40px;
    margin-bottom: 15px;
    color: var(--inactive-text-color);
    opacity: 0.5;
}

/* ============== ИНФОРМАЦИЯ О СТИКЕРЕ ПРИ НАВЕДЕНИИ ============== */

.sticker-tooltip, .keychain-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: var(--tooltip-color);
    color: var(--custom-text-color);
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 11px;
    white-space: nowrap;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    margin-bottom: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    border: 1px solid var(--bg-color-mid);
    pointer-events: none;
}

.sticker-tooltip::after, .keychain-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: var(--tooltip-color);
}

.sticker-item:hover .sticker-tooltip,
.keychain-item:hover .keychain-tooltip {
    opacity: 1;
    visibility: visible;
}
/* ============== СТИЛИ ДЛЯ ПРЕДПРОСМОТРА В РЕАЛЬНОМ ВРЕМЕНИ ============== */

.live-preview {
    margin-top: 40px;
    background: rgba(0, 0, 0, 0.2);
    padding: 25px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.live-preview h4 {
    color: var(--custom-text-color);
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.live-preview h4 i {
    color: var(--span-color);
}

.preview-weapon {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

.preview-weapon-image {
    width: 200px;
    height: 100px;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.4), rgba(43, 0, 71, 0.6));
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.preview-weapon-image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 3px 8px rgba(0, 0, 0, 0.6));
}

.preview-details {
    flex: 1;
    min-width: 300px;
}

.preview-detail-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 10px;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.preview-detail-label {
    color: var(--inactive-text-color);
    font-size: 13px;
    min-width: 120px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.preview-detail-value {
    color: var(--custom-text-color);
    font-size: 14px;
    font-weight: 600;
}

.form-control {
    background-color: var(--card-color);
}

.preview-detail-value.nametag {
    color: var(--primary-400);
    font-style: italic;
}

.preview-detail-value.stattrak {
    color: var(--error-color);
    font-weight: 700;
}

.preview-detail-value.wear {
    color: var(--span-color);
    font-weight: 700;
}

/* ============== ИНФОРМАЦИОННЫЕ БЛОКИ ============== */

.info-box {
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.1), rgba(45, 212, 191, 0.05));
    border: 1px solid rgba(56, 189, 248, 0.2);
    border-radius: 10px;
    padding: 20px;
    margin-top: 15px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.info-box i {
    color: var(--info-color);
    font-size: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

.info-box p {
    color: var(--custom-text-color);
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
}

.info-box p strong {
    color: var(--info-color);
}

.warning-box {
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.1), rgba(249, 115, 22, 0.05));
    border: 1px solid rgba(251, 191, 36, 0.2);
}

.warning-box i {
    color: var(--warning-color);
}

.warning-box p strong {
    color: var(--warning-color);
}

/* ============== КАСТОМНЫЙ СКРОЛЛБАР ============== */

.sticker-modal-body::-webkit-scrollbar,
.keychain-modal-body::-webkit-scrollbar,
.stickers-selection-grid::-webkit-scrollbar,
.keychains-selection-grid::-webkit-scrollbar {
    width: 8px;
}

.sticker-modal-body::-webkit-scrollbar-track,
.keychain-modal-body::-webkit-scrollbar-track,
.stickers-selection-grid::-webkit-scrollbar-track,
.keychains-selection-grid::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 4px;
}

.sticker-modal-body::-webkit-scrollbar-thumb,
.keychain-modal-body::-webkit-scrollbar-thumb,
.stickers-selection-grid::-webkit-scrollbar-thumb,
.keychains-selection-grid::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--span-color), var(--purple-color));
    border-radius: 4px;
}

.sticker-modal-body::-webkit-scrollbar-thumb:hover,
.keychain-modal-body::-webkit-scrollbar-thumb:hover,
.stickers-selection-grid::-webkit-scrollbar-thumb:hover,
.keychains-selection-grid::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, var(--purple-color), var(--primary-400));
}

/* ============== АНИМАЦИИ ДЛЯ ИЗМЕНЕНИЙ ============== */

@keyframes highlightChange {
    0% {
        background: rgba(163, 121, 254, 0);
        box-shadow: 0 0 0 rgba(163, 121, 254, 0);
    }
    50% {
        background: rgba(163, 121, 254, 0.2);
        box-shadow: 0 0 20px rgba(163, 121, 254, 0.3);
    }
    100% {
        background: rgba(163, 121, 254, 0);
        box-shadow: 0 0 0 rgba(163, 121, 254, 0);
    }
}

.form-group.changed {
    animation: highlightChange 1s ease;
}

/* ============== ТЕМНЫЙ И СВЕТЛЫЙ МОДЫ ============== */

@media (prefers-color-scheme: light) {
    .skin-settings-container {
        background: linear-gradient(135deg, #f8f9fa, #e9ecef);
        border-color: #dee2e6;
    }
    
    .settings-header {
        background: linear-gradient(135deg, #6c757d, #495057);
    }
    
    .settings-header h2 {
        background: linear-gradient(135deg, #0ea5e9, #0369a1);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    
    .form-control {
        background: white;
        border-color: #ced4da;
        color: #212529;
    }
    
    .form-control:focus {
        border-color: #0ea5e9;
        box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.2);
    }
}

/* ============== СОСТОЯНИЕ ЗАГРУЗКИ ============== */

.loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(31, 0, 53, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    z-index: 100;
    backdrop-filter: blur(5px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.loading-overlay.active {
    opacity: 1;
    visibility: visible;
}

.spinner {
    width: 50px;
    height: 50px;
    border: 4px solid rgba(163, 121, 254, 0.2);
    border-top-color: var(--span-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* ============== УВЕДОМЛЕНИЯ ============== */

.notification {
    position: fixed;
    bottom: 30px;
    right: 30px;
    padding: 15px 25px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--success-color), var(--primary-600));
    color: white;
    font-weight: 600;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
    z-index: 1000;
    transform: translateY(100px);
    opacity: 0;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 10px;
}

.notification.show {
    transform: translateY(0);
    opacity: 1;
}

.notification.error {
    background: linear-gradient(135deg, var(--error-color), #dc2626);
}

.notification.warning {
    background: linear-gradient(135deg, var(--warning-color), #f97316);
}

.notification.info {
    background: linear-gradient(135deg, var(--info-color), var(--primary-500));
}

.weapon-rarity-badge, .glove-rarity-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    z-index: 4;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
    display: block; /* Всегда показываем на карточках оружия */
    opacity: 0.95;
    transition: all 0.3s ease;
}

/* Скрываем бейдж на стандартных карточках без скинов */
.weapon-card:not(.rarity-consumer-grade):not(.rarity-industrial-grade):not(.rarity-mil-spec):not(.rarity-restricted):not(.rarity-classified):not(.rarity-covert):not(.rarity-exceedingly-rare):not(.rarity-contraband) .weapon-rarity-badge,
.weapon-card:not(.selected) .weapon-rarity-badge {
    display: none;
}

.glove-card:not(.rarity-consumer-grade):not(.rarity-industrial-grade):not(.rarity-mil-spec):not(.rarity-restricted):not(.rarity-classified):not(.rarity-covert):not(.rarity-exceedingly-rare):not(.rarity-contraband) .glove-rarity-badge,
.glove-card:not(.selected) .glove-rarity-badge {
    display: none;
}
 weapons-container
/* Эффект при наведении */
.weapon-card:hover .weapon-rarity-badge,
.glove-card:hover .glove-rarity-badge {
    opacity: 1;
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5);
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    .weapon-rarity-badge, .glove-rarity-badge {
        font-size: 9px;
        padding: 3px 8px;
        top: 8px;
        left: 8px;
    }
}

@media (max-width: 576px) {
    .weapon-rarity-badge, .glove-rarity-badge {
        font-size: 8px;
        padding: 2px 6px;
        top: 6px;
        left: 6px;
    }
}

/* ============== ИСПРАВЛЕНИЕ МОДАЛЬНЫХ ОКОН СТИКЕРОВ И БРЕЛКОВ ============== */

/* Уменьшаем максимальную ширину модального окна */
.sticker-modal-content, .keychain-modal-content {
    max-width: 800px;
    width: 95vw;
}

/* Компактная сетка для стикеров и брелков */
.stickers-selection-grid, .keychains-selection-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 10px;
    padding: 5px;
    max-height: 60vh;
    overflow-y: auto;
}

/* Уменьшаем карточки */
.sticker-item, .keychain-item {
    background: var(--card-color);
    border-radius: 8px;
    padding: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid var(--bg-color-mid);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: 140px;
    position: relative;
    overflow: hidden;
}

/* Уменьшаем изображения */
.sticker-item img, .keychain-item img {
    width: 100%;
    height: 80px;
    max-width: 100px;
    max-height: 100px;
    object-fit: contain;
    margin-bottom: 8px;
    padding: 5px;
}

/* Уменьшаем текст */
.sticker-name, .keychain-name {
    font-size: 10px;
    color: var(--custom-text-color);
    font-weight: 600;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: auto;
    padding-top: 5px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
}

/* Эффект при наведении - более мягкий */
.sticker-item:hover, .keychain-item:hover {
    transform: translateY(-3px);
    border-color: var(--button-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Уменьшаем заголовок модального окна */
.sticker-modal-header h3, .keychain-modal-header h3 {
    font-size: 20px;
    margin: 0;
}

/* Уменьшаем паддинги */
.sticker-modal-header, .keychain-modal-header {
    padding: 15px 20px;
}

.sticker-modal-body, .keychain-modal-body {
    padding: 15px;
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
        gap: 8px;
    }
    
    .sticker-item, .keychain-item {
        height: 120px;
        padding: 8px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 60px;
        max-width: 80px;
        max-height: 80px;
        margin-bottom: 5px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 9px;
    }
}

@media (max-width: 576px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
        gap: 6px;
    }
    
    .sticker-item, .keychain-item {
        height: 110px;
        padding: 6px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 50px;
        max-width: 70px;
        max-height: 70px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 8px;
    }
    
    .sticker-modal-content, .keychain-modal-content {
        width: 98vw;
    }
}

/* Для очень маленьких экранов */
@media (max-width: 375px) {
    .stickers-selection-grid, .keychains-selection-grid {
        grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
        gap: 4px;
    }
    
    .sticker-item, .keychain-item {
        height: 100px;
        padding: 5px;
    }
    
    .sticker-item img, .keychain-item img {
        height: 45px;
        max-width: 60px;
        max-height: 60px;
    }
    
    .sticker-name, .keychain-name {
        font-size: 7px;
        padding-top: 3px;
    }
}

/* Прокрутка внутри грида */
.stickers-selection-grid::-webkit-scrollbar,
.keychains-selection-grid::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.stickers-selection-grid::-webkit-scrollbar-track,
.keychains-selection-grid::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 3px;
}

.stickers-selection-grid::-webkit-scrollbar-thumb,
.keychains-selection-grid::-webkit-scrollbar-thumb {
    background: rgba(163, 121, 254, 0.4);
    border-radius: 3px;
}

.stickers-selection-grid::-webkit-scrollbar-thumb:hover,
.keychains-selection-grid::-webkit-scrollbar-thumb:hover {
    background: rgba(163, 121, 254, 0.6);
}

/* Выделение выбранного элемента */
.sticker-item.selected, .keychain-item.selected {
    border-color: var(--success-color);
    background: rgba(45, 212, 191, 0.1);
}

.sticker-item.selected::after, .keychain-item.selected::after {
    content: '';
    position: absolute;
    top: 3px;
    right: 3px;
    width: 12px;
    height: 12px;
    background: var(--success-color);
    border-radius: 50%;
    border: 2px solid var(--card-color);
}

