/**
 * utility_classes.css
 *
 * Cross-page utility primitives. These class names are intentionally NOT
 * BEM-namespaced because they are pure utilities (one job, one shape) and
 * any page or component may use them without "owning" them.
 *
 * Keep this file tiny. If a utility starts growing options, move it to a
 * BEM-scoped component instead.
 */

/* Hide an element visually but keep it accessible to assistive tech. */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

select {
    transition-property: background, border-color, color, box-shadow, filter, opacity;
    transition-duration: 0.14s;
    transition-timing-function: ease;
}

select {
    appearance: none;
    -webkit-appearance: none;
    padding-right: max(48px, 3em);
    background-image:
        linear-gradient(45deg, transparent 50%, currentColor 50%),
        linear-gradient(135deg, currentColor 50%, transparent 50%) !important;
    background-position:
        calc(100% - 24px) 50%,
        calc(100% - 18px) 50% !important;
    background-size: 6px 6px, 6px 6px !important;
    background-repeat: no-repeat !important;
}
