/* Shared field treatment: a quiet underline, without rounded focus frames. */
:root{--field-accent:var(--graemo-green,#acfa5b)}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea,select):focus{
 outline:none!important;border-radius:0!important;box-shadow:inset 0 -2px 0 var(--field-accent)!important;
 border-bottom-color:var(--field-accent)!important;
}
:where(.arrival-search,.editorial-modal,.onboarding-panel,.profile-card,.court-card){--field-accent:#111}
body select:not([multiple]):not([size]){
 appearance:none;border-radius:0;min-height:44px;padding-right:36px!important;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23888888' stroke-width='1.6'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 10px center;cursor:pointer;
}
body select:disabled{cursor:not-allowed;opacity:.5}
body select option{background:#f0f0ec;color:#111;font:inherit}
.arrival-search .hero-search select{padding:10px 36px 10px 8px!important;background-color:transparent;transition:background-color .15s}
.arrival-search .hero-search select:hover,.arrival-search .hero-search select:focus{background-color:#0000000b!important}
.filter-select:has(select)>svg{display:none}
/* Preserve native keyboard, type-ahead and form semantics with a styled picker. */
@supports (appearance:base-select){
 body select:not([multiple]):not([size]),body select:not([multiple]):not([size])::picker(select){appearance:base-select}
 body select:not([multiple]):not([size]){background-image:none!important;align-items:center;gap:16px;padding-right:12px!important}
 body select::picker-icon{color:currentColor;font-size:14px;transition:rotate .15s}
 body select:open::picker-icon{rotate:180deg}
 body select::picker(select){background:#181818;color:#f5f5f0;border:0;border-radius:0;padding:6px;box-shadow:0 12px 32px #0004;max-height:min(360px,60dvh);overflow:auto;min-width:anchor-size(width);margin-top:8px;color-scheme:dark}
 body select option{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 16px;background:#181818!important;color:#f5f5f0!important;font-size:16px;font-weight:500;line-height:1.35;border:0;border-radius:0;cursor:pointer;white-space:normal}
 body select option:checked{background:var(--graemo-green,#acfa5b)!important;color:#111!important}
 body select option:hover,body select option:focus{background:#333!important;color:#fff!important;outline:none}
 body select option:checked:hover,body select option:checked:focus{background:var(--graemo-green-hover,#bbff78)!important;color:#111!important}
 body select option:disabled{opacity:.45;cursor:not-allowed}
 body select option::checkmark{order:2;margin-left:auto}
}
@media(prefers-reduced-motion:reduce){body select,body select::picker-icon{transition:none!important}}
@media(forced-colors:active){body :is(input,textarea,select):focus{outline:2px solid Highlight!important;outline-offset:2px}body select::picker(select){border:1px solid CanvasText}}

/* Text entry stays on its original surface; focus is a single hairline. */
body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]),textarea):focus{
 background-color:transparent!important;box-shadow:none!important;border-bottom:1px solid var(--field-accent)!important;
}
.auth-redesign .public-auth-panel{--entry-surface:#080808;--entry-text:#f5f5f5}
.auth-redesign .public-auth-panel input{caret-color:var(--graemo-green);border-radius:0;transition:border-color .15s ease}
.auth-redesign .public-auth-panel input::selection{background:var(--graemo-green);color:#111}
/* Cover browser autofill paint without disabling saved credentials. */
body .auth-redesign .public-auth-panel input:-webkit-autofill,
body .auth-redesign .public-auth-panel input:-webkit-autofill:hover,
body .auth-redesign .public-auth-panel input:-webkit-autofill:focus{
 -webkit-text-fill-color:var(--entry-text);caret-color:var(--graemo-green);
 -webkit-box-shadow:0 0 0 1000px var(--entry-surface) inset!important;
 box-shadow:0 0 0 1000px var(--entry-surface) inset!important;
}
.auth-redesign .public-auth-panel input:autofill{color:var(--entry-text);background-color:var(--entry-surface)}
@media(prefers-reduced-motion:reduce){.auth-redesign .public-auth-panel input{transition:none}}

/* Player and game filters keep the selected constraint visible when closed. */
body .filter-select select{
 border:0;border-bottom:1px solid #606060;border-radius:0;background-color:transparent;
 color:#bdbdbd;min-height:44px;max-width:100%;box-shadow:none;
}
body .filter-select select:has(option:checked:not([value=""])),
body .filter-select select:focus,body .filter-select select:open{
 color:var(--graemo-green);border-bottom-color:var(--graemo-green);
 outline:none!important;box-shadow:none!important;
}
body .filter-select select:disabled{color:#888;border-bottom-color:#444}

/* The game toolbar uses one underline for hover, focus and selection. */
body .filters .filter-select,
body .filters .filter-select:focus-within{outline:none!important;box-shadow:none!important;border-radius:0}
body .filters .filter-select select:focus-visible,
body .filters .filter:focus-visible{
 outline:none!important;box-shadow:none!important;border-radius:0;
 background-color:transparent!important;color:var(--graemo-green)!important;
 border-bottom:1px solid var(--graemo-green)!important;
}
body .filters .filter-select select:hover,
body .filters .filter:hover{border-bottom-color:var(--graemo-green)}
@media(forced-colors:active){body .filters .filter:focus-visible,body .filters .filter-select select:focus-visible{outline:2px solid Highlight!important;outline-offset:3px}}
/* Landing search picker: same visuals on macOS, mobile and desktop. */
#hero-search .graemo-native-select{display:none!important}
#hero-search .graemo-select-trigger{display:block;width:100%;min-height:48px;padding:10px 32px 10px 8px;border:0;border-bottom:1px solid transparent;background:transparent;color:#111;text-align:left;font:inherit;font-weight:600;position:relative;cursor:pointer}
#hero-search .graemo-select-trigger::after{content:'';position:absolute;right:12px;top:18px;width:8px;height:8px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg)}
#hero-search .graemo-select-trigger[aria-expanded=true]::after{transform:rotate(225deg);top:22px}
#hero-search .graemo-select-trigger:focus-visible,#hero-search .graemo-select-trigger[aria-expanded=true]{outline:0;border-bottom-color:#111;background:#0000000b}
.graemo-picker{position:fixed;z-index:10000;background:#181818;color:#f5f5f5;padding:6px;max-height:280px;overflow:auto;box-shadow:0 12px 32px #0005;border:1px solid #383838;border-radius:0;font:500 16px/1.35 Arial,sans-serif}
.graemo-picker [role=option]{padding:14px 40px 14px 16px;min-height:48px;position:relative;cursor:pointer}
.graemo-picker [aria-selected=true]{background:#acfa5b;color:#111}
.graemo-picker [aria-selected=true]::after{content:'✓';position:absolute;right:14px}
.graemo-picker [role=option]:hover,.graemo-picker .highlight{box-shadow:inset 0 0 0 1px #acfa5b;background:#333;color:#fff}
.graemo-picker [aria-selected=true]:hover,.graemo-picker [aria-selected=true].highlight{background:#acfa5b;color:#111}
.graemo-picker [aria-disabled=true]{opacity:.45;cursor:not-allowed}
