/* =============================================
   Audio Player Widget
   ============================================= */
.audio-player {
    position: absolute;
    bottom: 40px;
    right: 40px;
    background: rgba(255, 255, 255, 0.9);
    padding: 12px 20px;
    border-radius: 50px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 100;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.audio-player:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
}

.audio-player .player-vinyl {
    width: 40px;
    height: 40px;
    background: #111;
    border-radius: 50%;
    position: relative;
    animation: audioSpin 5s linear infinite;
    animation-play-state: paused;
}

.audio-player .player-vinyl.playing {
    animation-play-state: running;
}

.audio-player .player-vinyl::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    background: #FF5722;
    /* Vinyl label color */
    border-radius: 50%;
    border: 2px solid #111;
}

.audio-player .vinyl-grooves {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: repeating-radial-gradient(#111 0,
            #111 2px,
            #222 3px,
            #222 4px);
}

.audio-player .player-controls {
    display: flex;
    align-items: center;
    gap: 12px;
}

.audio-player .player-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--color-accent);
    color: white;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform var(--transition-fast);
}

.audio-player .player-btn:hover {
    transform: scale(1.04);
}

.audio-player .play-icon {
    font-size: 12px;
    margin-left: 2px;
    /* Visual centering */
}

.audio-player .player-info {
    display: flex;
    flex-direction: column;
}

.audio-player .player-track {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.audio-player .player-time {
    font-size: 0.65rem;
    color: var(--color-text-muted);
    font-family: var(--font-mono);
}

@keyframes audioSpin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .audio-player {
        position: fixed !important;
        bottom: auto !important;
        top: 20px !important;
        right: 20px !important;
        padding: 8px 12px;
        background: rgba(255, 255, 255, 0.95);
        border: 1px solid rgba(0, 0, 0, 0.1);
        z-index: 9999 !important;
    }

    .audio-player .player-vinyl {
        width: 32px;
        height: 32px;
    }

    .audio-player .player-track {
        display: none;
    }

    .audio-player .player-time {
        font-size: 0.7rem;
    }
}
