:root {
  --intro-hold: 2000ms;
  color-scheme: light;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #211f20;
  background: #fff;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
body { margin: 0; }

.startup {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 32px 24px;
}

.startup-content {
  position: relative;
  width: min(100%, 292px);
  text-align: center;
}

.brand-lockup {
  position: relative;
  height: 260px;
  margin-bottom: 28px;
}

.brand {
  position: absolute;
  top: calc(50% + 38px);
  left: 50%;
  display: block;
  width: min(360px, calc(100vw - 48px));
  height: auto;
  transform: translate(-50%, -50%);
  transform-origin: center;
  animation:
    brand-enter 650ms cubic-bezier(.22, 1, .36, 1) both,
    brand-settle 900ms cubic-bezier(.16, 1, .3, 1) var(--intro-hold) forwards;
}

.brand-divider {
  position: absolute;
  top: calc(50% + 38px);
  left: calc(50% - 22px);
  width: 2px;
  height: 40px;
  background: #858183;
  transform: translateY(-50%);
  animation: name-enter 650ms cubic-bezier(.22, 1, .36, 1) var(--intro-hold) both;
}

.brand-name {
  position: absolute;
  top: calc(50% + 38px);
  left: calc(50% - 2px);
  color: #211f20;
  font-size: clamp(26px, 8vw, 32px);
  font-weight: 650;
  letter-spacing: .12em;
  line-height: 1;
  transform: translateY(-50%);
  animation: name-enter 650ms cubic-bezier(.22, 1, .36, 1) var(--intro-hold) both;
}

.actions { display: grid; gap: 12px; }

.button {
  width: 100%;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 20px;
  border: 1px solid transparent;
  border-radius: 10px;
  font: inherit;
  font-size: 15px;
  font-weight: 550;
  line-height: 22px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
  animation: action-enter 380ms cubic-bezier(.22, 1, .36, 1) both;
}

.button svg { width: 18px; height: 18px; flex-shrink: 0; }
.button-primary { background: #211f20; color: #fff; animation-delay: var(--intro-hold); }
.button-primary:hover { background: #363334; box-shadow: 0 3px 10px #211f2010; }
.button-secondary { color: #211f20; border-color: #dedcdd; background: #fff; animation-delay: calc(var(--intro-hold) + 120ms); }
.button-secondary:hover { background: #f7f7f7; border-color: #bcb9bb; }
.button:active { box-shadow: inset 0 1px 3px #00000014; }
.button:focus-visible { outline: 2px solid #211f20; outline-offset: 4px; }

.action-status {
  position: absolute;
  top: 100%;
  width: 100%;
  margin: 18px 0 0;
  color: #716e70;
  font-size: 13px;
  line-height: 20px;
}

@keyframes brand-enter {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes brand-settle {
  from { transform: translate(-50%, -50%) scale(1); }
  to { transform: translate(calc(-50% - 82px), -50%) scale(.44); }
}

@keyframes name-enter {
  from { opacity: 0; transform: translate(8px, -50%); visibility: hidden; }
  to { opacity: 1; transform: translate(0, -50%); visibility: visible; }
}

@keyframes action-enter {
  from { opacity: 0; transform: translateY(4px); visibility: hidden; }
  to { opacity: 1; transform: translateY(0); visibility: visible; }
}

@media (prefers-reduced-motion: reduce) {
  .brand, .brand-name, .brand-divider, .button { animation: none; }
  .brand { transform: translate(calc(-50% - 82px), -50%) scale(.44); }
  .button { transition: none; }
}

@media (max-height: 480px) {
  .startup { padding-block: 24px 56px; }
  .brand-lockup { height: 160px; margin-bottom: 12px; }
  .brand { width: min(280px, calc(100vw - 48px)); }
}

/* Account onboarding follows the startup's white, monochrome visual language. */
[hidden] { display: none !important; }

.onboarding {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 28px 24px;
}

.onboarding-content { width: min(100%, 400px); }
.back-button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 0;
  margin: 0 0 4px;
  border: 0;
  background: transparent;
  color: #716e70;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}
.back-button svg { width: 16px; height: 16px; }
.back-button:hover { color: #211f20; }
.compact-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 0 16px;
  font-size: 22px;
  font-weight: 650;
  letter-spacing: .12em;
}
.compact-brand img { width: 90px; height: auto; margin-inline: -18px; }
.compact-divider { height: 28px; width: 2px; background: #858183; }
.step-label { margin: 0 0 10px; font-size: 10px; font-weight: 650; letter-spacing: .14em; color: #8b8789; text-align: center; }
.onboarding h1 { margin: 0; text-align: center; font-size: clamp(25px, 5vw, 29px); font-weight: 650; letter-spacing: -.035em; line-height: 1.25; }
.onboarding h1:focus { outline: none; }
.onboarding-description { margin: 10px 0 24px; color: #716e70; text-align: center; font-size: 14px; line-height: 1.6; }
#details-form, #login-form { display: grid; gap: 16px; }
.field label { display: block; margin: 0 0 8px; font-size: 13px; font-weight: 550; }
.field input {
  display: block;
  width: 100%;
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid #dedcdd;
  border-radius: 10px;
  background: #fff;
  color: #211f20;
  font: inherit;
  font-size: 16px;
  line-height: 24px;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
.field input::placeholder { color: #a29da0; font-size: 14px; }
.field input:focus-visible { outline: none; border-color: #6f6a6d; box-shadow: 0 0 0 3px #211f200a; }
.field input[aria-invalid="true"] { border-color: #b74b4b; }
.password-field { position: relative; }
.password-field input { padding-right: 72px; }
.password-toggle { position: absolute; top: 3px; right: 7px; min-height: 44px; min-width: 48px; padding: 8px; border: 0; border-radius: 6px; background: transparent; color: #716e70; font: inherit; font-size: 12px; cursor: pointer; }
.password-toggle:hover { color: #211f20; }
.field-hint { margin: 7px 0 0; color: #8b8789; font-size: 12px; line-height: 1.5; }
.field-error { margin: 7px 0 0; color: #a13939; font-size: 12px; line-height: 1.5; }
.field-error:empty { display: none; }
.onboarding .button { animation: none; }
.form-continue { margin-top: 10px; }
.login-prompt { margin: 23px 0 0; text-align: center; color: #8b8789; font-size: 13px; }
.text-button { border: 0; padding: 4px; background: none; color: #211f20; font: inherit; font-weight: 550; cursor: pointer; }
.text-button:hover { text-decoration: underline; text-underline-offset: 3px; }
.account-options { display: grid; gap: 12px; padding: 0; margin: 0; border: 0; }
.account-option { position: relative; display: grid; grid-template-columns: 30px 1fr 18px; gap: 14px; align-items: center; min-height: 112px; padding: 20px; border: 1px solid #dedcdd; border-radius: 12px; cursor: pointer; transition: border-color 160ms ease, background-color 160ms ease; }
.account-option:hover { border-color: #a7a2a5; background: #fafafa; }
.account-option:has(input:checked) { border-color: #211f20; background: #f7f7f7; }
.account-option:has(input:focus-visible) { outline: 2px solid #211f20; outline-offset: 4px; }
.account-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.option-icon svg { display: block; width: 28px; height: 28px; }
.option-copy { display: grid; gap: 6px; }
.option-title { font-size: 15px; font-weight: 600; line-height: 1.3; }
.option-description { color: #817b7f; font-size: 12px; line-height: 1.6; }
.selection-mark { display: grid; place-items: center; width: 17px; height: 17px; border: 1px solid #c9c5c7; border-radius: 50%; }
.account-option:has(input:checked) .selection-mark { border-color: #211f20; }
.account-option:has(input:checked) .selection-mark::after { content: ''; width: 9px; height: 9px; border-radius: 50%; background: #211f20; }
#type-form .form-continue { margin-top: 24px; }
.setup-status { margin: 18px 0 0; color: #716e70; text-align: center; font-size: 13px; line-height: 1.6; }
.setup-status:empty { display: none; }
.back-button:focus-visible, .text-button:focus-visible, .password-toggle:focus-visible { outline: 2px solid #211f20; outline-offset: 4px; border-radius: 4px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
/* Page fades are handled centrally; form buttons remain visible immediately. */
main[data-screen]:not([data-screen=landing]) .button{animation:none}
@media(prefers-reduced-motion:reduce){.field input,.account-option{transition:none}}
@media (max-width: 360px) { .onboarding { padding-inline: 20px; } .account-option { padding: 16px; gap: 10px; } }

/* Returning from setup keeps account actions immediately available. */
.startup.intro-complete .brand, .startup.intro-complete .brand-name, .startup.intro-complete .brand-divider, .startup.intro-complete .button { animation: none; }
.startup.intro-complete .brand { transform: translate(calc(-50% - 82px), -50%) scale(.44); }

.account-summary { display: grid; gap: 8px; padding: 20px; border: 1px solid #dedcdd; border-radius: 12px; text-align: center; font-size: 14px; overflow-wrap: anywhere; }
#account-email { font-size: 13px; color: #716e70; }
.profile-next { margin: 22px 0 26px; text-align: center; font-size: 14px; line-height: 1.6; color: #716e70; }
.account-home h1 { overflow-wrap: anywhere; }
button:disabled { opacity: .65; }
:is(button,input,select,textarea):disabled { cursor: default; }
[aria-busy="true"] :is(button,input,select,textarea):disabled,button[aria-busy="true"] { cursor: wait; }

/* Four equal account cards, with the native radios retaining keyboard behavior. */
.account-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.account-option { aspect-ratio: 1; min-height: 0; grid-template-columns: 1fr; align-content: center; justify-items: center; gap: 12px; padding: 18px; text-align: center; }
.option-copy { justify-items: center; gap: 8px; }
.option-icon svg { width: 30px; height: 30px; }
.selection-mark { position: absolute; top: 12px; right: 12px; }
@media (max-width: 420px) {
  .account-options { gap: 10px; }
  .account-option { padding: 12px; gap: 8px; }
  .option-icon svg { width: 26px; height: 26px; }
  .option-title { font-size: 13px; }
  .option-description { font-size: 11px; line-height: 1.4; }
  .option-copy { gap: 6px; }
  .selection-mark { width: 14px; height: 14px; top: 8px; right: 8px; }
  .account-option:has(input:checked) .selection-mark::after { width: 7px; height: 7px; }
}
@media (max-width: 360px) {
  .account-option { padding: 10px; gap: 6px; }
  .option-description { font-size: 10.5px; }
}

#athlete-form { display: grid; gap: 18px; }
#athlete-form[hidden] { display: none; }
.field select, .field textarea { width: 100%; border: 1px solid #dedcdd; border-radius: 10px; padding: 14px; background: #fff; color: #211f20; font: inherit; font-size: 16px; }
.field textarea { resize: vertical; min-height: 100px; }
.field select:focus, .field textarea:focus { outline: 2px solid #211f20; outline-offset: 2px; }
.field select[aria-invalid="true"], .field textarea[aria-invalid="true"] { border-color: #a13939; }
.field .adult-confirmation { display: flex; align-items: flex-start; gap: 10px; line-height: 1.6; cursor: pointer; }
.adult-confirmation input { min-height: 18px; padding: 0; width: 18px; height: 18px; margin-top: 3px; flex-shrink: 0; accent-color: #211f20; }
#athlete-setup-button { margin-bottom: 12px; }

.account-home #account-heading { margin-bottom: 28px; }

#youth-form { display: grid; gap: 18px; }
#youth-form[hidden] { display: none; }
.guardian-list { display: grid; gap: 12px; margin: 22px 0; }
.youth-card { border: 1px solid #dedcdd; border-radius: 12px; padding: 20px; }
.youth-card h2 { margin: 0 0 8px; font-size: 17px; overflow-wrap: anywhere; }
.youth-card p { margin: 0 0 12px; color: #716e70; font-size: 13px; line-height: 1.6; }
.youth-card .text-button { padding: 6px 0; }
.guardian-empty, .guardian-privacy { text-align: center; line-height: 1.6; }
#guardian-setup-button { margin-bottom: 12px; }

.professional-form { display:grid; gap:18px; }
.professional-form[hidden] { display:none; }
.sport-choices, .grouping-fields { border:1px solid #dedcdd; border-radius:10px; padding:16px; min-width:0; margin:0; }
.sport-choices legend, .grouping-fields legend { padding:0 6px; font-size:14px; font-weight:550; }
.sport-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.sport-options label { display:flex; align-items:center; gap:8px; font-size:13px; line-height:1.5; }
.sport-options input { accent-color:#211f20; width:17px; height:17px; flex-shrink:0; }
.grouping-row { display:grid; gap:10px; margin:12px 0 18px; }
.grouping-row select, .grouping-row input { width:100%; }
#professional-setup-button { margin-bottom:12px; }

.sport-choices[aria-invalid="true"], .grouping-fields:has([aria-invalid="true"]) { border-color:#a13939; }

#opportunities-setup-button { margin-bottom:12px; }
.opportunity-badge { font-size:12px; font-weight:600; }
#opportunity-competitive .field { margin-top:14px; }

/* Private profile appearance previews and upload controls. */
.appearance-editor { margin: 0 0 28px; text-align: left; }
.appearance-editor h2 { font-size: 17px; margin: 0 0 14px; }
.profile-visual { position: relative; margin: 0 0 18px; padding-bottom: 32px; width: 100%; }
.profile-banner { height: 130px; border-radius: 12px; overflow: hidden; background: linear-gradient(125deg,#d2d9df,#788a9b); }
.profile-visual[data-preset="ocean"] .profile-banner { background: linear-gradient(125deg,#d4e9ef,#577f9e); }
.profile-visual[data-preset="field"] .profile-banner { background: linear-gradient(125deg,#e2e8d5,#7b9371); }
.profile-banner img { width: 100%; height: 100%; object-fit: cover; display: block; }
.profile-picture { position: absolute; bottom: 0; left: 18px; width: 82px; height: 82px; border: 4px solid white; border-radius: 50%; overflow: hidden; background: #eee; color: #777; display: grid; place-items: center; font-size: 28px; }
.profile-picture img { width: 100%; height: 100%; object-fit: cover; }
.appearance-controls { display: grid; gap: 14px; }
.appearance-upload,.appearance-preset { display: grid; gap: 8px; font-size: 14px; }
.appearance-preset select { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #ddd; border-radius: 8px; background: white; font: inherit; color: #222; }
.appearance-upload input { width: 100%; min-width: 0; padding: 9px; border: 1px solid #ddd; border-radius: 8px; font-size: 12px; background: white; }
.appearance-upload input::file-selector-button { border: 0; border-radius: 5px; padding: 7px 10px; margin-right: 8px; background: #eee; color: #222; }
#account-appearance { text-align: left; margin-top: 20px; }
#guardian-appearance-form { margin-bottom: 32px; }
.youth-card .profile-banner { height: 96px; }

/* The film belongs only to the opening screen. Onboarding stays white. */
.startup { position: relative; isolation: isolate; overflow: hidden; background: white; }
.startup-film { position: absolute; inset: 0; z-index: -1; opacity: 0; background: #26302d url('/assets/startup/poster.jpg') center / cover; transition: opacity 900ms ease; }
.startup-film video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: none; }
.startup-film video.current { opacity: 1; }
.film-shade { position: absolute; inset: 0; background: linear-gradient(180deg,#0005,#0008 55%,#0009); }
.startup.film-visible .startup-film { opacity: 1; }
.startup .brand { transition: filter 900ms ease; }
.startup .brand-name { transition: color 900ms ease; }
.startup .brand-divider { transition: background-color 900ms ease; }
.startup.film-visible .brand { filter: brightness(0) invert(1); }
.startup.film-visible .brand-name { color: white; }
.startup.film-visible .brand-divider { background: #ffffffb3; }
.startup .button { transition: color 700ms ease, background-color 700ms ease, border-color 700ms ease; }
.startup.film-visible .button-primary { background: #ffffff24; border-color: #ffffffb3; color: white; backdrop-filter: blur(8px); }
.startup.film-visible .button-secondary { background: #ffffff12; border-color: #ffffff90; color: white; backdrop-filter: blur(8px); }
.startup.film-visible .button:hover { background: #ffffff3b; border-color: white; }
.startup.film-visible .button:focus-visible { outline: 2px solid white; outline-offset: 4px; }
.startup.film-leaving .startup-film,.startup.film-leaving .startup-content { opacity: 0; transition: opacity 500ms ease; pointer-events: none; }
.startup-content { transition: opacity 500ms ease; }
@media (prefers-reduced-motion: reduce) {
  .startup-film,.startup-film video,.startup .brand,.startup .brand-name,.startup .brand-divider,.startup .button,.startup-content { transition: none; }
  .startup-film video { display: none; }
}

/* The opening tagline appears with the settled brand and account actions. */
.startup-tagline { margin: -48px -8px 28px; color: #211f20; font-size: 15px; line-height: 1.5; animation: action-enter 650ms ease var(--intro-hold) both; transition: color 900ms ease; }
.startup.film-visible .startup-tagline { color: white; }
.startup.intro-complete .startup-tagline { animation: none; }
@media (max-height: 600px) { .startup-tagline { margin-top: -12px; margin-bottom: 20px; } }
@media (prefers-reduced-motion: reduce) { .startup-tagline { animation: none; transition: none; } }

/* Separate youth recruiting consent from the availability selector. */
#youth-form .field:has(#youth-guardianRecruitingApproved) { margin-top: 16px; }

#pending-logout { margin: 12px auto 0; animation: none; }

.search-results { display:grid; gap:16px; margin-bottom:20px; }
.search-card { border:1px solid #dedcdd; border-radius:12px; padding:16px; }
.search-card h2 { font-size:18px; margin:16px 0 6px; }
.search-card p, #view-details p { font-size:14px; line-height:1.6; }
#profile-search-form { display:grid; gap:16px; }

#profile-search-window { width:min(480px,calc(100vw - 32px)); max-height:80svh; padding:0; border:1px solid #dedcdd; border-radius:18px; color:#211f20; background:white; }
#profile-search-window::backdrop { background:#211f2040; }
.name-search-window { padding:28px 24px; position:relative; }
.name-search-window h1 { text-align:left; font-size:24px; margin:0 32px 20px 0; }
.search-close { position:absolute; top:14px; right:16px; border:0; background:none; font-size:28px; cursor:pointer; color:inherit; }
#search-query { width:100%; min-height:50px; padding:12px 14px; border:1px solid #dedcdd; border-radius:10px; font:inherit; }
#search-results { gap:8px; margin:0; }
.name-preview { display:flex; align-items:center; gap:14px; width:100%; padding:12px; border:1px solid #e8e6e7; border-radius:12px; background:white; text-align:left; font:inherit; cursor:pointer; color:inherit; }
.name-preview:hover { background:#f7f7f7; }
.name-preview:focus-visible { outline:2px solid #211f20; outline-offset:2px; }
.name-preview img,.name-preview .picture-fallback { width:48px; height:48px; border-radius:50%; object-fit:cover; flex-shrink:0; background:#eeecee; }
.name-preview strong { display:block; font-size:15px; }
.name-preview small { display:block; color:#777276; font-size:12px; line-height:1.5; }

.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* Dedicated name search, with an independent sports playlist. */
.search-page { position:relative; isolation:isolate; background:#111; color:white; min-height:100svh; padding:64px 24px; }
.search-film { position:fixed; inset:0; z-index:-1; background:#182923 url('/assets/search/poster.jpg') center/cover; }
.search-film video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; }
.search-film video.current { opacity:1; }
.search-film .film-shade { background:#000b; }
.search-page .name-search-window { width:min(480px,100%); margin:auto; padding:0; }
.search-page h1 { color:white; text-align:center; font-size:clamp(24px,5vw,32px); margin:56px 0 28px; }
.search-page .back-button,.search-page .text-button,.search-page .setup-status { color:white; }
.search-page #search-query { background:rgba(18,24,29,.52); color:white; border:1px solid #ffffff70; backdrop-filter:blur(4px); }
.search-page #search-query::placeholder { color:#ffffffbb; }
.search-page #search-query:focus-visible { outline:3px solid white; outline-offset:4px; }
.search-page .name-preview { background:rgba(18,24,29,.52); color:white; border-color:#ffffff45; backdrop-filter:blur(4px); transition:background 150ms; }
.search-page .name-preview:hover { background:rgba(18,24,29,.72); }
.search-page .name-preview small { color:#ffffffcc; }
.search-page .name-preview:focus-visible { outline:2px solid white; outline-offset:2px; }
.search-page #search-results { max-height:55svh; overflow:auto; padding:4px; }
.search-page.film-leaving { opacity:0; transition:opacity 180ms ease; pointer-events:none; }
@media(prefers-reduced-motion:reduce) { .search-page { animation:none; } .search-page.film-leaving { transition:none; } .search-film video { display:none; } }
.search-page.film-leaving { animation:none; }
.search-page #profile-search-window { background:transparent; color:white; border:0; border-radius:0; max-height:none; overflow:visible; }

/* Small search action beside the account wordmark. */
.account-home .compact-brand { position:relative; }
.brand-search-button { display:inline-grid; place-items:center; width:40px; height:40px; margin-left:2px; padding:8px; background:transparent; border:0; border-radius:50%; color:#211f20; cursor:pointer; }
.brand-search-button svg { width:20px; height:20px; }
.brand-search-button:hover { background:#f2f1f1; }
.brand-search-button:focus-visible { outline:2px solid #211f20; outline-offset:3px; }

.map-content { width:min(900px,100%); } #radius-map { height:55svh; min-height:300px; border-radius:14px; }

/* Keep the complete radius layout comfortably within shorter windows. */
.onboarding[data-screen="profile-map"] { display:block; padding:clamp(16px,3svh,28px) clamp(16px,4vw,32px); }
.map-content { width:min(960px,100%); margin:0 auto; }
.map-content h1 { font-size:clamp(23px,4vw,29px); margin:8px 0 0; }
.map-content .onboarding-description { margin:8px 0 18px; }
#radius-map { height:clamp(240px,calc(100svh - 250px),620px); min-height:0; width:100%; }
#map-status { min-height:20px; margin:10px 0 0; font-size:13px; }
@media(max-width:420px) { .map-controls label { width:100%; font-size:13px; } #radius-map { height:clamp(220px,calc(100svh - 280px),540px); } }

.radius-person { display:grid; place-items:center; cursor:grab; filter:drop-shadow(0 2px 3px #0005); } .radius-person svg { width:32px; height:40px; fill:#211f20; stroke:white; stroke-width:1.5px; } .radius-person:active { cursor:grabbing; } .radius-person:focus-visible { outline:2px solid #211f20; border-radius:8px; }
#map-save { width:min(100%,400px); margin:16px auto 0; }

.opportunity-location { border:1px solid #dedcdd; border-radius:12px; padding:16px; } .opportunity-location .text-button { margin-right:12px; font-size:13px; } #opportunity-location-map { height:280px; border-radius:10px; margin-top:12px; } #opportunity-map-status { font-size:13px; color:#716e70; }

.discovery-button{display:flex;align-items:center;justify-content:center;gap:2px;width:100%;height:50px;margin:0 0 12px;padding:0 16px}.discovery-button:focus-visible{outline:2px solid currentColor;outline-offset:3px}.discovery-page .onboarding-content{width:min(1100px,100%);max-width:1100px}.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.discovery-card{border:1px solid #ddd;border-radius:16px;overflow:hidden;text-align:left;padding:0 0 20px}.discovery-card .profile-visual{margin:0 0 12px}.discovery-card .profile-banner{height:110px}.discovery-card h2,.discovery-card p{margin:12px 20px;overflow-wrap:anywhere}.discovery-card h2{font-size:20px}.discovery-card p{font-size:14px;line-height:1.5}.discovery-card .profile-picture{width:64px;height:64px}.discovery-pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:28px 0}.discovery-pagination button{min-width:40px;min-height:40px;border:1px solid #ddd;border-radius:8px;background:white;cursor:pointer}.discovery-pagination button[aria-current="page"]{background:#222;color:white}.discovery-pagination button:disabled{opacity:.4;cursor:default}@media(max-width:760px){.discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.discovery-grid{grid-template-columns:1fr}}

.map-place{text-align:center;font-weight:700;margin:8px 0 20px}.map-location-button{width:auto;min-width:170px;min-height:46px;padding:10px 18px}.map-toast{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);background:#222;color:#fff;padding:14px 24px;border-radius:12px;box-shadow:0 6px 24px #0003;z-index:2000;font-weight:600;pointer-events:none}.map-toast[hidden]{display:none}

#map-location{display:flex;margin:12px auto 0}

.athlete-carousel{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:30px 12px 36px;align-items:center;min-height:440px}
.athlete-pack-card{position:relative;flex:0 0 270px;min-height:370px;scroll-snap-align:center;border:0;border-radius:26px 26px 56px 56px;clip-path:polygon(8% 0,92% 0,100% 8%,100% 85%,85% 95%,50% 100%,15% 95%,0 85%,0 8%);background:linear-gradient(150deg,#132c40,#2c586f 48%,#12232f);color:#fff;cursor:pointer;padding:28px 24px 34px;text-align:center;box-shadow:0 14px 34px #0003;animation:athlete-reveal .55s both;animation-delay:var(--reveal-delay,0ms);background-size:cover}
.athlete-pack-card:focus-visible{outline:0;background-color:#426b85;box-shadow:inset 0 0 0 5px #ffda77}.athlete-pack-card:hover{filter:brightness(1.12)}
.athlete-portrait{width:146px;height:146px;object-fit:cover;border-radius:18px;border:2px solid #ffffff50;margin-bottom:16px}.athlete-position{display:block;text-transform:uppercase;font-size:12px;letter-spacing:2px;color:#e9d9a5}.athlete-pack-card h2{font-size:22px;margin:12px 0}.athlete-pack-card p{font-size:13px;color:#e8edf0;margin:10px 0}
@keyframes athlete-reveal{from{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.athlete-pack-card{animation:none}.athlete-carousel{scroll-behavior:auto}}
#team-links-list,#team-link-results{display:grid;gap:14px;margin-top:20px}

/* Discovery venues fade as a page, with a readable overlay over moving footage. */
.discovery-page{position:relative;isolation:isolate;min-height:100svh;background:#fff;transition:opacity .4s ease}
.discovery-venue{position:fixed;inset:0;z-index:-1;pointer-events:none;background:#14212c;opacity:0;transition:opacity .5s ease}
.discovery-venue video{width:100%;height:100%;object-fit:cover}
.discovery-venue::after{content:"";position:absolute;inset:0;background:linear-gradient(#101820b8,#101820ab 45%,#101820dc)}
.discovery-page.venue-visible{color:#fff;background:#14212c}
.venue-visible .discovery-venue{opacity:1}
.venue-visible .back-button{color:#fff}
.venue-visible #discovery-status{color:#fff}
.venue-visible .discovery-card{background:rgba(18,24,29,.52);color:#fff;border-color:#ffffff45;backdrop-filter:blur(4px);box-shadow:0 8px 30px #0003}
.venue-leaving{opacity:0}
@media(prefers-reduced-motion:reduce){.discovery-page,.discovery-venue{transition:none}}

.venue-visible .discovery-venue video{animation:venue-drift 18s ease-in-out infinite alternate}
@keyframes venue-drift{from{transform:scale(1.02) translateX(0)}to{transform:scale(1.08) translateX(-1%)}}
@media(prefers-reduced-motion:reduce){.venue-visible .discovery-venue video{animation:none}}

.athlete-pack-card[data-preset="slate"]{background:linear-gradient(150deg,#20313c,#506371 48%,#15232c)}
.athlete-pack-card[data-preset="field"]{background:linear-gradient(150deg,#153a33,#346958 48%,#132c24)}

/* Keep the athlete portrait prominent; branding belongs below their details. */
.athlete-pack-card{display:flex;flex-direction:column;align-items:center;min-height:430px;padding:28px 24px 24px}
.athlete-portrait{display:block;width:184px;height:184px;object-fit:cover;object-position:center 25%;border:0;border-radius:14px;margin:0 auto 16px}
.athlete-card-brand{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:auto;padding-top:10px;color:#fff;font-size:11px;font-weight:700;letter-spacing:2px}
.athlete-card-brand img{display:block;width:50px;height:40px;object-fit:contain;filter:brightness(0) invert(1);border:0;background:transparent}

/* Compact opportunity management grid, with nine openings per page. */
[data-screen="opportunities"] .onboarding-content{width:min(1100px,100%)}
.opportunities-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.opportunity-card{padding:16px;display:flex;flex-direction:column;min-width:0}
.opportunity-card[hidden]{display:none}
.opportunity-card h2{font-size:16px;margin-bottom:6px}
.opportunity-card p{line-height:1.4;margin-bottom:8px}
.opportunity-card .opportunity-actions{margin-top:auto;gap:8px 14px}
.opportunity-card .button{height:38px;min-height:38px;margin:4px 0 0;font-size:13px}
.opportunity-card .text-button{font-size:12px}
#opportunities-pagination[hidden]{display:none}
#opportunities-pagination span{align-self:center;min-width:64px;text-align:center}
@media(max-width:760px){.opportunities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.opportunities-grid{grid-template-columns:1fr}}

.account-action-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:18px;margin:20px 0 24px}
.account-action-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;padding:12px;border:1px solid #dedcdd;border-radius:14px;background:#fff;color:#222;cursor:pointer;font-size:0;flex-shrink:0;transition:background 150ms,transform 150ms}
.account-action-icon::before{content:"";display:block;width:26px;height:26px;background:currentColor;mask:var(--action-icon) center/contain no-repeat}
.account-action-icon:hover{background:#f1f0f0;transform:translateY(-2px)}
.account-action-icon:focus-visible{outline:2px solid #222;outline-offset:4px}
[data-screen="account"]{padding-bottom:100px}
.account-logout{position:fixed;bottom:24px;left:24px;width:44px;height:44px;border-radius:12px;z-index:2}

.icon-pencil{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m16%203%205%205M3%2021l4-1L21%206a2.8%202.8%200%200%200-4-4L3%2016z%22/%3E%3C/svg%3E")}

.icon-clipboard{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%225%22%20width%3D%2214%22%20height%3D%2216%22%20rx%3D%222%22/%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%226%22%20height%3D%225%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M9%2012h6M9%2016h6%22/%3E%3C/svg%3E")}

.icon-link{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m10%2013%204-4M8%2016l-2%202a4%204%200%200%201-6-6l5-5a4%204%200%200%201%206%200M16%208l2-2a4%204%200%200%201%206%206l-5%205a4%204%200%200%201-6%200%22/%3E%3C/svg%3E")}

.icon-logout{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%204H4v16h5M12%2012h9m-4-4%204%204-4%204%22/%3E%3C/svg%3E")}

.account-action-row #professional-setup-button,.account-action-row #opportunities-setup-button,.account-action-row #team-links-button{margin:0}

.icon-link{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2013a5%205%200%200%200%207.1%200l3-3a5%205%200%200%200-7.1-7.1l-1.7%201.7M14%2011a5%205%200%200%200-7.1%200l-3%203a5%205%200%200%200%207.1%207.1l1.7-1.7%22/%3E%3C/svg%3E")}

.contact-actions{width:100%;margin-top:12px}.contact-actions .setup-status:empty{display:none}.contact-button{height:auto;min-height:38px;padding:8px 12px;margin:0;font-size:13px}
.athlete-pack-card .contact-button{background:#ffffff18;color:white;border-color:#ffffff70}.athlete-pack-card .setup-status{color:white;font-size:12px;letter-spacing:0}.athlete-pack-card:focus-visible{outline:3px solid white;outline-offset:4px}
[data-screen="conversations"] .onboarding-content{width:min(760px,100%)}#conversation-list .youth-card{margin:12px 0}#conversation-list h3{margin:0 0 8px}#conversation-list .contact-button{width:auto}#conversation-message{display:block;width:100%;padding:12px;border:1px solid #ccc;border-radius:10px;font:inherit;margin:8px 0 16px}.message{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;border-radius:12px;background:#f0eeee}.message.mine{background:#222;color:white}.icon-inbox{--action-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E")}

.inbox-category{border:1px solid #e2dfe1;border-radius:18px;padding:20px;background:#faf9fa;margin:20px 0}
.inbox-category>h2{font-size:20px;margin:0 0 14px}.inbox-category>p{color:#777;margin:0}
#conversation-list .inbox-category .youth-card{background:white;margin:12px 0 0}
#conversation-messages{display:flex;flex-direction:column;gap:12px;min-height:180px;padding:24px 0}
#conversation-messages .message{align-self:flex-start;max-width:78%;width:fit-content;padding:12px 16px;margin:0;border-radius:18px 18px 18px 4px;line-height:1.5}
#conversation-messages .message.mine{align-self:flex-end;border-radius:18px 18px 4px 18px}
#conversation-title{font-size:17px;font-weight:500;color:#777;text-align:center;margin:8px 0 18px}
.conversation-refresh{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0 0 0 auto;border:1px solid #dedcdd;border-radius:12px;background:white;color:#222;cursor:pointer}
.conversation-refresh svg{width:21px;height:21px}.conversation-refresh:hover{background:#f1f0f0}.conversation-refresh:focus-visible{outline:2px solid #222;outline-offset:3px}

.account-action-row #athlete-setup-button,.account-action-row #discovery-open{margin:0}
.conversation-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.conversation-toolbar .back-button{margin:0}.conversation-toolbar .conversation-refresh{margin:0}

.icon-discover{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22/%3E%3Cpath%20d%3D%22m16%208-2.5%205.5L8%2016l2.5-5.5z%22/%3E%3C/svg%3E")}

.conversation-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:42px;height:42px;object-fit:cover;border-radius:50%;background:#e9e6e8;color:#555;font-weight:600}
.conversation-card-person{display:flex;align-items:center;gap:12px;margin-bottom:12px}.conversation-card-person h3{margin:0!important}
.message-row{display:flex;align-items:flex-end;gap:10px;width:100%;justify-content:flex-start}.message-row.mine{flex-direction:row-reverse}
#conversation-messages .message-row .message{max-width:calc(78% - 42px);align-self:auto}
.message-row .conversation-avatar{width:34px;height:34px}
@media(max-width:480px){#conversation-messages .message-row .message{max-width:calc(100% - 44px)}}

.discovery-card .contact-button,.athlete-pack-card .contact-button{width:auto;min-height:32px;padding:6px 14px;font-size:12px;border-radius:9px}.discovery-card .contact-actions{text-align:center;padding:0 16px}.athlete-pack-card .contact-actions{text-align:center}

.discovery-card .contact-actions,.athlete-pack-card .contact-actions{display:flex;flex-direction:column;align-items:center}.discovery-card .contact-button,.athlete-pack-card .contact-button{margin:0 auto}.venue-visible .discovery-card .contact-button{background:#ffffff18;color:white;border-color:#ffffff70}.venue-visible .discovery-card .contact-button:hover{background:#ffffff30}.venue-visible .discovery-card .contact-button:focus-visible{outline:2px solid white;outline-offset:3px}

.discovery-location{text-align:center;color:inherit;font-size:14px;font-weight:600;margin:12px 0 28px}

.discovery-page #discovery-heading{margin-bottom:0}

#conversation-open,#team-links-button{position:relative}#conversation-open[data-unread]:not([data-unread=""])::after,#team-links-button[data-unread]:not([data-unread=""])::after{content:attr(data-unread);position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 4px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#c93232;color:white;border:2px solid white;font-size:10px;font-weight:700}

#conversation-open[data-unread]:not([data-unread=""])::after,#team-links-button[data-unread]:not([data-unread=""])::after{top:-7px;right:-7px;width:18px;min-width:18px;height:18px;padding:0;border-radius:50%;font-size:9px;line-height:1;box-sizing:content-box}

.new-message-label{margin-left:auto;color:#a42a2a;background:#fff0f0;padding:4px 8px;border-radius:8px;font-size:11px;font-weight:600;white-space:nowrap}.conversation-card-person{flex-wrap:wrap}

.inbox-category>summary{cursor:pointer;list-style-position:inside}.inbox-category>summary h2{display:inline;font-size:20px;margin:0}.inbox-category>summary:focus-visible{outline:2px solid #222;outline-offset:5px;border-radius:4px}.section-unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#c93232;margin-left:10px;vertical-align:middle}

.athlete-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px;margin-bottom:12px}.athlete-card-identity{display:flex;flex-direction:column;align-items:center;gap:12px;flex:1}.athlete-team-logo{width:48px;height:48px;object-fit:contain;background:transparent}.athlete-nationality{font-size:30px;line-height:1.2}.athlete-card-top .athlete-portrait{flex:none;width:138px;height:160px;margin:0;object-fit:cover;border-radius:12px}

img.athlete-nationality{width:40px;height:28px;object-fit:contain}

.athlete-pack-card .contact-actions{order:1;margin-top:auto}.athlete-pack-card .athlete-card-brand{order:2;margin-top:0;padding-top:14px}

.athlete-pack-card{min-height:390px;padding-top:24px}.athlete-pack-card h2{margin:8px 0 6px}.athlete-pack-card p{margin:5px 0;line-height:1.35}.athlete-pack-card .athlete-position{margin-top:0}.athlete-card-top{margin-bottom:8px}.athlete-pack-card .contact-button{transition:background-color .18s,color .18s,border-color .18s}.athlete-pack-card .contact-button:hover,.athlete-pack-card .contact-button:focus-visible{background:#f1ca65;color:#172c38;border-color:#f1ca65;outline:2px solid #fff;outline-offset:3px}.athlete-pack-card .contact-button:active{background:#dfb443;border-color:#dfb443}.athlete-pack-card .contact-button:disabled{background:#ffffff18;color:#fff;border-color:#ffffff70;outline:none}

.athlete-pack-card>p{margin:2px 0;line-height:1.2}.athlete-pack-card .contact-actions{padding-top:14px}

.venue-visible .discovery-card .contact-button:hover,.venue-visible .discovery-card .contact-button:focus-visible{background:#f1ca65;color:#172c38;border-color:#f1ca65;outline:2px solid #fff;outline-offset:3px}.venue-visible .discovery-card .contact-button:active{background:#dfb443}.discovery-card[tabindex]{cursor:pointer}.discovery-card[tabindex]:focus-visible{outline:3px solid #fff;outline-offset:3px}.discovery-grid:has(.opportunity-detail){grid-template-columns:minmax(0,600px);justify-content:center}

.sports-history-editor,.sports-history-view{margin:24px 0;text-align:left}.history-entry{border:1px solid #ddd;border-radius:14px;margin:14px 0;padding:16px;display:flex;flex-direction:column;gap:10px}.history-entry label{display:flex;flex-direction:column;gap:5px}.history-entry input,.history-entry select{width:100%;min-height:40px;padding:8px;border:1px solid #ccc;border-radius:8px}.history-entry input[type=checkbox]{width:20px;min-height:20px}.history-entry img{width:48px;height:48px;object-fit:contain}.history-team-results button{display:flex;align-items:center;gap:12px;padding:10px;margin:6px 0;width:100%;text-align:left;border:1px solid #ddd;border-radius:8px;background:#fff}.history-entry h3,.history-entry p{margin:0}

#view-details{max-width:620px;margin:0 auto;text-align:left}.profile-location{text-align:center;color:#666;margin:8px 0 18px}.profile-identity-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 0 24px}.profile-identity-badge{display:inline-flex;align-items:center;gap:9px;background:#f5f6f8;border:1px solid #e5e7eb;border-radius:24px;padding:8px 14px;font-size:14px;font-weight:600}.profile-country-flag{width:28px;height:20px;object-fit:contain;border-radius:2px}.profile-gender-icon{font-size:24px;line-height:1;color:#35495c}.profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;margin:0 0 20px}.profile-facts>div{padding:15px 18px;border-bottom:1px solid #e5e7eb}.profile-facts dt{font-size:12px;color:#68707b;margin-bottom:5px}.profile-facts dd{margin:0;font-size:15px;font-weight:600}.profile-facts .profile-team-fact{grid-column:1/-1;border-bottom:0}.profile-facts small{display:block;color:#747b85;margin-top:4px}.profile-about{padding:4px 2px 16px}.profile-about h2,#view-details .sports-history-view h2{font-size:18px;margin:0 0 8px}.profile-about p{margin:0;color:#454b54}@media(max-width:380px){.profile-facts>div{padding:12px}}

.profile-measurements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 20px}.profile-measurements>div{border:1px solid #e5e7eb;background:#fff;border-radius:12px;padding:14px 8px;text-align:center}.profile-measurements dt{display:flex;justify-content:center;align-items:center;gap:6px;font-size:12px;color:#68707b;margin-bottom:8px}.profile-measurements img{width:22px;height:22px}.profile-measurements dd{margin:0;font-size:16px;font-weight:600}@media(max-width:380px){.profile-measurements dd{font-size:14px}.profile-measurements dt{flex-direction:column}}

.profile-facts .profile-team-fact{text-align:center}

.recruiting-filter-panel{margin:16px 0;padding:16px;border:1px solid #ffffff55;border-radius:16px;background:#f8fafaf0;color:#222}.recruiting-filter-panel summary{font-weight:700;cursor:pointer}.filter-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.filter-fields label{display:flex;flex-direction:column;gap:6px}.filter-fields input,.filter-fields select{width:100%;box-sizing:border-box;padding:9px;border:1px solid #ccc;border-radius:9px}.filter-fields fieldset{grid-column:1/-1}.active-filter-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.active-filter-tags span{font-size:12px;padding:5px 9px;border-radius:20px;background:#e1eaf0}.filter-fields .button{grid-column:1/-1}.professional-form .recruiting-filter-panel{grid-column:1/-1}@media(max-width:480px){.filter-fields{grid-template-columns:1fr}}

.organization-contact-person{display:flex;align-items:center;gap:14px;margin:14px 0}.organization-contact-person a{display:flex;flex-shrink:0}.organization-contact-person p{margin:0}#search-page #team-search-toggle,#search-page #team-search-filters{background:rgba(24,34,40,.55);border:1px solid rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(5px)}#search-page #team-search-filters input,#search-page #team-search-filters select{background:rgba(24,34,40,.55);border-color:rgba(255,255,255,.45);color:#fff}#search-page #team-search-filters select option{background:#24313a;color:#fff}#search-page #team-search-toggle:hover{background:rgba(50,65,74,.75)}

.search-kind-checks{display:flex;gap:20px;border:0;padding:0}.search-kind-checks label{display:flex!important;flex-direction:row!important;align-items:center}.search-kind-checks input{width:auto!important}#search-page #team-search-filters summary{color:white}

#team-search-filters{interpolate-size:allow-keywords;transition:background 220ms ease,border-color 220ms ease}#team-search-filters::details-content{block-size:0;overflow:hidden;opacity:0;transition:block-size 280ms cubic-bezier(.22,1,.36,1),opacity 200ms ease,content-visibility 280ms allow-discrete}#team-search-filters[open]::details-content{block-size:auto;opacity:1}#search-results .name-preview{animation:search-result-enter 220ms ease both;transition:background 180ms ease,transform 180ms ease,border-color 180ms ease}#search-results .name-preview:hover{transform:translateY(-1px)}#search-results .name-preview:nth-child(2){animation-delay:25ms}#search-results .name-preview:nth-child(3){animation-delay:50ms}#search-results .name-preview:nth-child(n+4){animation-delay:75ms}@keyframes search-result-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){#team-search-filters,#team-search-filters::details-content,#search-results .name-preview{transition:none!important;animation:none!important}#search-results .name-preview:hover{transform:none}}

.search-toolbar{position:relative}.search-toolbar #profile-search-form{padding-right:100px}.search-toolbar #search-query{box-sizing:border-box;width:100%}#search-page .search-toolbar #team-search-filters{margin:0;padding:0;border:0;background:transparent;backdrop-filter:none}#search-page .search-toolbar #team-search-filters>summary{position:absolute;top:0;right:0;box-sizing:border-box;width:90px;min-height:50px;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border:1px solid #ffffff60;border-radius:12px;background:rgba(24,34,40,.55);font-size:13px;list-style:none}#search-page .search-toolbar #team-search-filters>summary::-webkit-details-marker{display:none}#search-page .search-toolbar #team-search-filters>summary:before{content:'▸';transition:transform 220ms ease}#search-page .search-toolbar #team-search-filters[open]>summary:before{transform:rotate(90deg)}#search-page .search-toolbar #team-search-filters .filter-fields{margin-top:12px;padding:16px;border:1px solid #ffffff50;border-radius:14px;background:rgba(24,34,40,.55);backdrop-filter:blur(5px)}.search-company-logo{display:flex;justify-content:center;margin:18px 0}.search-company-logo img{width:42px;height:42px;object-fit:contain;filter:brightness(0) invert(1)}

.discovery-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.discovery-topbar .back-button{margin:0}.discovery-company-logo{width:38px;height:38px;object-fit:contain}.venue-visible .discovery-company-logo{filter:brightness(0) invert(1)}

[data-screen="conversations"]>.onboarding-content{display:flex;flex-direction:column;min-height:calc(100svh - 80px)}.inbox-company-logo{display:flex;justify-content:center;margin-top:auto;padding:30px 0 8px}.inbox-company-logo img{width:42px;height:42px;object-fit:contain}

label[for="athlete-team-upload"],label[for="youth-team-upload"]{display:block;margin-top:20px}

.history-team-card{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #dce1e6;border-radius:12px}.history-team-card img{width:36px;height:36px;object-fit:contain}.history-team-card a{display:flex;flex-shrink:0}.sports-history-view .history-team-card{flex-wrap:wrap}.sports-history-view .history-team-card h3{margin:0;font-size:15px}.sports-history-view .history-team-card p{margin:0;font-size:13px}

.search-toolbar{width:100%;max-width:480px;margin-left:auto;margin-right:auto}

.icon-profile-view{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012s3.5-7%2010-7%2010%207%2010%207-3.5%207-10%207S2%2012%202%2012Z%22/%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22/%3E%3C/svg%3E")}

.membership-remove{margin-left:auto;padding:5px 9px;border:1px solid #dedcdd;border-radius:7px;background:transparent;font:inherit;font-size:12px;cursor:pointer}.membership-remove:hover{background:#f4eeee}.membership-remove:focus-visible{outline:2px solid currentColor;outline-offset:2px}

.compact-link-search{display:flex;align-items:center;gap:8px;margin:16px 0}.compact-link-search input{flex:1;min-width:0;width:100%;box-sizing:border-box;height:42px;padding:10px 12px;border:1px solid #dedcdd;border-radius:10px;font:inherit;background:#fafafa}.compact-action{width:auto!important;min-height:32px;padding:6px 11px;border:1px solid #dedcdd;border-radius:8px;font:inherit;font-size:12px;background:white;cursor:pointer;white-space:nowrap}.compact-action:hover{background:#f2f1ed}.compact-accept{background:#b59c50;border-color:#b59c50}.compact-accept:hover{background:#cfb568}.compact-action:focus-visible{outline:2px solid #333;outline-offset:3px}.compact-link-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin:8px 0;border:1px solid #dedcdd;border-radius:12px;background:white}.compact-link-person{display:flex;align-items:center;gap:10px;min-width:0}.compact-link-person img,.coach-link-card img{width:34px;height:34px;object-fit:contain}.compact-link-card h2,.compact-link-card h3{font-size:15px;margin:0;text-align:left}.compact-link-person small{display:block;font-size:12px;color:#737373;margin-top:3px}.compact-link-actions{display:flex;gap:6px;flex-shrink:0}.membership-group{margin-top:20px}.membership-group>h2,.membership-group>summary{font-size:17px;margin:0 0 10px}.membership-group>p{font-size:13px;color:#777;margin:8px 0}.coach-link-card>p{font-size:12px;margin:0}.coach-link-card>h2{flex:1}.membership-area{border-top:1px solid #e6e3e3;padding-top:4px}#team-links-list,#team-link-results{gap:6px;margin-top:12px}@media(max-width:380px){.compact-link-card{flex-wrap:wrap}.compact-link-actions{margin-left:auto}}

.compact-links-heading{font-size:17px;margin:10px 0 0;text-align:left}

#team-link-kind{max-width:130px;height:42px;border:1px solid #dedcdd;border-radius:9px;padding:5px;font:inherit;font-size:12px;background:#fafafa}@media(max-width:440px){#team-link-search{flex-wrap:wrap}#team-link-search input{flex-basis:100%}#team-link-kind{flex:1;max-width:none}#team-link-search button{margin-left:auto}}

[data-screen=team-links] .onboarding-content{position:relative}#team-link-results{position:absolute;top:160px;left:0;right:0;z-index:10;max-height:320px;overflow-y:auto;background:white;border:1px solid #dedcdd;border-radius:12px;box-shadow:0 12px 28px #0002;padding:6px;margin-top:0}#team-link-results[hidden]{display:none}#team-link-results .compact-link-card{margin:0;border:0;border-radius:8px;padding:8px 10px}#team-link-results .compact-link-card:hover{background:#f7f7f7}@media(max-width:440px){#team-link-results{top:210px}}

.team-search-wrap{position:relative}#team-link-results{top:100%;left:0;right:0}

.sports-history-view .sports-history-card{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:14px;padding:12px 16px;margin:10px 0;text-align:left}.sports-history-card>a,.sports-history-card>img{flex:0 0 42px}.sports-history-view .sports-history-card img{width:42px;height:42px;object-fit:contain}.sports-history-copy{flex:1;min-width:0}.sports-history-view .sports-history-copy h3{margin:0 0 4px;line-height:1.3;overflow-wrap:anywhere}.sports-history-view .sports-history-copy p{margin:0;line-height:1.4;color:#454b54}.sports-history-view .sports-history-copy .sports-history-dates{margin-top:3px;font-size:12px;color:#747b85}.organization-profile-facts dd{font-size:14px;font-weight:600;color:#30363d;margin:0;line-height:1.4;overflow-wrap:anywhere}

.organization-profile-facts{
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  margin: 24px 0;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
  text-align: left;
  padding: 0;
  border: 0;
  gap: 10px;
}
@media(max-width:420px){.organization-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.organization-profile-facts>div:last-child{grid-column:1/-1}}.organization-profile-facts>div{padding:14px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:12px}

.organization-profile-facts dt{
  font-weight: 600;
  text-transform: uppercase;
  color: #747b85;
  margin: 0 0 6px;
  font-size: 10px;
  letter-spacing: .04em;
}.organization-contact-person{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dce1e6;border-radius:12px;margin:10px 0}.organization-contact-person p{margin:0;font-size:14px;font-weight:600}.organization-contact-person a{display:flex;flex-shrink:0}

#view-details .organization-contact-person,#view-details .history-team-card{box-sizing:border-box;min-height:60px;padding:10px 14px;gap:12px;border:1px solid #dce1e6;border-radius:12px}#view-details .organization-contact-person img,#view-details .history-team-card img{display:block;width:36px;height:36px;object-fit:contain}#view-details .organization-contact-person p,#view-details .history-team-card>span{margin:0;font-size:14px;font-weight:400;line-height:1.4}

.private-profile-shell{
  position: relative;
  overflow: hidden;
  min-height: 320px;
  border: 1px solid #e4e9ed;
  background: radial-gradient(ellipse at 8% 10%,#dce9ed 0,transparent 48%),radial-gradient(ellipse at 96% 90%,#e8e4d9 0,transparent 52%),#f5f7f8;
  box-shadow: inset 0 1px 0 #fff;
  border-radius: 20px;
}

.private-profile-blur{
  pointer-events: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  padding: 28px;
  filter: blur(8px);
  opacity: .65;
  transform: rotate(-2deg) scale(1.03);
}

.private-profile-blur div{
  margin: 0;
  height: 84px;
  border-radius: 14px;
  background: linear-gradient(130deg,#c2d2dc,#e7ebee);
  border: 1px solid #bfcbd5;
}

.private-profile-blur div:first-child{
  grid-column: 1/-1;
  width: 100%;
  height: 48px;
  border-radius: 10px;
  background: linear-gradient(90deg,#a9bfcd 0 24%,#dce4e9 24% 100%);
}.private-profile-blur div:last-child{grid-column:1/-1;height:78px;background:repeating-linear-gradient(0deg,#d2dce2 0 12px,#edf1f3 12px 25px)}

.private-profile-message{
  position: absolute;
  display: grid;
  place-items: center;
  margin: 0;
  font-weight: 600;
  inset: 0;
  background: linear-gradient(180deg,#ffffff22,#ffffff66);
  color: #394851;
  letter-spacing: .01em;
  text-shadow: 0 1px 2px #fff;
  font-size: 14px;
}.private-profile-message::before{content:'';position:absolute;top:calc(50% - 53px);left:calc(50% - 17px);width:34px;height:34px;border:1px solid #ffffffcc;border-radius:50%;background:#ffffffb3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23566570' stroke-width='1.6'%3E%3Crect x='6' y='10' width='12' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center/19px no-repeat;box-shadow:0 3px 12px #39536112}

#view-details section>h2,#view-details .profile-about h2,#view-details .sports-history-view h2{font-size:18px;font-weight:700;line-height:1.35;margin:0 0 12px}

.icon-roster{--action-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%227%22%20r%3D%222.6%22/%3E%3Cpath%20d%3D%22M7.5%2020v-3.2a4.5%204.5%200%200%201%209%200V20M5.3%205.8a2.3%202.3%200%200%200%200%204.6M18.7%205.8a2.3%202.3%200%200%201%200%204.6M3%2018v-2a3.5%203.5%200%200%201%203.2-3.5M21%2018v-2a3.5%203.5%200%200%200-3.2-3.5%22/%3E%3C/svg%3E")}#team-link-search input{grid-column:1/-1;height:44px;background:#fff;padding-left:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23778089' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 4 4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:18px;background-position:12px center;font-size:14px}#team-link-search button{height:36px;min-width:82px;padding:6px 16px;background:#25343e;border-color:#25343e;color:#fff;font-size:13px;font-weight:600}#team-link-search button:hover{background:#3b4e5c}#team-link-search input:focus-visible,#team-link-search select:focus-visible{outline:2px solid #637e91;outline-offset:2px}

#team-link-search select{
  height: 36px;
  min-width: 0;
  width: 100%;
  padding: 6px 10px;
  border: 1px solid #dedfe2;
  border-radius: 8px;
  background: #fff;
  font: inherit;
  font-size: 13px;
  color: #454b54;
  padding-left: 6px;
  text-align: left;
}

#team-link-search{
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
  padding: 12px;
  margin: 18px 0;
  background: #f8f9fa;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  column-gap: 8px;
  padding-left: 8px;
}.applicant-ranking-note{font-size:12px;color:#68707b;line-height:1.5}.applicant-card{border:1px solid #dce1e6;border-radius:12px;padding:12px;margin:10px 0}.applicant-card-top{display:flex;align-items:center;gap:10px}.applicant-card-top img{width:36px;height:36px;object-fit:contain;border-radius:50%}.applicant-card-top strong{flex:1;font-size:14px}.applicant-rank{font-size:12px;font-weight:600;white-space:nowrap;color:#354f61}.applicant-card details{margin:10px 0;font-size:12px;color:#586570}.applicant-card summary{cursor:pointer}.applicant-card details p{margin:8px 0;line-height:1.5}.applicant-card>small{font-size:12px;color:#747b85}.applicant-card>button{display:block;margin-top:10px}.opportunity-action-card{position:relative;min-height:38px;padding:8px 12px;border:1px solid #dce1e6;border-radius:10px;background:#fff;font:inherit;font-size:12px;cursor:pointer;color:#30363d}.opportunity-action-card:hover{background:#f4f6f8}.opportunity-action-card:focus-visible{outline:2px solid #637e91;outline-offset:2px}.applicant-icon-button{width:42px;height:38px;display:grid;place-items:center;padding:7px}.applicant-icon-button::before{content:'';width:23px;height:23px;background:currentColor;mask:var(--action-icon) center/contain no-repeat}#applicants-list{text-align:left}#applicants-list .applicant-card{margin:14px 0;padding:16px}#applicants-list .applicant-card-top img{width:42px;height:42px}.opportunities-grid{align-items:start}.opportunity-actions>.opportunity-action-card{flex:1 1 0;min-width:0;padding:8px 6px;font-size:11px;white-space:nowrap}.opportunity-actions>.applicant-icon-button{flex:0 0 38px;width:38px;padding:7px}

.opportunity-actions>.button{
  flex-basis: 100%;
  width: 100%;
  flex: 0 0 100%;
}

.opportunity-actions>.opportunity-icon-button,.opportunity-actions>.applicant-icon-button{flex:0 0 40px;width:40px;height:40px;padding:8px;display:grid;place-items:center}.opportunity-icon-button::before{content:'';display:block;width:23px;height:23px;background:currentColor;mask:var(--action-icon) center/contain no-repeat}.icon-close-opening{--action-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='16' height='16' rx='4'/%3E%3Cpath d='m9 9 6 6m0-6-6 6'/%3E%3C/svg%3E")}

.opportunity-actions{
  flex-wrap: wrap;
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: center;
}

.applicant-consent-actions{display:flex;gap:8px;margin-top:12px}.applicant-consent-actions button{min-width:76px}

.applicant-icon-button[data-count]:not([data-count=''])::after{
  content: attr(data-count);
  position: absolute;
  background: #c44545;
  color: white;
  font-weight: 700;
  top: -5px;
  right: -5px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  padding: 0;
  border-radius: 50%;
  display: grid;
  place-items: center;
  line-height: 1;
  border: 2px solid #fff;
  box-sizing: border-box;
  font-size: 10px;
}

.account-action-row #guardian-setup-button{margin:0;flex:0 0 52px}

.map-controls{
  flex-wrap: wrap;
  display: flex;
  align-items: flex-end;
  gap: 14px;
  padding: 14px;
  background: #f8f9fa;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  margin: 18px 0 14px;
  text-align: left;
}.map-controls>div{flex:1;min-width:140px}

.map-controls label{
  margin-right: 10px;
  display: block;
  width: auto;
  margin: 0 0 7px;
  font-size: 12px;
  font-weight: 600;
  color: #68707b;
}

.map-controls select{
  font: inherit;
  box-sizing: border-box;
  width: 100%;
  height: 42px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #dce1e6;
  border-radius: 9px;
  font-size: 14px;
  color: #30363d;
}.map-controls select:focus-visible{outline:2px solid #637e91;outline-offset:2px}@media(max-width:420px){.map-controls{gap:12px}.map-controls>div{min-width:120px}.map-controls label{width:auto;font-size:12px}}

#view-details>section{margin:28px 0 0;padding:0}#view-details>section+section{margin-top:28px}#view-details>section>p:last-child{margin-bottom:0}#view-details>section>.history-team-card+.history-team-card{margin-top:10px}
/* TeamSnap roster workflow */
.teamsnap-panel{margin:28px 0;border:1px solid #dce1e6;border-radius:16px;background:#fff;overflow:hidden}
.teamsnap-panel summary{display:flex;align-items:center;gap:12px;padding:18px 20px;cursor:pointer;list-style:none;background:#f8f9fa}
.teamsnap-panel summary::-webkit-details-marker{display:none}
.teamsnap-panel summary::after{content:'+';margin-left:auto;font-size:22px;font-weight:400;color:#697580}
.teamsnap-panel[open] summary::after{content:'\2212'}
.teamsnap-panel summary:focus-visible{outline:2px solid #637e91;outline-offset:-4px}
.teamsnap-title{font-size:17px;font-weight:700;letter-spacing:-.3px}
.teamsnap-badge{font-size:11px;font-weight:600;padding:5px 9px;border:1px solid #dce1e6;border-radius:20px;color:#56616c;background:#fff}
.teamsnap-body{padding:20px}
.teamsnap-panel p{font-size:13px;line-height:1.6;color:#697580;margin:6px 0 0}
.teamsnap-panel .teamsnap-intro{font-size:14px;margin:0 0 22px;color:#4e5964}
.teamsnap-step+.teamsnap-step{border-top:1px solid #e7eaee;margin-top:22px;padding-top:22px}
.teamsnap-panel h3{font-size:14px;font-weight:700;margin:0;color:#27343e}
.teamsnap-panel label{display:block;margin:14px 0 7px;font-size:12px;font-weight:600;color:#4e5964}
.teamsnap-panel input,.teamsnap-panel select{box-sizing:border-box;max-width:100%;width:100%;min-height:42px;padding:10px 12px;border:1px solid #dce1e6;border-radius:9px;background:#fff;font:inherit;font-size:13px;color:#303b44}
.teamsnap-panel input:focus-visible,.teamsnap-panel select:focus-visible{outline:2px solid #637e91;outline-offset:2px}
.teamsnap-panel input[type=file]{padding:7px;background:#f8f9fa;font-size:12px}
.teamsnap-panel input[type=file]::file-selector-button{margin-right:10px;padding:8px 12px;background:#fff;color:#303b44;border:1px solid #dce1e6;border-radius:6px;font:inherit;font-weight:600;cursor:pointer}
.teamsnap-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.teamsnap-actions[hidden]{display:none}
.teamsnap-actions .compact-action{display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 10px;border:1px solid #dce1e6;border-radius:9px;font-size:12px;font-weight:600;text-align:center;text-decoration:none;color:#303b44;background:#fff}
.teamsnap-actions button:not(:disabled){background:#24323b;color:#fff;border-color:#24323b}
.teamsnap-actions .compact-action:disabled{opacity:.45}
.teamsnap-actions .compact-action[hidden]{display:none}
.teamsnap-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.teamsnap-fields>div{min-width:0}
.teamsnap-preview{padding:0;margin:18px 0 0;list-style:none}
.teamsnap-preview:empty{display:none}
.teamsnap-preview li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e7eaee;font-size:13px}
.teamsnap-preview li>span:last-child{font-size:11px;color:#5e6e79;text-align:right}
.teamsnap-panel .teamsnap-status{margin:20px 0 0;padding-top:14px;border-top:1px solid #e7eaee;font-size:12px}
@media(max-width:380px){.teamsnap-body{padding:16px}.teamsnap-panel summary{padding:16px}.teamsnap-fields{grid-template-columns:minmax(0,1fr)}}

.teamsnap-logo{display:block;width:128px;height:29px;object-fit:contain}

.teamsnap-profile-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:12px 0 20px}.teamsnap-profile-search>div{grid-column:1/-1}.teamsnap-step .compact-link-card{margin-top:10px}.teamsnap-step .compact-link-person{min-width:0}.teamsnap-step .compact-link-person h3{overflow-wrap:anywhere}

.player-film-editor{margin:28px 0;padding-top:20px;border-top:1px solid #dce1e6}.player-film-editor label{display:grid;gap:8px;margin:14px 0;font-size:13px}.player-film-editor input{min-height:42px;padding:10px;border:1px solid #dce1e6;border-radius:10px;max-width:100%;box-sizing:border-box}.player-film-editor p{font-size:13px;color:#647080}.player-film-actions{display:flex;gap:10px}.player-film video,.player-film-editor video{display:block;width:100%;max-height:360px;border-radius:12px;background:#181818;margin-top:14px}.player-film-editor .player-film h2{display:none}

.account-action-row:has(#team-roster-button:not([hidden])){gap:12px}

.roster-only .history-team-card+.history-team-card{margin-top:10px}

.roster-brand{display:none}main[data-screen="profile-view"]:has(.roster-only) .roster-brand{display:block;position:fixed;top:24px;right:24px;width:48px;height:40px;object-fit:contain}main[data-screen="profile-view"]:has(.roster-only) #view-heading{margin-bottom:28px}

main[data-screen="profile-view"]:has(.roster-only) .onboarding-content{animation:none}

.film-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.film-modes button[aria-pressed="true"]{background:#23313b;color:white;border-color:#23313b}.film-option-panel{border:1px solid #dce1e6;border-radius:14px;padding:18px}.film-option-panel[hidden]{display:none}.hudl-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px}.hudl-brand img{width:32px;height:32px}.hudl-brand h3,.film-option-panel h3{margin:0;font-size:17px}.hudl-open{display:flex;justify-content:center;text-decoration:none;box-sizing:border-box}

.film-modes button{display:flex;align-items:center;justify-content:center;gap:10px}.film-modes button img{width:26px;height:26px;object-fit:contain;flex-shrink:0}.film-modes button[aria-pressed="true"] img[src="/assets/unath-logo.svg"]{filter:brightness(0) invert(1)}

.film-modes button img[src="/assets/unath-logo.svg"]{width:48px;height:40px;margin:-7px -8px}

.film-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;position:relative}.film-carousel video{flex:0 0 100%;min-width:0;scroll-snap-align:start}.film-carousel-nav{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:12px}.film-carousel-nav button{width:38px;height:38px;border:1px solid #dce1e6;border-radius:10px;background:white;font-size:20px}.film-carousel-nav button:disabled{opacity:.35}

.film-carousel{overflow-x:hidden}

#athlete-form .field:has(#athlete-visibility),#athlete-form .field:has(#athlete-opportunityStatus){margin:0 0 24px}#athlete-form .field:has(#athlete-visibility) label,#athlete-form .field:has(#athlete-opportunityStatus) label{display:block;margin-bottom:8px}#athlete-form #athlete-visibility-hint,#athlete-form #athlete-opportunityStatus-hint{margin-top:9px;line-height:1.55}#athlete-form .field:has(#athlete-visibility) .field-error:empty,#athlete-form .field:has(#athlete-opportunityStatus) .field-error:empty{display:none}

.public-film-source{padding:18px;border:1px solid #dce1e6;border-radius:14px;margin-top:14px;background:#fff}.public-film-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;min-height:32px}.public-film-brand h3{margin:0;font-size:16px;font-weight:650}.public-film-brand img{width:28px;height:28px;object-fit:contain}.public-film-brand img[src="/assets/unath-logo.svg"]{width:48px;height:40px;margin:-6px -14px -6px -8px}.public-hudl-link{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #dce1e6;border-radius:9px;text-decoration:none;color:#23313b;font-size:13px;font-weight:600;background:#f8f9fa}.public-hudl-link:hover{background:#edf1f4}.public-film-source .film-carousel video{margin:0}.team-links-brand{position:fixed;top:24px;right:24px;width:48px;height:40px;object-fit:contain;z-index:10}

[data-screen="team-links"] .membership-area{border-top:0}

.discovery-topbar{position:fixed;top:24px;left:24px;right:24px;margin:0;z-index:10}.discovery-topbar .back-button{align-self:flex-start}#search-page .search-company-logo{position:fixed;top:24px;right:24px;margin:0;width:48px;height:40px;z-index:10}#search-page .search-company-logo img{width:48px;height:40px;object-fit:contain}

.map-controls:has(#map-scope-field[hidden]):has(#map-radius-field[hidden]){display:none}

.map-company-logo{position:fixed;top:24px;right:24px;width:48px;height:40px;object-fit:contain;z-index:10}

.age-handover{margin-top:28px;padding-top:20px;border-top:1px solid #dce1e6}.age-handover label,#age-claim-form label{display:grid;gap:8px;margin:16px 0}.age-handover p{font-size:13px;line-height:1.6;color:#647080}.age-handover input,#age-claim-token{padding:12px;border:1px solid #dce1e6;border-radius:10px;min-width:0}

.claim-company-logo{position:fixed;top:24px;right:24px;width:48px;height:40px;object-fit:contain}.claim-page .onboarding-content{max-width:440px}.claim-card{padding:28px;border:1px solid #e0e4e8;border-radius:18px;background:#fff;box-shadow:0 8px 28px #23313b08}.claim-card .claim-eyebrow{margin:0 0 12px;font-size:10px;letter-spacing:1.8px;font-weight:650;color:#7a8189}.claim-card h1{font-size:28px;margin:0 0 12px;text-align:left;line-height:1.2}.claim-intro{margin:0 0 22px;font-size:14px;line-height:1.6;color:#647080}.claim-notice{padding:14px;background:#f5f7f9;border-radius:10px;font-size:13px;line-height:1.5;margin:0 0 24px;color:#465465}.claim-notice:empty{display:none}.claim-card #age-claim-form label{font-size:13px;font-weight:550;margin:0 0 18px;gap:9px}.claim-card #age-claim-token{box-sizing:border-box;width:100%;font:inherit;font-weight:400;min-height:46px}.claim-account-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.claim-account-actions[hidden],.claim-account-back[hidden]{display:none}.claim-account-actions a{display:flex;align-items:center;justify-content:center;font-size:13px;text-decoration:none;box-sizing:border-box;padding:12px 6px}.claim-account-back{display:block;text-align:center;margin-top:18px;color:#465465;font-size:13px;text-decoration:none}@media(max-width:420px){.claim-card{padding:22px}.claim-card h1{font-size:26px}}

.claim-login-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:22px}.claim-login-modes button{padding:10px;border:1px solid #dce1e6;border-radius:9px;background:#fff;color:#465465;font:inherit;font-size:13px;cursor:pointer}.claim-login-modes button[aria-pressed="true"]{background:#23313b;border-color:#23313b;color:#fff}#claim-credentials[hidden],#claim-name-label[hidden],#claim-token-label[hidden]{display:none}.claim-card #claim-credentials input{padding:12px;box-sizing:border-box;width:100%;min-height:46px;border:1px solid #dce1e6;border-radius:10px;font:inherit}

.youth-card-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.youth-action-button{display:grid;place-items:center;width:46px;height:46px;padding:10px;border:1px solid #dedcdd;border-radius:12px;background:#fff;color:#211f20;cursor:pointer}.youth-action-button svg{width:24px;height:24px}.youth-action-button:hover{background:#f5f6f7}.youth-action-button:focus-visible{outline:2px solid #211f20;outline-offset:3px}

.profile-review-panel{padding:20px;border:1px solid #dce1e6;border-radius:14px;margin:24px 0}.profile-review-panel label{display:grid;gap:8px;margin:16px 0}.profile-review-panel input,.profile-review-panel select{padding:12px;border:1px solid #dce1e6;border-radius:10px}.review-status{font-size:13px;color:#647080;line-height:1.6}.review-actions{display:flex;flex-wrap:wrap;gap:10px}.review-actions button{padding:10px;border:1px solid #dce1e6;border-radius:9px;background:white;cursor:pointer}

.community-actions{display:flex;justify-content:center;gap:12px;margin:20px 0}.community-actions button,#network-content button{padding:10px 14px;border:1px solid #dce1e6;border-radius:10px;background:white;cursor:pointer}.verification-badge{display:inline-flex;color:#246b53;font-size:13px;font-weight:600;padding:5px 9px;border-radius:20px;background:#edf7f1}.profile-review-panel textarea{display:block;width:100%;padding:12px;border:1px solid #dce1e6;border-radius:10px}#network-content section{margin:24px 0}#youth-login-form label{display:grid;gap:8px;margin:18px 0}#youth-login-form input{padding:12px;border:1px solid #dce1e6;border-radius:10px}.profile-review-panel input{width:100%}.profile-review-panel label{display:grid;gap:8px;margin:16px 0}

.profile-review-panel>button,#youth-discovery-content button{padding:11px 14px;margin:8px 8px 0 0;border:1px solid #dce1e6;border-radius:10px;background:#fff;color:#23313b;font:inherit;font-size:13px;cursor:pointer}.profile-review-panel>p{font-size:13px;color:#647080;line-height:1.6}.profile-review-panel h2{font-size:20px;margin:0 0 12px}#youth-discovery-content select{width:100%;padding:12px;border:1px solid #dce1e6;border-radius:10px;margin:12px 0}

.account-network-actions{display:flex;justify-content:center;gap:24px;margin:24px 0}.network-icon-button{display:flex;flex-direction:column;align-items:center;gap:9px;border:0;background:transparent;color:#23313b;cursor:pointer;font:inherit;font-size:12px}.network-icon-button svg{width:52px;height:52px;padding:13px;border:1px solid #dce1e6;border-radius:14px}.network-icon-button:hover svg{background:#f5f7f8}.network-icon-button:focus-visible{outline:2px solid #23313b;outline-offset:4px}.network-card{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid #dce1e6;border-radius:12px;margin:12px 0}.network-profile-link{display:flex;align-items:center;gap:12px;flex:1;color:#23313b;text-decoration:none;font-weight:600}.network-profile-link img{width:40px;height:40px;object-fit:cover;border-radius:10px}.community-count{text-align:center;color:#647080;font-size:14px}

/* One shared account navigation panel across account contexts. */
.account-action-row.account-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;margin:24px 0;border:1px solid #e2e5e8;border-radius:18px;background:#fafbfc;align-items:stretch}
.account-action-grid .account-action-icon,.account-action-grid .network-icon-button{width:100%;height:auto;min-height:92px;padding:14px 8px;border:0;border-radius:11px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;background:transparent;color:#23313b;flex:initial;transform:none}
.account-action-grid .account-action-icon::before{width:24px;height:24px;flex-shrink:0}
.account-action-grid .account-action-label,.account-action-grid .network-icon-button span{font-size:12px;line-height:1.35;text-align:center;font-weight:500}
.account-action-grid .account-action-icon>span:not(.account-action-label){display:none}
.account-action-grid .network-icon-button svg{width:24px;height:24px;padding:0;border:0;border-radius:0}
.account-action-grid .account-action-icon:hover,.account-action-grid .network-icon-button:hover{background:#edf1f4}
.account-action-grid .network-icon-button:hover svg{background:transparent}
.account-action-grid button[hidden]{display:none}
@media(max-width:380px){.account-action-row.account-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

[data-screen="network"]:has(.network-column) .onboarding-content{width:min(860px,100%)}
#network-content:has(.network-column){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
#network-content:has(.network-column)>section{grid-column:1/-1;margin:16px 0}
#network-content:has(.network-column)>.network-column{grid-column:auto;min-width:0}
.network-column h2{margin:0 0 16px;font-size:22px}
.network-scroll-list{max-height:55vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}
.network-scroll-list .network-card:first-child{margin-top:0}
@media(max-width:600px){#network-content:has(.network-column){gap:12px}.network-column h2{font-size:18px}.network-scroll-list .network-card{padding:10px;gap:8px}.network-scroll-list .network-profile-link{font-size:12px;flex-wrap:wrap}.network-scroll-list .network-profile-link img{width:30px;height:30px}#network-content .network-scroll-list button{font-size:11px;padding:7px 9px}}

.account-action-grid .account-action-icon::after{content:attr(title);font-size:12px;line-height:1.35;text-align:center;font-weight:500}

[hidden] .account-action-icon::after,.account-action-grid .account-action-icon[hidden]::after{content:none}

.account-action-row.account-action-grid{background:transparent;border:0;padding:0;gap:12px}
.account-action-grid .account-action-icon,.account-action-grid .network-icon-button{background:#fff;border:1px solid #dce1e6;border-radius:14px;min-height:104px;box-shadow:0 2px 7px #23313b05}
.account-action-grid .account-action-icon:hover,.account-action-grid .network-icon-button:hover{background:#f6f8fa;border-color:#b9c5ce}
.network-company-logo{position:fixed;right:24px;top:24px;width:40px;height:34px;object-fit:contain;z-index:2}

/* Matching network panels with stable headings and independent list scrolling. */
[data-screen="network"]:has(.network-column){align-items:flex-start;padding-top:110px}
[data-screen="network"]:has(.network-column) .onboarding-content{width:min(860px,100%);margin-inline:auto}
[data-screen="network"]:has(.network-column) h1{margin:0 0 28px;text-align:center;font-size:30px}
#network-content:has(.network-column){gap:20px}
#network-content:has(.network-column)>.network-column{margin:0;padding:20px;border:1px solid #dce1e6;border-radius:18px;background:#fafbfc;min-height:280px}
.network-column h2{font-size:18px;margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid #e5e9ed}
.network-column .network-scroll-list{max-height:55vh;padding-right:0}
.network-column .network-card{background:#fff;border-color:#e0e5e9;padding:14px;gap:12px;box-shadow:0 2px 5px #23313b04}
.network-column .network-profile-link{font-size:14px;line-height:1.4;gap:10px}
.network-column .network-profile-link img{width:36px;height:36px;background:#f5f7f9;padding:5px;border-radius:10px;object-fit:contain}
.network-column .network-scroll-list>p{display:flex;align-items:center;justify-content:center;min-height:150px;margin:0;padding:24px 12px;color:#77818b;font-size:13px;text-align:center}
#network-content .network-column button{font-size:12px;padding:8px 11px;color:#53616d;border-color:#e0e5e9;background:#fff}
#network-content .network-column button:hover{background:#f3f6f8;color:#23313b}
@media(max-width:600px){[data-screen="network"]:has(.network-column){padding-top:90px}#network-content:has(.network-column){gap:12px}#network-content:has(.network-column)>.network-column{padding:14px;min-height:240px}.network-column .network-card{padding:10px;gap:10px}.network-column .network-profile-link{font-size:12px}.network-column .network-scroll-list>p{padding:16px 4px}}

.account-action-grid .network-icon-button:last-child{grid-column:2}
@media(max-width:380px){.account-action-grid .network-icon-button:last-child{grid-column:auto}}

[data-screen="network"]{background:#020711;isolation:isolate;color:#eef4fa}
.network-orbit{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 65% 50%,#132944 0%,#020711 75%)}
.network-orbit::before{content:'';position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20% 25%,#ffffff90 100%,transparent),radial-gradient(1px 1px at 72% 60%,#ffffff70 100%,transparent),radial-gradient(1px 1px at 48% 84%,#ffffff50 100%,transparent);background-size:173px 197px,251px 227px,337px 311px}
.network-orbit canvas{position:absolute;width:min(115vw,1050px);height:min(115vw,1050px);left:50%;top:48%;transform:translate(-50%,-50%) rotate(-15deg);filter:drop-shadow(0 0 28px #439eea55);opacity:.8}
.network-orbit::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#02071150,#02071120 50%,#02071199)}
[data-screen="network"] .onboarding-content{position:relative;z-index:1}
[data-screen="network"] h1{color:#fff;text-shadow:0 2px 12px #0009}
[data-screen="network"] #network-back{color:#fff;z-index:3;background:#07111dc9;border-radius:8px;padding:8px 10px}
[data-screen="network"] .network-company-logo{filter:brightness(0) invert(1);z-index:3}
#network-content:has(.network-column)>.network-column,#network-content>.profile-review-panel{background:#f9fbff;color:#23313b;box-shadow:0 10px 30px #0003;border-color:#d5dfe9}
.network-column .network-scroll-list>p{color:#566575}
[data-screen="network"] #network-content>section:not(.network-column):not(.profile-review-panel){background:#f9fbff;color:#23313b;padding:20px;border-radius:18px}

/* Translucent Network panels retain contrast over the moving Earth. */
#network-content:has(.network-column)>.network-column,#network-content>.profile-review-panel,[data-screen="network"] #network-content>section:not(.network-column):not(.profile-review-panel){background:rgba(9,20,35,.66);color:#f1f6fc;border-color:rgba(213,229,245,.25);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.network-column h2{border-bottom-color:rgba(213,229,245,.2)}
.network-column .network-card,#network-content>.profile-review-panel .network-card{background:rgba(19,36,55,.55);border-color:rgba(213,229,245,.22);box-shadow:none}
[data-screen="network"] .network-profile-link{color:#f1f6fc}
.network-column .network-scroll-list>p,[data-screen="network"] .profile-review-panel>p{color:#c8d5e3}
.network-column .network-profile-link img{background:rgba(255,255,255,.9)}
#network-content .network-column button,#network-content>.profile-review-panel button{color:#f1f6fc;background:rgba(255,255,255,.09);border-color:rgba(213,229,245,.3)}
#network-content .network-column button:hover,#network-content>.profile-review-panel button:hover{color:#fff;background:rgba(255,255,255,.18)}

.network-orbit canvas{opacity:.95;filter:brightness(1.22) drop-shadow(0 0 28px #439eea55)}

#network-open{position:relative}.account-action-grid .network-alert-badge{position:absolute;right:10px;top:9px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:12px;background:#bd3d4a;color:#fff;font-size:11px;font-weight:700;line-height:1}.account-action-grid .network-alert-badge[hidden]{display:none}.network-notification-settings label{display:flex;align-items:center;gap:10px;margin:0;font-size:14px}.network-notification-settings input[type=checkbox]{width:18px;height:18px;accent-color:#83bceb}.network-notification-settings>p:empty{display:none}

/* Center the single final coach/recruiter action while preserving tile size. */
[data-screen="account"][data-account-context="coach"] .account-action-grid #network-open{grid-column:2}
@media(max-width:380px){
  [data-screen="account"][data-account-context="coach"] .account-action-grid #network-open{grid-column:1 / -1;justify-self:center;width:calc(50% - 6px)}
}

.notification-settings-card{border:1px solid #dce2e9;border-radius:18px;padding:22px;margin:22px 0;background:#fff}.notification-setting-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid #edf0f3}.notification-setting-row span{display:grid;gap:7px}.notification-setting-row small{color:#607086;line-height:1.5}.notification-setting-row input{width:20px;height:20px;flex:0 0 20px;accent-color:#243746}.notification-settings-card select{display:block;width:100%;margin-top:10px}.notification-settings-card h2{font-size:20px}

[data-screen=settings]{position:relative;padding-top:70px}.notification-settings-card button{padding:11px 15px;border:1px solid #dce2e9;border-radius:10px;background:#f8fafc;color:#243746;cursor:pointer;font:inherit}.notification-settings-card select{padding:12px;border:1px solid #dce2e9;border-radius:10px;background:#fff;font:inherit;color:#243746}.notification-settings-card>p{color:#607086;font-size:14px;line-height:1.5}.notification-settings-card label{font-size:14px}.notification-setting-row input{margin:0}

/* Account Settings and guardian action alignment. */
[data-screen=account][data-account-context=guardian] .account-action-grid .network-icon-button:not(#network-open){grid-column:2}
#account-settings-open svg{width:22px;height:22px;stroke-linejoin:round;stroke-linecap:round}
[data-screen=settings]{min-height:100vh;background:#fafbfc;padding:96px 24px 48px;align-items:flex-start}
[data-screen=settings]>.back-button{color:#526174}
.settings-company-logo{position:fixed;right:24px;top:20px;object-fit:contain;z-index:2}
[data-screen=settings]>.onboarding-content{width:100%;max-width:560px;margin:0 auto}
[data-screen=settings] h1{text-align:left;margin:8px 0 12px;font-size:32px;letter-spacing:-.8px}
.settings-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#7b8795;margin:0}
.settings-intro{font-size:14px;color:#607086;line-height:1.6;margin:0 0 28px}
.notification-settings-card{padding:26px;border-radius:16px;border-color:#e0e5eb;box-shadow:0 4px 18px #24374604;margin:20px 0}
.notification-settings-card h2{font-size:18px;letter-spacing:-.2px;margin:0 0 10px}
.notification-settings-card>p:empty{display:none}
.notification-settings-card .settings-permission-button{background:#243746;color:#fff;border-color:#243746;padding:12px 18px;margin:6px 0 0;font-size:13px;font-weight:600;border-radius:9px}
.notification-settings-card .settings-permission-button:disabled{opacity:.55;cursor:default}
.notification-setting-row{gap:22px;padding:22px 0}
.notification-setting-row:last-child{border-bottom:0;padding-bottom:0}
.notification-setting-row strong{font-size:14px;font-weight:600;color:#243746}
.notification-setting-row small{font-size:12px;line-height:1.6}
.notification-setting-row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:42px;height:24px;flex:0 0 42px;border:0;border-radius:14px;background:#c8d0d9;position:relative;cursor:pointer;transition:background .15s}
.notification-setting-row input[type=checkbox]::before{content:'';position:absolute;width:18px;height:18px;border-radius:50%;top:3px;left:3px;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .15s}
.notification-setting-row input[type=checkbox]:checked{background:#243746}
.notification-setting-row input[type=checkbox]:checked::before{transform:translateX(18px)}
.notification-setting-row input:focus-visible{outline:3px solid #8cb8dd;outline-offset:3px}
.notification-setting-row input:disabled{opacity:.5;cursor:wait}
.notification-settings-card select{min-height:44px;margin-top:12px;font-size:13px}
.notification-settings-card label:not(.notification-setting-row){display:block;margin-top:22px;font-weight:500;color:#243746}
@media(max-width:480px){[data-screen=settings]{padding:86px 18px 32px}.notification-settings-card{padding:22px}.settings-company-logo{right:18px}}
[data-screen=network][data-network-mode=watchlist]{background:#fff;color:#243746;align-items:flex-start;padding-top:110px}
[data-screen=network][data-network-mode=watchlist] .network-orbit{display:none}
[data-screen=network][data-network-mode=watchlist] h1{color:#211f20;text-shadow:none}
[data-screen=network][data-network-mode=watchlist] #network-back{color:#607086;background:transparent}
[data-screen=network][data-network-mode=watchlist] .network-company-logo{filter:none}
[data-screen=network][data-network-mode=watchlist] #network-content>section{background:#f8fafc;color:#243746;border:1px solid #e0e5eb;backdrop-filter:none}
[data-screen=network][data-network-mode=watchlist] .network-scroll-list>p{color:#607086}
[data-screen=network][data-network-mode=watchlist] .network-profile-link{color:#243746}
/* Watchlist overrides the more specific translucent Network panel rules. */
[data-screen="network"][data-network-mode="watchlist"] #network-content>section:not(.network-column):not(.profile-review-panel){background:#f8fafc;color:#243746;border:1px solid #e0e5eb;border-radius:16px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:24px}
[data-screen="network"][data-network-mode="watchlist"] #network-content .network-scroll-list>p{color:#607086;line-height:1.5;margin:12px 0;text-align:center}
[data-screen="network"][data-network-mode="watchlist"] #network-content .network-card{background:#fff;border-color:#dce2e9;color:#243746}
[data-screen="network"][data-network-mode="watchlist"] #network-content button{background:#fff;color:#243746;border:1px solid #dce2e9;border-radius:9px;padding:9px 12px}

[data-screen="opportunities"] .opportunities-company-logo{position:fixed;top:20px;left:24px;width:40px;height:34px;object-fit:contain;z-index:3}

[data-screen="opportunities"] .opportunities-company-logo{left:auto;right:24px;top:20px}
@media(min-width:381px){
[data-screen="account"][data-account-context="organization"] .account-action-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
[data-screen="account"][data-account-context="organization"] .account-action-grid>button{grid-column:span 2}
[data-screen="account"][data-account-context="organization"] .account-action-grid>.network-icon-button:not(#network-open){grid-column:2 / span 2}
[data-screen="account"][data-account-context="organization"] .account-action-grid>#network-open{grid-column:4 / span 2}
}
.verification-editor{padding:22px;border-color:#e0e5eb;background:#fcfdfe}
.verification-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.verification-editor-heading h2{margin:0;font-size:18px}
.verification-editor .verification-editor-status{margin:0;padding:5px 9px;border-radius:7px;background:#edf1f5;color:#607086;font-size:11px;line-height:1.4;max-width:55%}
.verification-editor>p{font-size:13px;line-height:1.5;margin:0 0 18px;color:#607086}
.verification-editor label{font-size:13px;font-weight:500}
.verification-editor textarea{min-height:100px;padding:12px;font:inherit;font-size:13px;line-height:1.5;resize:vertical}
.verification-editor textarea::placeholder{color:#8994a1}
.verification-editor>small{display:block;font-size:11px;color:#7b8795;margin:8px 0 18px}
.verification-editor-footer{display:flex;justify-content:flex-end}
.verification-editor-footer button{padding:10px 15px;border:1px solid #243746;border-radius:9px;background:#243746;color:#fff;font-size:12px;font-weight:600;cursor:pointer}
.verification-editor-footer button:disabled{opacity:.5;cursor:default}
[data-screen="parent-profile"]{padding-top:90px;align-items:flex-start}
.youth-profile-selector{display:block;text-align:left;margin:18px 0 24px;font-size:13px;color:#607086}
.youth-profile-selector[hidden]{display:none}
.youth-profile-selector select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #dce2e9;border-radius:10px;background:#fff;font:inherit;color:#243746}
@media(min-width:381px){[data-screen="account"][data-account-context="guardian"] .account-action-grid{grid-template-columns:repeat(6,minmax(0,1fr))}[data-screen="account"][data-account-context="guardian"] .account-action-grid>button{grid-column:span 2}[data-screen="account"][data-account-context="guardian"] .account-action-grid>#team-links-button{grid-column:2 / span 2}[data-screen="account"][data-account-context="guardian"] .account-action-grid>.network-icon-button:not(#network-open){grid-column:4 / span 2}}

[data-screen="parent-profile"] #guardian-appearance-form h2{display:none}

[data-screen="parent-profile"] #guardian-appearance-form{margin-top:32px}
#guardian-setup-button{--action-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='6' r='3'/%3E%3Cpath d='M2 21v-5a6 6 0 0 1 12 0v5'/%3E%3Ccircle cx='18' cy='10' r='2.5'/%3E%3Cpath d='M15 21v-3a4 4 0 0 1 7 0v3'/%3E%3C/svg%3E")}

.youth-card .youth-handover-notice{margin:18px 0 0;padding-top:14px;border-top:1px solid #e0e5eb;color:#607086;font-size:12px;line-height:1.5}
[data-screen="youth-self-profile"]{align-items:flex-start;padding-top:90px}
#youth-self-form label{display:block;text-align:left;margin:18px 0;font-size:14px}
#youth-self-form input,#youth-self-form select,#youth-self-form textarea{display:block;width:100%;padding:12px;border:1px solid #dce2e9;border-radius:10px;background:#fff;font:inherit;margin-top:8px}
.youth-interest-approvals article{border-top:1px solid #e0e5eb;padding:16px 0}
.youth-interest-approvals button{margin:12px 8px 0 0;padding:10px 14px;border:1px solid #dce2e9;border-radius:9px;background:#fff;color:#243746}
.youth-interest-approvals a{display:block;color:#526b80;font-size:13px}

[data-screen="youth-discovery"]{justify-content:flex-start;padding:100px 24px 48px}
[data-screen="youth-discovery"] .onboarding-content{max-width:760px;width:100%;transform:none;margin:0 auto;text-align:left}
[data-screen="youth-discovery"] h1{text-align:center;margin:0 0 30px}
.youth-discovery-logo{position:fixed;top:20px;right:24px;z-index:10;object-fit:contain}
.venue-visible .youth-discovery-logo{filter:brightness(0) invert(1)}
.youth-discovery-athlete{margin:0 0 24px}.youth-discovery-athlete>p{font-size:16px;font-weight:600;text-align:center;margin:0}
#youth-discovery-content select{margin:0;background:rgba(16,28,38,.28);color:inherit;border:1px solid #ffffff65;backdrop-filter:blur(8px);min-height:48px}
#youth-discovery-content select option{background:#fff;color:#23313b}
.youth-discovery-empty{padding:32px 24px;text-align:center;border:1px solid #ffffff40;border-radius:16px;background:rgba(16,28,38,.22);backdrop-filter:blur(8px)}
.youth-discovery-empty h2{font-size:18px;margin:0 0 8px}.youth-discovery-empty p{font-size:14px;margin:0;line-height:1.6}
.venue-visible #youth-discovery-content .profile-review-panel{background:rgba(16,28,38,.3);border-color:#ffffff45;color:#fff;backdrop-filter:blur(8px)}
.venue-visible #youth-discovery-content .profile-review-panel>p{color:#e4eaf0}
@media(max-width:480px){[data-screen="youth-discovery"]{padding:90px 18px 32px}}
[data-screen="youth-discovery"]{grid-template-columns:minmax(0,1fr);align-content:start;justify-content:normal}

[data-screen="youth-discovery"]:not(.venue-visible) select{background:#fff;border-color:#dce1e6}
[data-screen="youth-discovery"]:not(.venue-visible) .youth-discovery-empty{background:#f8fafc;border-color:#dce1e6}

.youth-card .youth-interest-approvals{border-top:1px solid #dce1e6;margin-top:20px;padding-top:18px;text-align:left}.youth-card .youth-interest-approvals>h3{font-size:15px;margin:0 0 10px}.youth-card .youth-interest-approvals p{font-size:13px;line-height:1.6;color:#647080}.youth-card .youth-interest-approvals article{padding:12px 0}.youth-card .youth-interest-approvals button{padding:9px 12px;margin:8px 8px 0 0;border:1px solid #dce1e6;border-radius:8px;background:#fff;color:#23313b;cursor:pointer}
.youth-card .youth-interest-approvals{border-top:0;margin-top:16px;padding-top:0}.youth-card .youth-interest-approvals>h3{font-size:14px;font-weight:600;margin:0 0 5px}.youth-card .youth-interest-approvals>p{font-size:12px;margin:0;line-height:1.5}.youth-card .youth-handover-notice{margin-top:20px;padding-top:16px}.youth-card .youth-interest-approvals article:first-of-type{border-top:0;padding-top:4px}

.youth-link-panel{margin-top:28px;padding:22px;border:1px solid #dce1e6;border-radius:14px;text-align:left}.youth-link-panel h2{font-size:18px;margin:0 0 12px}.youth-link-panel p{font-size:13px;line-height:1.6;color:#607086}.youth-link-panel label{display:grid;gap:8px;margin:16px 0}.youth-link-panel input,.youth-link-panel select{width:100%;padding:12px;border:1px solid #dce1e6;border-radius:10px}.local-mail-item{padding:16px 0;border-bottom:1px solid #dce1e6;text-align:left}

#athlete-form[data-youth-pending="true"] .film-modes>button:last-child{display:none}

.youth-link-panel .guardian-confirmation{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5}.youth-link-panel .guardian-confirmation input{width:18px;height:18px;flex-shrink:0;margin:2px 0 0}.youth-link-panel button+button{margin-top:10px}.account-options>.account-option:last-child{grid-column:1/-1;width:calc(50% - 6px);justify-self:center}

.email-confirmation .onboarding-content{max-width:420px;width:100%;padding:24px}
.email-confirmation-card{padding:30px 26px;border:1px solid #e1e5e9;border-radius:18px;background:#fff;text-align:center}
.email-confirmation-card h1{font-size:26px;margin:0 0 14px}
.email-confirmation-description{font-size:14px;color:#647080;margin:0 0 5px}
#account-email-address{font-size:14px;font-weight:600;overflow-wrap:anywhere;margin:0 0 26px}
#account-email-form .field{gap:9px;text-align:left;margin-bottom:0}
#account-email-form label{font-size:12px;color:#647080}
#account-email-code{text-align:center;font-size:25px;font-weight:600;letter-spacing:.35em;padding:14px 10px;height:58px}
#account-email-code::placeholder{color:#c5ccd3}
#account-email-local{font-size:11px;text-align:left;margin:10px 0 20px;color:#7b8590}
#account-email-local:empty{display:none}
#account-email-form .button{margin-top:20px}
#account-email-local:not(:empty)+.button{margin-top:0}
#account-email-status{font-size:13px;line-height:1.5;margin:12px 0 0;color:#607086}
#account-email-status:empty{display:none}
.email-confirmation-link{border:0;background:none;color:#607086;font-size:13px;cursor:pointer;padding:8px 12px;margin-top:14px;text-decoration:underline;text-underline-offset:3px}
.email-confirmation-logout{margin-top:18px}
.email-confirmation .onboarding-content{text-align:center}

.email-confirmation-logout{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border-radius:10px;text-decoration:none}.email-confirmation-logout:hover{background:#f2f5f7;color:#23313b}

.email-confirmed-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 22px;border-radius:50%;background:#edf5f0;color:#315e47}.email-confirmed-progress{font-size:12px;color:#7b8590;margin:26px 0 0}

/* Keep account icons and titles aligned regardless of description wrapping. */
.account-option{align-content:start;grid-template-rows:32px 1fr;padding-top:30px}.account-option .option-icon{align-self:start}.account-option .option-copy{align-self:start}

.league-website-links,.opportunity-automation{border:1px solid #dce1e6;border-radius:14px;padding:20px;margin:20px 0;text-align:left}.sportsengine-logo{width:210px;max-height:48px;object-fit:contain;object-position:left}.league-external-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #dce1e6;border-radius:10px;margin-top:12px;color:#233746;text-decoration:none}.auto-reply-toggle{display:flex;align-items:center;gap:10px}.auto-reply-toggle input{width:18px;height:18px}.automatic-applicant-reply{background:#f6f8fa;border-radius:10px;padding:14px;margin:16px 0}.automatic-applicant-reply h4{font-size:12px;color:#607086;margin:0 0 8px}.automatic-applicant-reply p{white-space:pre-wrap;margin:0}

.opportunity-list-tabs{display:flex;justify-content:center;gap:6px;margin:22px 0}.opportunity-list-tabs button{border:1px solid #dce1e6;background:white;color:#607086;border-radius:9px;padding:10px 20px;cursor:pointer}.opportunity-list-tabs button[aria-pressed="true"]{background:#233746;color:white;border-color:#233746}

/* A single quiet empty state when no youth profiles are managed. */
.guardian-list.is-empty{margin:28px 0 16px;padding:32px 20px;border:1px solid #e2e7ec;border-radius:16px;background:#f8fafb}
.guardian-list.is-empty .guardian-empty{margin:0;color:#647080;font-size:14px}
[data-screen="guardian-profiles"] #guardian-add{margin-top:16px}
[data-screen="opportunities"],[data-screen="applicants"],[data-screen="team-links"]{align-items:start;padding-top:112px}
.opportunity-list-tabs button{height:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;font:inherit;font-size:13px;line-height:1}
@media(max-width:480px){[data-screen="opportunities"],[data-screen="applicants"],[data-screen="team-links"]{padding-top:100px}}



#opportunity-heading{margin-bottom:20px}


.opportunity-detail h3{margin:20px 20px 8px;font-size:15px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
.opportunity-detail h3+p{margin-top:0}

.athlete-profile-summary{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 14px}
.athlete-profile-summary .profile-location,.athlete-profile-summary .profile-identity-badges{margin:0}
.athlete-profile-summary .profile-identity-badge{padding:5px 10px;font-size:13px;gap:6px}
.community-summary{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 22px}
#view-details .community-summary .community-count{margin:0;font-size:13px}
.community-summary .community-actions{margin:0}

/* Page-corner navigation scrolls with the document, outside animated content. */
main[data-screen]:has(> .back-button) { position:relative; }
main[data-screen] > .back-button {
  position:absolute;
  top:max(22px, env(safe-area-inset-top));
  left:max(24px, env(safe-area-inset-left));
  right:auto;
  margin:0;
  transform:none;
  z-index:10;
  min-height:44px;
}
main[data-screen="details"], main[data-screen="account-type"],
main[data-screen="local-mail"], main[data-screen="guardian-link"],
main[data-screen="conversations"], main[data-screen="profile-map"] {
  padding-top:max(90px, calc(env(safe-area-inset-top) + 68px));
}
.discovery-topbar { justify-content:flex-end; }
.conversation-toolbar .conversation-refresh { margin-left:auto; }
[data-screen="opportunities"] .opportunities-company-logo { left:auto; right:24px; }
@media (max-width:480px) {
  main[data-screen] > .back-button { left:max(18px, env(safe-area-inset-left)); }
  [data-screen="opportunities"] .opportunities-company-logo { right:18px; }
}

/* A local preview leaves the profile editor and its unsaved draft intact. */
.draft-profile-preview{width:min(560px,calc(100vw - 24px));max-height:calc(100svh - 32px);box-sizing:border-box;border:1px solid #dce2e9;border-radius:18px;padding:24px;color:#211f20;background:#fff;overflow:auto}
.draft-profile-preview::backdrop{background:#15233080}
body:has(.draft-profile-preview[open]){overflow:hidden}
.draft-preview-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.draft-preview-header h2{font-size:18px;margin:0}
.draft-preview-header button{min-height:44px}
.draft-preview-notice{font-size:13px;color:#607086;line-height:1.5;margin:8px 0 24px}
.draft-preview-content>h1{text-align:center;font-size:28px;margin:18px 0 12px;overflow-wrap:anywhere}
.draft-preview-content .profile-about p{white-space:pre-wrap;overflow-wrap:anywhere}
.draft-preview-content .organization-profile-facts{margin-top:24px}
@media(max-width:480px){.draft-profile-preview{padding:18px}.draft-preview-header{align-items:flex-start}.draft-preview-header button{font-size:13px}}

/* Coach/recruiter identity comes first, with compact sport and affiliation rows. */
main[data-screen="profile-view"]:has(.coach-profile){align-items:flex-start;padding-top:96px}
main[data-screen="profile-view"]:has(.coach-profile)>.onboarding-content{width:min(100%,560px)}
main[data-screen="profile-view"]:has(.coach-profile) #view-heading{margin:20px 0 10px;overflow-wrap:anywhere}
.coach-profile-summary{display:flex;flex-direction:column;align-items:center;gap:10px;margin:0 0 20px}
.coach-role-badge{display:inline-flex;padding:6px 12px;border-radius:20px;background:#edf2f5;color:#304657;font-size:12px;font-weight:600;line-height:1.4}
.coach-profile-summary .profile-location{margin:0;font-size:13px;color:#68717b;line-height:1.5;text-align:center;overflow-wrap:anywhere}
.coach-profile .community-summary{padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #edf0f3;gap:14px}
.coach-profile-details{display:grid;gap:18px;padding:20px;margin:0 0 24px;border:1px solid #e1e6eb;border-radius:14px;background:#fafbfc;text-align:left}
.coach-profile-details>div{display:grid;gap:9px;min-width:0}
.coach-profile-details dt{font-size:11px;letter-spacing:.8px;text-transform:uppercase;font-weight:600;color:#718090}
.coach-profile-details dd{margin:0;font-size:14px;line-height:1.5;color:#293743;overflow-wrap:anywhere}
.coach-sport-list{display:flex;flex-wrap:wrap;gap:8px}
.coach-sport-chip{padding:5px 11px;border:1px solid #dfe6ec;border-radius:8px;background:#fff;font-size:13px}
.coach-profile .profile-about{text-align:left;padding:0 2px;margin:0 0 24px}
.coach-profile .profile-about h2{font-size:18px;margin:0 0 10px}
.coach-profile .profile-about p{margin:0;font-size:14px;line-height:1.7;color:#586573;white-space:pre-wrap;overflow-wrap:anywhere}
.draft-preview-content.coach-profile>h1{margin-bottom:10px}
@media(max-width:480px){.coach-profile-details{padding:18px}.coach-profile .community-summary{gap:12px}}

/* Shared photo controls and keyboard/touch crop editor. */
.image-upload-control{margin:18px 0;text-align:left}.image-upload-label{font-size:14px;margin:0 0 10px;color:#30363d}
.image-upload-row{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #dfe5eb;border-radius:12px;background:#fafbfc}
.upload-thumbnail{width:58px;height:58px;border-radius:50%;object-fit:cover;border:1px solid #dfe5eb;background:#fff;flex-shrink:0}.upload-thumbnail.is-banner{width:96px;height:40px;border-radius:6px}.upload-thumbnail.is-logo{border-radius:8px;object-fit:contain}
.upload-thumbnail[hidden],.image-upload-control [hidden]{display:none}.image-upload-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.image-upload-actions button{min-height:44px;padding:8px 12px;border:1px solid #dce2e9;border-radius:8px;background:#fff;font:inherit;font-size:13px;color:#304657;cursor:pointer}.image-upload-actions .upload-remove{border-color:transparent;background:transparent;color:#68717b}
.image-crop-dialog{width:min(440px,calc(100vw - 24px));max-height:calc(100svh - 24px);box-sizing:border-box;overflow:auto;padding:22px;border:1px solid #dce2e9;border-radius:18px;background:#fff;color:#211f20}.image-crop-dialog::backdrop{background:#17232e99}body:has(.image-crop-dialog[open]){overflow:hidden}
.image-crop-dialog h2{font-size:20px;margin:0 0 10px}.image-crop-frame{position:relative;border-radius:10px;overflow:hidden;margin:18px 0;background:#fff}.image-crop-frame canvas{display:block;width:100%;height:auto;touch-action:none;cursor:grab}.image-crop-frame.is-round:after{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 100px #17232e66;pointer-events:none}
.crop-range{display:grid;gap:8px;margin:12px 0;font-size:13px;text-align:left}.crop-range input{width:100%;min-height:30px;padding:0;accent-color:#304657}
.crop-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.crop-actions button{min-height:44px;padding:10px 13px;border:1px solid #dce2e9;border-radius:9px;background:#fff;font:inherit;font-size:13px;cursor:pointer}.crop-actions .crop-apply{background:#233746;color:#fff;border-color:#233746}
.image-upload-actions button:focus-visible,.crop-actions button:focus-visible{outline:2px solid #304657;outline-offset:3px}
@media(max-width:480px){.image-crop-dialog{padding:18px}.image-upload-row{padding:12px;gap:10px}.image-upload-actions button{padding:8px;font-size:12px}}

/* Shared recovery layout for demo and production. */
.recovery-page { padding-block: max(92px, calc(env(safe-area-inset-top) + 70px)) 40px; }
.recovery-page .onboarding-content { width:min(100%, 400px); }
.recovery-page .compact-brand { margin-bottom:28px; font-size:19px; gap:12px; }
.recovery-page .compact-brand img { width:74px; margin-inline:-14px; }
.recovery-page .compact-divider { height:25px; }
.recovery-page .onboarding-description { margin:12px auto 30px; max-width:330px; }
#forgot-password-form, #reset-password-form { display:grid; gap:20px; }
.recovery-page .field label { font-size:13px; font-weight:550; margin-bottom:8px; }
.recovery-page .field input { min-height:50px; }
.recovery-page .form-continue { margin-top:4px; }
#reset-code { text-align:center; font-size:22px; font-weight:550; letter-spacing:.22em; font-variant-numeric:tabular-nums; }
#reset-code::placeholder { font-size:15px; font-weight:400; letter-spacing:0; }
#reset-code-hint { text-align:center; }
.recovery-page .setup-status { margin:16px 0 0; font-size:13px; line-height:1.5; }
.recovery-page .setup-status:empty, #reset-password-local:empty { display:none; }
#reset-password-local { margin-top:18px; text-align:center; }
.recovery-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:4px; margin-top:22px; color:#716e70; font-size:13px; }
.recovery-footer .text-button { font-size:13px; padding:6px; }
@media(max-width:480px) {
  .recovery-page { padding-inline:24px; }
  .recovery-page .compact-brand { margin-bottom:24px; }
  .recovery-page .onboarding-description { margin-bottom:26px; }
  #forgot-password-form, #reset-password-form { gap:18px; }
}
