
/* ==========================================================
   CRIPTOSK V5 POLISH
   ========================================================== */


/* LOGO PRINCIPAL SIN RECTÁNGULO VISIBLE */

.brand-logo,
.panel-brand img,
.panel-footer-brand img {
    mix-blend-mode: screen;
}


/* VINYL CENTER */

.record-center {

    width: 38% !important;
    aspect-ratio: 1;

    border-radius: 50%;

    background:
        radial-gradient(
            circle at 38% 32%,
            #24262c 0%,
            #111217 48%,
            #08090c 100%
        ) !important;

    border:
        1px solid
        rgba(255,255,255,.11);

    box-shadow:
        inset 0 0 30px rgba(255,255,255,.025),
        0 8px 35px rgba(0,0,0,.55) !important;

    position: relative;

    overflow: hidden;
}


/* subtle chrome ring */

.record-center::before {

    content: "";

    position: absolute;

    inset: 5px;

    border-radius: 50%;

    border:
        1px solid
        rgba(255,255,255,.07);

    pointer-events: none;
}


.record-center img {

    width: 61% !important;

    height: auto;

    filter: none !important;

    mix-blend-mode: screen;

    opacity: .94;

    position: relative;

    z-index: 2;
}


/* ----------------------------------------------------------
   LIVE INFORMATION
---------------------------------------------------------- */

.live-stats {

    margin-top: 18px;

    padding:
        11px 13px;

    border-top:
        1px solid
        rgba(255,255,255,.055);

    border-bottom:
        1px solid
        rgba(255,255,255,.055);

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 8px 13px;

    color:
        rgba(255,255,255,.34);

    font-size: 9px;

    font-weight: 650;

    letter-spacing: 1.25px;

    text-transform: uppercase;

    transition: opacity .25s ease;
}


.stat-value {

    color:
        rgba(255,255,255,.71);
}


.stat-separator {

    width: 3px;

    height: 3px;

    background:
        rgba(255,255,255,.22);

    border-radius: 50%;
}


/* ----------------------------------------------------------
   REAL ON AIR / OFF AIR
---------------------------------------------------------- */

.live-label.offline {

    color:
        rgba(255,255,255,.32);
}


.live-label.offline .mini-live-dot {

    background:
        #565860 !important;

    box-shadow:
        none !important;
}


.live-badge.offline {

    color:
        rgba(255,255,255,.46);
}


.live-badge.offline .live-dot {

    background:
        #565860 !important;

    box-shadow:
        none !important;

    animation:
        none !important;
}


/* ----------------------------------------------------------
   TRACK
---------------------------------------------------------- */

.track-title {

    transition:
        opacity .22s ease;

    max-width:
        100%;

    overflow:
        hidden;

    text-overflow:
        ellipsis;
}


.track-subtitle {

    transition:
        opacity .22s ease;
}


/* ----------------------------------------------------------
   METADATA REFRESH INDICATOR
---------------------------------------------------------- */

.meta-sync {

    margin-left: auto;

    display: inline-flex;

    align-items: center;

    gap: 5px;

    opacity: .42;
}


.meta-sync-dot {

    width: 4px;

    height: 4px;

    border-radius: 50%;

    background:
        rgba(255,255,255,.65);
}


.meta-sync.loading .meta-sync-dot {

    animation:
        metaPulse
        .8s
        infinite;
}


@keyframes metaPulse {

    50% {
        opacity: .2;
    }

}


/* ----------------------------------------------------------
   PANEL REFINEMENT
---------------------------------------------------------- */

.radio-panel {

    border:
        1px solid
        rgba(255,255,255,.105) !important;

    box-shadow:
        0 40px 120px rgba(0,0,0,.60),
        inset 0 1px 0 rgba(255,255,255,.025) !important;
}


.panel-header {

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.012),
            transparent
        );
}


/* little chrome line */

.panel-header::after {

    content: "";

    position: absolute;

    bottom: -1px;

    left: 22px;

    width: 72px;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.5),
            transparent
        );

    opacity: .35;
}


.panel-header {

    position: relative;
}


/* ----------------------------------------------------------
   MOBILE
---------------------------------------------------------- */

@media (max-width: 500px) {

    .live-stats {

        gap: 7px 9px;

        font-size: 8px;
    }

}

