/* =========================================================
   TennisFinalsPro — League Manager SaaS Compact Final
   Ten plik ładuje się NA KOŃCU i nadpisuje poprzednie style.
   Cel: panel właściciela mniejszy, piękny, szybki, bez kilometra scrolla.
   ========================================================= */

body .league-page {
  --lm-bg: #f5f8fd;
  --lm-card: rgba(255,255,255,.96);
  --lm-border: #e1e8f3;
  --lm-text: #0f172a;
  --lm-muted: #64748b;
  --lm-blue: #2563eb;
  --lm-sky: #0ea5e9;
  --lm-shadow: 0 10px 26px rgba(15,23,42,.065);
  background:
    radial-gradient(circle at 8% 8%, rgba(37,99,235,.10), transparent 28%),
    linear-gradient(180deg, #f4f8ff 0%, #f8fbff 52%, #ffffff 100%) !important;
}

/* Cała strona trochę bardziej "aplikacja", mniej wielka landing page */
body .league-page .league-shell {
  width: min(1220px, calc(100vw - 32px)) !important;
  max-width: 1220px !important;
  padding-top: 10px !important;
}

/* Hero ligi kompaktowo */
body .league-page .league-hero {
  border-radius: 18px !important;
  padding: 14px 16px !important;
  margin-bottom: 10px !important;
  box-shadow: 0 16px 42px rgba(15,23,42,.12) !important;
}

body .league-page .league-hero__logo-wrap {
  width: 50px !important;
  height: 50px !important;
  border-radius: 14px !important;
}

body .league-page .league-hero__title {
  font-size: clamp(29px, 2.2vw, 40px) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
}

body .league-page .league-hero__meta,
body .league-page .league-hero__badges {
  gap: 6px !important;
}

body .league-page .league-hero-stat {
  min-height: 44px !important;
  padding: 7px 10px !important;
  border-radius: 12px !important;
}

body .league-page .league-hero-stat span {
  font-size: 9px !important;
  line-height: 1 !important;
}

body .league-page .league-hero-stat strong {
  font-size: 18px !important;
  line-height: 1 !important;
}

/* Panel właściciela */
body .league-page .tfp-manager--league,
body .league-page .tfp-manager--league * {
  box-sizing: border-box !important;
}

body .league-page .tfp-manager--league .league-admin-accordion__trigger {
  min-height: 42px !important;
  padding: 9px 12px !important;
  border-radius: 14px !important;
}

body .league-page .tfp-manager--league .league-admin-accordion__label strong {
  font-size: 13px !important;
}

body .league-page .tfp-manager--league .league-admin-accordion__eyebrow {
  font-size: 9px !important;
}

body .league-page .tfp-manager--league .tfp-manager__panel,
body .league-page .tfp-manager--league .league-admin-panel {
  margin-top: 8px !important;
  padding: 10px !important;
  border-radius: 18px !important;
  border: 1px solid var(--lm-border) !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: var(--lm-shadow) !important;
  backdrop-filter: blur(10px) !important;
}

/* Zakładki jak SaaS, małe i czyste */
body .league-page .tfp-manager--league .tfp-manager-tabs {
  position: sticky !important;
  top: 0 !important;
  z-index: 15 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 5px !important;
  margin: 0 0 8px !important;
  padding: 5px !important;
  border-radius: 14px !important;
  overflow-x: auto !important;
  background: rgba(248,251,255,.94) !important;
  border: 1px solid #e8eef8 !important;
  box-shadow: 0 8px 20px rgba(15,23,42,.045) !important;
}

body .league-page .tfp-manager--league .tfp-manager-tab {
  flex: 0 0 auto !important;
  min-height: 29px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #52627a !important;
  box-shadow: none !important;
}

body .league-page .tfp-manager--league .tfp-manager-tab.active {
  color: #fff !important;
  background: linear-gradient(135deg, var(--lm-blue), var(--lm-sky)) !important;
  box-shadow: 0 8px 18px rgba(37,99,235,.22) !important;
}

/* Główne odstępy sekcji */
body .league-page .tfp-manager--league .tfp-league-control-center {
  display: grid !important;
  gap: 8px !important;
}

body .league-page .tfp-manager--league .tfp-admin-card,
body .league-page .tfp-manager--league .league-admin-card,
body .league-page .tfp-manager--league .tfp-group-card {
  padding: 10px !important;
  border-radius: 14px !important;
  border: 1px solid var(--lm-border) !important;
  background: var(--lm-card) !important;
  box-shadow: 0 7px 18px rgba(15,23,42,.045) !important;
}

/* Hero modułu — mniej gadania, więcej narzędzia */
body .league-page .tfp-manager--league .tfp-module-hero {
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 12px !important;
  background:
    linear-gradient(135deg, rgba(37,99,235,.065), rgba(14,165,233,.04)),
    #fff !important;
}

body .league-page .tfp-manager--league .tfp-module-hero span,
body .league-page .tfp-manager--league .tfp-admin-card__head span,
body .league-page .tfp-manager--league label span {
  display: block !important;
  margin: 0 0 3px !important;
  font-size: 8.5px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #64748b !important;
}

body .league-page .tfp-manager--league .tfp-module-hero h3,
body .league-page .tfp-manager--league .tfp-admin-card__head h3,
body .league-page .tfp-manager--league .tfp-group-card__top h4 {
  margin: 0 !important;
  font-size: 15.5px !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  font-weight: 950 !important;
  color: var(--lm-text) !important;
}

body .league-page .tfp-manager--league .tfp-module-hero p,
body .league-page .tfp-manager--league .tfp-admin-card__head p {
  margin: 2px 0 0 !important;
  font-size: 10.5px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  color: var(--lm-muted) !important;
}

body .league-page .tfp-manager--league .tfp-module-hero strong {
  min-height: 25px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  font-size: 10.5px !important;
  font-weight: 950 !important;
  background: #e0f2fe !important;
  color: #0369a1 !important;
}

/* Nagłówki kart */
body .league-page .tfp-manager--league .tfp-admin-card__head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-bottom: 7px !important;
}

/* Formularze */
body .league-page .tfp-manager--league input,
body .league-page .tfp-manager--league select,
body .league-page .tfp-manager--league textarea {
  min-height: 30px !important;
  height: 30px !important;
  padding: 0 8px !important;
  border-radius: 9px !important;
  border: 1px solid #d9e3f2 !important;
  background: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  color: var(--lm-text) !important;
  box-shadow: inset 0 1px 0 rgba(15,23,42,.025) !important;
}

body .league-page .tfp-manager--league textarea {
  height: auto !important;
  min-height: 58px !important;
  padding-top: 8px !important;
}

body .league-page .tfp-manager--league .league-save-btn,
body .league-page .tfp-manager--league .league-cancel-btn,
body .league-page .tfp-manager--league .tfp-mini-btn,
body .league-page .tfp-manager--league .tfp-delete-group-btn {
  min-height: 30px !important;
  height: 30px !important;
  padding: 0 10px !important;
  border-radius: 9px !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  box-shadow: 0 7px 14px rgba(37,99,235,.16) !important;
}

/* Dodaj grupę — jeden wąski pasek */
body .league-page .tfp-manager--league .tfp-group-create-form {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) 118px !important;
  gap: 8px !important;
  align-items: end !important;
}

body .league-page .tfp-manager--league .tfp-group-create-form label span {
  display: none !important;
}

/* Karty grup — 3 kolumny desktop, bardzo kompaktowo */
body .league-page .tfp-manager--league .tfp-group-cards,
body .league-page .tfp-manager--league .tfp-group-cards--admin {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: start !important;
}

body .league-page .tfp-manager--league .tfp-group-card,
body .league-page .tfp-manager--league .tfp-group-card--clean {
  display: grid !important;
  gap: 7px !important;
  min-width: 0 !important;
  padding: 9px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body .league-page .tfp-manager--league .tfp-group-card__top {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

body .league-page .tfp-manager--league .tfp-group-card__top span {
  font-size: 8px !important;
  margin: 0 0 2px !important;
}

body .league-page .tfp-manager--league .tfp-group-card__top h4 {
  font-size: 14.5px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body .league-page .tfp-manager--league .tfp-group-card__top strong {
  min-height: 22px !important;
  padding: 0 7px !important;
  border-radius: 999px !important;
  font-size: 9.5px !important;
  font-weight: 950 !important;
  background: #e0f2fe !important;
}

/* Nazwa grupy — input + zapis w jednym rzędzie */
body .league-page .tfp-manager--league .tfp-group-inline-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  gap: 6px !important;
  align-items: end !important;
  margin: 0 !important;
}

body .league-page .tfp-manager--league .tfp-group-inline-form label span {
  display: none !important;
}

/* Lista zawodników w grupie: małe wiersze, nie wielkie klocki */
body .league-page .tfp-manager--league .tfp-group-card__players,
body .league-page .tfp-manager--league .tfp-group-player-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 4px !important;
  min-height: 0 !important;
  max-height: 238px !important;
  overflow-y: auto !important;
  padding: 6px !important;
  margin: 0 !important;
  border-radius: 11px !important;
  border: 1px solid #edf2f7 !important;
  background: #f8fbff !important;
}

body .league-page .tfp-manager--league .tfp-player-chip-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 26px !important;
  gap: 6px !important;
  align-items: center !important;
  min-height: 25px !important;
  padding: 3px 4px 3px 8px !important;
  border-radius: 9px !important;
  border: 1px solid #e6edf7 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body .league-page .tfp-manager--league .tfp-player-chip-row span {
  min-width: 0 !important;
  font-size: 11px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  color: #172033 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body .league-page .tfp-manager--league .tfp-player-chip-row form {
  margin: 0 !important;
}

body .league-page .tfp-manager--league .tfp-chip-delete {
  width: 24px !important;
  min-width: 24px !important;
  height: 22px !important;
  min-height: 22px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  font-size: 0 !important;
  color: #991b1b !important;
  background: #fee2e2 !important;
  border: 1px solid #fecaca !important;
  box-shadow: none !important;
}

body .league-page .tfp-manager--league .tfp-chip-delete::after {
  content: "×";
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

/* Przenieś istniejącego zawodnika — kompakt */
body .league-page .tfp-manager--league .tfp-group-actions-box {
  display: grid !important;
  gap: 6px !important;
  padding-top: 6px !important;
  border-top: 1px dashed #e2e8f0 !important;
}

body .league-page .tfp-manager--league .tfp-existing-player-to-group {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 72px !important;
  gap: 6px !important;
  align-items: end !important;
}

body .league-page .tfp-manager--league .tfp-existing-player-to-group label span {
  display: none !important;
}

body .league-page .tfp-manager--league .tfp-group-delete-hint,
body .league-page .tfp-manager--league .tfp-group-empty {
  padding: 6px 8px !important;
  border-radius: 10px !important;
  background: #f1f5f9 !important;
  color: #64748b !important;
  font-size: 10.5px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

/* Lista zawodników moduł */
body .league-page .tfp-manager--league .tfp-player-add-grid {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) 128px 70px auto auto !important;
  gap: 7px !important;
  align-items: end !important;
}

body .league-page .tfp-manager--league .tfp-players-table {
  display: grid !important;
  gap: 5px !important;
}

body .league-page .tfp-manager--league .tfp-players-table__head,
body .league-page .tfp-manager--league .tfp-player-line {
  display: grid !important;
  grid-template-columns: minmax(150px, 1fr) 110px minmax(185px, .9fr) 50px !important;
  gap: 5px !important;
  align-items: center !important;
}

body .league-page .tfp-manager--league .tfp-player-line {
  min-height: 31px !important;
  padding: 4px 5px !important;
  border-radius: 10px !important;
  background: #fff !important;
  border: 1px solid #e6edf7 !important;
}

body .league-page .tfp-manager--league .tfp-player-line__name {
  font-size: 11px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .league-page .tfp-manager--league .tfp-player-line__group {
  min-height: 23px !important;
  padding: 0 7px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
}

body .league-page .tfp-manager--league .tfp-inline-move-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 58px !important;
  gap: 5px !important;
}

/* Mecze i wynik — też compact */
body .league-page .tfp-manager--league .tfp-match-admin-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

body .league-page .tfp-manager--league .tfp-match-admin-stat {
  min-height: 56px !important;
}

body .league-page .tfp-manager--league .tfp-match-admin-stat strong {
  margin-top: 3px !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

/* Usuń nadmiar "ciężkości" tekstów bezpieczeństwa */
body .league-page .tfp-manager--league .tfp-safety-rules {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6px !important;
}

body .league-page .tfp-manager--league .tfp-safety-rules div,
body .league-page .tfp-manager--league .league-empty-group-card {
  padding: 7px 9px !important;
  border-radius: 10px !important;
  font-size: 10.5px !important;
  line-height: 1.28 !important;
  font-weight: 850 !important;
}

/* Tabele niżej też mniej toporne */
body .league-page .league-table-card,
body .league-page .league-card {
  border-radius: 15px !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.055) !important;
}

body .league-page table {
  font-size: 12px !important;
}

body .league-page th {
  padding: 8px 8px !important;
  font-size: 9px !important;
}

body .league-page td {
  padding: 8px 8px !important;
}

/* Duże ekrany: naprawdę wykorzystaj miejsce */
@media (min-width: 1380px) {
  body .league-page .league-shell {
    width: min(1360px, calc(100vw - 44px)) !important;
    max-width: 1360px !important;
  }

  body .league-page .tfp-manager--league .tfp-group-cards,
  body .league-page .tfp-manager--league .tfp-group-cards--admin {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Średni desktop: 3 kolumny */
@media (min-width: 1060px) and (max-width: 1379px) {
  body .league-page .tfp-manager--league .tfp-group-cards,
  body .league-page .tfp-manager--league .tfp-group-cards--admin {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mały laptop/tablet: 2 kolumny */
@media (min-width: 760px) and (max-width: 1059px) {
  body .league-page .tfp-manager--league .tfp-group-cards,
  body .league-page .tfp-manager--league .tfp-group-cards--admin {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .league-page .tfp-manager--league .tfp-player-add-grid {
    grid-template-columns: 1fr 130px 70px !important;
  }
}

/* Mobile: ładnie, ale dalej kompaktowo */
@media (max-width: 759px) {
  body .league-page .league-shell {
    width: 100% !important;
    padding: 8px 10px 18px !important;
  }

  body .league-page .league-hero {
    border-radius: 20px !important;
    padding: 15px !important;
  }

  body .league-page .league-hero__title {
    font-size: 34px !important;
  }

  body .league-page .league-hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .league-page .tfp-manager--league .tfp-manager__panel,
  body .league-page .tfp-manager--league .league-admin-panel {
    padding: 8px !important;
    border-radius: 16px !important;
  }

  body .league-page .tfp-manager--league .tfp-module-hero {
    grid-template-columns: 1fr !important;
  }

  body .league-page .tfp-manager--league .tfp-module-hero p,
  body .league-page .tfp-manager--league .tfp-admin-card__head p {
    display: none !important;
  }

  body .league-page .tfp-manager--league .tfp-group-cards,
  body .league-page .tfp-manager--league .tfp-group-cards--admin,
  body .league-page .tfp-manager--league .tfp-player-add-grid,
  body .league-page .tfp-manager--league .tfp-players-table__head,
  body .league-page .tfp-manager--league .tfp-player-line,
  body .league-page .tfp-manager--league .tfp-existing-player-to-group,
  body .league-page .tfp-manager--league .tfp-group-create-form,
  body .league-page .tfp-manager--league .tfp-match-admin-grid,
  body .league-page .tfp-manager--league .tfp-safety-rules {
    grid-template-columns: 1fr !important;
  }

  body .league-page .tfp-manager--league .tfp-players-table__head {
    display: none !important;
  }

  body .league-page .tfp-manager--league .tfp-group-card__players,
  body .league-page .tfp-manager--league .tfp-group-player-list {
    max-height: 260px !important;
  }

  body .league-page .tfp-manager--league .tfp-player-chip-row {
    grid-template-columns: minmax(0, 1fr) 26px !important;
  }

  body .league-page .tfp-manager--league .tfp-player-chip-row span {
    white-space: nowrap !important;
  }
}


/* === Rounds, per-round group colors, compact controls === */
.league-page .tfp-color-field input[type="color"] {
  width: 44px !important;
  min-width: 44px !important;
  padding: 2px !important;
  cursor: pointer !important;
}

.league-page .tfp-color-field--inline {
  max-width: 52px !important;
}

.league-page .tfp-group-card,
.league-page .league-group-card,
.league-page .league-group-tab {
  border-color: color-mix(in srgb, var(--group-color, #2563eb) 28%, #e2e8f0) !important;
}

.league-page .tfp-group-card__top strong,
.league-page .league-group-tab.active,
.league-page .league-mini-tab.active {
  background: linear-gradient(135deg, var(--group-color, #2563eb), color-mix(in srgb, var(--group-color, #2563eb) 72%, #0ea5e9)) !important;
  color: #fff !important;
}

.league-page .tfp-group-card__top h4::before,
.league-page .league-group-card h3::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 6px;
  border-radius: 999px;
  background: var(--group-color, #2563eb);
  vertical-align: 1px;
}

.league-page.is-round-loading #table,
.league-page.is-round-loading #matches,
.league-page.is-round-loading #results {
  opacity: .45;
  transform: translateY(3px);
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease;
}

.league-page.round-changed #table,
.league-page.round-changed #matches,
.league-page.round-changed #results {
  animation: tfpRoundFade .22s ease both;
}

@keyframes tfpRoundFade {
  from { opacity: .35; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

.league-page .tfp-round-actions {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

.league-page .tfp-round-actions form {
  margin: 0 !important;
}

.league-page .league-round-delete-row {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 6px !important;
  align-items: center !important;
  padding: 7px !important;
  border-radius: 11px !important;
  background: #fff7ed !important;
  border: 1px solid #fed7aa !important;
}

.league-page .league-round-delete-row label {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 0 !important;
  color: #9a3412 !important;
  font-size: 10.5px !important;
  font-weight: 900 !important;
}

.league-page .league-round-delete-row input[type="checkbox"] {
  width: 14px !important;
  height: 14px !important;
  min-height: 14px !important;
}

.league-page .league-delete-round-btn {
  background: linear-gradient(135deg, #dc2626, #f97316) !important;
  color: #fff !important;
}

.league-page .league-empty-group-card {
  display: block;
  padding: 8px 10px !important;
  border: 1px dashed color-mix(in srgb, var(--group-color, #2563eb) 38%, #bfdbfe) !important;
  border-radius: 11px !important;
  background: #f8fbff !important;
  color: #1e3a8a !important;
  font-size: 10.5px !important;
  line-height: 1.3 !important;
  font-weight: 850 !important;
}

@media (max-width: 760px) {
  .league-page .tfp-round-actions,
  .league-page .league-round-delete-row {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   HOTFIX — group tabs, per-round names/colors, compact pills
   ========================================================= */

body .league-page .league-mini-tabs {
  gap: 4px !important;
  padding: 4px !important;
  border-radius: 12px !important;
  min-height: 0 !important;
  background: rgba(255,255,255,.88) !important;
}

body .league-page .league-mini-tab {
  min-height: 24px !important;
  height: 24px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  font-size: 9.5px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  background: #f8fbff !important;
  border: 1px solid color-mix(in srgb, var(--group-color, #2563eb) 20%, #dbeafe) !important;
  color: #334155 !important;
  box-shadow: none !important;
}

body .league-page .league-mini-tab.active {
  background: linear-gradient(135deg, var(--group-color, #2563eb), color-mix(in srgb, var(--group-color, #2563eb) 72%, #0ea5e9)) !important;
  color: #fff !important;
  box-shadow: 0 5px 12px color-mix(in srgb, var(--group-color, #2563eb) 26%, transparent) !important;
}

body .league-page .league-round-tab {
  min-height: 25px !important;
  height: 25px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 950 !important;
}

body .league-page .tfp-manager--league .tfp-group-card__top h4::before,
body .league-page .league-card__head h3::before,
body .league-page .league-results-card__head span::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 6px;
  border-radius: 999px;
  background: var(--group-color, #2563eb);
  vertical-align: 1px;
}

body .league-page .tfp-manager--league .tfp-color-field input[type="color"],
body .league-page .tfp-color-field input[type="color"] {
  width: 38px !important;
  min-width: 38px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 2px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
}

body .league-page .tfp-manager--league .tfp-group-inline-form {
  grid-template-columns: minmax(0, 1fr) 42px 50px !important;
}

body .league-page .tfp-manager--league .tfp-group-create-form {
  grid-template-columns: minmax(170px, 1fr) 42px 112px !important;
}

body .league-page .league-group-panel.tfp-panel-soft-enter {
  animation: tfpSoftEnter .18s ease both;
}

@keyframes tfpSoftEnter {
  from { opacity: .45; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 760px) {
  body .league-page .league-mini-tabs {
    gap: 4px !important;
    overflow-x: auto !important;
  }

  body .league-page .league-mini-tab {
    flex: 0 0 auto !important;
    min-height: 26px !important;
    height: 26px !important;
    font-size: 10px !important;
  }

  body .league-page .tfp-manager--league .tfp-group-inline-form,
  body .league-page .tfp-manager--league .tfp-group-create-form {
    grid-template-columns: minmax(0, 1fr) 42px 70px !important;
  }
}


/* =========================================================
   TFP LEAGUE — MOBILE MINI PREMIUM HERO
   Tylko CSS. Bez PHP. Bez JS. Bez ruszania wyników.
   Cel: mały, niski, premium header zamiast wielkiego niebieskiego banera.
   ========================================================= */

@media (max-width: 768px) {
  body .league-page .league-shell {
    width: 100% !important;
    max-width: 100% !important;
    padding: 8px 10px 16px !important;
  }

  /* MINI HERO — niski, elegancki */
  body .league-page .league-hero {
    margin: 8px 0 8px !important;
    padding: 9px 10px !important;
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(14,165,233,.26), transparent 34%),
      linear-gradient(135deg, #10245c 0%, #2563eb 72%, #0ea5e9 100%) !important;
    box-shadow: 0 10px 24px rgba(30,64,175,.16) !important;
  }

  body .league-page .league-hero__content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 7px !important;
    align-items: stretch !important;
  }

  body .league-page .league-hero__left,
  body .league-page .league-hero__main {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body .league-page .league-hero__logo-wrap {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    border-radius: 11px !important;
    padding: 4px !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    box-shadow: none !important;
  }

  body .league-page .league-hero__logo-wrap img,
  body .league-page .league-hero__logo {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }

  body .league-page .league-hero__title {
    margin: 0 !important;
    font-size: clamp(22px, 6.4vw, 27px) !important;
    line-height: .96 !important;
    letter-spacing: -.045em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
  }

  body .league-page .league-hero__subtitle,
  body .league-page .league-hero__meta {
    margin: 1px 0 0 !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    color: rgba(255,255,255,.76) !important;
  }

  body .league-page .league-hero__badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin-top: 4px !important;
  }

  body .league-page .league-pill,
  body .league-page .league-hero__badge {
    min-height: 19px !important;
    height: 19px !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.13) !important;
    color: rgba(255,255,255,.92) !important;
  }

  /* Panel właściciela — mały pasek, nie wielka karta */
  body .league-page .league-admin-accordion {
    margin: 2px 0 0 !important;
    width: 100% !important;
  }

  body .league-page .league-admin-accordion__trigger {
    min-height: 36px !important;
    height: 36px !important;
    padding: 7px 9px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.115) !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    box-shadow: none !important;
  }

  body .league-page .league-admin-accordion__eyebrow {
    font-size: 7px !important;
    line-height: 1 !important;
    letter-spacing: .07em !important;
    margin-bottom: 2px !important;
    color: rgba(255,255,255,.66) !important;
  }

  body .league-page .league-admin-accordion__label strong {
    font-size: 11px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    color: #fff !important;
  }

  body .league-page .league-admin-accordion__icon {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    border-radius: 8px !important;
    font-size: 17px !important;
    line-height: 1 !important;
  }

  /* Statystyki — małe kafelki 4 w rzędzie, jeśli ekran pozwala */
  body .league-page .league-hero__stats {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 5px !important;
    margin: 0 !important;
    width: 100% !important;
  }

  body .league-page .league-hero-stat {
    min-height: 38px !important;
    height: 38px !important;
    padding: 5px 3px !important;
    border-radius: 11px !important;
    text-align: center !important;
    background: rgba(255,255,255,.105) !important;
    border: 1px solid rgba(255,255,255,.13) !important;
    box-shadow: none !important;
  }

  body .league-page .league-hero-stat span {
    display: block !important;
    font-size: 7.5px !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    color: rgba(255,255,255,.68) !important;
    white-space: nowrap !important;
  }

  body .league-page .league-hero-stat strong {
    display: block !important;
    margin-top: 3px !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    color: #fff !important;
  }

  /* Główne zakładki pod hero też mniejsze */
  body .league-page .league-top-tabs,
  body .league-page .league-tabs {
    gap: 3px !important;
    padding: 3px !important;
    border-radius: 12px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  body .league-page .league-top-tabs::-webkit-scrollbar,
  body .league-page .league-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body .league-page .league-top-tab,
  body .league-page .league-tab {
    min-height: 25px !important;
    height: 25px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  body .league-page .league-mini-tabs {
    gap: 3px !important;
    padding: 3px !important;
    border-radius: 10px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  body .league-page .league-mini-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body .league-page .league-mini-tab {
    min-height: 22px !important;
    height: 22px !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    font-size: 8.5px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  /* Panele/karty pod spodem ciaśniej, ale bez rozwalania layoutu */
  body .league-page .league-card,
  body .league-page .league-table-card,
  body .league-page .league-panel > .league-card {
    border-radius: 14px !important;
    padding: 8px !important;
  }

  body .league-page h2,
  body .league-page .league-section-title {
    font-size: 17px !important;
    line-height: 1.1 !important;
    letter-spacing: -.035em !important;
  }
}

@media (max-width: 390px) {
  body .league-page .league-shell {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body .league-page .league-hero {
    padding: 8px !important;
    border-radius: 15px !important;
  }

  body .league-page .league-hero__left,
  body .league-page .league-hero__main {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body .league-page .league-hero__logo-wrap {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 10px !important;
  }

  body .league-page .league-hero__title {
    font-size: clamp(20px, 6vw, 24px) !important;
  }

  body .league-page .league-hero__subtitle,
  body .league-page .league-hero__meta {
    font-size: 9px !important;
  }

  body .league-page .league-hero-stat {
    min-height: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
  }

  body .league-page .league-hero-stat span {
    font-size: 6.8px !important;
  }

  body .league-page .league-hero-stat strong {
    font-size: 13px !important;
  }
}

/* =========================================================
   League staff / zespół ligi
   ========================================================= */

body .league-page .tfp-league-staff-card {
  display: grid;
  gap: 14px;
}

body .league-page .tfp-staff-role-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body .league-page .tfp-staff-role-grid article,
body .league-page .tfp-staff-owner-row,
body .league-page .tfp-staff-row,
body .league-page .tfp-staff-empty {
  border: 1px solid #e1e8f3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .045);
}

body .league-page .tfp-staff-role-grid article {
  padding: 14px;
}

body .league-page .tfp-staff-role-grid strong {
  display: block;
  color: #0f172a;
  font-size: 14px;
  font-weight: 900;
}

body .league-page .tfp-staff-role-grid span {
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 650;
}

body .league-page .tfp-staff-add-form {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(180px, .7fr) auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid #dbe7fb;
  border-radius: 20px;
  background: linear-gradient(180deg, #f8fbff, #fff);
}

body .league-page .tfp-staff-add-form label,
body .league-page .tfp-staff-role-form {
  display: grid;
  gap: 6px;
}

body .league-page .tfp-staff-add-form span {
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .04em;
}

body .league-page .tfp-staff-add-form input,
body .league-page .tfp-staff-add-form select,
body .league-page .tfp-staff-role-form select {
  min-height: 42px;
  border: 1px solid #dbe7fb;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  padding: 0 12px;
}

body .league-page .tfp-staff-list {
  display: grid;
  gap: 9px;
}

body .league-page .tfp-staff-owner-row,
body .league-page .tfp-staff-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
}

body .league-page .tfp-staff-owner-row {
  grid-template-columns: minmax(0, 1fr) auto;
  background: #f8fbff;
}

body .league-page .tfp-staff-owner-row strong,
body .league-page .tfp-staff-person strong {
  display: block;
  color: #0f172a;
  font-size: 14px;
  font-weight: 900;
}

body .league-page .tfp-staff-owner-row span,
body .league-page .tfp-staff-person span {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-size: 12px;
  font-weight: 650;
}

body .league-page .tfp-staff-owner-row em {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: #eaf2ff;
  color: #2563eb;
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
}

body .league-page .tfp-staff-remove-btn {
  min-height: 38px;
  padding: 0 12px;
  border: 0;
  border-radius: 13px;
  background: #fff1f2;
  color: #b91c1c;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

body .league-page .tfp-staff-empty {
  padding: 14px;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
}

@media (max-width: 760px) {
  body .league-page .tfp-staff-role-grid,
  body .league-page .tfp-staff-add-form,
  body .league-page .tfp-staff-row,
  body .league-page .tfp-staff-owner-row {
    grid-template-columns: 1fr;
  }

  body .league-page .tfp-staff-role-form select,
  body .league-page .tfp-staff-remove-btn,
  body .league-page .tfp-staff-add-form .league-save-btn {
    width: 100%;
  }
}

/* =========================================================
   TFP HOTFIX 2026-07-10 — czysty panel Mecze i rundy
   - bez bloku o archiwum wyników
   - bez nachodzenia przycisków
   - czytelnie na desktopie i mobile
   ========================================================= */
body .league-page .tfp-manager--league .tfp-league-control-center {
  gap: 10px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-module-hero {
  padding: 12px 14px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, rgba(37, 99, 235, .10), rgba(14, 165, 233, .06)), #fff !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-module-hero h3 {
  font-size: 18px !important;
  letter-spacing: -.04em !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-module-hero p {
  max-width: 680px !important;
  font-size: 11px !important;
  color: #64748b !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat {
  min-height: 62px !important;
  padding: 12px !important;
  border-radius: 16px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat span {
  font-size: 10px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat strong {
  font-size: 25px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-safe-card {
  display: none !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-admin-grid--manager {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-admin-card {
  min-width: 0 !important;
  padding: 12px !important;
  border-radius: 16px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-admin-card__head {
  display: block !important;
  margin-bottom: 10px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-admin-card__head h3 {
  font-size: 17px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-admin-card__head p {
  margin-top: 4px !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-save-btn {
  width: 100% !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  white-space: normal !important;
  line-height: 1.15 !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-round-actions,
body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-round-actions--clean {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 9px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-round-actions form {
  min-width: 0 !important;
  margin: 0 !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-round-delete-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  align-items: stretch !important;
  padding: 10px !important;
  border-radius: 14px !important;
  background: #fff7ed !important;
  border: 1px solid #fed7aa !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-round-delete-row label,
body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-round-delete-confirm {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 !important;
  min-width: 0 !important;
  color: #9a3412 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-round-delete-row input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-delete-round-btn {
  background: linear-gradient(135deg, #f97316, #dc2626) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(220, 38, 38, .12) !important;
}

body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-delete-round-btn:disabled {
  opacity: .45 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

/* Główna zakładka kończenia rundy — schludniej */
body .league-page .league-top-tabs {
  gap: 6px !important;
  overflow-x: auto !important;
  scrollbar-width: none;
}
body .league-page .league-top-tabs::-webkit-scrollbar { display: none; }

body .league-page .league-round-manager-card {
  border-radius: 20px !important;
  padding: 16px !important;
  gap: 12px !important;
}

body .league-page .league-round-primary-btn,
body .league-page .league-round-secondary-btn {
  white-space: normal !important;
  line-height: 1.15 !important;
}

@media (max-width: 900px) {
  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-admin-grid--manager {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-module-hero {
    grid-template-columns: 1fr !important;
    padding: 11px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-module-hero strong {
    justify-self: start !important;
    margin-top: 4px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat {
    min-height: 54px !important;
    padding: 8px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat span {
    font-size: 8.5px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .tfp-match-admin-stat strong {
    font-size: 20px !important;
  }

  body .league-page .tfp-manager--league [data-manager-panel="matches_admin"] .league-admin-card {
    padding: 10px !important;
  }

  body .league-page .league-round-manager-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* =========================================================
   Uprawnienia zawodników do wpisywania i anulowania wyników
   ========================================================= */
body .league-page .tfp-player-result-access {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: 12px 0;
  padding: 18px 20px !important;
  border: 1px solid #bfdbfe !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(14, 165, 233, .12), transparent 34%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 100%) !important;
  box-shadow: 0 14px 34px rgba(15, 47, 112, .08) !important;
}

body .league-page .tfp-player-result-access__copy {
  min-width: 0;
}

body .league-page .tfp-player-result-access__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  margin-bottom: 7px;
  padding: 0 9px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body .league-page .tfp-player-result-access h3 {
  margin: 0 0 5px;
  color: #0f2348;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -.02em;
}

body .league-page .tfp-player-result-access p {
  max-width: 780px;
  margin: 0;
  color: #52637e;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
}

body .league-page .tfp-player-result-access__controls {
  display: grid;
  justify-items: end;
  gap: 10px;
  min-width: 210px;
}

body .league-page .tfp-player-result-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}

body .league-page .tfp-player-result-switch input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
  pointer-events: none;
}

body .league-page .tfp-player-result-switch__track {
  position: relative;
  display: inline-flex;
  width: 50px;
  height: 28px;
  flex: 0 0 50px;
  padding: 3px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #e2e8f0;
  box-shadow: inset 0 1px 3px rgba(15, 23, 42, .08);
  transition: .2s ease;
}

body .league-page .tfp-player-result-switch__track > span {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 7px rgba(15, 23, 42, .22);
  transition: transform .2s ease;
}

body .league-page .tfp-player-result-switch input:checked + .tfp-player-result-switch__track {
  border-color: #0ea5e9;
  background: linear-gradient(135deg, #1d4ed8, #0ea5e9);
}

body .league-page .tfp-player-result-switch input:checked + .tfp-player-result-switch__track > span {
  transform: translateX(22px);
}

body .league-page .tfp-player-result-switch input:focus-visible + .tfp-player-result-switch__track {
  outline: 3px solid rgba(37, 99, 235, .22);
  outline-offset: 2px;
}

body .league-page .tfp-player-result-switch__label {
  color: #0f2348;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

body .league-page .tfp-player-result-access__save {
  width: 100%;
  min-width: 190px;
}

body .league-page .league-player-result-access-notice {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  padding: 11px 14px;
  border: 1px solid #a7f3d0;
  border-radius: 13px;
  background: linear-gradient(135deg, #ecfdf5, #f0fdfa);
  color: #166534;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 700;
}

body .league-page .league-player-result-access-notice strong {
  color: #065f46;
  font-weight: 900;
}

@media (max-width: 760px) {
  body .league-page .tfp-player-result-access {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 15px !important;
  }

  body .league-page .tfp-player-result-access__controls {
    width: 100%;
    min-width: 0;
    justify-items: stretch;
  }

  body .league-page .tfp-player-result-switch {
    justify-content: space-between;
    padding: 10px 12px;
    border: 1px solid #dbeafe;
    border-radius: 12px;
    background: rgba(255,255,255,.8);
  }

  body .league-page .tfp-player-result-switch__label {
    order: -1;
    white-space: normal;
  }

  body .league-page .tfp-player-result-access__save {
    min-width: 0;
  }

  body .league-page .league-player-result-access-notice {
    display: block;
  }
}
body .league-page .tfp-player-result-switch__on {
  display: none;
}

body .league-page .tfp-player-result-switch input:checked ~ .tfp-player-result-switch__label .tfp-player-result-switch__off {
  display: none;
}

body .league-page .tfp-player-result-switch input:checked ~ .tfp-player-result-switch__label .tfp-player-result-switch__on {
  display: inline;
}

/* =========================================================
   Powiązania kont zawodników — panel administratora ligi
   ========================================================= */
body .league-page .tfp-player-account-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin: 0 0 12px;
  padding: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 16px;
  background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 100%);
}

body .league-page .tfp-player-account-summary__copy > span {
  display: block;
  margin-bottom: 4px;
  color: #2563eb;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body .league-page .tfp-player-account-summary__copy > strong {
  display: block;
  color: #0f2348;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

body .league-page .tfp-player-account-summary__copy > p {
  margin: 5px 0 0;
  color: #64748b;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 650;
}

body .league-page .tfp-players-table--accounts .tfp-players-table__head,
body .league-page .tfp-players-table--accounts .tfp-player-line {
  grid-template-columns: minmax(120px, .75fr) minmax(280px, 1.55fr) 90px minmax(175px, .9fr) 50px !important;
}

body .league-page .tfp-player-account-cell {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
}

body .league-page .tfp-player-account-linked {
  min-width: 0;
}

body .league-page .tfp-player-account-linked strong,
body .league-page .tfp-player-account-linked small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body .league-page .tfp-player-account-linked strong {
  margin-top: 3px;
  color: #0f172a;
  font-size: 11px;
  font-weight: 900;
}

body .league-page .tfp-player-account-linked small {
  margin-top: 1px;
  color: #64748b;
  font-size: 9px;
  font-weight: 700;
}

body .league-page .tfp-player-account-status {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  width: fit-content;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body .league-page .tfp-player-account-status--linked {
  border: 1px solid #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}

body .league-page .tfp-player-account-status--missing {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #c2410c;
}

body .league-page .tfp-account-link-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  gap: 5px;
  min-width: 0;
}

body .league-page .tfp-account-link-form input {
  width: 100%;
  min-width: 0;
  min-height: 29px;
  padding: 0 8px;
  border: 1px solid #dbe7fb;
  border-radius: 9px;
  background: #fff;
  color: #0f172a;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
}

body .league-page .tfp-account-link-form input:focus {
  outline: 3px solid rgba(37, 99, 235, .13);
  border-color: #60a5fa;
}

body .league-page .tfp-account-unlink-btn {
  min-height: 28px;
  padding: 0 8px;
  border: 1px solid #fecdd3;
  border-radius: 9px;
  background: #fff1f2;
  color: #be123c;
  font: inherit;
  font-size: 9px;
  font-weight: 900;
  cursor: pointer;
}

body .league-page .tfp-player-result-link-progress {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 8px 10px;
  border: 1px solid #fed7aa;
  border-radius: 12px;
  background: #fff7ed;
  color: #9a3412;
}

body .league-page .tfp-player-result-link-progress.is-complete {
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}

body .league-page .tfp-player-result-link-progress strong {
  flex: 0 0 auto;
  color: inherit;
  font-size: 13px;
  font-weight: 950;
}

body .league-page .tfp-player-result-link-progress span {
  color: inherit;
  font-size: 10px;
  line-height: 1.35;
  font-weight: 750;
}

@media (max-width: 980px) {
  body .league-page .tfp-players-table--accounts .tfp-players-table__head {
    display: none !important;
  }

  body .league-page .tfp-players-table--accounts .tfp-player-line {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr) !important;
    gap: 9px !important;
    padding: 10px !important;
  }

  body .league-page .tfp-players-table--accounts .tfp-player-line__name,
  body .league-page .tfp-players-table--accounts .tfp-player-account-cell {
    align-self: stretch;
  }

  body .league-page .tfp-players-table--accounts .tfp-player-line__group {
    width: fit-content;
  }
}

@media (max-width: 680px) {
  body .league-page .tfp-player-account-summary {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  body .league-page .tfp-player-account-summary form,
  body .league-page .tfp-player-account-summary .league-save-btn {
    width: 100%;
  }

  body .league-page .tfp-players-table--accounts .tfp-player-line {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    border-radius: 14px !important;
  }

  body .league-page .tfp-players-table--accounts .tfp-player-line__name {
    font-size: 13px !important;
  }

  body .league-page .tfp-player-account-cell {
    grid-template-columns: 1fr auto;
    padding: 9px;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    background: #f8fafc;
  }

  body .league-page .tfp-account-link-form {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1fr) 64px;
  }

  body .league-page .tfp-player-account-status--missing {
    grid-column: 1 / -1;
  }

  body .league-page .tfp-players-table--accounts .tfp-inline-move-form,
  body .league-page .tfp-players-table--accounts .tfp-inline-move-form + form,
  body .league-page .tfp-players-table--accounts .tfp-inline-move-form + form .tfp-mini-btn {
    width: 100%;
  }

  body .league-page .tfp-player-result-link-progress {
    display: flex;
    width: 100%;
  }
}

/* ===== Struktura sezonu / Masters / Puchary ===== */
.tfp-season-structure-card,.tfp-postseason-card{overflow:hidden}.tfp-season-flow-admin{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:0 0 18px}.tfp-season-flow-admin>span{font-size:20px;color:#5da9ff}.tfp-season-flow-admin__rounds,.tfp-season-flow-admin__after{display:grid;gap:3px;padding:14px 16px;border:1px solid #dbe7f3;border-radius:14px;background:#f8fbff}.tfp-season-flow-admin__after.is-on{border-color:#8fc2ff;background:#eef6ff}.tfp-season-flow-admin b{font-size:14px;color:#10213d}.tfp-season-flow-admin small{color:#71849a;font-size:11px}.tfp-season-enable{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:13px 14px;border:1px solid #dbe7f3;border-radius:13px;background:#fff}.tfp-season-enable input{margin-top:3px}.tfp-season-enable span{display:grid;gap:3px}.tfp-season-enable strong{font-size:13px;color:#10213d}.tfp-season-enable small{font-size:11px;color:#74859a}.tfp-season-structure-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1.4fr;gap:10px}.tfp-season-structure-grid label,.tfp-season-barage-name{display:grid;gap:6px}.tfp-season-structure-grid label>span,.tfp-season-barage-name>span{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#6f8197}.tfp-season-structure-grid input,.tfp-season-structure-grid select,.tfp-season-barage-name input{width:100%;height:40px;padding:0 11px;border:1px solid #d8e4f0;border-radius:10px;background:#fff;color:#10213d;font:inherit;font-size:12px}.tfp-season-option-card{margin:12px 0;padding:13px 14px;border:1px solid #e0e9f3;border-radius:13px;background:#fbfdff}.tfp-season-option-card__switch{display:flex;gap:10px;align-items:flex-start}.tfp-season-option-card__switch input{margin-top:3px}.tfp-season-option-card__switch span{display:grid;gap:2px}.tfp-season-option-card__switch b{font-size:13px;color:#10213d}.tfp-season-option-card__switch small{font-size:11px;color:#75869b}.tfp-season-structure-grid--secondary{margin-top:10px}.tfp-season-barage-name{margin-top:10px;max-width:420px}.tfp-postseason-empty{display:grid;justify-items:start;gap:8px;padding:18px;border:1px dashed #b9cee4;border-radius:14px;background:#f8fbff}.tfp-postseason-empty strong{font-size:14px;color:#10213d}.tfp-postseason-empty span{max-width:760px;color:#72849a;font-size:12px;line-height:1.45}.tfp-postseason-competitions{display:grid;gap:16px;margin-bottom:14px}.tfp-postseason-competition{padding:14px;border:1px solid #dbe7f3;border-radius:15px;background:#fbfdff}.tfp-postseason-competition__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.tfp-postseason-competition__head>div{display:grid;gap:2px}.tfp-postseason-competition__head strong{font-size:16px;color:#10213d}.tfp-postseason-competition__head span{font-size:11px;color:#71849a}.tfp-postseason-competition__head em{font-style:normal;padding:6px 9px;border-radius:999px;background:#e4f8ed;color:#087f43;font-size:11px;font-weight:800}.tfp-postseason-rounds{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;padding-bottom:6px}.tfp-postseason-round{flex:1 0 240px;display:grid;gap:8px}.tfp-postseason-round h4{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#688098}.tfp-postseason-match{padding:10px;border:1px solid #dce7f1;border-radius:11px;background:#fff}.tfp-postseason-match.is-played{border-color:#a8dfbf;background:#fbfffc}.tfp-postseason-match__players{display:grid;gap:5px}.tfp-postseason-match__players span{padding:6px 8px;border-radius:8px;background:#f3f7fb;color:#20344f;font-size:11px;font-weight:700}.tfp-postseason-match__players .is-winner{background:#e6f9ee;color:#087f43}.tfp-postseason-match small{display:block;margin-top:7px;color:#7b8ca0;font-size:10px}.tfp-postseason-result-form{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;margin-top:8px}.tfp-postseason-result-form select,.tfp-postseason-result-form input{min-width:0;height:34px;border:1px solid #d7e3ef;border-radius:8px;padding:0 8px;font-size:10px;background:#fff}.tfp-postseason-result-form button{height:34px;padding:0 10px;border:0;border-radius:8px;background:#1477f8;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
@media(max-width:820px){.tfp-season-flow-admin{grid-template-columns:1fr}.tfp-season-flow-admin>span{transform:rotate(90deg);justify-self:center}.tfp-season-structure-grid{grid-template-columns:1fr}.tfp-postseason-competition__head{align-items:flex-start;flex-direction:column}.tfp-postseason-result-form{grid-template-columns:1fr}.tfp-postseason-result-form button{width:100%}}
.tfp-season-extra-card__head{margin-bottom:10px}.tfp-season-extra-card__head>div{display:grid;gap:3px}.tfp-season-extra-card__head b{font-size:13px;color:#10213d}.tfp-season-extra-card__head small{font-size:11px;color:#75869b}.tfp-season-extra-list{display:grid;gap:7px}.tfp-season-extra-row{display:grid;grid-template-columns:1.5fr .8fr .55fr .55fr;gap:7px}.tfp-season-extra-row input,.tfp-season-extra-row select{min-width:0;height:38px;padding:0 9px;border:1px solid #d8e4f0;border-radius:9px;background:#fff;color:#10213d;font:inherit;font-size:11px}@media(max-width:820px){.tfp-season-extra-row{grid-template-columns:1fr 1fr}.tfp-season-extra-row input:first-child{grid-column:1/-1}}

/* ===== League Season PRO v2: Masters grupowy / wildcard / baraże / historia ===== */
.tfp-season-qualifier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.tfp-season-qualifier-grid label{display:grid;gap:6px}.tfp-season-qualifier-grid label>span{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#6f8197}.tfp-season-qualifier-grid textarea{width:100%;min-height:92px;resize:vertical;padding:10px 11px;border:1px solid #d8e4f0;border-radius:10px;background:#fff;color:#10213d;font:inherit;font-size:11px;line-height:1.45}.tfp-season-qualifier-grid small{font-size:10px;color:#7a8ca0;line-height:1.35}.tfp-season-barage-grid{margin-top:10px}.tfp-season-extra-row{grid-template-columns:34px 1.5fr .8fr .55fr .55fr!important;align-items:center}.tfp-season-extra-drag{display:grid;place-items:center;width:30px;height:38px;border:1px solid #d8e4f0;border-radius:9px;background:#f7faff;color:#7c8ea3;font-size:14px;cursor:grab}.tfp-season-extra-drag:active{cursor:grabbing}.tfp-season-extra-row.is-dragging{opacity:.45}.tfp-season-history{margin-top:16px;padding-top:14px;border-top:1px solid #e2ebf4}.tfp-season-history__head{display:grid;gap:3px;margin-bottom:8px}.tfp-season-history__head b{font-size:12px;color:#10213d}.tfp-season-history__head small{font-size:10px;color:#75869b}.tfp-season-history__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #eef3f8}.tfp-season-history__row span{display:grid;gap:2px}.tfp-season-history__row b{font-size:11px;color:#17304e}.tfp-season-history__row small{font-size:9px;color:#8797a9}.tfp-season-history__row button{height:32px;padding:0 10px;border:1px solid #c9d9e8;border-radius:8px;background:#fff;color:#215887;font-size:10px;font-weight:800;cursor:pointer}.tfp-masters-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px}.tfp-masters-group{padding:12px;border:1px solid #dce7f2;border-radius:13px;background:#fff}.tfp-masters-group__head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}.tfp-masters-group__head b{font-size:13px;color:#10213d}.tfp-masters-group__head span{font-size:10px;color:#7a8ca0}.tfp-masters-table{display:grid;gap:4px;margin-bottom:9px}.tfp-masters-table>div{display:flex;justify-content:space-between;gap:10px;padding:6px 8px;border-radius:8px;background:#f4f8fc}.tfp-masters-table strong{font-size:10px;color:#1d3551}.tfp-masters-table span{font-size:10px;color:#54718e;font-weight:800}.tfp-masters-group__matches{display:grid;gap:7px}.tfp-masters-note{margin:0 0 14px;padding:10px 12px;border:1px dashed #9bc7f7;border-radius:11px;background:#f3f9ff;color:#477293;font-size:10px;line-height:1.4}.tfp-postseason-competition:has(.tfp-masters-groups){background:linear-gradient(180deg,#fbfdff,#f7fbff)}
@media(max-width:900px){.tfp-season-qualifier-grid,.tfp-masters-groups{grid-template-columns:1fr}.tfp-season-extra-row{grid-template-columns:34px 1fr 1fr!important}.tfp-season-extra-row input:first-of-type{grid-column:2/-1}.tfp-season-extra-row input[type=number]{grid-column:auto}}
@media(max-width:620px){.tfp-season-extra-row{grid-template-columns:30px 1fr!important}.tfp-season-extra-row input,.tfp-season-extra-row select{grid-column:2!important}.tfp-season-history__row{align-items:flex-start}.tfp-season-history__row button{flex:0 0 auto}}
.tfp-round-rules{display:grid;gap:6px;margin-top:10px}.tfp-round-rule-row{display:grid;grid-template-columns:90px minmax(180px,1fr) 120px 120px;gap:8px;align-items:end;padding:8px 0;border-top:1px solid #edf2f7}.tfp-round-rule-row>strong{align-self:center;font-size:11px;color:#17304e}.tfp-round-rule-row>select,.tfp-round-rule-row input{height:36px;border:1px solid #d8e4f0;border-radius:8px;background:#fff;padding:0 9px;font-size:10px}.tfp-round-rule-row label{display:grid;gap:4px}.tfp-round-rule-row label>span{font-size:9px;font-weight:800;text-transform:uppercase;color:#7b8da0}@media(max-width:760px){.tfp-round-rule-row{grid-template-columns:1fr 1fr}.tfp-round-rule-row>strong{grid-column:1/-1}.tfp-round-rule-row>select{grid-column:1/-1}}
.tfp-masters-manual-qualifiers{margin:0 0 14px;border:1px solid #dbe7f3;border-radius:11px;background:#fff}.tfp-masters-manual-qualifiers summary{padding:10px 12px;cursor:pointer;font-size:10px;font-weight:800;color:#285d8b}.tfp-masters-manual-qualifiers form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:7px;padding:0 10px 10px}.tfp-masters-manual-qualifiers label{display:grid;gap:4px}.tfp-masters-manual-qualifiers label span{font-size:8px;font-weight:800;text-transform:uppercase;color:#8292a4}.tfp-masters-manual-qualifiers select{height:34px;min-width:0;border:1px solid #d8e4f0;border-radius:8px;background:#fff;padding:0 7px;font-size:9px}.tfp-masters-manual-qualifiers button{align-self:end;height:34px;border:0;border-radius:8px;background:#1477f8;color:#fff;padding:0 10px;font-size:9px;font-weight:800;cursor:pointer}@media(max-width:820px){.tfp-masters-manual-qualifiers form{grid-template-columns:1fr 1fr}.tfp-masters-manual-qualifiers button{grid-column:1/-1}}

/* =========================================================
   TFP LEAGUE CONTROL CENTER V3
   Visual system aligned with Tournament Organizer / Home.
   ========================================================= */
body .league-page .tfp-manager--league {
  --lm-bg:#f7f9fc;
  --lm-card:#fff;
  --lm-border:#dfe7f0;
  --lm-text:#0b2340;
  --lm-muted:#78899b;
  --lm-blue:#1b78ef;
  --lm-cyan:#1bb6d8;
  --lm-shadow:0 10px 30px rgba(16,48,82,.06);
}
body .league-page .tfp-manager--league .league-admin-accordion__trigger {
  min-height:48px!important;padding:10px 14px!important;border:1px solid #dce6f0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 26px rgba(10,45,80,.06)!important;
}
body .league-page .tfp-manager--league .league-admin-accordion__eyebrow { color:#1680e9!important;font-size:8px!important;letter-spacing:.13em!important; }
body .league-page .tfp-manager--league .league-admin-accordion__label strong { color:#102640!important;font-size:14px!important;font-weight:850!important; }
body .league-page .tfp-manager--league .tfp-manager__panel,
body .league-page .tfp-manager--league .league-admin-panel { padding:12px!important;border-radius:18px!important;background:#fff!important;border:1px solid #dfe7f0!important;box-shadow:0 12px 36px rgba(15,48,82,.07)!important; }
body .league-page .tfp-manager--league .tfp-manager-tabs {
  position:sticky!important;top:calc(var(--tfp-header-fixed-height,72px) + 8px)!important;z-index:40!important;
  display:flex!important;gap:4px!important;margin:0 0 12px!important;padding:5px!important;border:1px solid #e2e9f1!important;border-radius:13px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 8px 25px rgba(17,50,86,.055)!important;overflow-x:auto!important;
}
body .league-page .tfp-manager--league .tfp-manager-tab { min-height:34px!important;height:34px!important;padding:0 11px!important;border-radius:9px!important;color:#62758b!important;font-size:10px!important;font-weight:800!important; }
body .league-page .tfp-manager--league .tfp-manager-tab.active { background:linear-gradient(100deg,#2077f1,#1aa9df)!important;color:#fff!important;box-shadow:0 7px 17px rgba(27,119,239,.18)!important; }
body .league-page .tfp-manager--league .tfp-admin-card,
body .league-page .tfp-manager--league .league-admin-card,
body .league-page .tfp-manager--league .tfp-group-card { padding:14px!important;border-radius:14px!important;border:1px solid #e0e8f0!important;background:#fff!important;box-shadow:none!important; }
body .league-page .tfp-manager--league .tfp-module-hero { padding:13px 14px!important;border-radius:14px!important;background:linear-gradient(120deg,#f4f8ff,#f8fcff)!important;border:1px solid #dce8f4!important; }
body .league-page .tfp-manager--league .tfp-module-hero h3,
body .league-page .tfp-manager--league .tfp-admin-card__head h3 { color:#0f2743!important;font-size:17px!important;line-height:1.08!important;font-weight:850!important;letter-spacing:-.035em!important; }
body .league-page .tfp-manager--league .tfp-module-hero p,
body .league-page .tfp-manager--league .tfp-admin-card__head p { color:#7a8a9c!important;font-size:10px!important;line-height:1.42!important;font-weight:550!important; }
body .league-page .tfp-manager--league input,
body .league-page .tfp-manager--league select,
body .league-page .tfp-manager--league textarea { min-height:38px!important;height:38px!important;padding:0 11px!important;border:1px solid #dbe4ed!important;border-radius:10px!important;background:#fbfdff!important;color:#10233d!important;font-size:11px!important;font-weight:650!important; }
body .league-page .tfp-manager--league textarea { height:auto!important;min-height:76px!important;padding:10px 11px!important;line-height:1.45!important; }
body .league-page .tfp-manager--league .league-save-btn,
body .league-page .tfp-manager--league .tfp-mini-btn { min-height:38px!important;height:38px!important;padding:0 13px!important;border-radius:10px!important;background:linear-gradient(100deg,#1d74f0,#17a4df)!important;color:#fff!important;border:0!important;font-size:10.5px!important;font-weight:850!important;box-shadow:0 8px 18px rgba(30,119,231,.16)!important; }

/* New manager overview */
body .league-page .tfp-league-dashboard { display:grid;gap:12px; }
body .league-page .tfp-league-dashboard__hero {
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:19px 20px;border:1px solid #dce7f1;border-radius:16px;background:linear-gradient(135deg,#f5f8ff 0%,#f8fcff 65%,#eefcff 100%);
}
body .league-page .tfp-league-dashboard__eyebrow { display:block;margin-bottom:6px;color:#1680e9;font-size:8.5px;font-weight:900;letter-spacing:.14em;text-transform:uppercase; }
body .league-page .tfp-league-dashboard__hero h3 { margin:0 0 5px;color:#0b2340;font-size:24px;line-height:1;font-weight:900;letter-spacing:-.045em; }
body .league-page .tfp-league-dashboard__hero p { margin:0;color:#7b8b9b;font-size:10.5px;line-height:1.4;font-weight:600; }
body .league-page .tfp-league-dashboard__status { flex:0 0 auto;display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#fff3df;color:#a36400;font-size:10px;font-weight:850; }
body .league-page .tfp-league-dashboard__status.is-ready { background:#e9faf2;color:#11845f; }
body .league-page .tfp-league-dashboard__progress { height:6px;border-radius:999px;background:#edf2f7;overflow:hidden; }
body .league-page .tfp-league-dashboard__progress span { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2579ef,#1bb5d8); }
body .league-page .tfp-league-dashboard__stats { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px; }
body .league-page .tfp-league-dashboard__stats article { min-height:85px;padding:14px;border:1px solid #e1e8f0;border-radius:14px;background:#f8faff; }
body .league-page .tfp-league-dashboard__stats strong { display:block;margin-bottom:9px;color:#0b2a4c;font-size:25px;line-height:1;font-weight:900;letter-spacing:-.04em; }
body .league-page .tfp-league-dashboard__stats span { color:#7b8b9c;font-size:9.5px;font-weight:700; }
body .league-page .tfp-league-dashboard__grid { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
body .league-page .tfp-league-dashboard-card { padding:16px;border:1px solid #dfe7ef;border-radius:15px;background:#fff; }
body .league-page .tfp-league-dashboard-card>span { display:block;margin-bottom:5px;color:#76899e;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase; }
body .league-page .tfp-league-dashboard-card h4 { margin:0 0 6px;color:#102743;font-size:17px;line-height:1.1;font-weight:900;letter-spacing:-.03em; }
body .league-page .tfp-league-dashboard-card p { margin:0 0 12px;color:#7b8b9d;font-size:10px;line-height:1.45; }
body .league-page .tfp-league-dashboard-link { padding:0;border:0;background:transparent;color:#1174df;font-size:10.5px;font-weight:850;cursor:pointer; }
body .league-page .tfp-league-dashboard-link i { font-style:normal;margin-left:5px; }
body .league-page .tfp-league-dashboard-actions { display:grid;grid-template-columns:1fr 1fr;gap:7px; }
body .league-page .tfp-league-dashboard-actions button { min-height:38px;padding:0 10px;border:1px solid #dce5ee;border-radius:10px;background:#f8fbff;color:#26405e;font-size:10px;font-weight:800;cursor:pointer; }
body .league-page .tfp-league-dashboard-actions button:hover { border-color:#99c6ec;background:#eef7ff;color:#0c6fd2; }
/* season structure cards */
body .league-page .tfp-manager--league .tfp-season-structure-card,
body .league-page .tfp-manager--league .tfp-postseason-card { border-top:3px solid #1e89e8!important; }
body .league-page .tfp-manager--league .tfp-season-option-card,
body .league-page .tfp-manager--league .tfp-season-extra-card { border:1px solid #e0e8f0!important;border-radius:12px!important;background:#fbfdff!important;box-shadow:none!important; }

@media(max-width:820px){
  body .league-page .tfp-league-dashboard__stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body .league-page .tfp-league-dashboard__grid { grid-template-columns:1fr; }
}
@media(max-width:600px){
  body .league-page .tfp-manager--league .tfp-manager__panel,
  body .league-page .tfp-manager--league .league-admin-panel { padding:8px!important;border-radius:14px!important; }
  body .league-page .tfp-manager--league .tfp-manager-tabs { top:calc(var(--tfp-header-fixed-height,66px) + 5px)!important;margin-bottom:8px!important;padding:4px!important;border-radius:11px!important; }
  body .league-page .tfp-manager--league .tfp-manager-tab { min-height:32px!important;height:32px!important;padding:0 9px!important;font-size:9.5px!important; }
  body .league-page .tfp-league-dashboard__hero { padding:15px!important;border-radius:13px!important; }
  body .league-page .tfp-league-dashboard__hero h3 { font-size:21px; }
  body .league-page .tfp-league-dashboard__stats { gap:7px; }
  body .league-page .tfp-league-dashboard__stats article { min-height:78px;padding:12px;border-radius:12px; }
  body .league-page .tfp-league-dashboard__stats strong { font-size:23px; }
  body .league-page .tfp-league-dashboard-actions { grid-template-columns:1fr; }
}

/* =========================================================
   TFP 2026 — FINAL NAVY / WHITE LEAGUE MANAGER SKIN
   Spójny z ligą i turniejem: ciemny granat, biel, teal.
   ========================================================= */
body .league-page {
  --lm-navy-950:#051a31;
  --lm-navy-900:#082b4a;
  --lm-navy-800:#0b3b5f;
  --lm-navy-700:#0f4f73;
  --lm-teal:#0f8f83;
  --lm-teal-dark:#0b766d;
  --lm-surface:#ffffff;
  --lm-surface-soft:#f5f8fb;
  --lm-border:#dbe4ee;
  --lm-text:#10233a;
  --lm-muted:#6b7c90;
  --lm-shadow:0 12px 34px rgba(5,26,49,.08);
}

body .league-page .tfp-manager--league .tfp-manager__panel,
body .league-page .tfp-manager--league .league-admin-panel {
  background:#f7f9fc !important;
  border:1px solid #dce5ee !important;
  box-shadow:0 16px 40px rgba(5,26,49,.08) !important;
}

body .league-page .tfp-manager--league .tfp-manager-tabs {
  background:#fff !important;
  border:1px solid #dbe4ee !important;
  box-shadow:0 8px 24px rgba(5,26,49,.06) !important;
  scrollbar-width:none;
}
body .league-page .tfp-manager--league .tfp-manager-tabs::-webkit-scrollbar { display:none; }
body .league-page .tfp-manager--league .tfp-manager-tab {
  color:#41536a !important;
  background:#fff !important;
}
body .league-page .tfp-manager--league .tfp-manager-tab:hover {
  color:var(--lm-navy-900) !important;
  background:#eef4f8 !important;
}
body .league-page .tfp-manager--league .tfp-manager-tab.active {
  color:#fff !important;
  background:linear-gradient(135deg,var(--lm-navy-950),var(--lm-navy-700)) !important;
  box-shadow:0 8px 18px rgba(8,43,74,.22) !important;
}

body .league-page .tfp-manager--league .tfp-module-hero,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero {
  position:relative;
  overflow:hidden;
  color:#fff !important;
  background:
    radial-gradient(circle at 92% 18%,rgba(30,186,203,.34),transparent 34%),
    linear-gradient(135deg,var(--lm-navy-950) 0%,#07375c 58%,#08759a 100%) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 18px 42px rgba(5,26,49,.20) !important;
}
body .league-page .tfp-manager--league .tfp-module-hero span,
body .league-page .tfp-manager--league .tfp-module-hero h3,
body .league-page .tfp-manager--league .tfp-module-hero p,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero span,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero h3,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero p {
  color:#fff !important;
  text-shadow:none !important;
}
body .league-page .tfp-manager--league .tfp-module-hero span,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero span { opacity:.72; }
body .league-page .tfp-manager--league .tfp-module-hero p,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero p { opacity:.84; }
body .league-page .tfp-manager--league .tfp-module-hero strong {
  color:#fff !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.18) !important;
}

body .league-page .tfp-manager--league .tfp-admin-card,
body .league-page .tfp-manager--league .league-admin-card,
body .league-page .tfp-manager--league .tfp-group-card,
body .league-page .tfp-manager--league .tfp-league-dashboard-card {
  background:#fff !important;
  border:1px solid var(--lm-border) !important;
  box-shadow:0 8px 24px rgba(5,26,49,.055) !important;
}
body .league-page .tfp-manager--league .tfp-admin-card__head h3,
body .league-page .tfp-manager--league .tfp-group-card__top h4,
body .league-page .tfp-manager--league .tfp-league-dashboard-card h4 {
  color:var(--lm-navy-950) !important;
}
body .league-page .tfp-manager--league .tfp-admin-card__head span,
body .league-page .tfp-manager--league .tfp-group-card__top span {
  color:var(--lm-teal-dark) !important;
}

body .league-page .tfp-manager--league input,
body .league-page .tfp-manager--league select,
body .league-page .tfp-manager--league textarea {
  border-color:#cfdbe6 !important;
  color:var(--lm-text) !important;
  background:#fff !important;
}
body .league-page .tfp-manager--league input:focus,
body .league-page .tfp-manager--league select:focus,
body .league-page .tfp-manager--league textarea:focus {
  outline:3px solid rgba(15,143,131,.12) !important;
  border-color:var(--lm-teal) !important;
}

body .league-page .tfp-manager--league .league-save-btn,
body .league-page .tfp-manager--league .tfp-mini-btn {
  color:#fff !important;
  border:0 !important;
  background:linear-gradient(135deg,var(--lm-navy-900),var(--lm-navy-700)) !important;
  box-shadow:0 8px 18px rgba(8,43,74,.18) !important;
}
body .league-page .tfp-manager--league .league-save-btn:hover,
body .league-page .tfp-manager--league .tfp-mini-btn:hover {
  background:linear-gradient(135deg,var(--lm-navy-950),var(--lm-teal-dark)) !important;
}

/* Uprawnienia uczestników — ważny przełącznik w module Mecze */
body .league-page .tfp-manager--league .tfp-player-result-access {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  padding:18px !important;
  border:1px solid #cfdde8 !important;
  border-left:4px solid var(--lm-teal) !important;
  background:linear-gradient(135deg,#fff 0%,#f7fbfb 100%) !important;
}
body .league-page .tfp-manager--league .tfp-player-result-access__eyebrow {
  color:var(--lm-teal-dark) !important;
}
body .league-page .tfp-manager--league .tfp-player-result-access__copy h3 {
  margin:4px 0 7px !important;
  color:var(--lm-navy-950) !important;
  font-size:18px !important;
  line-height:1.15 !important;
  letter-spacing:-.025em !important;
}
body .league-page .tfp-manager--league .tfp-player-result-access__copy p {
  max-width:760px;
  margin:0 !important;
  color:#617286 !important;
  font-size:11.5px !important;
  line-height:1.5 !important;
}
body .league-page .tfp-manager--league .tfp-player-result-access__controls {
  display:grid !important;
  gap:10px !important;
  min-width:245px;
}
body .league-page .tfp-manager--league .tfp-player-result-switch {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:46px !important;
  padding:9px 11px !important;
  border:1px solid #d6e1ea !important;
  border-radius:13px !important;
  background:#fff !important;
  cursor:pointer;
}
body .league-page .tfp-manager--league .tfp-player-result-switch input {
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch__track {
  position:relative !important;
  flex:0 0 42px !important;
  width:42px !important;
  height:24px !important;
  border-radius:999px !important;
  background:#cbd5e1 !important;
  transition:.2s ease !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch__track>span {
  position:absolute !important;
  left:3px !important;
  top:3px !important;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  border-radius:50% !important;
  background:#fff !important;
  box-shadow:0 2px 6px rgba(5,26,49,.22) !important;
  transition:.2s ease !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch input:checked + .tfp-player-result-switch__track {
  background:var(--lm-teal) !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch input:checked + .tfp-player-result-switch__track>span {
  transform:translateX(18px) !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch__label {
  min-width:0;
  margin:0 !important;
  color:var(--lm-navy-900) !important;
  font-size:10.5px !important;
  font-weight:850 !important;
  line-height:1.25 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
body .league-page .tfp-manager--league .tfp-player-result-switch__on { display:none !important; }
body .league-page .tfp-manager--league .tfp-player-result-switch input:checked ~ .tfp-player-result-switch__label .tfp-player-result-switch__off { display:none !important; }
body .league-page .tfp-manager--league .tfp-player-result-switch input:checked ~ .tfp-player-result-switch__label .tfp-player-result-switch__on { display:block !important; }
body .league-page .tfp-manager--league .tfp-player-result-access__save {
  width:100% !important;
  min-height:40px !important;
  height:40px !important;
  border-radius:11px !important;
}
body .league-page .tfp-player-result-link-progress {
  border-color:#cfe7df !important;
  background:#f1faf7 !important;
  color:#176d63 !important;
}
body .league-page .tfp-player-result-link-progress.is-complete {
  border-color:#b9ded3 !important;
  background:#eaf8f4 !important;
  color:#0b766d !important;
}

@media (max-width:760px) {
  body .league-page .tfp-manager--league .tfp-manager__panel,
  body .league-page .tfp-manager--league .league-admin-panel {
    padding:8px !important;
    border-radius:15px !important;
  }
  body .league-page .tfp-manager--league .tfp-manager-tabs {
    gap:4px !important;
    padding:4px !important;
    scroll-snap-type:x proximity;
  }
  body .league-page .tfp-manager--league .tfp-manager-tab {
    scroll-snap-align:start;
    min-height:34px !important;
    height:34px !important;
    padding:0 11px !important;
    font-size:9.5px !important;
  }
  body .league-page .tfp-manager--league .tfp-module-hero,
  body .league-page .tfp-manager--league .tfp-league-dashboard__hero {
    grid-template-columns:1fr !important;
    padding:16px !important;
    border-radius:16px !important;
  }
  body .league-page .tfp-manager--league .tfp-module-hero h3,
  body .league-page .tfp-manager--league .tfp-league-dashboard__hero h3 {
    font-size:22px !important;
    color:#fff !important;
  }
  body .league-page .tfp-manager--league .tfp-player-result-access {
    grid-template-columns:1fr !important;
    gap:13px !important;
    padding:14px !important;
  }
  body .league-page .tfp-manager--league .tfp-player-result-access__controls {
    min-width:0 !important;
  }
  body .league-page .tfp-manager--league .tfp-player-result-switch {
    width:100% !important;
  }
  body .league-page .tfp-manager--league .tfp-player-result-access__copy h3 {
    font-size:16px !important;
  }
  body .league-page .tfp-manager--league .tfp-player-result-access__copy p {
    font-size:10.5px !important;
  }
  body .league-page .tfp-manager--league .league-admin-grid--manager,
  body .league-page .tfp-manager--league .tfp-match-admin-grid {
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   TFP 2026-09 — final contrast + navy manager banner
   ========================================================= */

body .league-page {
  --lm-navy-main:#082b59;
  --lm-navy-deep:#061d3a;
  --lm-navy-soft:#0c3a68;
  --lm-text-strong:#0b1f38;
  --lm-text-body:#34465d;
  --lm-text-muted:#5d6f84;
}

/* Główny baner "Panel administratora / Zarządzaj ligą" */
body .league-page .league-panel--manage .league-manage-tab-intro {
  position:relative !important;
  overflow:hidden !important;
  margin:0 0 14px !important;
  padding:28px 32px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 92% 10%, rgba(23,111,154,.20), transparent 34%),
    linear-gradient(135deg, #061d3a 0%, #082b59 58%, #0a3968 100%) !important;
  box-shadow:0 18px 42px rgba(6,29,58,.18) !important;
}

body .league-page .league-panel--manage .league-manage-tab-intro > div {
  position:relative !important;
  z-index:1 !important;
}

body .league-page .league-panel--manage .league-manage-tab-intro span {
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  margin:0 0 12px !important;
  padding:0 14px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.10) !important;
  color:#dbeafe !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
}

body .league-page .league-panel--manage .league-manage-tab-intro h2 {
  margin:0 !important;
  color:#ffffff !important;
  font-size:clamp(28px,3vw,42px) !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  letter-spacing:-.045em !important;
  text-shadow:none !important;
}

body .league-page .league-panel--manage .league-manage-tab-intro p {
  max-width:760px !important;
  margin:10px 0 0 !important;
  color:#d8e4f2 !important;
  font-size:clamp(14px,1.25vw,18px) !important;
  line-height:1.55 !important;
  font-weight:700 !important;
}

/* Wewnętrzne bannery managera — granat zamiast jaskrawego błękitu */
body .league-page .tfp-manager--league .tfp-module-hero,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero {
  background:
    radial-gradient(circle at 94% 12%, rgba(25,105,145,.16), transparent 35%),
    linear-gradient(135deg, #061d3a 0%, #082b59 62%, #0a355f 100%) !important;
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:0 16px 36px rgba(6,29,58,.16) !important;
}

body .league-page .tfp-manager--league .tfp-module-hero span,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero span {
  color:#cfe1f4 !important;
  opacity:1 !important;
}

body .league-page .tfp-manager--league .tfp-module-hero h3,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero h3 {
  color:#fff !important;
  opacity:1 !important;
}

body .league-page .tfp-manager--league .tfp-module-hero p,
body .league-page .tfp-manager--league .tfp-league-dashboard__hero p {
  color:#d7e3f0 !important;
  opacity:1 !important;
}

/* Mocniejszy kontrast kart i opisów */
body .league-page .tfp-manager--league .tfp-admin-card__head h3,
body .league-page .tfp-manager--league .tfp-group-card__top h4,
body .league-page .tfp-manager--league .tfp-league-dashboard-card h4,
body .league-page .tfp-manager--league h3,
body .league-page .tfp-manager--league h4 {
  color:var(--lm-text-strong) !important;
}

body .league-page .tfp-manager--league .tfp-admin-card__head p,
body .league-page .tfp-manager--league .tfp-league-dashboard-card p,
body .league-page .tfp-manager--league .tfp-group-card p,
body .league-page .tfp-manager--league .tfp-admin-card p {
  color:var(--lm-text-body) !important;
}

body .league-page .tfp-manager--league .tfp-admin-card__head span,
body .league-page .tfp-manager--league label span,
body .league-page .tfp-manager--league .tfp-group-card__top span {
  color:#52657b !important;
}

/* Liczniki typu "5 zawodników" */
body .league-page .tfp-manager--league .tfp-group-card__top strong,
body .league-page .tfp-manager--league .tfp-module-hero strong {
  color:#083b63 !important;
  background:#dcecf7 !important;
  border:1px solid #c7deed !important;
  opacity:1 !important;
}

/* Formularze */
body .league-page .tfp-manager--league input,
body .league-page .tfp-manager--league select,
body .league-page .tfp-manager--league textarea {
  color:#10233a !important;
  border-color:#b8c8d9 !important;
}

body .league-page .tfp-manager--league input::placeholder,
body .league-page .tfp-manager--league textarea::placeholder {
  color:#718297 !important;
  opacity:1 !important;
}

/* Główne CTA */
body .league-page .tfp-manager--league .league-save-btn,
body .league-page .tfp-manager--league .tfp-mini-btn:not(.tfp-mini-btn--danger),
body .league-page .tfp-manager--league .tfp-group-inline-form button,
body .league-page .tfp-manager--league .tfp-group-create-form button {
  color:#fff !important;
  background:linear-gradient(135deg,#082b59,#0b4a75) !important;
  border-color:#082b59 !important;
  box-shadow:0 8px 18px rgba(8,43,89,.18) !important;
}

/* Aktywne zakładki */
body .league-page .tfp-manager--league .tfp-manager-tab.active {
  color:#fff !important;
  background:linear-gradient(135deg,#061d3a,#0a416d) !important;
  box-shadow:0 8px 18px rgba(6,29,58,.20) !important;
}

/* Zespół ligi */
body .league-page .tfp-manager--league [data-manager-panel="staff"] {
  color:var(--lm-text-strong) !important;
}

body .league-page .tfp-manager--league [data-manager-panel="staff"] p {
  color:#52657b !important;
}

/* Szybkie akcje i linki tekstowe */
body .league-page .tfp-manager--league .tfp-league-dashboard-card a,
body .league-page .tfp-manager--league .tfp-quick-action {
  color:#123454 !important;
}

@media (max-width:760px) {
  body .league-page .league-panel--manage .league-manage-tab-intro {
    margin-bottom:10px !important;
    padding:22px 20px !important;
    border-radius:20px !important;
  }

  body .league-page .league-panel--manage .league-manage-tab-intro span {
    min-height:31px !important;
    margin-bottom:10px !important;
    padding:0 12px !important;
    font-size:10.5px !important;
  }

  body .league-page .league-panel--manage .league-manage-tab-intro h2 {
    font-size:30px !important;
  }

  body .league-page .league-panel--manage .league-manage-tab-intro p {
    margin-top:8px !important;
    font-size:14px !important;
    line-height:1.5 !important;
  }

  body .league-page .tfp-manager--league .tfp-group-card__top strong {
    color:#083b63 !important;
    background:#dbeaf5 !important;
  }
}


/* =========================================================
   TFP FINAL HOTFIX — manager contrast 2026-09-25
   Direct #manage selectors so light-on-light cannot return.
   ========================================================= */
body[data-page="league-view"] #manage .tfp-admin-card.tfp-module-hero,
body[data-page="league-view"] #manage .tfp-module-hero {
  background:linear-gradient(135deg,#061d3a 0%,#082b59 70%,#0a355f 100%) !important;
  border-color:#123f69 !important;
  color:#fff !important;
}
body[data-page="league-view"] #manage .tfp-module-hero span {
  color:#bfd0e2 !important;
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-module-hero h3 {
  color:#fff !important;
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-module-hero p {
  color:#d5e1ed !important;
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-module-hero strong {
  color:#083653 !important;
  background:#dcecf6 !important;
  border-color:#c3ddeb !important;
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-admin-card:not(.tfp-module-hero),
body[data-page="league-view"] #manage .tfp-group-card {
  color:#0b1f38 !important;
  background:#fff !important;
}
body[data-page="league-view"] #manage .tfp-admin-card:not(.tfp-module-hero) h3,
body[data-page="league-view"] #manage .tfp-admin-card:not(.tfp-module-hero) h4,
body[data-page="league-view"] #manage .tfp-group-card h3,
body[data-page="league-view"] #manage .tfp-group-card h4 {
  color:#0b1f38 !important;
}
body[data-page="league-view"] #manage .tfp-admin-card:not(.tfp-module-hero) p,
body[data-page="league-view"] #manage .tfp-group-card p,
body[data-page="league-view"] #manage .tfp-group-delete-hint {
  color:#52677e !important;
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-admin-card:not(.tfp-module-hero) span,
body[data-page="league-view"] #manage .tfp-group-card span,
body[data-page="league-view"] #manage label span {
  opacity:1 !important;
}
body[data-page="league-view"] #manage .tfp-admin-card__head > div > span,
body[data-page="league-view"] #manage .tfp-group-card__top > div > span {
  color:#587087 !important;
}
body[data-page="league-view"] #manage input:not([type="color"]):not([type="checkbox"]):not([type="radio"]),
body[data-page="league-view"] #manage select,
body[data-page="league-view"] #manage textarea {
  color:#10233d !important;
  background:#fff !important;
}
body[data-page="league-view"] #manage input::placeholder,
body[data-page="league-view"] #manage textarea::placeholder {
  color:#718297 !important;
  opacity:1 !important;
}
