/* Shared public/admin selects, using the site's existing blue and navy palette. */
.ml-select { position:relative; display:block; width:100%; min-width:0; }
select.ml-select__native {
    position:absolute!important; width:1px!important; min-width:0!important; max-width:1px!important;
    height:1px!important; min-height:0!important; padding:0!important; margin:0!important;
    overflow:hidden!important; clip-path:inset(50%); opacity:0; pointer-events:none;
}
.ml-select__trigger {
    appearance:none; display:flex; align-items:center; gap:14px; width:100%; min-height:48px;
    padding:11px 16px; border:1px solid #bdcce2; border-radius:14px;
    background:linear-gradient(180deg,#fff,#f6f9fe); color:var(--navy);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9); font:inherit; font-size:.94rem;
    font-weight:700; line-height:1.45; text-align:left; cursor:pointer;
    transition:border-color 160ms ease,box-shadow 160ms ease,background-color 160ms ease;
}
.ml-select__value { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ml-select__chevron {
    flex:none; width:8px; height:8px; margin:0 3px 4px 0;
    border-right:2px solid #657c9f; border-bottom:2px solid #657c9f;
    transform:rotate(45deg); transition:transform 160ms ease;
}
.ml-select__trigger:hover { border-color:var(--accent); }
.ml-select__trigger:focus-visible,.ml-select__trigger[aria-expanded="true"] {
    outline:2px solid transparent; outline-offset:2px; border-color:var(--accent);
    box-shadow:0 0 0 3px rgba(47,115,224,.14);
}
.ml-select__trigger[aria-expanded="true"] .ml-select__chevron { transform:translateY(4px) rotate(225deg); }
.ml-select__trigger:disabled { color:var(--muted); background:#edf1f6; border-color:#d7e0ec; cursor:not-allowed; box-shadow:none; }
.ml-select__trigger[aria-invalid="true"] { border-color:var(--danger-dark,#b53f4e); }
.ml-select__error { display:block; margin-top:6px; color:var(--danger-dark,#b53f4e); font-size:.8rem; font-weight:500; }
.ml-select__menu {
    position:fixed; z-index:1500; box-sizing:border-box; padding:6px;
    border:1px solid #c6d3e6; border-radius:18px; background:#fff;
    box-shadow:0 16px 42px -12px rgba(13,33,79,.24),0 3px 10px rgba(13,33,79,.05);
    overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#bccbe1 transparent;
    animation:ml-select-appear 140ms ease-out; color:var(--navy); font-size:.94rem;
}
.ml-select__menu[hidden],.ml-select__error[hidden] { display:none; }
.ml-select__option {
    position:relative; display:flex; align-items:center; min-height:44px; box-sizing:border-box;
    padding:11px 38px 11px 12px; border-radius:11px; font-weight:600; line-height:1.4;
    overflow-wrap:anywhere; cursor:pointer;
}
.ml-select__option + .ml-select__option { margin-top:3px; }
.ml-select__option:hover,.ml-select__option.is-active { background:#edf3fc; }
.ml-select__option[aria-selected="true"] { background:#e7f0ff; color:var(--accent-dark); }
.ml-select__option[aria-selected="true"]::after {
    content:""; position:absolute; right:16px; top:50%; width:6px; height:11px;
    border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-65%) rotate(45deg);
}
.ml-select__option.is-active { outline:1px solid #a6c4ee; outline-offset:-1px; }
.ml-select__option[aria-disabled="true"] { color:#7a879a; background:transparent; cursor:not-allowed; }
.ml-select__empty { padding:14px 12px; color:var(--muted); }
.season-picker__field .ml-select__trigger { min-height:50px; }
.tournament-picker form > .ml-select { flex:1 1 220px; width:auto; }
.catalogue-season > .ml-select { width:180px; }
.portal-participant > .ml-select { width:135px; flex-shrink:0; }
.portal-results .ml-select { min-width:150px; }
.portal-form .ml-select__trigger { font-size:.9rem; font-weight:600; }
@keyframes ml-select-appear { from { opacity:0; } to { opacity:1; } }
@media(max-width:760px) {
    .catalogue-season > .ml-select { flex:1; width:auto; }
    .ml-select__trigger { min-height:48px; }
}
@media(prefers-reduced-motion:reduce) {
    .ml-select__menu { animation:none; }
    .ml-select__trigger,.ml-select__chevron { transition:none; }
}
@media(forced-colors:active) {
    .ml-select__option.is-active { outline:2px solid Highlight; }
    .ml-select__option[aria-selected="true"] { color:Highlight; }
    .ml-select__trigger:disabled,.ml-select__option[aria-disabled="true"] { color:GrayText; }
}
