/* ===============================
   ÁREA LATINA RADIO PLAYER
================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Poppins',sans-serif;
    background:#050505;
    color:#fff;
    overflow-x:hidden;
    min-height:100vh;

}

/* Fondo */

.background{

    position:fixed;
    inset:0;
    background:
    radial-gradient(circle at top left,#ff000040,transparent 35%),
    radial-gradient(circle at bottom right,#ff730040,transparent 35%),
    linear-gradient(135deg,#070707,#141414,#080808);
    z-index:-1;

}

/* Contenedor */

.container{

    width:95%;
    max-width:1200px;
    margin:auto;
    padding:40px 20px;

}

/* Header */

header{

    margin-bottom:35px;

}

.logo-area{

    display:flex;
    align-items:center;
    gap:20px;

}

.radio-icon{

    width:80px;
    height:80px;
    border-radius:50%;
    background:linear-gradient(135deg,#ff0000,#ff6b00);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
    box-shadow:0 0 35px rgba(255,0,0,.35);

}

.logo-area h1{

    font-size:34px;
    font-weight:700;

}

.logo-area p{

    color:#bbb;
    margin-top:5px;

}

/* PLAYER */

.player-card{

    background:rgba(255,255,255,.07);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:25px;

    padding:35px;

    text-align:center;

    margin-bottom:40px;

    box-shadow:0 15px 40px rgba(0,0,0,.35);

}

.cover{

    display:flex;
    justify-content:center;
    margin-bottom:20px;

}

.cover-circle{

    width:180px;
    height:180px;

    border-radius:50%;

    background:linear-gradient(135deg,#ff0000,#ff8c00);

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:70px;

    animation:pulse 2s infinite;

}

@keyframes pulse{

0%{

transform:scale(1);

box-shadow:0 0 0 rgba(255,0,0,.4);

}

50%{

transform:scale(1.05);

box-shadow:0 0 35px rgba(255,0,0,.6);

}

100%{

transform:scale(1);

box-shadow:0 0 0 rgba(255,0,0,.4);

}

}

.live{

    display:inline-block;

    background:#ff0000;

    padding:7px 15px;

    border-radius:50px;

    font-size:13px;

    font-weight:600;

    margin-bottom:15px;

}

.live i{

    animation:blink 1s infinite;

}

@keyframes blink{

50%{

opacity:.3;

}

}

.info h2{

    font-size:34px;

    margin-bottom:8px;

}

.info p{

    color:#ccc;

}

/* BOTÓN PLAY */

.controls{

    margin:30px 0;

}

.controls button{

    width:85px;

    height:85px;

    border:none;

    border-radius:50%;

    background:linear-gradient(135deg,#ff0000,#ff8800);

    color:#fff;

    font-size:30px;

    cursor:pointer;

    transition:.3s;

}

.controls button:hover{

transform:scale(1.08);

}

/* VOLUMEN */

.volume{

display:flex;

align-items:center;

gap:15px;

justify-content:center;

}

.volume input{

width:320px;

accent-color:#ff0000;

cursor:pointer;

}

/* LISTA RADIOS */

.stations h3{

margin-bottom:25px;

font-size:28px;

text-align:center;

}

.grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:20px;

}

.station{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:20px;

padding:25px;

cursor:pointer;

transition:.35s;

text-align:center;

}

.station i{

font-size:38px;

color:#ff3d00;

margin-bottom:15px;

display:block;

}

.station span{

font-size:20px;

font-weight:600;

}

.station:hover{

transform:translateY(-6px);

background:#ff000020;

border-color:#ff3d00;

}

.station.active{

background:linear-gradient(135deg,#ff0000,#ff7b00);

border:none;

}

.station.active i{

color:#fff;

}

/* BOTÓN REGRESAR */

footer{

text-align:center;

margin-top:50px;

}

.backButton{

display:inline-flex;

align-items:center;

gap:10px;

padding:16px 30px;

border-radius:50px;

background:#ffffff;

color:#111;

font-weight:600;

text-decoration:none;

transition:.3s;

}

.backButton:hover{

background:#ff0000;

color:#fff;

}

/* RESPONSIVE */

@media(max-width:768px){

.logo-area{

flex-direction:column;

text-align:center;

}

.logo-area h1{

font-size:28px;

}

.cover-circle{

width:140px;

height:140px;

font-size:55px;

}

.info h2{

font-size:28px;

}

.volume{

flex-direction:column;

}

.volume input{

width:100%;

}

.controls button{

width:75px;

height:75px;

font-size:28px;

}

}