/* Shared controls use the same center line and hit area. */
.header-inner { display:grid; grid-template-columns:1fr auto 1fr; gap:24px; }
.header-inner .main-tabs { margin-left:0; justify-self:center; }
.header-actions { justify-self:end; display:flex; align-items:center; }
.guest-actions,.member-actions { display:flex; align-items:center; justify-content:center; gap:10px; }
.wallet-button,.header-actions .watchlist-button,.account-button { height:40px; display:flex; align-items:center; justify-content:center; margin:0; padding-block:0; }
.wallet-button { gap:10px; padding-inline:12px; }
.wallet-button>span:nth-child(2) { text-align:center; gap:3px; }
.wallet-button small { line-height:1; }
.wallet-button strong { line-height:1; }
.wallet-icon { width:21px!important; height:21px!important; display:block; }
.wallet-plus { display:grid; place-items:center; width:16px; height:20px; margin:0; line-height:1; font-size:18px; }
.header-actions .watchlist-button { padding-inline:12px; }
.watch-count { display:grid; place-items:center; min-width:18px; height:18px; padding:0 4px; line-height:1; }
.account-button { padding:0; gap:0; width:40px; border-radius:50%; }
.account-button .account-avatar { width:36px; height:36px; line-height:1; }
.account-chevron { display:none; }
.sign-in-button,.sign-up-button { display:flex; align-items:center; justify-content:center; gap:12px; height:40px; padding:0 18px; border-radius:6px; font-size:12px; font-weight:550; line-height:1; white-space:nowrap; }
.sign-in-button { color:#c3cbdd; border:1px solid #333c51; background:#10151f; }
.sign-in-button:hover { background:#1c263b; border-color:#667ea7; }
.sign-up-button { background:#2958ff; border:1px solid #4773ff; color:white; }
.sign-up-button:hover { background:#3a68ff; }
.sign-up-button>span { font-size:15px; }

.contests-page .hero { padding-top:70px; padding-bottom:80px; min-height:calc(100svh - 139px); }
.contests-page .hero-content { width:100%; max-width:860px; }
.contests-page .hero-description { margin-bottom:32px; }
.search-area { width:min(720px,100%); }
.search-shell { height:66px; padding:9px 10px 9px 22px; gap:14px; }
.search-shell input { line-height:24px; padding:0; height:44px; }
.search-icon { width:21px; height:21px; display:block; }
.search-submit { height:44px; width:46px; }
.search-submit svg { width:23px; height:23px; }
.search-shortcut { display:grid; place-items:center; width:24px; height:26px; padding:0; line-height:1; }
.clear-search { display:grid; place-items:center; width:26px; height:32px; padding:0; line-height:1; flex-shrink:0; }
.search-shell:has(input:not(:placeholder-shown)) .search-shortcut { display:none; }
.search-dropdown { z-index:20; }
#search-results { max-height:min(370px,var(--search-results-space,48svh)); overflow-y:auto; overscroll-behavior:contain; }
.search-result { align-items:center; }
.result-copy { text-align:left; }
.results-heading { align-items:center; gap:14px; }
.search-dropdown-footer { align-items:center; gap:10px; }

.market-dialog { width:min(1020px,calc(100% - 32px)); padding:30px; }
.market-dialog .contest-browser { width:100%; margin:0; padding-top:15px; }
.market-dialog .contest-rules-strip { margin-top:0; padding-top:0; padding-right:25px; }
.market-dialog .selected-ticker { margin-bottom:26px; }
.market-dialog .lobby-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.market-dialog .lobby-heading h2 { font-size:28px; }
.market-dialog .selected-ticker>span { display:none; }
.market-dialog .lobby-status-filters { order:3; width:100%; justify-content:flex-start; }
.market-dialog .contest-controls { flex-wrap:wrap; }

.auth-dialog { width:min(470px,calc(100% - 32px)); padding:32px; }
.auth-dialog .eyebrow { justify-content:flex-start; margin-top:7px; margin-bottom:20px; }
.auth-dialog h2 { font-size:32px; line-height:1.15; letter-spacing:-1px; }
.auth-lede { color:#91a8cd; font-size:12px; line-height:1.9; margin:0 0 24px; }
.auth-availability { display:flex; align-items:flex-start; gap:12px; border:1px solid #30496e; background:#14213a; border-radius:7px; padding:16px; margin-bottom:20px; }
.auth-availability>span { color:#91b5ff; font-size:21px; line-height:1; }
.auth-availability strong { display:block; color:#bfd5f6; font-size:12px; font-weight:500; }
.auth-availability p { color:#819bc3; font-size:11px; line-height:1.8; margin:7px 0 0; }
.auth-dialog .plan-button:disabled { opacity:.6; }
.auth-switch { display:block; margin:18px auto 0; font-size:11px; color:#9ebeff; }
.member-preview { border-top:1px solid #293c5a; padding-top:22px; margin-top:26px; }
.member-preview button { width:100%; display:flex; align-items:center; justify-content:space-between; color:#bad3f7; font-size:12px; padding:0; }
.member-preview p { margin:12px 0 0; color:#7b96bf; line-height:1.8; font-size:10px; }
@media(max-width:1100px) {
  .header-inner { gap:15px; }
  .member-actions,.guest-actions { gap:8px; }
  .header-actions .watchlist-button { padding-inline:10px; }
}
@media(max-width:760px) {
  .header-inner { display:flex; justify-content:space-between; gap:12px; }
  .header-actions { flex-shrink:0; }
  .guest-actions,.member-actions { gap:7px; }
  .sign-in-button,.sign-up-button { height:36px; padding-inline:12px; font-size:11px; }
  .sign-up-button>span { display:none; }
  .wallet-button,.header-actions .watchlist-button,.account-button { height:36px; }
  .wallet-button { padding-inline:8px; gap:6px; }
  .wallet-button strong:after { font-size:11px; line-height:1; }
  .wallet-icon { width:19px!important; height:19px!important; }
  .wallet-plus { display:none; }
  .account-button { width:32px; }
  .account-button .account-avatar { height:30px; width:30px; }
  .contests-page .hero { min-height:calc(100svh - 162px); padding:51px 20px 90px; }
  .contests-page h1 { font-size:39px; letter-spacing:-1.8px; }
  .contests-page .hero-description { max-width:360px; margin-bottom:28px; font-size:11px; line-height:1.9; }
  .search-shell { height:60px; padding:8px; gap:9px; }
  .search-icon { width:18px; height:18px; margin-left:7px; }
  .search-shell input { font-size:16px; height:40px; }
  .search-shell input::placeholder { font-size:11px; }
  .search-submit { width:39px; height:40px; }
  .search-shortcut { display:none; }
  .results-heading { font-size:7px; padding:14px 12px 9px; letter-spacing:.5px; }
  .search-dropdown .search-result { padding:11px 12px; gap:9px; }
  .search-dropdown .asset-icon { width:28px; height:28px; font-size:13px; }
  .search-dropdown .result-arrow { margin-left:0; }
  .search-dropdown .result-copy strong { font-size:12px; }
  .search-dropdown .result-copy small { font-size:10px; }
  .search-dropdown .result-right span,.search-dropdown .result-right small { font-size:8px; }
  .search-dropdown-footer { font-size:8px; padding:11px 12px; }
  .search-dropdown-footer>span:first-child { display:none; }
  .market-dialog { padding:25px 18px; }
  .market-dialog .lobby-grid { grid-template-columns:1fr; }
  .market-dialog .lobby-heading h2 { font-size:22px; }
  .auth-dialog { padding:28px 23px; }
  .auth-dialog h2 { font-size:29px; }
}
@media(max-width:380px) {
  .header-inner .wordmark { width:136px; }
  .guest-actions { gap:6px; }
  .sign-in-button,.sign-up-button { font-size:10px; padding-inline:10px; height:34px; }
  .contests-page .hero { padding-inline:18px; }
  .contests-page h1 { font-size:35px; }
  .search-shell { gap:7px; }
  .search-shell input::placeholder { font-size:10px; }
}
@media(max-width:350px) { .header-inner .wordmark { width:119px; } .member-actions { gap:5px; } }
