/*
 * StreamTuner — Base Styles
 * Shared across all skins. Strong resets to prevent theme interference.
 */

.streamtuner-player {
    box-sizing: border-box !important;
    line-height: 1.4 !important;
    -webkit-text-size-adjust: 100%;
}

.streamtuner-player *,
.streamtuner-player *::before,
.streamtuner-player *::after {
    box-sizing: border-box !important;
}

/* Reset buttons — themes aggressively style these */
.streamtuner-player button,
.streamtuner-player button:hover,
.streamtuner-player button:focus,
.streamtuner-player button:active,
.streamtuner-player .st-btn-play,
.streamtuner-player .st-btn-play:hover,
.streamtuner-player .st-btn-play:focus,
.streamtuner-player .st-btn-play:active {
    cursor: pointer;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    font: inherit;
    color: inherit;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    outline: none !important;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

/* Reset links inside player */
.streamtuner-player a,
.streamtuner-player a:hover {
    text-decoration: none !important;
}

/* Reset images */
.streamtuner-player img {
    max-width: 100%;
    height: auto;
    border: none !important;
    box-shadow: none !important;
}

/* Reset inputs (volume slider) */
.streamtuner-player input[type="range"] {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent;
}

/* Screen reader only */
.st-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Sticky player — also needs theme reset */
.streamtuner-sticky button,
.streamtuner-sticky button:hover,
.streamtuner-sticky button:focus {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    text-transform: none !important;
    outline: none !important;
    -webkit-appearance: none;
    appearance: none;
}
