@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;900&display=swap');
.rs-player-v8 {
    max-width: 800px; margin: 30px auto;
    font-family: 'Inter', sans-serif;
}
.rs-v8-card {
    background: linear-gradient(135deg, var(--rs-bg, #181a21) 0%, #050608 100%);
    border: 1px solid rgba(255,255,255,0.08); border-radius: 48px !important;
    padding: 50px; color: #fff; box-shadow: 0 60px 120px -30px rgba(0,0,0,0.9);
    position: relative; overflow: hidden;
}
.rs-v8-decoration {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 350px; height: 350px; opacity: 0.04; filter: grayscale(1) blur(1px);
    pointer-events: none; z-index: 0; user-select: none;
}
.rs-v8-decoration img { width: 100%; height: 100%; object-fit: contain; }
.rs-v8-flex { display: flex; gap: 40px; align-items: center; position: relative; z-index: 1; justify-content: center; }

/* Centro de Acción Principal */
.rs-v8-action-box {
    width: 200px; height: 200px; background: rgba(255,255,255,0.03); border-radius: 40px;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    cursor: pointer; position: relative; border: 1px solid rgba(255,255,255,0.08);
    transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1); flex-shrink: 0;
}
.rs-v8-action-box:hover { background: rgba(255,255,255,0.05); transform: scale(1.02); border-color: rgba(255,255,255,0.15); }
.rs-v8-main-btn {
    width: 100px; height: 100px; 
    display: flex; align-items: center; justify-content: center;
}
.rs-v8-center-play { 
    color: #fff; background: var(--rs-accent); border-radius: 50%; 
    transition: all 0.3s ease; width: 85px; height: 85px; 
    box-shadow: 0 15px 35px var(--rs-accent)40;
    display: flex; align-items: center; justify-content: center;
}
.rs-v8-center-play svg { width: 44px; height: 44px; }
.rs-v8-action-box:hover .rs-v8-center-play { transform: scale(1.1); box-shadow: 0 20px 45px var(--rs-accent)60; }

/* Ondas cuando suena */
.rs-v8-waves { display: flex; gap: 4px; height: 16px; margin-top: 15px; opacity: 0.3; justify-content: center; }
.rs-v8-waves span { width: 3px; height: 100%; background: var(--rs-accent); border-radius: 10px; }
.is-playing .rs-v8-waves { opacity: 1; }
.is-playing .rs-v8-waves span { animation: rs-v8-wave 0.8s infinite alternate ease-in-out; }
.is-playing .rs-v8-waves span:nth-child(1) { animation-delay: 0s; }
.is-playing .rs-v8-waves span:nth-child(2) { animation-delay: 0.1s; }
.is-playing .rs-v8-waves span:nth-child(3) { animation-delay: 0.2s; }
.is-playing .rs-v8-waves span:nth-child(4) { animation-delay: 0.3s; }
.is-playing .rs-v8-waves span:nth-child(5) { animation-delay: 0.4s; }
.is-playing .rs-v8-waves span:nth-child(6) { animation-delay: 0.5s; }
.is-playing .rs-v8-waves span:nth-child(7) { animation-delay: 0.6s; }
@keyframes rs-v8-wave { 0% { height: 4px; } 100% { height: 16px; } }

.rs-v8-content { flex: 1; min-width: 0; text-align: left; }
.rs-v8-header { margin-bottom: 12px; display: flex; justify-content: flex-start; }
.rs-v8-label { font-size: 10px; font-weight: 900; color: #f3f4f6; text-transform: uppercase; letter-spacing: 5px; background: rgba(255,255,255,0.05); padding: 5px 12px; border-radius: 20px; }
.rs-v8-title { font-size: 28px; font-weight: 800; margin: 0 0 25px 0; color: #fff; line-height: 1.2; letter-spacing: -0.5px; }

.rs-v8-rail {
    height: 8px; background: rgba(255,255,255,0.05); border-radius: 20px;
    margin-bottom: 12px; cursor: pointer; position: relative; overflow: hidden;
}
.rs-v8-bar {
    height: 100%; background: var(--rs-accent); border-radius: 20px; width: 0%;
    box-shadow: 0 0 20px var(--rs-accent); transition: width 0.1s linear;
}
.rs-v8-time { 
    display: flex; justify-content: space-between; align-items: center; 
    font-size: 11px; font-weight: 700; color: #3d414d; font-family: monospace; 
}
.rs-v8-seek-tools { display: flex; gap: 15px; }
.rs-v8-skip-btn {
    background: transparent; border: none; color: #505561; 
    width: 24px; height: 24px; cursor: pointer;
    display: flex; align-items: center; justify-content: center; transition: all 0.2s;
    padding: 0;
}
.rs-v8-skip-btn:hover { color: #fff; }
.rs-v8-skip-btn svg { width: 14px; height: 14px; }

.rs-v8-footer { margin-top: 30px; border-top: 1px solid rgba(255,255,255,0.03); padding-top: 20px; display: flex; justify-content: flex-end; }
.rs-v8-brand { font-size: 10px; font-weight: 900; letter-spacing: 4px; color: #3d414d; }

@media (max-width: 650px) {
    .rs-v8-card { padding: 30px; border-radius: 32px; }
    .rs-v8-flex { flex-direction: column; text-align: center; gap: 30px; }
    .rs-v8-action-box { width: 100%; height: 160px; }
    .rs-v8-content { text-align: center; width: 100%; }
    .rs-v8-header { justify-content: center; }
    .rs-v8-title { font-size: 22px; margin-bottom: 15px; }
}
