#player-container {
        width: 100%;
        max-width: 720px;
        aspect-ratio: 16 / 9;
        background-color: #000;
        position: relative;
        border-radius: 0;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
        user-select: none;
        cursor: pointer;
    }

    #player-container:fullscreen {
        max-width: 100%;
        width: 100vw;
        height: 100vh;
        border-radius: 0 !important;
    }

    .usp-video {
        width: 100%;
        height: 100%;
        object-fit: contain;
        display: block;
    }

    .usp-yt-holder {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .usp-yt-holder iframe {
        width: 100%;
        height: 100%;
        border: none;
    }

    #player-container:not(.native-controls-active) .usp-yt-holder iframe,
    #player-container.is-audio-mode .usp-yt-holder iframe {
        pointer-events: none !important;
    }

    .usp-audio-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #181824;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 10;
        pointer-events: auto;
        overflow: hidden;
        padding: 10px;
        transition: background-color 0.3s ease;
    }

    .usp-station-title {
        font-size: 24px;
        font-weight: 700;
        text-align: center;
        padding: 0 20px;
        transition: color 0.3s ease, text-shadow 0.3s ease;
    }

    .usp-audio-thumb {
        max-width: 80%;
        max-height: 80%;
        object-fit: contain;
        border-radius: 8px;
    }

    .usp-audio-thumb.usp-audio-thumb-full {
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: 100%;
        object-fit: cover;
        border-radius: 0;
    }

    #player-container.is-playing .usp-station-title {
        color: #00ff88;
        text-shadow: 0 0 12px rgba(0, 255, 136, 0.5);
    }

    #player-container.is-paused .usp-station-title,
    #player-container:not(.is-playing) .usp-station-title {
        color: #ff4757;
        text-shadow: 0 0 12px rgba(255, 71, 87, 0.5);
    }

    .usp-audio-controls {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 42px;
        background: rgba(18, 18, 18, 0.82);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
        border-radius: 0;
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 0 12px;
        z-index: 25;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease-in-out;
    }

    #player-container.native-controls-active.is-audio-mode.show-audio-controls .usp-audio-controls {
        opacity: 1;
        pointer-events: auto;
    }

    @media (hover: hover) {
        #player-container.native-controls-active.is-audio-mode:hover .usp-audio-controls {
            opacity: 1;
            pointer-events: auto;
        }
    }

    .usp-ctrl-btn {
        background: transparent !important;
        border: none;
        padding: 0;
        margin: 0;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        outline: none;
        opacity: 0.9;
        flex-shrink: 0;
        transition: opacity 0.15s ease, transform 0.1s ease;
    }

    .usp-ctrl-btn:hover {
        opacity: 1;
        transform: scale(1.08);
    }

    .usp-ctrl-btn:active, .usp-ctrl-btn:focus {
        background: transparent !important;
        outline: none;
        box-shadow: none;
    }

    .usp-audio-seek {
        flex: 1;
        -webkit-appearance: none;
        appearance: none;
        height: 4px;
        border-radius: 2px;
        background: linear-gradient(to right, #00a2ff 0%, #00a2ff var(--seek-val, 0%), rgba(255, 255, 255, 0.25) var(--seek-val, 0%), rgba(255, 255, 255, 0.25) 100%);
        outline: none;
        cursor: pointer;
        min-width: 50px;
    }

    .usp-audio-seek::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 14px;
        height: 14px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 1px 4px rgba(0,0,0,0.5);
        cursor: pointer;
        transition: transform 0.1s;
    }

    .usp-audio-seek::-webkit-slider-thumb:hover {
        transform: scale(1.2);
    }

    .usp-audio-time {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
        font-size: 13px;
        color: #d1d1d1;
        white-space: nowrap;
        user-select: none;
        font-weight: 400;
        letter-spacing: 0.2px;
        flex-shrink: 0;
    }

    .usp-vol-group {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-shrink: 0;
    }

    .usp-vol-slider {
        -webkit-appearance: none;
        appearance: none;
        width: 65px;
        height: 4px;
        border-radius: 2px;
        background: linear-gradient(to right, #ffffff 0%, #ffffff var(--vol-val, 100%), rgba(255, 255, 255, 0.25) var(--vol-val, 100%), rgba(255, 255, 255, 0.25) 100%);
        outline: none;
        cursor: pointer;
    }

    .usp-vol-slider::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 13px;
        height: 13px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 1px 4px rgba(0,0,0,0.5);
        cursor: pointer;
    }

    @media (max-width: 576px) {
        .usp-audio-seek {
            display: none !important;
            width: 0 !important;
            min-width: 0 !important;
            margin: 0 !important;
            padding: 0 !important;
        }

        .usp-audio-controls {
            justify-content: flex-start;
            gap: 8px;
            padding: 0 10px;
        }

        .usp-audio-time {
            margin-left: auto;
        }

        .usp-vol-slider {
            width: 40px;
        }

        .usp-station-title {
            font-size: 18px;
        }
    }

    .usp-hidden { display: none !important; }
