/* Shared responsive header for Meet, PRs and Results. Load after page styles. */
.swim-header.topbar{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:100px!important;padding:22px max(20px,calc((100vw - 1040px)/2))!important;background:#2e654e!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important}
.swim-header.topbar::after{display:none!important}
.swim-brand{min-width:0}.swim-brand .swim-kicker{color:#eadbad;font-size:.67rem;font-weight:900;letter-spacing:.17em;line-height:1.2}
.swim-header.topbar .swim-brand h1{margin:4px 0 0!important;font-size:clamp(1.4rem,3vw,2rem)!important;line-height:1.08!important;letter-spacing:-.04em!important;color:#fff!important;animation:none!important;text-transform:uppercase!important}
.swim-header .header-dot{color:#e36d72}.swim-account{position:relative;flex:none;color:#fff}.swim-account summary{cursor:pointer;list-style:none;border:1px solid #8bb1a1;border-radius:10px;padding:10px 13px;font-weight:700;font-size:.85rem}.swim-account summary::-webkit-details-marker{display:none}.swim-account-panel{position:absolute;z-index:20;right:0;top:calc(100% + 8px);width:max-content;min-width:205px;max-width:min(300px,90vw);background:#fffdf7;color:#20352e;border:1px solid #d8d6ca;border-radius:13px;box-shadow:0 10px 24px #0002;padding:14px}.swim-account-panel #userArea{position:static!important;display:block!important;background:none!important;color:#20352e!important;max-width:260px;overflow-wrap:anywhere;margin:0 0 10px!important;padding:0!important;font-size:.78rem!important}.swim-account-panel form{margin:0!important}.swim-account-panel .nav-logout{width:100%!important;background:#2e654e!important;color:white!important;padding:10px!important;border-radius:8px!important}
.swim-nav.navbar{display:flex!important;align-items:stretch!important;justify-content:flex-start!important;gap:8px!important;max-width:1080px!important;margin:0 auto 12px!important;padding:12px 20px!important;flex-wrap:nowrap!important}.swim-nav .nav-button{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;text-align:center!important;border:0!important;border-radius:10px!important;padding:11px 16px!important;text-decoration:none!important;background:#477f9e!important;color:white!important;line-height:1.2!important;white-space:nowrap!important;box-shadow:none!important;transform:none!important;font-size:.85rem!important}.swim-nav .nav-button.active{background:#eadbad!important;color:#20352e!important}.swim-nav .nav-short{display:none}
@media(max-width:640px){.swim-header.topbar{min-height:78px!important;padding:17px 18px!important}.swim-brand .swim-kicker{font-size:.59rem}.swim-header.topbar .swim-brand h1{font-size:clamp(1.32rem,5.3vw,1.7rem)!important}.swim-account summary{padding:9px 12px;font-size:1rem}.desktop-account{display:none}.swim-nav.navbar{padding:9px 12px!important;margin:0 auto 8px!important;gap:7px!important}.swim-nav .nav-button{flex:1!important;padding:12px 5px!important;font-size:.84rem!important}.swim-nav .nav-short{display:inline}.swim-nav .nav-long{display:none}}

/* Match dashboard headline weight on Results and all pages. */
.swim-header.topbar .swim-brand h1{font-weight:900!important;}

/* Keep all three navigation items identical, regardless of button vs link defaults. */
.swim-nav.navbar > .nav-button {
  flex: 1 1 0 !important;
  width: 0 !important;
  box-sizing: border-box !important;
  min-height: 43px !important;
  margin: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
}
