:root {
      --team-bg: #061225;
      --team-panel: rgba(7, 18, 37, .9);
      --team-panel-2: rgba(13, 31, 61, .82);
      --team-border: rgba(148, 163, 184, .24);
      --team-text: #f8fafc;
      --team-muted: #a9b7cc;
      --team-blue: #0b74ff;
      --team-orange: #ff6a1a;
    }
    body {
      margin: 0;
      min-height: 100vh;
      overflow-x: hidden;
      color: var(--team-text);
      font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    }
    body::before,
    body::after {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
    }
    body::before {
      z-index: -2;
      background: url("/img/public/slp-public-pool-teams-v1.png") center / cover no-repeat;
      filter: saturate(1.05) contrast(1.05);
    }
    body::after {
      z-index: -1;
      background:
        linear-gradient(90deg, rgba(2, 8, 20, .95) 0%, rgba(2, 8, 20, .8) 46%, rgba(2, 8, 20, .58) 100%),
        radial-gradient(circle at 18% 10%, rgba(24, 200, 216, .2), transparent 32%),
        radial-gradient(circle at 90% 8%, rgba(253, 90, 0, .22), transparent 26%),
        linear-gradient(135deg, rgba(6, 18, 37, .94) 0%, rgba(10, 35, 74, .86) 46%, rgba(11, 78, 158, .72) 100%);
    }
    .team-register-page {
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px;
      box-sizing: border-box;
    }
    .team-register-shell {
      width: min(1180px, 100%);
      display: grid;
      grid-template-columns: minmax(0, .9fr) minmax(420px, 1fr);
      gap: 18px;
      align-items: stretch;
    }
    .team-register-info,
    .team-register-card {
      border: 1px solid var(--team-border);
      border-radius: 24px;
      background: rgba(7, 18, 37, .82);
      box-shadow: 0 24px 70px rgba(0, 0, 0, .24);
      backdrop-filter: blur(18px);
    }
    .team-register-info {
      position: relative;
      overflow: hidden;
      padding: 28px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      min-height: 620px;
    }
    .team-register-info::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        linear-gradient(180deg, rgba(7, 18, 37, .94) 0%, rgba(7, 18, 37, .62) 52%, rgba(7, 18, 37, .9) 100%),
        url("/img/public/slp-public-pool-teams-v1.png") center 62% / cover no-repeat;
      opacity: .46;
    }
    .team-register-info > * {
      position: relative;
      z-index: 1;
    }
    .team-register-logo {
      width: 190px;
      max-width: 72%;
      display: block;
      margin-bottom: 14px;
      filter: drop-shadow(0 12px 24px rgba(0,0,0,.45));
    }
    .team-register-kicker {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      width: fit-content;
      padding: 8px 12px;
      border-radius: 999px;
      border: 1px solid rgba(253, 90, 0, .34);
      background: rgba(253, 90, 0, .12);
      color: #dbeafe;
      font-size: 12px;
      font-weight: 950;
      text-transform: uppercase;
      letter-spacing: .05em;
      margin-bottom: 14px;
    }
    .team-register-info h1 {
      margin: 0;
      max-width: 620px;
      font-size: clamp(28px, 3vw, 42px);
      line-height: 1.08;
      font-weight: 700;
      letter-spacing: 0;
    }
    .brand-word {
      font-weight: 800;
      white-space: nowrap;
      text-shadow: 0 1px 0 rgba(255,255,255,.36), 0 0 3px rgba(255,255,255,.28), 0 0 22px rgba(24,168,255,.34), 0 4px 18px rgba(0,0,0,.72);
      -webkit-text-stroke: .75px rgba(255,255,255,.26);
    }
    .brand-word-stream { color: #0c429a; }
    .brand-word-line { color: #18a8ff; }
    .brand-word-pro { color: var(--team-orange); }
    .team-register-info p {
      max-width: 560px;
      margin: 14px 0 0;
      color: var(--team-muted);
      font-size: 15px;
      line-height: 1.5;
      font-weight: 700;
    }
    .team-register-steps {
      display: grid;
      gap: 10px;
      margin-top: 18px;
    }
    .team-register-step {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      padding: 14px;
      border: 1px solid var(--team-border);
      border-radius: 16px;
      background: rgba(7, 18, 37, .56);
    }
    .team-register-step i {
      width: 38px;
      height: 38px;
      border-radius: 12px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      color: var(--team-orange);
      border: 1px solid rgba(253,90,0,.55);
      background: rgba(253,90,0,.16);
    }
    .team-register-step strong {
      display: block;
      font-size: 14px;
      font-weight: 950;
    }
    .team-register-step span {
      display: block;
      margin-top: 3px;
      color: var(--team-muted);
      font-size: 12px;
      font-weight: 750;
      line-height: 1.45;
    }
    .team-register-card {
      padding: 24px;
      align-self: stretch;
      background: rgba(5, 14, 30, .86);
    }
    .team-register-card h2 {
      margin: 0 0 4px;
      font-size: 24px;
      font-weight: 950;
    }
    .team-register-card > p {
      margin: 0 0 18px;
      color: var(--team-muted);
      font-size: 13px;
      font-weight: 750;
    }
    .team-register-form {
      display: grid;
      gap: 12px;
    }
    .team-register-form [hidden] { display: none; }
    .team-register-dependent { display: grid; gap: 12px; }
    .team-register-flow-section {
      display: grid;
      gap: 12px;
      padding: 14px;
      border: 1px solid var(--team-border);
      border-radius: 16px;
      background: rgba(7, 18, 37, .48);
    }
    .team-register-section-title {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .team-register-section-title > span {
      width: 28px;
      height: 28px;
      border-radius: 10px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      color: #fff;
      background: linear-gradient(135deg, var(--team-blue), #0754bd);
      font-size: 12px;
      font-weight: 950;
    }
    .team-register-section-title > div { display: grid; gap: 2px; }
    .team-register-section-title strong { color: var(--team-text); font-size: 14px; }
    .team-register-section-title small { color: var(--team-muted); font-size: 11px; font-weight: 750; }
    .team-register-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .team-register-form label {
      display: flex;
      flex-direction: column;
      gap: 6px;
      color: var(--team-muted);
      font-size: 11px;
      font-weight: 950;
      text-transform: uppercase;
      letter-spacing: .06em;
    }
    .team-register-form input,
    .team-register-form textarea,
    .team-register-form select {
      width: 100%;
      min-height: 46px;
      border: 1px solid var(--team-border);
      border-radius: 14px;
      background: rgba(3, 8, 20, .36);
      color: var(--team-text);
      padding: 10px 12px;
      font-size: 14px;
      font-weight: 750;
      box-sizing: border-box;
      outline: none;
    }
    .team-register-form textarea {
      min-height: 96px;
      resize: vertical;
    }
    .team-register-form input:focus,
    .team-register-form textarea:focus,
    .team-register-form select:focus {
      border-color: rgba(11, 116, 255, .72);
      box-shadow: 0 0 0 3px rgba(11, 116, 255, .14);
    }
    .team-register-form select option {
      color: #071225;
    }
    .team-register-fin-box {
      display: grid;
      gap: 12px;
      padding: 14px;
      border: 1px solid rgba(56, 189, 248, .25);
      border-radius: 16px;
      background: rgba(14, 116, 144, .08);
    }
    .team-register-fin-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .team-register-fin-head div { display: grid; gap: 3px; }
    .team-register-fin-head strong { color: var(--team-text); font-size: 14px; }
    .team-register-fin-head span { color: var(--team-muted); font-size: 11px; font-weight: 750; }
    .team-register-fin-head i { color: #67e8f9; }
    .team-register-fin-search {
      align-self: end;
      min-height: 46px;
      border: 1px solid rgba(56, 189, 248, .38);
      border-radius: 14px;
      background: rgba(14, 116, 144, .18);
      color: #cffafe;
      font-weight: 900;
      cursor: pointer;
      padding: 10px 14px;
    }
    .team-register-affiliation-options {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
    }
    .team-register-affiliation-option {
      display: flex !important;
      flex-direction: row !important;
      align-items: flex-start;
      gap: 10px !important;
      min-height: 72px;
      padding: 12px;
      border: 1px solid var(--team-border);
      border-radius: 14px;
      background: rgba(3, 8, 20, .28);
      cursor: pointer;
      text-transform: none !important;
      letter-spacing: 0 !important;
      box-sizing: border-box;
    }
    .team-register-affiliation-option:has(input:checked) {
      border-color: rgba(56, 189, 248, .58);
      background: rgba(14, 116, 144, .17);
    }
    .team-register-affiliation-option input { width: auto; min-height: auto; margin: 3px 0 0; }
    .team-register-affiliation-option > span { display: grid; gap: 4px; }
    .team-register-affiliation-option strong { color: var(--team-text); font-size: 13px; }
    .team-register-affiliation-option small { color: var(--team-muted); font-size: 11px; line-height: 1.4; }
    .team-register-autocomplete { position: relative; }
    .team-register-autocomplete-list {
      max-height: 260px;
      overflow-y: auto;
      border: 1px solid rgba(56, 189, 248, .34);
      border-radius: 14px;
      background: #08172d;
      box-shadow: 0 18px 40px rgba(0, 0, 0, .3);
      padding: 6px;
    }
    .team-register-autocomplete-option {
      width: 100%;
      min-height: 52px;
      display: grid;
      gap: 3px;
      padding: 9px 11px;
      border: 0;
      border-radius: 10px;
      background: transparent;
      color: var(--team-text);
      text-align: left;
      cursor: pointer;
    }
    .team-register-autocomplete-option:hover,
    .team-register-autocomplete-option:focus-visible,
    .team-register-autocomplete-option.is-active {
      background: rgba(14, 116, 144, .22);
      outline: 1px solid rgba(56, 189, 248, .38);
    }
    .team-register-autocomplete-option strong { font-size: 13px; }
    .team-register-autocomplete-option span { color: var(--team-muted); font-size: 11px; }
    .team-register-autocomplete-option em {
      color: #fecaca;
      font-size: 10px;
      font-style: normal;
      font-weight: 900;
    }
    .team-register-autocomplete-option[aria-disabled="true"] {
      cursor: not-allowed;
      border: 1px solid rgba(248, 113, 113, .24);
      background: rgba(127, 29, 29, .12);
    }
    .team-register-autocomplete-status {
      margin: 0;
      color: var(--team-muted);
      font-size: 11px;
      font-weight: 750;
      line-height: 1.4;
    }
    .team-register-autocomplete-status[data-state="error"] { color: #fecaca; }
    .team-register-autocomplete-status[data-state="empty"] { color: #fde68a; }
    .team-register-autocomplete-status[data-state="review"] { color: #fde68a; }
    .team-register-autocomplete-status[data-state="blocked"] { color: #fecaca; }
    .team-register-manual-link {
      min-height: 44px;
      border: 1px solid rgba(245, 158, 11, .38);
      border-radius: 12px;
      background: rgba(245, 158, 11, .12);
      color: #fde68a;
      font-weight: 850;
      cursor: pointer;
    }
    .team-register-fin-code small {
      color: var(--team-muted);
      font-size: 11px;
      font-weight: 700;
      text-transform: none;
      letter-spacing: 0;
      line-height: 1.4;
    }
    .team-register-fin-result {
      display: grid;
      gap: 10px;
      padding: 12px;
      border: 1px solid rgba(56, 189, 248, .28);
      border-radius: 14px;
      background: rgba(14, 116, 144, .1);
    }
    .team-register-fin-result.is-verified { background: rgba(34, 197, 94, .12); border: 1px solid rgba(34, 197, 94, .28); }
    .team-register-fin-result.is-review { background: rgba(245, 158, 11, .12); border: 1px solid rgba(245, 158, 11, .3); }
    .team-register-fin-result > div:first-child { display: grid; gap: 3px; }
    .team-register-fin-result > div:first-child span { color: #a7f3d0; font-size: 10px; font-weight: 950; text-transform: uppercase; }
    .team-register-fin-result > div:first-child strong { color: var(--team-text); font-size: 14px; }
    .team-register-fin-result dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 0; }
    .team-register-fin-result dl div { min-width: 0; }
    .team-register-fin-result dt { color: var(--team-muted); font-size: 9px; font-weight: 950; text-transform: uppercase; }
    .team-register-fin-result dd { margin: 2px 0 0; color: var(--team-text); font-size: 12px; font-weight: 850; overflow-wrap: anywhere; }
    .team-register-fin-result p { margin: 0; color: var(--team-muted); font-size: 12px; line-height: 1.4; }
    .team-register-fin-confirm { margin-top: 2px; }
    .team-register-check {
      flex-direction: row !important;
      align-items: flex-start;
      gap: 10px !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
      color: var(--team-muted) !important;
      font-size: 12px !important;
      line-height: 1.35;
    }
    .team-register-check input {
      width: auto;
      min-height: auto;
      margin-top: 2px;
    }
    .team-register-check a { color: #9befff; font-weight: 850; }
    .team-register-submit {
      min-height: 50px;
      border: 0;
      border-radius: 14px;
      background: linear-gradient(135deg, var(--team-orange), #ff7b2d);
      color: #fff;
      font-size: 14px;
      font-weight: 950;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
    }
    .team-register-response-intro {
      display: flex;
      align-items: center;
      gap: 7px;
      color: #bfdbfe !important;
    }
    .team-register-response-intro i,
    .team-register-response-time i { color: #93c5fd; }
    .team-register-response-time {
      margin: -4px 0 0;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      color: var(--team-muted);
      font-size: 12px;
      font-weight: 850;
      text-align: center;
    }
    .team-register-alert {
      border-radius: 14px;
      padding: 12px 14px;
      font-size: 13px;
      font-weight: 850;
      line-height: 1.4;
      border: 1px solid rgba(255, 106, 26, .28);
      background: rgba(255, 106, 26, .12);
      color: #fed7aa;
    }
    .team-register-alert.is-success {
      border-color: rgba(34, 197, 94, .32);
      background: rgba(34, 197, 94, .12);
      color: #bbf7d0;
    }
    .team-register-alert.is-success p { margin: 8px 0 0; }
    .team-register-alert.is-existing {
      border-color: rgba(56, 189, 248, .36);
      background: rgba(14, 116, 144, .14);
      color: #cffafe;
    }
    .team-register-status-pill {
      display: inline-flex;
      padding: 5px 9px;
      border-radius: 999px;
      background: rgba(34, 197, 94, .18);
      color: #dcfce7;
      font-size: 10px;
      font-weight: 950;
      text-transform: uppercase;
      letter-spacing: .05em;
    }
    .team-register-login {
      margin-top: 14px;
      display: flex;
      justify-content: center;
      gap: 6px;
      color: var(--team-muted);
      font-size: 12px;
      font-weight: 800;
    }
    .team-register-login a { color: #93c5fd; text-decoration: none; font-weight: 950; }
    .team-register-side-footer {
      margin-top: 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      color: var(--team-muted);
      font-size: 12px;
      font-weight: 800;
    }
    .team-register-side-footer a {
      color: #fff;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-weight: 950;
    }
    @media (min-width: 901px) {
      body.public-register-body--team .team-register-card {
        min-height: 0;
        max-height: calc(100dvh - 48px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        scrollbar-gutter: stable;
      }
    }
    @media (max-width: 940px) {
      body { overflow: auto; }
      .team-register-page { align-items: flex-start; padding: 14px; }
      .team-register-shell { grid-template-columns: 1fr; }
      .team-register-info { min-height: auto; }
      .team-register-side-footer { align-items: flex-start; flex-direction: column; }
    }
    @media (max-width: 560px) {
      .team-register-grid { grid-template-columns: 1fr; }
      .team-register-affiliation-options { grid-template-columns: 1fr; }
      .team-register-fin-result dl { grid-template-columns: 1fr; }
      .team-register-card,
        .team-register-info { padding: 18px; border-radius: 20px; }
      .team-register-logo { margin-bottom: 10px; }
      .team-register-flow-section { padding: 12px; }
      .team-register-fin-search { width: 100%; }
      }
