/* Shared structural header; final visual polish belongs to the UI branch. */
.select-site-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px max(16px,env(safe-area-inset-right)); flex-wrap:wrap; color:#232027; background:#f8f6f2; box-sizing:border-box; }
.select-wordmark { color:inherit; font:700 16px/1.4 system-ui,sans-serif; letter-spacing:.08em; text-decoration:none; }
[data-select-account], [data-competition-account] { position:relative; margin-left:auto; text-align:left; }
[data-select-account] summary, [data-competition-account] summary { cursor:pointer; padding:10px; min-height:44px; box-sizing:border-box; font:14px/1.5 system-ui,sans-serif; }
.select-account-menu { position:absolute; right:0; top:100%; z-index:1000; display:grid; gap:4px; min-width:170px; max-width:calc(100vw - 32px); padding:10px; border:1px solid #ded9d1; background:#fff; color:#232027; box-sizing:border-box; font:14px/1.4 system-ui,sans-serif; }
.select-account-menu a, .select-account-menu button { display:block; padding:10px; min-height:44px; box-sizing:border-box; width:auto; margin:0; color:inherit; font:inherit; text-align:left; background:none; border:0; cursor:pointer; }
.select-account-menu [hidden] { display:none!important; }
.select-account-menu [role=status]:empty { display:none; }
.select-account-menu a:focus-visible, .select-account-menu button:focus-visible, summary:focus-visible, .select-wordmark:focus-visible { outline:3px solid #6951ab; outline-offset:3px; }
#account-settings { scroll-margin-top:20px; }
/* Shared Account control and static fallback use the same quiet surface. */
[data-select-account] summary, [data-competition-account] summary { display:flex; align-items:center; justify-content:center; gap:9px; list-style:none; border-radius:10px; }
[data-select-account] summary::-webkit-details-marker, [data-competition-account] summary::-webkit-details-marker { display:none; }
[data-select-account] summary::marker, [data-competition-account] summary::marker { content:""; }
[data-select-account] summary::after, [data-competition-account] summary::after { content:""; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); opacity:.65; }
[data-select-account][open] summary::after, [data-competition-account][open] summary::after { transform:translateY(2px) rotate(225deg); }
.select-account-menu, [data-account-fallback] { position:absolute; right:0; top:calc(100% + 5px); z-index:1000; display:grid; gap:4px; min-width:170px; max-width:calc(100vw - 32px); padding:8px; border:1px solid #e5e1ea; border-radius:16px; background:#faf9f6; color:#232027; box-shadow:0 12px 30px rgba(74,64,101,.14),inset 0 1px 0 #fff; box-sizing:border-box; font:14px/1.4 system-ui,sans-serif; }
.select-account-menu a, .select-account-menu button, [data-account-fallback] a { display:block; padding:12px; min-height:44px; box-sizing:border-box; border-radius:9px; text-decoration:none; color:inherit; }
.select-account-menu a:hover, .select-account-menu button:hover, [data-account-fallback] a:hover { background:#efedf4; }
[data-account-fallback] a:focus-visible { outline:3px solid #6951ab; outline-offset:1px; }
.select-account-menu a:focus-visible, .select-account-menu button:focus-visible { outline-offset:1px; background:#efedf4; }
@media (prefers-reduced-motion: no-preference) {
 [open] > .select-account-menu, [open] > [data-account-fallback] { animation:select-account-enter 120ms ease-out; }
 @keyframes select-account-enter { from { opacity:0; transform:translateY(-3px); } to { opacity:1; transform:translateY(0); } }
}
