/*
 * Square corners across Roots and Guide, including pills, avatars, status
 * indicators, radios, switches, spinners, and third-party widgets.
 * Important declarations in this layer outrank unlayered Bootstrap/theme
 * rules, regardless of selector specificity or stylesheet loading order.
 */
@layer squared {
    :root {
        --bs-border-radius: 0;
        --bs-border-radius-sm: 0;
        --bs-border-radius-lg: 0;
        --bs-border-radius-xl: 0;
        --bs-border-radius-xxl: 0;
        --bs-border-radius-2xl: 0;
        --bs-border-radius-pill: 0;
    }

    *,
    *::before,
    *::after {
        border-radius: 0 !important;
        border-start-start-radius: 0 !important;
        border-start-end-radius: 0 !important;
        border-end-start-radius: 0 !important;
        border-end-end-radius: 0 !important;
    }

    /* Browser-specific pseudo-elements need separate rules. */
    ::-webkit-slider-thumb {
        border-radius: 0 !important;
    }

    ::-webkit-slider-runnable-track {
        border-radius: 0 !important;
    }

    ::-moz-range-thumb {
        border-radius: 0 !important;
    }

    ::-moz-range-track {
        border-radius: 0 !important;
    }

    ::-webkit-scrollbar-thumb {
        border-radius: 0 !important;
    }

    ::-webkit-scrollbar-track {
        border-radius: 0 !important;
    }

    ::file-selector-button {
        border-radius: 0 !important;
    }
}
