/**
 * SIDEKICK — скины пластинок (Чёрный рынок → Гардероб).
 * Класс .sk-skin-{key} вешается на карточку полки / диск деки / сцену плеера / док.
 */

/* ===== Превью в магазине ===== */
.sk-skin-preview-stage {
    position: relative;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.05), rgba(0, 0, 0, 0.45) 70%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    overflow: hidden;
}
.sk-skin-preview-disc {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #09090c;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.85);
    animation: skSkinPreviewSpin 6s linear infinite;
    animation-play-state: paused;
    transition: box-shadow 0.3s;
}
.sk-shop-card:hover .sk-skin-preview-disc { animation-play-state: running; }
.sk-skin-preview-disc .sk-vinyl-grooves { position: absolute; inset: 0; border-radius: 50%; }
.sk-skin-preview-disc .sk-vinyl-grooves::after { width: 38px; height: 38px; }
.sk-skin-preview-label {
    position: absolute;
    top: 50%; left: 50%;
    width: 30px; height: 30px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: linear-gradient(135deg, var(--shop-orange, #ff8a3d), #ff3d7f);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.6);
    z-index: 2;
}
.sk-skin-preview-label::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    width: 6px; height: 6px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #080a0e;
}
@keyframes skSkinPreviewSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .sk-skin-preview-disc { animation: none; }
}

/* Базовые бороздки для превью (на странице магазина deck.css нет) */
.sk-skin-preview-disc.sk-skin-classic .sk-vinyl-grooves,
.sk-wr-hero-vinyl.sk-skin-classic .sk-vinyl-grooves {
    background: conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #0a0a0d 0px, #17171d 1.5px, #060608 2.5px, #1a1a24 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.85);
}
.sk-skin-preview-disc .sk-vinyl-grooves::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, #0e1117 0%, #05070a 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

/* ----- ruby ----- */
.sk-skin-ruby .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-ruby {
    background:
        radial-gradient(circle at 35% 30%, rgba(255,120,140,.28), transparent 55%),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #2b0108 0px, #651021 1.5px, #1d0005 2.5px, #8a1a2e 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-ruby .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#3a0510 0%,#1a0004 100%);
}
.sk-vinyl-disc.sk-skin-ruby,
.sk-skin-ruby .sk-vinyl-disc,
.sk-crate-card.sk-skin-ruby .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-ruby {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(255,60,90,.45);
}

/* ----- neon ----- */
.sk-skin-neon .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-neon {
    background:
        conic-gradient(from 0deg, rgba(0,229,255,.28), rgba(255,0,200,.28), rgba(0,229,255,.28), rgba(255,0,200,.28), rgba(0,229,255,.28)),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #050816 0px, #0b3346 1.5px, #04050d 2.5px, #2a0f4a 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-neon .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#0b1a2a 0%,#05070f 100%);
}
.sk-vinyl-disc.sk-skin-neon,
.sk-skin-neon .sk-vinyl-disc,
.sk-crate-card.sk-skin-neon .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-neon {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(0,229,255,.5);
}

/* ----- marble ----- */
.sk-skin-marble .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-marble {
    background:
        radial-gradient(ellipse 60% 30% at 30% 35%, rgba(150,110,230,.38), transparent 70%), radial-gradient(ellipse 45% 25% at 70% 70%, rgba(110,90,190,.32), transparent 70%), radial-gradient(ellipse 30% 55% at 75% 25%, rgba(255,255,255,.55), transparent 70%),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #cfd0da 0px, #eceef5 1.5px, #b7b8c6 2.5px, #f6f6fb 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-marble .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#e9e9f2 0%,#c4c4d2 100%);
}
.sk-vinyl-disc.sk-skin-marble,
.sk-skin-marble .sk-vinyl-disc,
.sk-crate-card.sk-skin-marble .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-marble {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(200,180,255,.45);
}

/* ----- galaxy ----- */
.sk-skin-galaxy .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-galaxy {
    background:
        radial-gradient(1.5px 1.5px at 22% 30%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 70% 22%, #fff 50%, transparent 51%), radial-gradient(1.5px 1.5px at 80% 62%, #cfe3ff 50%, transparent 51%), radial-gradient(1px 1px at 35% 78%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 12% 58%, #ffd9f5 50%, transparent 51%), radial-gradient(1.5px 1.5px at 58% 88%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 88% 40%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 45% 12%, #cfe3ff 50%, transparent 51%), radial-gradient(ellipse 55% 35% at 30% 40%, rgba(255,60,200,.25), transparent 70%), radial-gradient(ellipse 50% 40% at 72% 66%, rgba(60,140,255,.25), transparent 70%),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #0a0420 0px, #1d0c40 1.5px, #06021a 2.5px, #2c1460 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-galaxy .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#1b0c3a 0%,#07021a 100%);
}
.sk-vinyl-disc.sk-skin-galaxy,
.sk-skin-galaxy .sk-vinyl-disc,
.sk-crate-card.sk-skin-galaxy .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-galaxy {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(160,90,255,.5);
}

/* ----- gold ----- */
.sk-skin-gold .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-gold {
    background:
        radial-gradient(circle at 32% 28%, rgba(255,240,180,.35), transparent 50%),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #4a3306 0px, #a77d1e 1.5px, #35240a 2.5px, #d9ac3c 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-gold .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#c99a2e 0%,#6a4a0c 100%);
}
.sk-vinyl-disc.sk-skin-gold,
.sk-skin-gold .sk-vinyl-disc,
.sk-crate-card.sk-skin-gold .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-gold {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(255,200,60,.5);
}

/* ----- holo ----- */
.sk-skin-holo .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-holo {
    background:
        conic-gradient(from 90deg, rgba(255,0,128,.38), rgba(255,200,0,.32), rgba(0,255,150,.32), rgba(0,200,255,.38), rgba(170,80,255,.38), rgba(255,0,128,.38)),
        conic-gradient(from 40deg at 50% 50%, rgba(255,255,255,.22) 0deg, rgba(255,255,255,.02) 45deg, transparent 70deg, rgba(255,255,255,.18) 180deg, rgba(255,255,255,.02) 225deg, transparent 250deg, rgba(255,255,255,.22) 360deg),
        repeating-radial-gradient(circle at 50% 50%, #121218 0px, #2a2a36 1.5px, #0d0d12 2.5px, #3a3a4a 4px);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.6);
}
.sk-skin-holo .sk-vinyl-grooves::after {
    background: radial-gradient(circle,#1e1e2a 0%,#0b0b10 100%);
}
.sk-vinyl-disc.sk-skin-holo,
.sk-skin-holo .sk-vinyl-disc,
.sk-crate-card.sk-skin-holo .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-holo {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.9), 0 0 18px rgba(255,120,255,.45);
}

/* Голограмма слегка переливается сама по себе */
.sk-skin-holo .sk-vinyl-grooves { animation: skSkinHoloHue 8s linear infinite; }
@keyframes skSkinHoloHue { to { filter: hue-rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .sk-skin-holo .sk-vinyl-grooves { animation: none; }
}


/* =====================================================================
 * v3 — реалистичные цветные тиражи.
 * Бороздки поверх цвета, блик стоит на месте (на обёртке, не крутится).
 * ===================================================================== */
.sk-vinyl-disc-wrap::after,
.sk-vm-disc-wrap::after,
.sk-dock-disc-wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 6;
    border-radius: 50%;
    pointer-events: none;
    background: conic-gradient(from 20deg, transparent 0deg, rgba(255,255,255,.16) 18deg, transparent 38deg, transparent 180deg, rgba(255,255,255,.11) 198deg, transparent 218deg);
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* ----- showtime ----- */
.sk-skin-showtime .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-showtime {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        conic-gradient(#552583 0 25%, #f2b02a 0 50%, #552583 0 75%, #f2b02a 0);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-showtime,
.sk-skin-showtime .sk-vinyl-disc,
.sk-crate-card.sk-skin-showtime .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-showtime,
.sk-vm-disc.sk-skin-showtime,
.sk-dock-disc.sk-skin-showtime {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(242,176,42,.35);
}
.sk-skin-showtime .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-showtime)::after,
.sk-vm-disc-wrap:has(.sk-skin-showtime)::after,
.sk-dock-disc-wrap:has(.sk-skin-showtime)::after { opacity: 1; }

/* ----- half ----- */
.sk-skin-half .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-half {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        linear-gradient(90deg,#c1121f 50%,#111114 50%);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-half,
.sk-skin-half .sk-vinyl-disc,
.sk-crate-card.sk-skin-half .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-half,
.sk-vm-disc.sk-skin-half,
.sk-dock-disc.sk-skin-half {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(193,18,31,.35);
}
.sk-skin-half .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-half)::after,
.sk-vm-disc-wrap:has(.sk-skin-half)::after,
.sk-dock-disc-wrap:has(.sk-skin-half)::after { opacity: 1; }

/* ----- splatter ----- */
.sk-skin-splatter .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-splatter {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        radial-gradient(circle at 22% 30%, #f1f1f1 0 2.2%, transparent 2.6%), radial-gradient(circle at 26% 34%, #f1f1f1 0 1%, transparent 1.3%), radial-gradient(ellipse 5% 3% at 70% 24%, #00c2ff 60%, transparent 66%), radial-gradient(circle at 75% 28%, #00c2ff 0 1.2%, transparent 1.5%), radial-gradient(circle at 80% 65%, #ffd23f 0 3%, transparent 3.4%), radial-gradient(circle at 85% 70%, #ffd23f 0 1%, transparent 1.3%), radial-gradient(ellipse 4% 6% at 30% 78%, #ff2e88 60%, transparent 66%), radial-gradient(circle at 25% 72%, #ff2e88 0 1.1%, transparent 1.4%), radial-gradient(circle at 58% 86%, #f1f1f1 0 1.6%, transparent 1.9%), radial-gradient(circle at 12% 55%, #00c2ff 0 1.4%, transparent 1.7%), radial-gradient(circle at 60% 10%, #ffd23f 0 1.3%, transparent 1.6%), radial-gradient(circle at 90% 45%, #ff2e88 0 1.5%, transparent 1.8%), #0d0d10;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-splatter,
.sk-skin-splatter .sk-vinyl-disc,
.sk-crate-card.sk-skin-splatter .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-splatter,
.sk-vm-disc.sk-skin-splatter,
.sk-dock-disc.sk-skin-splatter {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(0,194,255,.25);
}
.sk-skin-splatter .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-splatter)::after,
.sk-vm-disc-wrap:has(.sk-skin-splatter)::after,
.sk-dock-disc-wrap:has(.sk-skin-splatter)::after { opacity: 1; }

/* ----- glass ----- */
.sk-skin-glass .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-glass {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        radial-gradient(circle, rgba(255,255,255,.05) 0 80%, rgba(255,255,255,.16) 96%, rgba(255,255,255,.28) 100%);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-glass,
.sk-skin-glass .sk-vinyl-disc,
.sk-crate-card.sk-skin-glass .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-glass,
.sk-vm-disc.sk-skin-glass,
.sk-dock-disc.sk-skin-glass {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(255,255,255,.18);
}
.sk-skin-glass .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-glass)::after,
.sk-vm-disc-wrap:has(.sk-skin-glass)::after,
.sk-dock-disc-wrap:has(.sk-skin-glass)::after { opacity: 1; }

/* ----- ice ----- */
.sk-skin-ice .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-ice {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        radial-gradient(circle, rgba(110,190,255,.30) 0 75%, rgba(170,225,255,.45) 96%, rgba(220,245,255,.6) 100%);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-ice,
.sk-skin-ice .sk-vinyl-disc,
.sk-crate-card.sk-skin-ice .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-ice,
.sk-vm-disc.sk-skin-ice,
.sk-dock-disc.sk-skin-ice {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(120,200,255,.45);
}
.sk-skin-ice .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-ice)::after,
.sk-vm-disc-wrap:has(.sk-skin-ice)::after,
.sk-dock-disc-wrap:has(.sk-skin-ice)::after { opacity: 1; }

/* ----- lava ----- */
.sk-skin-lava .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-lava {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        conic-gradient(from 10deg, #120403 0deg, #5c1208 25deg, #160504 45deg, #8a2b0c 80deg, #140403 110deg, #3d0b06 150deg, #120403 185deg, #7a1d0a 220deg, #140404 255deg, #a3360e 290deg, #120403 330deg, #120403 360deg);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-lava,
.sk-skin-lava .sk-vinyl-disc,
.sk-crate-card.sk-skin-lava .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-lava,
.sk-vm-disc.sk-skin-lava,
.sk-dock-disc.sk-skin-lava {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(255,80,20,.45);
}
.sk-skin-lava .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-lava)::after,
.sk-vm-disc-wrap:has(.sk-skin-lava)::after,
.sk-dock-disc-wrap:has(.sk-skin-lava)::after { opacity: 1; }

/* ----- glow ----- */
.sk-skin-glow .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-glow {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        radial-gradient(circle, rgba(140,255,70,.42) 0 70%, rgba(170,255,90,.6) 100%);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-glow,
.sk-skin-glow .sk-vinyl-disc,
.sk-crate-card.sk-skin-glow .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-glow,
.sk-vm-disc.sk-skin-glow,
.sk-dock-disc.sk-skin-glow {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(140,255,70,.6);
}
.sk-skin-glow .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-glow)::after,
.sk-vm-disc-wrap:has(.sk-skin-glow)::after,
.sk-dock-disc-wrap:has(.sk-skin-glow)::after { opacity: 1; }

/* ----- sakura ----- */
.sk-skin-sakura .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-sakura {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        radial-gradient(circle at 24% 30%, #fff 0 1.6%, transparent 1.9%), radial-gradient(circle at 74% 24%, #fff 0 1.1%, transparent 1.4%), radial-gradient(circle at 82% 64%, #fff 0 1.8%, transparent 2.1%), radial-gradient(circle at 30% 78%, #fff 0 1.2%, transparent 1.5%), radial-gradient(circle at 58% 88%, #fff 0 1%, transparent 1.3%), radial-gradient(circle at 14% 55%, #fff 0 1.3%, transparent 1.6%), rgba(255,160,200,.72);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-sakura,
.sk-skin-sakura .sk-vinyl-disc,
.sk-crate-card.sk-skin-sakura .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-sakura,
.sk-vm-disc.sk-skin-sakura,
.sk-dock-disc.sk-skin-sakura {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(255,160,200,.45);
}
.sk-skin-sakura .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-sakura)::after,
.sk-vm-disc-wrap:has(.sk-skin-sakura)::after,
.sk-dock-disc-wrap:has(.sk-skin-sakura)::after { opacity: 1; }

/* ----- sunset ----- */
.sk-skin-sunset .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-sunset {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        repeating-linear-gradient(180deg, transparent 0 56%, rgba(25,4,40,.9) 56% 58%, transparent 58% 63%, rgba(25,4,40,.9) 63% 66%, transparent 66% 72%, rgba(25,4,40,.9) 72% 76%, transparent 76%), linear-gradient(180deg, #e8b931 8%, #e0623f 42%, #c42672 72%, #4a1a7a 100%);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-sunset,
.sk-skin-sunset .sk-vinyl-disc,
.sk-crate-card.sk-skin-sunset .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-sunset,
.sk-vm-disc.sk-skin-sunset,
.sk-dock-disc.sk-skin-sunset {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(255,120,60,.4);
}
.sk-skin-sunset .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-sunset)::after,
.sk-vm-disc-wrap:has(.sk-skin-sunset)::after,
.sk-dock-disc-wrap:has(.sk-skin-sunset)::after { opacity: 1; }

/* ----- aurora ----- */
.sk-skin-aurora .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-aurora {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        conic-gradient(from 0deg, #0b2a35 0deg, #11727a 30deg, #0b2a35 60deg, #3a2a7a 100deg, #0b2a35 140deg, #1a8a7a 190deg, #0b2a35 230deg, #523a9a 280deg, #0b2a35 320deg, #0b2a35 360deg);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-aurora,
.sk-skin-aurora .sk-vinyl-disc,
.sk-crate-card.sk-skin-aurora .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-aurora,
.sk-vm-disc.sk-skin-aurora,
.sk-dock-disc.sk-skin-aurora {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(40,200,180,.4);
}
.sk-skin-aurora .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-aurora)::after,
.sk-vm-disc-wrap:has(.sk-skin-aurora)::after,
.sk-dock-disc-wrap:has(.sk-skin-aurora)::after { opacity: 1; }

/* ----- chrome ----- */
.sk-skin-chrome .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-chrome {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        conic-gradient(from 20deg, #e9edf2, #6f7782, #dfe4ea, #3f454e, #d3d9e0, #7d8590, #e9edf2);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-chrome,
.sk-skin-chrome .sk-vinyl-disc,
.sk-crate-card.sk-skin-chrome .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-chrome,
.sk-vm-disc.sk-skin-chrome,
.sk-dock-disc.sk-skin-chrome {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(230,240,255,.4);
}
.sk-skin-chrome .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-chrome)::after,
.sk-vm-disc-wrap:has(.sk-skin-chrome)::after,
.sk-dock-disc-wrap:has(.sk-skin-chrome)::after { opacity: 1; }

/* ----- matrix ----- */
.sk-skin-matrix .sk-vinyl-grooves,
.sk-dock-disc.sk-skin-matrix {
    background:
        radial-gradient(circle closest-side, transparent 0 93%, rgba(255,255,255,.12) 96%, rgba(0,0,0,.45) 99%),
        radial-gradient(circle closest-side, transparent 0 41%, rgba(0,0,0,.32) 42% 44%, transparent 45%),
        repeating-radial-gradient(circle, rgba(0,0,0,.30) 0 1px, rgba(255,255,255,.045) 1px 2px, rgba(0,0,0,.16) 2px 3px),
        repeating-conic-gradient(from 0deg, rgba(0,255,90,.45) 0 1deg, transparent 1deg 8deg), #020a04;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.45);
}
.sk-vinyl-disc.sk-skin-matrix,
.sk-skin-matrix .sk-vinyl-disc,
.sk-crate-card.sk-skin-matrix .sk-crate-peeking-disc,
.sk-skin-preview-disc.sk-skin-matrix,
.sk-vm-disc.sk-skin-matrix,
.sk-dock-disc.sk-skin-matrix {
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.85), 0 0 18px rgba(0,255,90,.45);
}
.sk-skin-matrix .sk-vinyl-disc-wrap::after,
.sk-vinyl-disc-wrap:has(.sk-skin-matrix)::after,
.sk-vm-disc-wrap:has(.sk-skin-matrix)::after,
.sk-dock-disc-wrap:has(.sk-skin-matrix)::after { opacity: 1; }

/* Прозрачные тиражи: под диском нет чёрной подложки */
.sk-skin-glass .sk-disc-face,
.sk-crate-card.sk-skin-glass .sk-crate-peeking-disc,
.sk-vm-disc.sk-skin-glass,
.sk-skin-preview-disc.sk-skin-glass,
.sk-skin-ice .sk-disc-face,
.sk-crate-card.sk-skin-ice .sk-crate-peeking-disc,
.sk-vm-disc.sk-skin-ice,
.sk-skin-preview-disc.sk-skin-ice,
.sk-skin-glow .sk-disc-face,
.sk-crate-card.sk-skin-glow .sk-crate-peeking-disc,
.sk-vm-disc.sk-skin-glow,
.sk-skin-preview-disc.sk-skin-glow,
.sk-skin-sakura .sk-disc-face,
.sk-crate-card.sk-skin-sakura .sk-crate-peeking-disc,
.sk-vm-disc.sk-skin-sakura,
.sk-skin-preview-disc.sk-skin-sakura {
    background: transparent;
}

/* Светится в темноте: мягко «дышит» (только в превью окна: на деке filter сломал бы 3D-переворот) */
.sk-vm-disc-wrap:has(.sk-skin-glow) { border-radius: 50%; animation: skSkinGlowBreath 1.8s ease-in-out infinite alternate; }
@keyframes skSkinGlowBreath { from { filter: drop-shadow(0 0 4px rgba(140, 255, 70, 0.2)); } to { filter: drop-shadow(0 0 14px rgba(140, 255, 70, 0.55)); } }
@media (prefers-reduced-motion: reduce) {
    .sk-vm-disc-wrap:has(.sk-skin-glow) { animation: none; }
}
