/* Mobile-specific adjustments for live indicator */
@media (max-width: 768px) {
    .live-indicator {
        font-size: 0.75rem;
        letter-spacing: 0.5px;
        display: inline-flex;
        align-items: center;
        gap: 0.1rem; /* Reduced gap to keep dot close to text */
    }
    
    .live-dot {
        width: 6px;
        height: 6px;
        margin-left: 0; /* Remove margin to keep dot close to text */
    }
    
    /* Volume control adjustments for larger mobile screens */
    .volume-control {
        flex-direction: row;
        justify-content: flex-end;
        gap: 0.3rem; /* Reduce gap */
    }
    
    .volume-control i {
        width: 20px; /* Adjust icon size */
        height: 20px; /* Adjust icon size */
    }
    
    #volumeSlider {
        width: 80px; /* Adjust width */
    }
    
    #volumePercentage {
        font-size: 0.8rem; /* Adjust font size */
        min-width: 35px; /* Adjust min-width */
    }
}

/* Alternative live indicator for smaller screens */
@media (max-width: 768px) {
    .live-indicator.alternative {
        padding: 0.25rem 0.6rem;
        border-radius: 0.75rem;
        gap: 0.3rem;
        display: inline-flex;
        flex-direction: row;
        align-items: center;
        white-space: nowrap;
        min-width: fit-content;
        font-size: 0.7rem;
        letter-spacing: 0.3px;
        backdrop-filter: blur(8px);
    }
    
    .live-indicator.alternative .live-dot {
        width: 6px;
        height: 6px;
        margin-left: 0;
    }
}

@media (max-width: 480px) {
    .live-indicator {
        font-size: 0.65rem;
        letter-spacing: 0.3px;
        gap: 0.08rem; /* Further reduced gap for smaller screens */
    }
    
    .live-dot {
        width: 5px;
        height: 5px;
        margin-left: 0; /* No margin to keep dot close to text */
    }
    
    /* Volume control adjustments for smaller mobile screens */
    .volume-control {
        gap: 0.2rem; /* Further reduce gap */
    }
    .volume-control i {
        width: 18px; /* Further adjust icon size */
        height: 18px; /* Further adjust icon size */
    }
    #volumeSlider {
        width: 60px; /* Further reduce width */
    }
    #volumePercentage {
        font-size: 0.7rem; /* Further adjust font size */
        min-width: 30px; /* Further adjust min-width */
    }
}

@media (max-width: 480px) {
    .live-indicator.alternative {
        padding: 0.2rem 0.5rem;
        gap: 0.25rem;
        flex-direction: row;
        white-space: nowrap;
        overflow: visible;
        font-size: 0.65rem;
        letter-spacing: 0.2px;
        border-radius: 0.6rem;
    }
}

/* Additional reductions for very small devices */
@media (max-width: 360px) {
    .live-indicator {
        font-size: 0.6rem;
        letter-spacing: 0.2px;
        padding: 0.1rem 0.3rem;
        gap: 0.06rem; /* Minimal gap on tiny screens */
    }
    
    .live-dot {
        width: 4px;
        height: 4px;
        margin-left: 0; /* No margin */
    }
    
    /* Volume control adjustments for smallest mobile screens */
    .volume-control {
        gap: 0.1rem; /* Minimal gap */
    }
     .volume-control i {
        width: 16px; /* Further adjust icon size */
        height: 16px; /* Further adjust icon size */
    }
     #volumeSlider {
        width: 50px; /* Further reduce width */
    }
    #volumePercentage {
        font-size: 0.6rem; /* Further adjust font size */
        min-width: 25px; /* Further adjust min-width */
    }
}

@media (max-width: 360px) {
    .live-indicator.alternative {
        padding: 0.15rem 0.4rem;
        gap: 0.2rem;
        font-size: 0.6rem;
        letter-spacing: 0.1px;
        border-radius: 0.5rem;
    }
}

/* Ultra-small screen adjustments to maintain horizontal layout */
@media (max-width: 320px) {
    .live-indicator {
        font-size: 0.55rem;
        letter-spacing: 0;
        padding: 0.05rem 0.25rem;
        white-space: nowrap;
        gap: 0.05rem;
    }
    
    .live-dot {
        width: 3px;
        height: 3px;
        margin-left: 0;
    }
    
    .station-name {
        font-size: 0.8rem;
        max-width: 80px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* Extreme width constraints - maintain horizontal at all costs */
@media (max-width: 280px) {
    .live-indicator {
        font-size: 0.5rem;
        letter-spacing: 0;
        padding: 0.05rem 0.2rem;
        gap: 0.04rem; /* Extremely small gap */
    }
    
    .live-dot {
        margin-left: 0; /* No margin */
    }
    
    .station-info img {
        width: 30px !important;
        height: 30px !important;
    }
    
    .station-name {
        max-width: 60px;
        font-size: 0.75rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

@media (max-width: 280px) {
    .live-indicator.alternative {
        font-size: 0.5rem;
        letter-spacing: 0;
        padding: 0.05rem 0.2rem;
        gap: 0.04rem;
        flex-direction: row;
        white-space: nowrap;
        flex-shrink: 0;
        overflow: visible;
    }
}

/* Rule to hide volume control on specific small screens */
@media (max-width: 390px) and (max-height: 844px),
       (max-width: 375px) and (max-height: 667px),
       (max-width: 360px) and (max-height: 740px),
       (max-width: 344px) and (max-height: 882px) {
    .volume-control {
        display: none !important;
    }
}