/* Floating Pill Radio Button */
#floatingRadioBtn {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 999999;
    padding: 10px 20px;
    background: #31d958; /* green */
    border-radius: 40px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    box-shadow: 0 5px 18px rgba(0,0,0,0.25);
    transition: 0.25s ease;
}

#floatingRadioBtn:hover {
    transform: scale(1.05);
}

#floatingRadioBtn .playIcon {
    font-size: 18px;
}

/* Live broadcast dot */
#floatingRadioBtn .liveDot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: red;
    animation: livePulse 1.5s infinite ease-in-out;
}

/* Subtle glowing pulse, not heartbeat */
@keyframes livePulse {
    0%   { box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.8); }
    70%  { box-shadow: 0 0 0 8px rgba(255, 0, 0, 0); }
    100% { box-shadow: 0 0 0 0 rgba(255, 0, 0, 0); }
}

/* hide LIVE items on load */
#floatingRadioBtn .liveDot,
#floatingRadioBtn .liveText {
    display: none;
}

/* When playing */
#floatingRadioBtn.playing {
    background: #ff3b3b; /* red */
}