/* Modern UI module styles and legacy compatibility overrides. */
.fkf-modern .card {
  --bs-card-cap-padding-x: var(--fkf-card-cap-padding-x);
  --bs-card-cap-padding-y: var(--fkf-card-cap-padding-y);
  --bs-card-spacer-x: var(--fkf-card-spacer-x);
  --bs-card-spacer-y: var(--fkf-card-spacer-y);
  background: var(--fkf-surface);
  border-color: var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  box-shadow: none;
  color: var(--fkf-text);
}

.fkf-modern .card:not([class*="border-"]) {
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
}

.fkf-modern .fkf-primary-edge-card {
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
}

.fkf-modern .card-header,
.fkf-modern .card-footer {
  background: var(--fkf-surface);
  border-color: var(--fkf-border);
  color: var(--fkf-text);
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-modern .fkf-modern-tabs {
  border-bottom-color: var(--fkf-border);
  gap: 4px;
}

.fkf-modern .fkf-modern-tabs .nav-link {
  border-color: transparent;
  color: var(--fkf-text-muted);
  font-weight: var(--fkf-font-weight-semibold);
  padding: 0.45rem 0.7rem;
}

.fkf-modern .fkf-modern-tabs .nav-link:focus,
.fkf-modern .fkf-modern-tabs .nav-link:hover {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
  border-color: color-mix(in srgb, var(--fkf-primary), transparent 72%);
  color: var(--fkf-text);
}

.fkf-modern .fkf-modern-tabs .nav-link.active {
  background: var(--fkf-surface);
  border-color: var(--fkf-border) var(--fkf-border) var(--fkf-surface);
  color: var(--fkf-primary);
}

.fkf-modern .fkf-action-card {
  transition: border-color 0.15s ease, transform 0.15s ease;
}

.fkf-modern .fkf-action-card:hover,
.fkf-modern .fkf-action-card:focus {
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 25%);
  color: var(--fkf-text);
  transform: translateY(-1px);
}

.fkf-modern .text-muted {
  color: var(--fkf-text-muted) !important;
}

.fkf-modern .table {
  --bs-table-bg: var(--fkf-surface);
  --bs-table-color: var(--fkf-text);
  --bs-table-border-color: var(--fkf-border);
  --bs-table-hover-bg: color-mix(in srgb, var(--fkf-primary), transparent 94%);
  --bs-table-hover-color: var(--fkf-text);
  --bs-table-striped-color: var(--fkf-text);
  --bs-table-active-color: var(--fkf-text);
  color: var(--fkf-text);
  font-size: var(--fkf-table-font-size);
}

.fkf-modern .table > :not(caption) > * > * {
  padding: var(--fkf-table-cell-padding-y) var(--fkf-table-cell-padding-x);
}

.fkf-modern .table-hover > tbody > tr:hover > * {
  color: var(--fkf-text);
}

.fkf-modern .table thead th {
  background: var(--fkf-surface-muted);
  color: var(--fkf-text);
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-data-table {
  font-size: var(--fkf-table-font-size);
}

.fkf-modern .table thead th.fkf-table-sortable {
  cursor: pointer;
  user-select: none;
}

.fkf-modern .table thead th.fkf-table-sortable:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--fkf-primary), transparent 35%);
  outline-offset: -2px;
}

.fkf-table-sort-indicator {
  color: var(--fkf-primary);
  display: inline-flex;
  font-size: 0.88em;
  line-height: 1;
  margin-left: 0.3rem;
  vertical-align: middle;
}

.fkf-modern .table thead th.fkf-table-sortable.is-sorted {
  color: var(--fkf-primary);
}

.fkf-table-fit {
  max-width: 100%;
  overflow-x: visible;
}

.fkf-data-table .fkf-table-id-col {
  max-width: 64px;
  min-width: 0;
  overflow: hidden;
  padding-left: calc(var(--fkf-table-cell-padding-x) * 0.85);
  padding-right: calc(var(--fkf-table-cell-padding-x) * 0.85);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 1%;
}

.fkf-data-table th.fkf-table-id-col {
  min-width: 34px;
}

.fkf-data-table .fkf-table-id-col > code {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.fkf-data-table .fkf-table-action-col {
  max-width: 48px;
  min-width: 42px;
  padding-left: calc(var(--fkf-table-cell-padding-x) * 0.7);
  padding-right: calc(var(--fkf-table-cell-padding-x) * 0.7);
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.fkf-ai-conversations-card .fkf-data-table,
.fkf-wa-conversations-card .fkf-data-table {
  table-layout: fixed;
  width: 100%;
}

.fkf-ai-conversations-card .fkf-data-table th,
.fkf-ai-conversations-card .fkf-data-table td,
.fkf-wa-conversations-card .fkf-data-table th,
.fkf-wa-conversations-card .fkf-data-table td {
  overflow-wrap: anywhere;
}

.fkf-ai-chat-time-col,
.fkf-wa-chat-time-col {
  width: 136px;
}

.fkf-ai-chat-contact-col,
.fkf-wa-chat-contact-col {
  width: 260px;
}

.fkf-ai-conversations-card .fkf-table-action-col,
.fkf-wa-conversations-card .fkf-table-action-col {
  width: 56px;
}

.fkf-ai-thread-identity,
.fkf-chat-thread-identity {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.fkf-ai-thread-card .card-body,
.fkf-chat-thread-card .card-body {
  background: color-mix(in srgb, var(--fkf-surface-muted) 46%, transparent);
  padding: var(--fkf-card-spacer-x);
}

.fkf-ai-thread,
.fkf-chat-thread {
  display: flex;
  flex-direction: column;
  gap: var(--fkf-layout-gap);
  margin: 0 auto;
  max-width: 980px;
}

.fkf-ai-message,
.fkf-chat-message {
  display: flex;
  flex-direction: column;
  gap: 5px;
  max-width: min(820px, 92%);
}

.fkf-ai-message.is-user,
.fkf-chat-message.is-outgoing {
  align-self: flex-end;
  align-items: flex-end;
}

.fkf-ai-message.is-bot,
.fkf-chat-message.is-incoming {
  align-self: flex-start;
  align-items: flex-start;
}

.fkf-ai-message-meta,
.fkf-chat-message-meta {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 6px;
  padding: 0 8px;
}

.fkf-ai-message-meta .badge,
.fkf-chat-message-meta .badge {
  border-radius: 999px;
  font-size: 10px;
  letter-spacing: 0;
  padding: 3px 7px;
}

.fkf-ai-message-bubble,
.fkf-chat-message-bubble {
  background: var(--fkf-surface);
  border: 1px solid color-mix(in srgb, var(--fkf-border) 72%, transparent);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.055), 0 1px 2px rgba(15, 23, 42, 0.06);
  color: var(--fkf-text);
  line-height: 1.45;
  padding: calc(var(--fkf-dashboard-card-padding) + 3px) calc(var(--fkf-dashboard-card-padding) + 5px);
  white-space: pre-wrap;
}

.fkf-ai-message-bubble {
  overflow-wrap: anywhere;
  text-align: start;
  white-space: normal;
}

.fkf-chat-message-bubble {
  white-space: normal;
}

.fkf-chat-message-content {
  white-space: pre-wrap;
}

.fkf-ai-message.is-user .fkf-ai-message-bubble,
.fkf-chat-message.is-outgoing .fkf-chat-message-bubble {
  background: #ebf7f5;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--fkf-primary) 18%, var(--fkf-surface)) 0%,
      color-mix(in srgb, var(--fkf-primary) 8%, var(--fkf-surface)) 58%,
      color-mix(in srgb, var(--fkf-surface) 96%, var(--fkf-primary)) 100%);
  border-color: color-mix(in srgb, var(--fkf-primary) 30%, var(--fkf-border));
  border-radius: 22px 22px 4px 22px;
}

.fkf-ai-message.is-bot .fkf-ai-message-bubble,
.fkf-chat-message.is-incoming .fkf-chat-message-bubble {
  background: #e4f1ec;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--fkf-secondary) 22%, var(--fkf-surface)) 0%,
      color-mix(in srgb, var(--fkf-secondary) 10%, var(--fkf-surface)) 58%,
      color-mix(in srgb, var(--fkf-surface) 94%, var(--fkf-secondary)) 100%);
  border-color: color-mix(in srgb, var(--fkf-secondary) 34%, var(--fkf-border));
  border-radius: 22px 22px 22px 4px;
}

html[data-theme="dark"] .fkf-ai-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-ai-message-bubble,
html[data-theme="dark"] .fkf-chat-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-chat-message-bubble {
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22), 0 1px 0 rgba(255, 255, 255, 0.025) inset;
}

html[data-theme="dark"] .fkf-ai-message.is-user .fkf-ai-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-ai-message.is-user .fkf-ai-message-bubble,
html[data-theme="dark"] .fkf-chat-message.is-outgoing .fkf-chat-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-chat-message.is-outgoing .fkf-chat-message-bubble {
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--fkf-primary) 22%, var(--fkf-surface)) 0%,
      color-mix(in srgb, var(--fkf-primary) 10%, var(--fkf-surface)) 60%,
      color-mix(in srgb, var(--fkf-surface) 94%, var(--fkf-primary)) 100%);
}

html[data-theme="dark"] .fkf-ai-message.is-bot .fkf-ai-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-ai-message.is-bot .fkf-ai-message-bubble,
html[data-theme="dark"] .fkf-chat-message.is-incoming .fkf-chat-message-bubble,
body.fkf-modern[data-theme="dark"] .fkf-chat-message.is-incoming .fkf-chat-message-bubble {
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--fkf-secondary) 24%, var(--fkf-surface)) 0%,
      color-mix(in srgb, var(--fkf-secondary) 12%, var(--fkf-surface)) 60%,
      color-mix(in srgb, var(--fkf-surface) 92%, var(--fkf-secondary)) 100%);
}

.fkf-chat-status {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  font-size: 11px;
  gap: 4px;
  justify-content: flex-end;
  margin-top: 7px;
}

.fkf-chat-composer {
  background: color-mix(in srgb, var(--fkf-surface-muted) 70%, transparent);
  border-top: 1px solid var(--fkf-border);
  padding: var(--fkf-dashboard-card-padding) calc(var(--fkf-dashboard-card-padding) + 4px);
}

.fkf-chat-composer--top {
  background: color-mix(in srgb, var(--fkf-surface) 94%, var(--fkf-primary));
  border-bottom: 1px solid var(--fkf-border);
  border-top: 0;
}

.fkf-chat-composer-heading {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  justify-content: space-between;
  margin-bottom: 8px;
}

.fkf-chat-composer-row {
  align-items: stretch;
  display: flex;
  gap: var(--fkf-layout-gap);
}

.fkf-chat-composer-row .form-control {
  flex: 1 1 auto;
  max-height: 160px;
  min-height: var(--fkf-control-min-height);
  min-width: 0;
  resize: vertical;
}

.fkf-chat-composer-row .btn {
  align-self: flex-end;
  flex: 0 0 auto;
  min-height: var(--fkf-control-min-height);
  white-space: nowrap;
}

@media (min-width: 768px) {
  .fkf-wa-live-thread-card > [data-wa-message-history] {
    max-height: min(68vh, 760px);
    overflow-y: auto;
    scrollbar-gutter: stable;
  }
}

.fkf-date-filter {
  max-width: 280px;
  width: fit-content;
}

.fkf-date-filter.is-empty {
  max-width: 58px;
}

.fkf-date-filter-control > .form-control {
  background: var(--fkf-surface);
  color: var(--fkf-text);
  cursor: pointer;
  font-size: 13px;
  height: 34px;
}

.fkf-date-filter.is-empty .fkf-date-filter-control > .form-control {
  display: none;
}

.fkf-date-filter-control > .btn {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-width: 58px;
  white-space: nowrap;
}

.fkf-date-filter-menu {
  border-color: var(--fkf-border);
  box-shadow: var(--fkf-shadow-soft);
  min-width: min(620px, calc(100vw - 32px));
  padding: 0;
}

.fkf-date-filter-grid {
  display: grid;
  grid-template-columns: 150px minmax(240px, 1fr);
}

.fkf-date-filter-presets {
  background: var(--fkf-surface-muted);
  border-right: 1px solid var(--fkf-border);
  padding: calc(var(--fkf-dashboard-card-padding) * 0.65);
}

.fkf-date-preset {
  background: transparent;
  border: 0;
  border-radius: var(--fkf-radius-xs);
  color: var(--fkf-text);
  display: block;
  font-size: 13px;
  line-height: 1.2;
  padding: calc(var(--fkf-dashboard-card-padding) * 0.7) calc(var(--fkf-dashboard-card-padding) * 0.9);
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.fkf-date-preset:hover,
.fkf-date-preset:focus {
  background: color-mix(in srgb, var(--fkf-primary), transparent 90%);
  color: var(--fkf-text);
}

.fkf-date-preset.is-active {
  background: var(--fkf-primary);
  color: #ffffff;
}

.fkf-date-filter-custom {
  padding: var(--fkf-dashboard-card-padding);
}

.fkf-date-custom-title {
  margin-bottom: 8px;
}

.fkf-date-custom-fields {
  display: grid;
  gap: var(--fkf-layout-gap);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fkf-date-custom-fields .form-control {
  min-width: 0;
}

.fkf-date-filter-custom .form-label {
  color: var(--fkf-text-muted);
  margin-bottom: 3px;
}

.fkf-date-custom-actions {
  margin-top: var(--fkf-layout-gap);
}

.fkf-table-tools {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  gap: var(--fkf-layout-gap);
  justify-content: space-between;
  padding: var(--fkf-dashboard-card-padding);
}

.fkf-table-search {
  flex: 1 1 auto;
  max-width: 420px;
  min-width: 0;
}

.fkf-table-tools .btn-group,
.fkf-table-page-size,
.fkf-table-date-filter {
  flex: 0 0 auto;
}

.fkf-table-tools .btn-group .btn {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-height: var(--fkf-control-min-height);
  width: calc(var(--fkf-control-min-height) + 4px);
}

.fkf-table-page-size .btn {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  justify-content: center;
  min-height: var(--fkf-control-min-height);
  min-width: calc(var(--fkf-control-min-height) + 24px);
  padding-left: 8px;
  padding-right: 8px;
}

.fkf-table-page-size .dropdown-menu {
  font-size: 13px;
  min-width: 112px;
}

.fkf-bulk-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-layout-gap);
  justify-content: flex-end;
  padding: var(--fkf-dashboard-card-padding);
}

.fkf-bulk-actions--clustered {
  gap: calc(var(--fkf-layout-gap) * 0.85);
  justify-content: flex-start;
}

.fkf-bulk-checks {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-layout-gap);
  margin-right: auto;
}

.fkf-bulk-actions--clustered .fkf-bulk-checks {
  gap: calc(var(--fkf-layout-gap) * 0.85);
  margin-right: 0;
}

.fkf-bulk-check {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  margin-bottom: 0;
  min-height: 30px;
  white-space: nowrap;
}

.fkf-bulk-check .form-check-input {
  margin-top: 0;
}

.fkf-bulk-select {
  max-width: 420px;
}

.fkf-detail-list {
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  overflow: hidden;
}

.fkf-detail-row {
  align-items: center;
  background: var(--fkf-surface-muted);
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: var(--fkf-layout-gap);
  justify-content: space-between;
  padding: calc(var(--fkf-dashboard-card-padding) * 0.75) var(--fkf-dashboard-card-padding);
}

.fkf-detail-row:last-child {
  border-bottom: 0;
}

.fkf-detail-row span {
  color: var(--fkf-text-muted);
  font-size: 12px;
  font-weight: 600;
}

.fkf-detail-row strong {
  color: var(--fkf-text);
  font-size: 13px;
  text-align: right;
}

.fkf-modal-section-title {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
  gap: 10px;
  letter-spacing: 0;
  margin-bottom: 8px;
}

.fkf-modal-section-title::after {
  background: var(--fkf-border);
  content: "";
  flex: 1;
  height: 1px;
}

.fkf-check-cell {
  text-align: center;
  width: 42px;
}

.fkf-avatar-cell {
  width: 48px;
}

.fkf-avatar-sm {
  aspect-ratio: 1;
  border: 1px solid var(--fkf-border);
  border-radius: 50%;
  height: 34px;
  object-fit: cover;
  width: 34px;
}

.fkf-avatar-xs {
  aspect-ratio: 1;
  border: 1px solid var(--fkf-border);
  border-radius: 50%;
  height: 22px;
  object-fit: cover;
  width: 22px;
}

.fkf-avatar-lg {
  aspect-ratio: 1;
  border: 1px solid var(--fkf-border);
  border-radius: 50%;
  height: 58px;
  object-fit: cover;
  width: 58px;
}

.fkf-user-cell {
  min-width: 250px;
}

.fkf-user-about-subtle {
  color: color-mix(in srgb, var(--fkf-text-muted) 58%, transparent);
  font-size: 0.72rem;
  line-height: 1.25;
  margin-top: 2px;
}

.fkf-email-verified-tick {
  color: color-mix(in srgb, var(--fkf-success) 72%, var(--fkf-text-muted));
  font-size: 0.78rem;
  opacity: 0.82;
  vertical-align: -0.05em;
}

.fkf-option-card:has(.form-check-input:checked) {
  background: color-mix(in srgb, var(--fkf-primary) 8%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-primary) 58%, var(--fkf-border));
  color: var(--fkf-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fkf-primary) 20%, transparent);
}

.fkf-modern [data-fkf-theme-mode].active,
.fkf-modern [data-fkf-nav-layout].active,
.fkf-modern [data-fkf-nav-sticky].active {
  background: color-mix(in srgb, var(--fkf-primary) 8%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-primary) 58%, var(--fkf-border));
  color: var(--fkf-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fkf-primary) 20%, transparent);
}

.fkf-wrap-badge {
  line-height: 1.15;
  max-width: 9rem;
  text-align: start;
  white-space: normal;
}

.fkf-logo-xs {
  border-radius: 50%;
  flex: 0 0 auto;
  height: 24px;
  object-fit: cover;
  width: 24px;
}

.fkf-match-cell {
  container-type: inline-size;
  line-height: 1.25;
  max-width: 100%;
  width: 100%;
}

.fkf-match-layout {
  align-items: center;
  column-gap: 0.5rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  max-width: 100%;
  row-gap: 0.25rem;
  vertical-align: middle;
  width: 100%;
}

.fkf-match-side {
  align-items: center;
  display: inline-flex;
  gap: 0.35rem;
  min-width: 0;
}

.fkf-match-home {
  justify-content: flex-end;
  text-align: right;
}

.fkf-match-score,
.fkf-match-team-name {
  white-space: nowrap;
}

.fkf-match-score {
  flex: 0 0 auto;
  justify-self: center;
}

.fkf-match-team-name {
  font-weight: 400;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fkf-swap-matchline {
  align-items: center;
  display: grid;
  gap: 0.35rem;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  max-width: 100%;
  text-align: center;
}

.fkf-swap-card-team {
  min-width: 0;
}

.fkf-swap-card-team-home {
  text-align: right;
}

.fkf-swap-card-team-away {
  text-align: left;
}

.fkf-swap-team-line {
  align-items: center;
  display: inline-flex;
  gap: 0.22rem;
  max-width: 100%;
  min-width: 0;
  vertical-align: middle;
}

.fkf-swap-team-line-home {
  justify-content: flex-end;
}

.fkf-swap-team-line-away {
  justify-content: flex-start;
}

.fkf-swap-team-line .fkf-logo-xs {
  flex: 0 0 auto;
}

.fkf-swap-team-name {
  display: inline-block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.fkf-swap-score-cell {
  min-width: 4.6rem;
}

.fkf-swap-card-meta,
.fkf-swap-card-details > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-swap-card-details {
  flex-wrap: nowrap;
  min-width: 0;
  overflow: hidden;
}

.fkf-swap-card-details > span {
  display: inline-block;
  min-width: 0;
}

@media (max-width: 575.98px) {
  .fkf-swap-score-cell {
    min-width: 3.9rem;
  }

  .fkf-swap-card-details {
    gap: 0.35rem !important;
  }
}

@container (max-width: 15rem) {
  .fkf-match-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .fkf-match-home,
  .fkf-match-score,
  .fkf-match-away {
    justify-self: start;
  }

  .fkf-match-home {
    justify-content: flex-start;
    text-align: left;
  }
}

.fkf-theme-text-primary {
  color: var(--fkf-primary) !important;
}

.fkf-competition-team-cell {
  min-width: 320px;
}

.fkf-team-chip-list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  max-width: 100%;
}

.fkf-team-chip {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface-muted) 82%, var(--fkf-primary) 18%);
  border: 1px solid color-mix(in srgb, var(--fkf-border) 74%, var(--fkf-primary) 26%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  display: inline-flex;
  font-size: 11px;
  font-weight: var(--fkf-font-weight-semibold);
  gap: 4px;
  line-height: 1.15;
  max-width: 165px;
  min-height: 24px;
  padding: 2px 6px 2px 3px;
  text-decoration: none;
}

.fkf-team-chip:hover,
.fkf-team-chip:focus {
  background: color-mix(in srgb, var(--fkf-surface-muted) 62%, var(--fkf-primary) 38%);
  border-color: var(--fkf-primary);
  color: var(--fkf-text);
  text-decoration: none;
}

.fkf-team-chip .fkf-logo-xs {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  height: 20px;
  width: 20px;
}

.fkf-team-chip-index {
  color: var(--fkf-text-muted);
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: var(--fkf-font-weight-heavy);
}

.fkf-team-chip-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-team-chip-more {
  background: color-mix(in srgb, var(--fkf-surface-muted) 88%, var(--fkf-border) 12%);
  color: var(--fkf-text-muted);
  padding-left: 7px;
  padding-right: 7px;
}

body.fkf-modern[data-theme="dark"] .fkf-team-chip,
html[data-theme="dark"] body.fkf-modern .fkf-team-chip {
  background: color-mix(in srgb, var(--fkf-surface-muted) 86%, var(--fkf-primary) 14%);
  border-color: color-mix(in srgb, var(--fkf-border) 64%, var(--fkf-primary) 36%);
}

body.fkf-modern[data-theme="dark"] .fkf-team-chip:hover,
body.fkf-modern[data-theme="dark"] .fkf-team-chip:focus,
html[data-theme="dark"] body.fkf-modern .fkf-team-chip:hover,
html[data-theme="dark"] body.fkf-modern .fkf-team-chip:focus {
  background: color-mix(in srgb, var(--fkf-surface-muted) 68%, var(--fkf-primary) 32%);
}

@media (max-width: 575.98px) {
  .fkf-competition-team-cell {
    min-width: 220px;
  }

  .fkf-team-chip {
    max-width: 128px;
  }
}

.fkf-col-id {
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.fkf-evaluation-item,
.fkf-evaluation-field {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 8px;
  padding: 10px;
}

.fkf-evaluation-item + .fkf-evaluation-item {
  margin-top: 8px;
}

.fkf-notification-row {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  min-width: 0;
}

.fkf-notification-row .fkf-dashboard-notification {
  flex: 1 1 auto;
  min-width: 0;
}

.fkf-notification-body {
  flex: 1 1 auto;
  min-width: 0;
}

.fkf-notification-message {
  color: var(--fkf-text);
  margin-top: 4px;
}

.fkf-notification-meta {
  color: var(--fkf-text-muted);
  font-size: 12px;
}

.fkf-notification-state {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid color-mix(in srgb, var(--fkf-border) 76%, transparent) !important;
  color: var(--fkf-text-muted);
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  justify-content: space-between;
  margin: 7px 0 0;
  padding: 7px 0 0;
}

.fkf-notification-status-pill {
  align-items: center;
  display: inline-flex;
  min-width: 0;
}

.fkf-notification-status-pill .badge {
  box-shadow: none;
}

.fkf-notification-type-badge {
  box-shadow: none;
}

.fkf-notification-type-info {
  background-color: var(--fkf-info) !important;
  color: #05343d !important;
}

.fkf-notification-type-primary {
  background-color: var(--fkf-primary) !important;
  color: #ffffff !important;
}

.fkf-notification-type-success {
  background-color: var(--fkf-success) !important;
  color: #ffffff !important;
}

.fkf-notification-type-danger {
  background-color: var(--fkf-danger) !important;
  color: #ffffff !important;
}

.fkf-notification-type-warning {
  background-color: var(--fkf-warning) !important;
  color: #3d2b00 !important;
}

.fkf-notification-type-secondary {
  background-color: var(--fkf-secondary) !important;
  color: #ffffff !important;
}

.fkf-notification-target-preview {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  display: flex;
  gap: 8px;
  min-width: 0;
  padding: 8px;
}

.fkf-notification-card-grid {
  align-items: flex-start;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
}

.fkf-notification-card-lead {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  min-width: 0;
}

.fkf-notification-card-index {
  color: var(--fkf-text-muted);
  font-size: 0.78rem;
  font-weight: var(--fkf-font-weight-bold);
  line-height: 1;
  min-width: 1.35rem;
  text-align: end;
}

.fkf-notification-card-main {
  min-width: 0;
}

.fkf-notification-actions {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: flex-end;
  margin-left: auto;
}

.fkf-notification-switch {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  margin-bottom: 0;
  min-height: 28px;
  white-space: nowrap;
}

.fkf-notification-switch .form-check-input {
  margin-top: 0;
}

.fkf-notification-action-group {
  flex-shrink: 0;
}

.fkf-notification-action-group .btn {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-width: 2rem;
}

.fkf-switch-lg .form-check-input {
  cursor: pointer;
  height: 1.45rem;
  width: 3rem;
}

.fkf-switch-lg .form-check-input:focus {
  box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--fkf-primary) 22%, transparent);
}

.fkf-notification-alert {
  flex: 1 1 180px;
  min-height: 18px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-email-message {
  color: var(--fkf-text);
  overflow-wrap: anywhere;
}

.fkf-email-thread-item {
  border-bottom: 1px solid var(--fkf-border);
  padding: 12px 0;
}

.fkf-email-thread-item:last-child {
  border-bottom: 0;
}

.fkf-email-direction {
  align-items: center;
  display: inline-flex;
  gap: 5px;
  white-space: nowrap;
}

.fkf-email-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.fkf-upload-preview {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  height: 58px;
  justify-content: center;
  overflow: hidden;
  width: 58px;
}

.fkf-upload-preview:hover,
.fkf-upload-preview:focus {
  color: var(--fkf-secondary);
}

.fkf-upload-preview img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.fkf-upload-preview-file {
  font-size: 1.7rem;
}

.fkf-info-grid {
  display: grid;
  gap: 8px;
}

.fkf-info-item {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
  padding: 8px 10px;
}

.fkf-info-item > span:first-child {
  color: var(--fkf-text-muted);
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-info-item > a,
.fkf-info-item > strong,
.fkf-info-item > div {
  min-width: 0;
  text-align: right;
}

.fkf-fixture-league-value {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  justify-content: flex-end;
}

.fkf-fixture-league-value .fkf-logo-xs {
  border-radius: 4px;
  object-fit: contain;
}

.fkf-fixture-league-value > span {
  min-width: 0;
}

.fkf-fixture-player-team-heading {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  min-width: 0;
}

.fkf-fixture-player-team-heading > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-section-divider {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
  gap: 10px;
  margin: 2px 0 8px;
}

.fkf-section-divider::before,
.fkf-section-divider::after {
  background: var(--fkf-border);
  content: "";
  flex: 1 1 auto;
  height: 1px;
}

.fkf-section-divider::before {
  flex: 0 0 14px;
}

.fkf-choice-card {
  align-items: flex-start;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: var(--fkf-control-min-height);
  padding: 8px 10px;
}

.fkf-choice-card:hover {
  border-color: color-mix(in srgb, var(--fkf-primary), transparent 35%);
}

.fkf-file-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.fkf-file-card {
  align-items: flex-start;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: 10px;
  min-width: 0;
  padding: 10px;
}

.fkf-table-date-filter > .btn {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-height: var(--fkf-control-min-height);
  width: calc(var(--fkf-control-min-height) + 4px);
}

.fkf-table-date-menu {
  padding: var(--fkf-layout-gap);
  width: min(280px, calc(100vw - 24px));
}

.fkf-table-date-fields {
  display: grid;
  gap: var(--fkf-layout-gap);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fkf-table-date-fields .form-label {
  color: var(--fkf-text-muted);
  font-size: var(--fkf-font-size-xs);
  margin-bottom: 3px;
}

.fkf-table-date-fields .form-control {
  min-width: 0;
}

.fkf-server-page-summary,
.fkf-server-pagination {
  align-items: center;
  display: flex;
  gap: var(--fkf-space-2);
  justify-content: space-between;
  padding: var(--fkf-space-2) var(--fkf-card-spacer-x);
}

.fkf-server-page-summary {
  border-bottom: 1px solid var(--fkf-border);
  color: var(--fkf-text-muted);
  font-size: var(--fkf-font-size-sm);
}

.fkf-server-pagination {
  border-top: 1px solid var(--fkf-border);
  justify-content: center;
}

.fkf-server-pagination-pages {
  align-items: center;
  display: flex;
  gap: var(--fkf-space-1);
}

.fkf-upload-batch-bar {
  background: color-mix(in srgb, var(--fkf-primary), transparent 96%);
  border-bottom: 1px solid var(--fkf-border);
  padding: var(--fkf-space-2) var(--fkf-card-spacer-x);
}

.fkf-upload-batch-form {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-space-2);
}

.fkf-upload-batch-form .form-check {
  margin-right: auto;
}

.fkf-upload-batch-strength {
  flex: 0 0 auto;
  width: auto;
}

.fkf-upload-id-cell {
  align-items: center;
  display: inline-flex;
  gap: var(--fkf-space-1);
  white-space: nowrap;
}

.fkf-upload-file {
  align-items: flex-start;
  display: flex;
  gap: var(--fkf-space-2);
  min-width: 0;
}

.fkf-upload-file .min-w-0 {
  min-width: 0;
}

.fkf-upload-file-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 90%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 65%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 34px;
  height: 34px;
  justify-content: center;
}

.fkf-upload-thumb-button {
  background: transparent;
  border: 0;
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-primary);
  flex: 0 0 60px;
  height: 60px;
  overflow: hidden;
  padding: 0;
}

.fkf-upload-thumb-button:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--fkf-primary), transparent 72%);
  outline: 0;
}

.fkf-upload-thumbnail {
  background: var(--fkf-surface-muted);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 65%);
  border-radius: var(--fkf-radius-md);
  display: block;
  height: 60px;
  object-fit: cover;
  width: 60px;
}

.fkf-upload-thumb-button .fkf-upload-file-icon {
  height: 60px;
  width: 60px;
}

.fkf-upload-meta,
.fkf-upload-context {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-space-1) var(--fkf-space-2);
  min-width: 0;
}

.fkf-upload-meta {
  color: var(--fkf-text-muted);
  font-size: var(--fkf-font-size-sm);
  margin-top: var(--fkf-space-1);
}

.fkf-upload-context {
  align-items: flex-start;
  flex-direction: column;
}

.fkf-upload-context > * {
  max-width: min(36vw, 340px);
}

.fkf-upload-size {
  display: grid;
  gap: 2px;
  min-width: 100px;
}

.fkf-upload-actions {
  white-space: nowrap;
  width: 1%;
}

.fkf-uploads-table th:first-child,
.fkf-uploads-table td:first-child {
  width: 1%;
}

.fkf-upload-storage-grid {
  display: grid;
  gap: var(--fkf-space-2);
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  padding: var(--fkf-card-spacer-y) var(--fkf-card-spacer-x);
}

.fkf-upload-storage-item {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-primary), transparent 32%);
  border-radius: var(--fkf-radius-md);
  display: grid;
  gap: var(--fkf-space-2);
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
  padding: var(--fkf-space-2);
}

.fkf-upload-storage-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 62%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-primary);
  display: inline-flex;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.fkf-upload-storage-note {
  border-top: 1px solid var(--fkf-border);
  color: var(--fkf-text-muted);
  font-size: var(--fkf-font-size-sm);
  padding: var(--fkf-space-2) var(--fkf-card-spacer-x);
}

@media (max-width: 767.98px) {
  .fkf-upload-batch-bar {
    padding-inline: var(--fkf-space-2);
  }

  .fkf-upload-batch-form .form-check {
    flex: 1 0 100%;
    margin-right: 0;
  }

  .fkf-upload-storage-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: var(--fkf-space-2);
  }

  .fkf-upload-storage-item {
    gap: var(--fkf-space-1);
    padding: var(--fkf-space-1) var(--fkf-space-2);
  }

  .fkf-upload-storage-icon {
    height: 30px;
    width: 30px;
  }

  .fkf-upload-storage-note {
    padding-inline: var(--fkf-space-2);
  }

  .fkf-server-page-summary {
    padding-inline: var(--fkf-space-2);
  }

  .fkf-server-page-summary span:last-child {
    display: none;
  }

  .fkf-server-pagination {
    justify-content: space-between;
    overflow-x: auto;
    padding-inline: var(--fkf-space-2);
  }

  .fkf-server-pagination-pages {
    flex: 1 0 auto;
    justify-content: center;
  }

  .fkf-uploads-table-wrap {
    overflow: visible;
    padding: var(--fkf-space-2);
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody {
    gap: var(--fkf-space-2);
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) {
    border-bottom: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 36%);
    display: grid;
    gap: var(--fkf-space-1) var(--fkf-space-2);
    grid-template-areas:
      "upload id"
      "context context"
      "size actions";
    grid-template-columns: minmax(0, 1fr) auto;
    padding: var(--fkf-space-2);
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td {
    border: 0;
    display: block !important;
    max-width: none !important;
    min-width: 0;
    padding: 0;
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td::before {
    display: none;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(1) {
    align-self: start;
    color: var(--fkf-text-muted);
    font-size: var(--fkf-font-size-sm);
    grid-area: id;
    justify-self: end;
    line-height: 1.25;
    padding-top: 2px;
    white-space: nowrap;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(1) strong {
    font-weight: 600;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(2) {
    grid-area: upload;
    width: 100% !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(3) {
    grid-area: context;
    width: 100% !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(4) {
    align-self: center;
    grid-area: size;
  }

  .fkf-modern table.fkf-responsive-records.fkf-uploads-table[data-fkf-responsive-ready="true"] tbody td:nth-child(5) {
    align-self: end;
    grid-area: actions;
    justify-self: end;
  }

  .fkf-upload-file-icon {
    flex-basis: 30px;
    height: 30px;
  }

  .fkf-upload-thumb-button,
  .fkf-upload-thumbnail,
  .fkf-upload-thumb-button .fkf-upload-file-icon {
    flex-basis: 56px;
    height: 56px;
    width: 56px;
  }

  .fkf-upload-file,
  .fkf-upload-file .min-w-0 {
    width: 100%;
  }

  .fkf-upload-file .min-w-0 {
    flex: 1 1 auto;
  }

  .fkf-upload-meta {
    flex-wrap: nowrap;
    overflow: hidden;
  }

  .fkf-upload-meta > span:not(.badge) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-upload-context {
    align-items: center;
    border-top: 1px solid var(--fkf-border);
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    padding-top: var(--fkf-space-1);
    width: 100%;
  }

  .fkf-upload-context > * {
    flex: 0 1 auto;
    max-width: none;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-upload-context-category {
    flex: 1 1 auto;
  }

  .fkf-upload-context-uploader {
    max-width: 34%;
  }

  .fkf-upload-size {
    align-items: baseline;
    display: flex;
    gap: var(--fkf-space-2);
    min-width: 0;
  }

  .fkf-upload-size .text-muted {
    max-width: 42vw;
  }
}

@media (max-width: 575.98px) {
  .fkf-team-manager-table-wrap {
    overflow-x: hidden;
  }

  .fkf-team-manager-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block !important;
    min-width: 0 !important;
    table-layout: fixed;
    width: 100% !important;
  }

  .fkf-team-manager-table thead {
    display: none;
  }

  .fkf-team-manager-table tbody {
    display: grid;
    gap: var(--fkf-grid-gap);
    padding: var(--fkf-card-spacer-x);
    width: 100% !important;
  }

  .fkf-team-manager-table tbody tr:not(.fkf-empty-row) {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: var(--fkf-shadow-sm);
    display: grid;
    gap: 3px 8px;
    grid-template-areas:
      "id person access"
      ". team access"
      ". account access";
    grid-template-columns: auto minmax(0, 1fr) auto;
    margin: 0;
    min-width: 0;
    overflow: hidden;
    padding: var(--fkf-space-2);
    width: 100%;
  }

  .fkf-team-manager-table tbody tr.table-warning:not(.fkf-empty-row) {
    background: color-mix(in srgb, var(--fkf-warning) 9%, var(--fkf-surface));
  }

  .fkf-team-manager-table tbody td {
    border: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
  }

  .fkf-team-manager-table .fkf-team-manager-id-cell {
    align-self: start;
    color: var(--fkf-text-muted);
    font-size: calc(var(--fkf-table-font-size) - 0.1rem);
    grid-area: id;
    line-height: 1.2;
    padding-top: 2px !important;
  }

  .fkf-team-manager-table .fkf-team-manager-id-cell strong::before {
    content: "#";
  }

  .fkf-team-manager-table .fkf-team-manager-person-cell {
    grid-area: person;
  }

  .fkf-team-manager-table .fkf-team-manager-person-cell > .d-flex {
    gap: var(--fkf-space-2) !important;
  }

  .fkf-team-manager-table .fkf-team-manager-person-cell .fkf-avatar-sm {
    flex: 0 0 auto;
  }

  .fkf-team-manager-table .fkf-team-manager-person-cell :is(a, .fw-semibold),
  .fkf-team-manager-table .fkf-team-manager-team-cell a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-team-manager-table .fkf-team-manager-person-cell .fkf-breakable {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-team-manager-table .fkf-team-manager-team-cell {
    grid-area: team;
  }

  .fkf-team-manager-table .fkf-team-manager-team-cell > .d-flex {
    align-items: center !important;
    gap: var(--fkf-space-1) !important;
  }

  .fkf-team-manager-table .fkf-team-manager-team-cell .fkf-logo-xs {
    flex: 0 0 auto;
  }

  .fkf-team-manager-table .fkf-team-manager-team-cell .text-nowrap {
    font-size: calc(var(--fkf-table-font-size) - 0.1rem);
  }

  .fkf-team-manager-table .fkf-team-manager-account-cell {
    align-items: center;
    display: flex;
    gap: var(--fkf-space-1);
    grid-area: account;
    overflow: hidden;
  }

  .fkf-team-manager-table .fkf-team-manager-account-cell .mt-1 {
    margin-top: 0 !important;
  }

  .fkf-team-manager-table .fkf-team-manager-account-cell .small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-team-manager-table .fkf-team-manager-access-cell {
    align-self: stretch;
    grid-area: access;
  }

  .fkf-team-manager-table .fkf-team-manager-access-cell > .d-flex {
    align-items: flex-end !important;
    flex-direction: column;
    flex-wrap: nowrap !important;
    gap: var(--fkf-space-1) !important;
    height: 100%;
    justify-content: space-between !important;
  }

  .fkf-team-manager-table .fkf-team-manager-access-cell .btn {
    white-space: nowrap;
  }

  .fkf-team-manager-table tbody tr.fkf-empty-row {
    display: block;
  }
}

.fkf-upload-drop {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px dashed color-mix(in srgb, var(--fkf-primary), transparent 35%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  min-height: 92px;
  padding: 14px;
  text-align: center;
}

.fkf-upload-drop > .bi {
  color: var(--fkf-primary);
  font-size: 24px;
}

.fkf-upload-drop input[type="file"] {
  display: none;
}

.fkf-upload-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.fkf-upload-list li {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  display: flex;
  gap: 8px;
  padding: 8px;
}

.fkf-upload-list li.success {
  border-color: color-mix(in srgb, var(--fkf-success), transparent 45%);
}

.fkf-upload-list li.error {
  border-color: color-mix(in srgb, var(--fkf-danger), transparent 35%);
}

.fkf-upload-list p i {
  color: var(--fkf-text-muted);
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  margin-left: 6px;
}

.fkf-upload-queue-preview {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 42px;
  height: 42px;
  justify-content: center;
  overflow: hidden;
  width: 42px;
}

.fkf-upload-queue-preview img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.fkf-breakable {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.fkf-schedule-strip {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
  min-width: max-content;
  width: max-content;
}

.fkf-schedule-badge {
  --fkf-schedule-accent: var(--fkf-primary);
  align-items: center;
  background: color-mix(in srgb, var(--fkf-schedule-accent) 16%, var(--fkf-surface));
  border: 1px solid color-mix(in srgb, var(--fkf-schedule-accent) 42%, var(--fkf-border));
  border-radius: var(--fkf-radius-sm);
  color: color-mix(in srgb, var(--fkf-schedule-accent) 68%, var(--fkf-text));
  display: inline-flex;
  font-size: 0.74rem;
  font-weight: var(--fkf-font-weight-heavy);
  flex: 0 0 auto;
  height: 24px;
  justify-content: center;
  min-width: 25px;
  padding: 0 7px;
  text-decoration: none;
  white-space: nowrap;
}

.fkf-schedule-badge:hover,
.fkf-schedule-badge:focus {
  background: color-mix(in srgb, var(--fkf-schedule-accent) 23%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-schedule-accent) 62%, var(--fkf-border));
  color: color-mix(in srgb, var(--fkf-schedule-accent) 76%, var(--fkf-text));
  filter: none;
}

body.fkf-modern a.fkf-schedule-badge,
body.fkf-modern a.fkf-schedule-badge:visited {
  color: color-mix(in srgb, var(--fkf-schedule-accent) 68%, var(--fkf-text));
}

body.fkf-modern a.fkf-schedule-badge:hover,
body.fkf-modern a.fkf-schedule-badge:focus,
body.fkf-modern a.fkf-schedule-badge:active {
  color: color-mix(in srgb, var(--fkf-schedule-accent) 76%, var(--fkf-text));
}

.fkf-schedule-home {
  --fkf-schedule-accent: var(--fkf-success);
}

.fkf-schedule-away {
  --fkf-schedule-accent: var(--fkf-danger);
}

body.fkf-modern a.fkf-schedule-badge:not(.is-complete),
body.fkf-modern a.fkf-schedule-badge:not(.is-complete):visited {
  background: color-mix(in srgb, var(--fkf-schedule-accent) 7%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-schedule-accent) 20%, var(--fkf-border));
  border-bottom-color: transparent;
  box-shadow: none;
  color: color-mix(in srgb, var(--fkf-schedule-accent) 48%, var(--fkf-text-muted));
}

.fkf-schedule-badge:not(.is-complete)::after {
  content: none;
  display: none;
}

body.fkf-modern a.fkf-schedule-badge:not(.is-complete):hover,
body.fkf-modern a.fkf-schedule-badge:not(.is-complete):focus {
  background: color-mix(in srgb, var(--fkf-schedule-accent) 12%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-schedule-accent) 32%, var(--fkf-border));
  border-bottom-color: transparent;
  color: color-mix(in srgb, var(--fkf-schedule-accent) 58%, var(--fkf-text));
}

.fkf-schedule-badge.is-complete {
  opacity: 1;
  position: relative;
}

.fkf-schedule-badge.is-complete::after {
  background: color-mix(in srgb, var(--fkf-schedule-accent) 82%, var(--fkf-text));
  border-radius: 0 0 calc(var(--fkf-radius-sm) - 1px) calc(var(--fkf-radius-sm) - 1px);
  bottom: 0;
  content: "";
  height: 2px;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
}

.fkf-schedule-badge:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--fkf-schedule-accent) 28%, transparent);
  outline: 0;
}

.fkf-schedule-total {
  color: var(--fkf-text-muted);
  flex: 0 0 auto;
  font-size: 0.78rem;
  white-space: nowrap;
}

.fkf-schedule-table-wrap {
  overflow-x: auto;
}

.fkf-schedule-table {
  min-width: 100% !important;
  table-layout: auto;
  width: max-content !important;
}

.fkf-schedule-table .fkf-table-id-col {
  background: var(--fkf-surface);
  left: 0;
  position: sticky;
  width: 42px;
  z-index: 2;
}

.fkf-schedule-table th:nth-child(2),
.fkf-schedule-table .fkf-schedule-team-col {
  background: var(--fkf-surface);
  box-shadow: 1px 0 0 var(--fkf-border);
  left: 42px;
  max-width: 240px;
  min-width: 240px;
  position: sticky;
  width: 240px;
  z-index: 2;
}

.fkf-schedule-table thead .fkf-table-id-col,
.fkf-schedule-table thead th:nth-child(2) {
  background: var(--fkf-surface-muted);
  z-index: 3;
}

.fkf-schedule-team-line,
.fkf-schedule-team-name,
.fkf-schedule-cell {
  min-width: 0;
}

.fkf-schedule-team-name {
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-schedule-cell-scroll {
  max-width: none;
  overflow: visible;
}

.fkf-schedule-cell {
  cursor: grab;
}

.fkf-schedule-table-wrap.is-dragging,
.fkf-schedule-table-wrap.is-dragging .fkf-schedule-cell {
  cursor: grabbing;
  user-select: none;
}

.fkf-schedule-cell .fkf-schedule-badge {
  -webkit-user-drag: none;
}

@media (max-width: 575.98px) {
  .fkf-modern .fkf-schedule-table > :not(caption) > * > * {
    padding-left: 3px;
    padding-right: 3px;
  }

  .fkf-schedule-table .fkf-table-id-col {
    left: 0;
    width: 27px;
  }

  .fkf-schedule-table th:nth-child(2),
  .fkf-schedule-table .fkf-schedule-team-col {
    left: 27px;
    max-width: 130px;
    min-width: 130px;
    width: 130px;
  }

  .fkf-schedule-team-line {
    gap: 2px !important;
    width: 100%;
  }

  .fkf-schedule-team-line .fkf-logo-xs {
    height: 20px;
    width: 20px;
  }

  .fkf-schedule-team-name {
    font-size: 0.72rem;
  }

  .fkf-schedule-total {
    font-size: 0.68rem;
  }

  .fkf-schedule-badge {
    font-size: 0.68rem;
    height: 22px;
    min-width: 22px;
    padding-left: 5px;
    padding-right: 5px;
  }
}

/* Fixture document library */
.fkf-fixture-documents-table-wrap {
  padding: 0 var(--fkf-space-2) var(--fkf-space-2);
}

.fkf-fixture-documents-table {
  border-collapse: separate;
  border-spacing: 0 var(--fkf-space-2);
}

.fkf-fixture-documents-table > thead > tr > th {
  border-bottom: 0;
}

.fkf-fixture-documents-table > tbody > tr > td {
  background: var(--fkf-surface);
  border-bottom: 1px solid color-mix(in srgb, var(--fkf-border) 68%, var(--fkf-primary) 32%);
  border-top: 1px solid var(--fkf-border);
}

.fkf-fixture-documents-table > tbody > tr > td:first-child {
  border-left: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm) 0 0 var(--fkf-radius-sm);
}

.fkf-fixture-documents-table > tbody > tr > td:last-child {
  border-radius: 0 var(--fkf-radius-sm) var(--fkf-radius-sm) 0;
  border-right: 1px solid var(--fkf-border);
}

.fkf-fixture-document-cell {
  min-width: 340px;
}

.fkf-fixture-document-main {
  align-items: center;
  display: flex;
  gap: var(--fkf-space-3);
  min-width: 0;
}

.fkf-fixture-document-preview {
  appearance: none;
  cursor: pointer;
  flex: 0 0 58px;
  padding: 0;
}

.fkf-fixture-document-details,
.fkf-fixture-document-uploader .min-w-0 {
  min-width: 0;
}

.fkf-fixture-document-title {
  color: var(--fkf-text);
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-fixture-document-title:hover,
.fkf-fixture-document-title:focus {
  color: var(--fkf-primary);
}

.fkf-fixture-document-meta {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--fkf-btn-sm-font-size);
  gap: var(--fkf-space-1) var(--fkf-space-3);
  margin-top: var(--fkf-space-1);
}

.fkf-fixture-document-meta > :is(span, a) {
  align-items: center;
  display: inline-flex;
  gap: var(--fkf-space-1);
  white-space: nowrap;
}

.fkf-fixture-document-uploader {
  min-width: 190px;
  width: 24%;
}

.fkf-fixture-document-actions {
  white-space: nowrap;
  width: 1%;
}

.fkf-document-viewer-body {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface-muted) 92%, var(--fkf-primary));
  display: flex;
  justify-content: center;
  min-height: min(68vh, 680px);
  overflow: auto;
  padding: var(--fkf-space-3);
}

.fkf-document-viewer-body.is-image-zoomed {
  align-items: flex-start;
  cursor: grab;
  justify-content: flex-start;
}

.fkf-document-viewer-body.is-image-zoomed.is-panning {
  cursor: grabbing;
}

.fkf-document-preview-trigger {
  cursor: pointer;
}

.fkf-document-card-image {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.fkf-document-viewer-state {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  gap: var(--fkf-space-2);
  justify-content: center;
  text-align: center;
}

.fkf-document-viewer-image {
  display: block;
  max-height: calc(100vh - 220px);
  max-width: 100%;
  object-fit: contain;
  transition: width 120ms ease, height 120ms ease;
  user-select: none;
}

.fkf-document-viewer-zoom-controls {
  margin-inline-end: auto;
}

.fkf-document-viewer-zoom-label {
  min-width: 58px;
  opacity: 1;
  pointer-events: none;
}

.fkf-document-viewer-frame {
  background: #fff;
  border: 0;
  height: min(72vh, 760px);
  width: 100%;
}

@media (max-width: 767.98px) {
  .fkf-fixture-documents-table-wrap {
    overflow: visible;
    padding: 0 var(--fkf-card-spacer-x) var(--fkf-card-spacer-x);
  }

  .fkf-modern table.fkf-responsive-records.fkf-fixture-documents-table[data-fkf-responsive-ready="true"] {
    border-spacing: 0;
  }

  .fkf-modern table.fkf-responsive-records.fkf-fixture-documents-table[data-fkf-responsive-ready="true"] tbody {
    gap: var(--fkf-grid-gap);
  }

  .fkf-modern table.fkf-responsive-records.fkf-fixture-documents-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) {
    display: grid;
    gap: var(--fkf-space-1) var(--fkf-space-2);
    grid-template-areas:
      "document action"
      "uploader action";
    grid-template-columns: minmax(0, 1fr) auto;
    padding: var(--fkf-space-2);
  }

  .fkf-modern table.fkf-responsive-records.fkf-fixture-documents-table[data-fkf-responsive-ready="true"] tbody td {
    display: block;
    min-width: 0;
    padding: var(--fkf-space-1);
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-fixture-documents-table[data-fkf-responsive-ready="true"] tbody td::before {
    content: none;
  }

  .fkf-fixture-document-cell {
    grid-area: document;
  }

  .fkf-fixture-document-uploader {
    grid-area: uploader;
  }

  .fkf-fixture-document-actions {
    align-self: center;
    grid-area: action;
  }

  .fkf-fixture-document-main {
    gap: var(--fkf-space-2);
  }

  .fkf-fixture-document-preview {
    flex-basis: 46px;
    height: 46px;
    width: 46px;
  }

  .fkf-fixture-document-meta {
    gap: 2px var(--fkf-space-2);
    line-height: 1.25;
  }

  .fkf-fixture-document-uploader .fkf-avatar-sm {
    height: 24px;
    width: 24px;
  }

  .fkf-document-viewer-body {
    min-height: 0;
  }

  .fkf-document-viewer-image {
    max-height: calc(100vh - 150px);
  }

  .fkf-document-viewer-frame {
    height: calc(100vh - 150px);
  }
}

.fkf-matchday-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.fkf-matchday-card {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  border-radius: var(--fkf-radius-md);
  min-width: 0;
  overflow: hidden;
}

.fkf-matchday-header {
  align-items: center;
  background: var(--fkf-surface);
  border-bottom: 1px solid var(--fkf-border);
  color: var(--fkf-primary);
  display: flex;
  font-size: 13px;
  font-weight: var(--fkf-font-weight-bold);
  justify-content: space-between;
  padding: 8px 10px;
}

.fkf-matchday-fixtures {
  display: grid;
  gap: 6px;
  padding: 6px;
}

.fkf-fixture-row {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  border-radius: var(--fkf-radius-sm);
  display: grid;
  gap: 6px;
  grid-template-columns: 28px minmax(0, 1fr) auto minmax(0, 1fr);
  min-width: 0;
  overflow: visible;
  padding: 7px 8px;
  position: relative;
}

.fkf-fixture-row:focus-within,
.fkf-fixture-row:has(.dropdown-menu.show) {
  border-color: color-mix(in srgb, var(--fkf-primary) 48%, var(--fkf-border));
  z-index: 30;
}

.fkf-generated-fixture-row .fkf-fixture-meta {
  grid-column: 2 / -1;
}

.fkf-fixture-index,
.fkf-fixture-meta {
  color: var(--fkf-text-muted);
  font-size: 12px;
}

.fkf-fixture-team {
  align-items: center;
  display: flex;
  font-size: 13px;
  gap: 5px;
  min-width: 0;
}

.fkf-fixture-team-home {
  justify-content: flex-end;
  text-align: right;
}

.fkf-fixture-team img {
  border-radius: 50%;
  flex: 0 0 auto;
  height: 20px;
  object-fit: cover;
  width: 20px;
}

.fkf-fixture-score {
  background: var(--fkf-primary);
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
  padding: 2px 6px;
  white-space: nowrap;
}

.fkf-fixture-inline {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.fkf-modern .fkf-fixture-result-badge {
  background: color-mix(in srgb, var(--fkf-primary) 16%, var(--fkf-surface-muted));
  border: 1px solid color-mix(in srgb, var(--fkf-primary) 36%, var(--fkf-border));
  color: color-mix(in srgb, var(--fkf-primary) 82%, var(--fkf-text));
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-fixture-action-cell {
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.fkf-fixture-match-labels {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: center;
  margin-top: 0.35rem;
}

.fkf-fixture-status-label {
  background: color-mix(in srgb, var(--fkf-tertiary) 18%, var(--fkf-surface));
  border: 1px solid color-mix(in srgb, var(--fkf-tertiary) 55%, var(--fkf-border));
  color: color-mix(in srgb, var(--fkf-tertiary) 45%, var(--fkf-text));
}

.fkf-fixture-actions-stack {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 0.35rem;
  justify-content: center;
}

.fkf-fixture-date-time {
  min-width: 9rem;
  text-align: center;
  white-space: normal;
  width: auto;
}

.fkf-fixture-date-time-inner {
  align-items: baseline;
  column-gap: 0.4rem;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 100%;
  row-gap: 0.1rem;
}

.fkf-fixture-date-time-inner > span {
  white-space: nowrap;
}

.fkf-fixture-match-cell {
  min-width: 18rem;
  width: 32%;
}

.fkf-fixture-match-cell .fkf-match-cell {
  text-align: center;
}

.fkf-fixture-meta {
  grid-column: 2 / -1;
}

.fkf-event-results {
  max-height: 430px;
  overflow: auto;
}

.fkf-match-events-table td,
.fkf-match-events-table th {
  vertical-align: middle;
}

.fkf-event-icon {
  height: 18px;
  object-fit: contain;
  width: 18px;
}

.fkf-event-counts {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
}

.fkf-event-count-chip {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-xs);
  display: inline-flex;
  gap: 3px;
  line-height: 1;
  padding: 2px 5px;
}

.fkf-event-count-chip img {
  height: 15px;
  object-fit: contain;
  width: 15px;
}

.fkf-event-count-chip strong {
  font-size: 11px;
}

.fkf-event-logo,
.fkf-event-avatar {
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  flex: 0 0 auto;
  object-fit: cover;
}

.fkf-event-logo {
  height: 20px;
  width: 20px;
}

.fkf-event-avatar {
  height: 28px;
  width: 28px;
}

.fkf-fixture-search-results {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.fkf-fixture-search-results[hidden] {
  display: none;
}

.fkf-fixture-search-results .btn {
  max-width: 100%;
  white-space: normal;
}

.fkf-table-pagination {
  align-items: center;
  background: var(--fkf-surface);
  border-top: 1px solid var(--fkf-border);
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 8px 10px;
}

.fkf-table-pagination[hidden] {
  display: none;
}

.fkf-table-pagination-info {
  color: var(--fkf-text-muted);
  font-size: 12px;
  white-space: nowrap;
}

.fkf-table-pagination-controls,
.fkf-table-pagination-pages {
  align-items: center;
  display: flex;
  gap: 4px;
}

.fkf-table-pagination .btn {
  align-items: center;
  display: inline-flex;
  height: 30px;
  justify-content: center;
  min-width: 30px;
  padding-left: 8px;
  padding-right: 8px;
}

.fkf-table-pagination .btn:disabled {
  opacity: 0.45;
}

.fkf-table-page-ellipsis {
  color: var(--fkf-text-muted);
  font-size: 12px;
  line-height: 30px;
  padding: 0 2px;
}

.fkf-ajax-alerts {
  max-width: min(420px, calc(100vw - 24px));
  position: fixed;
  right: 12px;
  top: calc(var(--fkf-topbar-height) + 12px);
  z-index: 2000;
}

.fkf-scroll-top {
  align-items: center;
  background: var(--fkf-primary);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), #ffffff 18%);
  border-radius: var(--fkf-radius-sm);
  bottom: 72px;
  box-shadow: var(--fkf-shadow-soft);
  color: #ffffff;
  display: inline-flex;
  height: var(--fkf-control-min-height);
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 16px;
  transform: translateY(8px);
  transition: opacity 160ms ease, transform 160ms ease, background-color 160ms ease;
  width: var(--fkf-control-min-height);
  z-index: 1080;
}

.fkf-scroll-top:hover,
.fkf-scroll-top:focus {
  background: color-mix(in srgb, var(--fkf-primary), #000 12%);
  color: #ffffff;
}

.fkf-scroll-top:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--fkf-primary), #ffffff 45%);
  outline-offset: 2px;
}

.fkf-scroll-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.fkf-log-action-title {
  color: var(--fkf-secondary);
}

.fkf-log-footer-link {
  background: var(--fkf-surface);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 32%);
  color: var(--fkf-primary);
}

.fkf-log-footer-link:hover,
.fkf-log-footer-link:focus {
  background: var(--fkf-primary);
  border-color: var(--fkf-primary);
  color: #ffffff;
}

.fkf-action-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

.fkf-action-tile {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  display: flex;
  gap: 10px;
  min-height: 52px;
  padding: 10px 12px;
  text-decoration: none;
}

body.fkf-modern .fkf-action-tile,
body.fkf-modern .fkf-action-tile:visited {
  color: var(--fkf-text);
}

.fkf-action-tile i {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 70%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 34px;
  height: 34px;
  justify-content: center;
}

.fkf-action-tile:hover,
.fkf-action-tile:focus {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 35%);
  color: var(--fkf-primary);
  outline: 0;
}

body.fkf-modern .fkf-action-tile:hover,
body.fkf-modern .fkf-action-tile:focus {
  color: var(--fkf-primary);
}

.fkf-action-tile.is-active {
  background: color-mix(in srgb, var(--fkf-primary), var(--fkf-surface) 88%);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 50%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fkf-primary), transparent 72%);
}

body.fkf-modern .fkf-action-tile.is-active {
  color: var(--fkf-text);
}

.fkf-link-row {
  align-items: center;
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 9px 0;
}

.fkf-link-row:last-child {
  border-bottom: 0;
}

.fkf-link-actions {
  display: inline-flex;
  gap: 6px;
}

.fkf-stat-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.fkf-stat {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 74px;
  overflow: hidden;
  padding: 12px;
}

.fkf-stat-value {
  color: var(--fkf-primary);
  display: block;
  font-size: clamp(17px, 1.45vw, 22px);
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1.1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fkf-stat-label {
  color: var(--fkf-text-muted);
  display: block;
  font-size: clamp(10px, 0.85vw, 12px);
  line-height: 1.25;
  margin-top: auto;
  min-width: 0;
  overflow: hidden;
  padding-top: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-dashboard-page h1 {
  font-size: var(--fkf-page-heading-size);
  line-height: 1.15;
}

.fkf-dashboard-page > .d-flex:first-child p.text-muted {
  font-size: var(--fkf-page-intro-size);
  line-height: var(--fkf-page-intro-line-height);
}

.fkf-dashboard-avatar {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 10px;
  flex: 0 0 var(--fkf-dashboard-avatar-size);
  height: var(--fkf-dashboard-avatar-size);
  object-fit: cover;
  padding: 2px;
  width: var(--fkf-dashboard-avatar-size);
}

.fkf-dashboard-access-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.fkf-dashboard-access-label {
  color: var(--fkf-text-muted);
  font-size: var(--fkf-dashboard-access-font-size);
  font-weight: var(--fkf-font-weight-semibold);
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.fkf-dashboard-access-chip {
  --fkf-access-chip-color: var(--fkf-primary);
  align-items: center;
  background: color-mix(in srgb, var(--fkf-access-chip-color), transparent 90%);
  border: 1px solid color-mix(in srgb, var(--fkf-access-chip-color), transparent 68%);
  border-radius: 999px;
  color: color-mix(in srgb, var(--fkf-access-chip-color), var(--fkf-text) 22%);
  cursor: default;
  display: inline-flex;
  font-size: var(--fkf-dashboard-access-font-size);
  font-weight: var(--fkf-font-weight-semibold);
  gap: 5px;
  line-height: 1.1;
  padding: 4px 8px;
  user-select: text;
}

.fkf-dashboard-access-chip::before {
  background: currentColor;
  border-radius: 999px;
  content: "";
  flex: 0 0 5px;
  height: 5px;
  opacity: 0.85;
  width: 5px;
}

.fkf-dashboard-access-chip-secondary {
  --fkf-access-chip-color: var(--fkf-tertiary);
}

.fkf-dashboard-access-chip-success {
  --fkf-access-chip-color: var(--fkf-success);
}

.fkf-dashboard-access-chip-info {
  --fkf-access-chip-color: var(--fkf-secondary);
}

.fkf-dashboard-priority {
  display: grid;
  gap: var(--fkf-dashboard-card-gap);
}

.fkf-dashboard-stat-grid {
  display: grid;
  gap: var(--fkf-dashboard-card-gap);
  grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
}

.fkf-dashboard-stat {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: var(--fkf-dashboard-card-gap);
  min-height: var(--fkf-dashboard-stat-min-height);
  padding: var(--fkf-dashboard-card-padding) calc(var(--fkf-dashboard-card-padding) + 2px);
}

.fkf-dashboard-stat i {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 72%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 34px;
  height: 34px;
  justify-content: center;
}

.fkf-dashboard-stat strong {
  color: var(--fkf-primary);
  display: block;
  font-size: var(--fkf-dashboard-stat-value-size);
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1.05;
}

.fkf-dashboard-stat span {
  color: var(--fkf-text-muted);
  display: block;
  font-size: var(--fkf-dashboard-stat-label-size);
  margin-top: 3px;
}

.fkf-dashboard-stat-success strong,
.fkf-dashboard-stat-success i {
  color: var(--fkf-success);
}

.fkf-dashboard-stat-warning strong,
.fkf-dashboard-stat-warning i {
  color: #b78000;
}

.fkf-dashboard-stat-danger strong,
.fkf-dashboard-stat-danger i {
  color: var(--fkf-danger);
}

.fkf-dashboard-action-grid {
  display: grid;
  gap: var(--fkf-dashboard-card-gap);
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.fkf-dashboard-dense-action-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 576px) {
  .fkf-dashboard-dense-action-grid {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}

.fkf-dashboard-action {
  align-items: flex-start;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  display: flex;
  gap: var(--fkf-dashboard-card-gap);
  min-height: var(--fkf-dashboard-action-min-height);
  padding: var(--fkf-dashboard-card-padding) calc(var(--fkf-dashboard-card-padding) + 2px);
  text-decoration: none;
}

body.fkf-modern .fkf-dashboard-action,
body.fkf-modern .fkf-dashboard-action:visited {
  color: var(--fkf-text);
}

.fkf-dashboard-action:hover,
.fkf-dashboard-action:focus {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 35%);
  color: var(--fkf-primary);
  outline: 0;
}

.fkf-dashboard-action-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 70%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 var(--fkf-dashboard-action-icon-size);
  height: var(--fkf-dashboard-action-icon-size);
  justify-content: center;
  width: var(--fkf-dashboard-action-icon-size);
}

.fkf-dashboard-action-text {
  min-width: 0;
}

.fkf-dashboard-action-title {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  font-size: var(--fkf-dashboard-action-title-size);
  font-weight: var(--fkf-font-weight-bold);
  gap: 6px;
  line-height: 1.2;
  min-width: 0;
  white-space: normal;
  word-break: normal;
}

.fkf-dashboard-action-desc {
  color: var(--fkf-text-muted);
  display: block;
  font-size: var(--fkf-dashboard-action-desc-size);
  line-height: 1.35;
  margin-top: 5px;
}

.fkf-dashboard-search-grid {
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-dashboard-card-gap);
}

.fkf-dashboard-top-notifications {
  display: grid;
  gap: var(--fkf-dashboard-card-gap);
}

.fkf-dashboard-top-notification-list {
  display: grid;
  gap: var(--fkf-dashboard-card-gap);
}

.fkf-dashboard-scroll-panel {
  max-height: 430px;
  overflow-y: auto;
  padding-right: 4px;
}

.fkf-dashboard-notification {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-left: 4px solid var(--fkf-primary);
  border-radius: var(--fkf-radius-md);
  padding: var(--fkf-dashboard-card-padding);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.fkf-dashboard-notification-success {
  border-left-color: var(--fkf-success);
}

.fkf-dashboard-notification-info {
  border-left-color: var(--fkf-info);
}

.fkf-dashboard-notification-primary {
  border-left-color: var(--fkf-primary);
}

.fkf-dashboard-notification-secondary {
  border-left-color: var(--fkf-secondary);
}

.fkf-dashboard-notification-warning {
  border-left-color: var(--fkf-warning);
}

.fkf-dashboard-notification-danger {
  border-left-color: var(--fkf-danger);
}

.fkf-user-profile-notification {
  box-shadow: none;
}

.fkf-dashboard-notification-body {
  color: var(--fkf-text);
  line-height: 1.35;
}

.fkf-dashboard-notification-body > :last-child {
  margin-bottom: 0;
}

.fkf-dashboard-notification.is-dismissing {
  opacity: 0;
  transform: translateY(-4px);
}

.fkf-dashboard-log-entry {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-left: 4px solid color-mix(in srgb, var(--fkf-primary), transparent 30%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  min-width: 0;
  overflow-wrap: anywhere;
  padding: var(--fkf-dashboard-card-padding);
}

.fkf-dashboard-log-entry .small {
  line-height: 1.35;
}

.fkf-dashboard-log-entry .small > :last-child {
  margin-bottom: 0;
}

.fkf-dashboard-help {
  max-height: 170px;
  overflow: auto;
}

.fkf-dashboard-help-card .card-body,
.fkf-dashboard-logs-card .card-body {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.fkf-dashboard-help-card .fkf-dashboard-help {
  flex: 1 1 auto;
  max-height: none;
  min-height: 0;
}

@media (min-width: 992px) {
  .fkf-dashboard-reference-row.is-split > [class*="col-lg-"] {
    display: flex;
  }

  .fkf-dashboard-reference-row.is-split .fkf-dashboard-help-card,
  .fkf-dashboard-reference-row.is-split .fkf-dashboard-logs-card {
    width: 100%;
  }

}

.fkf-dashboard-reference-footer {
  background: transparent;
  padding: var(--fkf-space-2);
}

.fkf-appointment-range-toggle {
  flex: 0 0 auto;
  width: auto;
}

.fkf-appointment-range-toggle .btn {
  min-width: 82px;
}

.fkf-fixture-hero {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.fkf-fixture-team {
  align-items: center;
  display: flex;
  gap: 8px;
  min-width: 0;
}

.fkf-fixture-team strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-fixture-score {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 72px;
  text-align: center;
}

.fkf-fixture-score span {
  color: var(--fkf-primary);
  font-size: 20px;
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1;
}

.fkf-fixture-score small {
  color: var(--fkf-text-muted);
  white-space: nowrap;
}

.fkf-match-strip-card .card-body {
  padding: var(--fkf-card-spacer-y) var(--fkf-card-spacer-x);
}

.fkf-single-match-strip {
  align-items: center;
  display: grid;
  gap: var(--fkf-grid-gap);
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.fkf-match-strip-shell {
  align-items: center;
  display: grid;
  gap: var(--fkf-layout-gap);
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.fkf-match-strip-shell .fkf-single-match-strip {
  min-width: 0;
}

.fkf-match-nav {
  align-items: center;
  border: 1px solid var(--fkf-border);
  border-radius: 6px;
  color: var(--fkf-primary);
  display: inline-flex;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-heavy);
  gap: calc(var(--fkf-layout-gap) * 0.45);
  justify-content: center;
  min-height: var(--fkf-control-min-height);
  padding: calc(var(--fkf-btn-padding-y) * 0.9) var(--fkf-btn-padding-x);
  text-decoration: none;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  white-space: nowrap;
}

.fkf-match-nav:hover,
.fkf-match-nav:focus {
  background: color-mix(in srgb, var(--fkf-primary), transparent 90%);
  border-color: color-mix(in srgb, var(--fkf-primary), transparent 50%);
  color: var(--fkf-primary);
  text-decoration: none;
}

.fkf-match-nav.is-disabled {
  color: var(--fkf-text-muted);
  opacity: 0.42;
  pointer-events: none;
}

.fkf-single-match-team {
  align-items: center;
  display: flex;
  gap: calc(var(--fkf-layout-gap) * 0.8);
  min-width: 0;
}

.fkf-single-match-team-home {
  justify-content: flex-end;
  text-align: right;
}

.fkf-single-match-team strong {
  color: var(--fkf-text);
  font-size: 14px;
  font-weight: var(--fkf-font-weight-heavy);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-single-match-team .fkf-logo-xs {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  height: 28px;
  width: 28px;
}

.fkf-single-match-center {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 98px;
  text-align: center;
}

.fkf-single-match-score {
  background: color-mix(in srgb, var(--fkf-primary), transparent 86%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 52%);
  border-radius: 5px;
  color: var(--fkf-primary);
  font-size: 13px;
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1;
  min-width: 44px;
  padding: 5px 10px;
}

.fkf-single-match-time {
  color: var(--fkf-text-muted);
  font-size: 12px;
  font-weight: var(--fkf-font-weight-semibold);
  white-space: nowrap;
}

.fkf-single-match-meta {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 8px 16px;
  justify-content: center;
  margin-top: 10px;
}

.fkf-subsection-title {
  color: var(--fkf-text);
  font-size: 13px;
  font-weight: var(--fkf-font-weight-heavy);
  margin-bottom: 8px;
}

.fkf-selected-officials,
.fkf-official-results {
  display: grid;
  gap: 8px;
}

.fkf-selected-officials {
  grid-template-columns: 1fr;
}

.fkf-official-results {
  grid-template-columns: 1fr;
}

.fkf-official-load-more {
  display: flex;
  justify-content: center;
}

.fkf-official-load-more .btn {
  width: 100%;
}

@media (min-width: 576px) {
  .fkf-selected-officials,
  .fkf-official-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fkf-official-load-more .btn {
    font-size: 0.9rem;
    min-height: 2.55rem;
    min-width: 16rem;
    padding-inline: 2rem;
    width: auto;
  }
}

@media (min-width: 992px) {
  .fkf-selected-officials {
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  }

  .fkf-official-results {
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  }
}

.fkf-appointment-detail-list {
  display: grid;
  gap: 8px;
}

.fkf-appointment-compact-list {
  display: grid;
  gap: 0.2rem;
}

.fkf-appointment-compact {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding-bottom: 0.24rem;
  position: relative;
}

.fkf-appointment-compact:not(:last-child)::after {
  background: color-mix(in srgb, var(--fkf-text-muted), transparent 78%);
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: min(72%, 220px);
}

.fkf-appointment-date-cell {
  min-width: 104px;
  vertical-align: top;
  white-space: nowrap;
  width: 1%;
}

.fkf-appointment-date-stack {
  align-items: flex-start;
  column-gap: 0.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.fkf-appointment-date-stack > span {
  white-space: nowrap;
}

.fkf-appointment-match-cell .fkf-match-cell {
  min-width: min(22rem, 100%);
}

.fkf-appointment-response-list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fkf-appointment-response-row {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: inline-flex;
  gap: 6px;
  justify-content: flex-start;
  max-width: 100%;
  min-width: 0;
  padding: 5px 6px 5px 9px;
}

.fkf-appointment-response-name {
  min-width: 0;
}

.fkf-appointment-response-name a {
  display: inline-block;
  max-width: 180px;
}

.fkf-appointment-response-actions {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 6px;
}

.fkf-appointment-response-actions .btn {
  align-items: center;
  display: inline-flex;
  gap: 2px;
  padding: 2px 6px;
}

.fkf-appointment-channel-icons {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 3px;
  line-height: 1;
  vertical-align: middle;
}

.fkf-appointment-channel {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  display: inline-flex;
  font-size: 10px;
  height: 19px;
  justify-content: center;
  width: 19px;
}

.fkf-appointment-channel-inapp {
  color: var(--fkf-primary);
}

.fkf-appointment-channel-sms {
  color: #2563eb;
}

.fkf-appointment-channel-whatsapp {
  color: #128c7e;
}

.fkf-appointment-role-badge {
  border: 1px solid rgba(0, 0, 0, 0.08);
  font-size: 11px;
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1;
  min-width: 28px;
  padding: 4px 6px;
  text-align: center;
}

html[data-theme="dark"] .fkf-appointment-channel-sms,
body.fkf-modern[data-theme="dark"] .fkf-appointment-channel-sms {
  color: #7fb3ff;
}

html[data-theme="dark"] .fkf-appointment-channel-whatsapp,
body.fkf-modern[data-theme="dark"] .fkf-appointment-channel-whatsapp {
  color: #5fd29a;
}

.fkf-appointment-detail {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
  padding: 8px;
}

.fkf-appointment-submission-summary {
  align-items: center;
  border-top: 1px solid color-mix(in srgb, var(--fkf-border), transparent 35%);
  display: flex;
  flex: 1 0 100%;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin-top: 6px;
  padding-top: 6px;
  text-align: left;
}

.fkf-appointment-lock {
  align-items: center;
  color: var(--fkf-text-muted);
  cursor: help;
  display: inline-flex;
  font-size: 0.9rem;
  line-height: 1;
}

.fkf-my-appointment-detail {
  align-items: flex-start;
  background: color-mix(in srgb, var(--fkf-primary), var(--fkf-surface) 90%);
  flex-wrap: wrap;
}

.fkf-my-appointment-detail .fkf-appointment-submission-summary {
  width: 100%;
}

.fkf-report-match-submission {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px 6px;
  justify-content: center;
  margin-top: 4px;
  max-width: 100%;
}

.fkf-report-match-submission .text-nowrap {
  align-items: center;
  display: inline-flex;
  gap: 3px;
}

.fkf-report-match-submission .fkf-logo-xs {
  height: 20px;
  width: 20px;
}

.fkf-selected-official,
.fkf-official-result {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
  padding: 8px;
}

.fkf-selected-official,
.fkf-official-result.is-selected {
  background: color-mix(in srgb, var(--fkf-primary) 16%, var(--fkf-surface));
  border-color: color-mix(in srgb, var(--fkf-primary) 52%, var(--fkf-border));
}

.fkf-selected-official .fw-semibold,
.fkf-official-result.is-selected .fw-semibold {
  color: color-mix(in srgb, var(--fkf-primary) 68%, var(--fkf-text));
}

.fkf-selected-official .text-muted,
.fkf-official-result.is-selected .text-muted {
  color: color-mix(in srgb, var(--fkf-primary) 48%, var(--fkf-text-muted)) !important;
}

.fkf-selected-official-main {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  gap: 8px;
  min-width: 0;
}

.fkf-selected-official-main > .min-w-0 {
  flex: 1 1 auto;
  min-width: 0;
}

.fkf-selected-official-meta {
  align-items: center;
  display: flex;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}

.fkf-selected-official-meta .text-truncate {
  min-width: 0;
}

.fkf-selected-official-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 6px;
}

.fkf-selected-official-actions .form-select {
  flex: 0 0 auto;
  max-width: 4.75rem;
  min-width: 3.75rem;
  width: 4.75rem;
}

.fkf-appointment-submit-strip {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 8px;
}

.fkf-appointment-submit-strip .btn[type="submit"] {
  min-width: 9rem;
}

.fkf-appointment-filters {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: grid;
  gap: 0;
  padding: 8px 8px 4px;
}

.fkf-filter-row {
  display: grid;
  gap: 5px;
  grid-template-columns: 1fr;
  padding-bottom: 7px;
}

.fkf-filter-row + .fkf-filter-row {
  padding-top: 7px;
}

.fkf-filter-scroll-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 2px;
  scrollbar-width: thin;
}

.fkf-filter-scroll-grid.is-overflowing {
  display: grid;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  grid-template-rows: repeat(2, auto);
}

.fkf-filter-scroll-grid > .btn {
  flex: 0 0 auto;
  white-space: nowrap;
}

.fkf-filter-row > span {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  font-size: 11px;
  font-weight: var(--fkf-font-weight-semibold);
  gap: 8px;
  line-height: 1.2;
  padding-top: 0;
}

.fkf-filter-row > span::after {
  border-top: 1px solid color-mix(in srgb, var(--fkf-border), transparent 35%);
  content: "";
  flex: 1 1 auto;
  min-width: 32px;
}

.fkf-appointment-filters .btn {
  --bs-btn-padding-y: 0.16rem;
  font-size: 12px;
}

.fkf-active-appointment-badge {
  background: color-mix(in srgb, var(--fkf-warning), var(--fkf-surface) 28%);
  border: 1px solid color-mix(in srgb, var(--fkf-warning), #7a5700 24%);
  color: #4f3900;
  flex: 0 0 auto;
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1.1;
}

.fkf-level-badge {
  border: 1px solid color-mix(in srgb, currentColor, transparent 72%);
  flex: 0 0 auto;
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1.1;
}

html[data-theme="dark"] body.fkf-modern .fkf-active-appointment-badge,
body.fkf-modern[data-theme="dark"] .fkf-active-appointment-badge {
  background: color-mix(in srgb, var(--fkf-warning), var(--fkf-surface) 70%);
  border-color: color-mix(in srgb, var(--fkf-warning), transparent 30%);
  color: #ffe49a;
}

@media (max-width: 575.98px) {
  .fkf-fixture-hero {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .fkf-fixture-team {
    justify-content: center;
  }

  .fkf-single-match-strip {
    gap: 6px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  .fkf-match-strip-shell {
    gap: 6px;
    grid-template-columns: var(--fkf-control-min-height) minmax(0, 1fr) var(--fkf-control-min-height);
  }

  .fkf-match-nav {
    min-height: var(--fkf-control-min-height);
    padding: 0;
    width: var(--fkf-control-min-height);
  }

  .fkf-match-nav span {
    display: none;
  }

  .fkf-single-match-team-home {
    justify-content: flex-end;
    text-align: right;
  }

  .fkf-single-match-team {
    gap: 5px;
  }

  .fkf-single-match-team strong {
    font-size: 12px;
  }

  .fkf-single-match-team .fkf-logo-xs {
    height: 22px;
    width: 22px;
  }

  .fkf-single-match-center {
    min-width: 72px;
  }

  .fkf-single-match-score {
    font-size: 12px;
    min-width: 36px;
    padding: 4px 8px;
  }

  .fkf-single-match-time {
    font-size: 11px;
  }

  .fkf-single-match-meta {
    gap: 6px 12px;
  }

  .fkf-selected-official,
  .fkf-appointment-detail {
    align-items: stretch;
    flex-direction: column;
  }

  .fkf-selected-official {
    align-items: center;
    flex-direction: row;
    gap: 6px;
    padding: 7px;
  }

  .fkf-selected-official .fkf-selected-official-main {
    flex: 1 1 auto;
  }

  .fkf-appointment-submission-summary {
    text-align: left;
  }

  .fkf-my-appointment-detail {
    align-items: center;
    display: flex;
    gap: 6px 8px;
  }

  .fkf-my-appointment-detail .fkf-appointment-lock {
    align-self: center;
  }

  .fkf-my-appointment-detail .fkf-appointment-submission-summary {
    align-items: center;
    display: flex;
    flex-direction: row;
    gap: 4px 8px;
    justify-content: center;
    margin-top: 2px;
    width: 100%;
  }

  .fkf-official-result {
    align-items: center;
    flex-direction: row;
    gap: 8px;
  }

  .fkf-official-result .fkf-selected-official-main {
    flex: 1 1 auto;
  }

  .fkf-official-result .fkf-avatar-sm {
    height: 48px;
    width: 48px;
  }

  .fkf-official-result .btn {
    flex: 0 0 auto;
    min-width: 76px;
    width: auto;
  }

  .fkf-appointment-submit-strip {
    align-items: stretch;
    flex-direction: column;
  }

  .fkf-selected-official-actions {
    align-self: center;
    justify-content: flex-end;
    max-width: 100%;
    width: auto;
  }

  .fkf-selected-official-actions .form-select {
    flex: 0 0 auto;
  }

  .fkf-filter-row {
    grid-template-columns: 1fr;
  }

  .fkf-appointment-range-toggle {
    align-self: flex-end;
  }

  .fkf-appointment-range-toggle .btn {
    min-width: 74px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 767.98px) {
  #myAppointmentsTable .fkf-match-cell,
  #myAppointmentsTable .fkf-match-layout,
  #myAppointmentsTable .fkf-match-side,
  #myAppointmentsTable .fkf-match-score {
    justify-content: center;
    justify-self: center;
    text-align: center;
  }

  #myAppointmentsTable .fkf-match-side {
    width: 100%;
  }
}

.fkf-summary-strip {
  --bs-gutter-x: 0;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  margin-bottom: 14px;
  margin-left: 0;
  margin-right: 0;
}

.fkf-summary-strip::before,
.fkf-summary-strip::after {
  content: none;
}

.fkf-summary-strip > [class*="col-"],
.fkf-summary-strip > .fkf-summary-col-5,
.fkf-summary-strip > .fkf-summary-col {
  float: none;
  max-width: none;
  padding: 0;
  width: auto;
}

.fkf-summary-strip-compact {
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(98px, 1fr));
  margin-bottom: 10px;
}

.fkf-summary-strip-compact .fkf-summary-card {
  min-height: 56px;
  padding: 8px 24px 8px 8px;
}

.fkf-summary-strip-compact .fkf-summary-value {
  font-size: 17px;
}

.fkf-summary-strip-compact .fkf-summary-label {
  font-size: 11px;
  margin-top: 2px;
}

.fkf-summary-strip-compact .fkf-summary-icon {
  font-size: 14px;
  right: 7px;
  top: 9px;
}

@media (max-width: 575.98px) {
  .fkf-summary-strip,
  .fkf-stat-grid,
  .fkf-summary-mini-grid {
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .fkf-summary-strip-compact {
    gap: 5px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .fkf-summary-card,
  .fkf-stat,
  .fkf-summary-mini {
    min-height: 68px;
    padding: 9px clamp(24px, 7vw, 34px) 9px clamp(7px, 2.4vw, 12px);
  }

  .fkf-summary-strip-compact .fkf-summary-card {
    min-height: 50px;
    padding: 7px 18px 7px 7px;
  }

  .fkf-summary-strip-compact .fkf-summary-value {
    font-size: 15px;
  }

  .fkf-summary-strip-compact .fkf-summary-label {
    font-size: 10px;
  }

  .fkf-summary-strip-compact .fkf-summary-icon {
    font-size: 12px;
    right: 5px;
    top: 8px;
  }
}

.fkf-summary-card,
.fkf-summary-mini {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 74px;
  overflow: hidden;
  padding: 12px 42px 12px 12px;
  position: relative;
}

.fkf-team-competition-cards {
  display: grid;
  gap: 10px;
}

.fkf-team-competition-card {
  background: color-mix(in srgb, var(--fkf-primary), transparent 95%);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  padding: 10px;
}

.fkf-team-competition-title {
  align-items: flex-start;
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-bottom: 10px;
  padding-bottom: 8px;
}

.fkf-team-competition-index {
  color: var(--fkf-text);
  flex: 0 0 auto;
  font-weight: var(--fkf-font-weight-semibold);
  line-height: 1.9;
}

.fkf-team-competition-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.fkf-team-competition-actions .btn {
  justify-content: center;
  min-width: 0;
  white-space: nowrap;
}

.fkf-team-profile-manager-list {
  display: grid;
  gap: var(--fkf-grid-gap);
  padding: var(--fkf-card-spacer-x);
}

.fkf-team-profile-manager-card {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  border-radius: var(--fkf-radius-md);
  box-shadow: var(--fkf-shadow-sm);
  display: grid;
  gap: 4px 8px;
  grid-template-areas:
    "index person access"
    ". meta access";
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-width: 0;
  overflow: hidden;
  padding: var(--fkf-space-2);
}

.fkf-team-profile-manager-card.is-revoked {
  background: color-mix(in srgb, var(--fkf-warning) 9%, var(--fkf-surface));
}

.fkf-team-profile-manager-index {
  align-self: start;
  color: var(--fkf-text-muted);
  font-size: calc(var(--fkf-table-font-size) - 0.1rem);
  grid-area: index;
  line-height: 1.2;
  padding-top: 2px;
}

.fkf-team-profile-manager-person {
  align-items: center;
  display: flex;
  gap: var(--fkf-space-2);
  grid-area: person;
  min-width: 0;
}

.fkf-team-profile-manager-person .fkf-avatar-sm {
  flex: 0 0 auto;
}

.fkf-team-profile-manager-person :is(a, .fw-semibold) {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-team-profile-manager-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--fkf-space-1);
  grid-area: meta;
  min-width: 0;
  overflow: hidden;
}

.fkf-team-profile-manager-meta > .text-truncate {
  max-width: 100%;
}

.fkf-team-profile-manager-access {
  align-items: flex-end;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: var(--fkf-space-1);
  grid-area: access;
  justify-content: space-between;
}

.fkf-team-profile-manager-access .btn {
  white-space: nowrap;
}

.fkf-team-pdf-group {
  display: inline-flex;
  min-width: 0;
}

.fkf-team-pdf-group .btn:not(.disabled) {
  flex: 0 0 auto;
}

.fkf-team-pdf-group .btn.disabled {
  flex: 0 0 auto;
  opacity: 1;
  pointer-events: none;
}

.fkf-nav-tree-shell {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  overflow: visible;
  position: relative;
}

.fkf-nav-tree-detail-card {
  align-self: start;
  flex: 0 0 auto;
  position: sticky;
  right: 0;
  top: calc(var(--fkf-topbar-height, 58px) + 12px);
  overflow: visible;
  width: min(520px, 100%);
  z-index: 2;
}

.fkf-nav-tree-detail-card .card-body {
  overflow: visible;
}

.fkf-nav-tree-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 10px;
}

.fkf-nav-tree-stats span {
  background: color-mix(in srgb, var(--fkf-primary), transparent 93%);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  color: var(--fkf-text-muted);
  font-size: 11px;
  padding: 3px 8px;
}

.fkf-nav-tree {
  display: grid;
  gap: 4px;
  min-width: 100%;
  width: 100%;
}

.fkf-nav-tree-node {
  min-width: 0;
  width: 100%;
}

.fkf-nav-tree-row {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  display: grid;
  column-gap: 6px;
  grid-template-columns: 22px minmax(0, 1fr) max-content 40px;
  row-gap: 0;
  min-width: 100%;
  padding: 5px 7px;
  text-align: left;
  width: 100%;
}

.fkf-nav-tree-row:hover,
.fkf-nav-tree-row.active {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
  border-color: color-mix(in srgb, var(--fkf-primary), transparent 55%);
}

.fkf-nav-tree-toggle {
  color: var(--fkf-primary);
  text-align: center;
}

.fkf-nav-tree-main {
  min-width: 0;
}

.fkf-nav-tree-label {
  align-items: center;
  display: flex;
  gap: 6px;
  min-width: 0;
}

.fkf-nav-tree-label img,
.fkf-nav-tree-label i {
  border-radius: 999px;
  flex: 0 0 auto;
  height: 20px;
  object-fit: cover;
  width: 20px;
}

.fkf-nav-tree-label span {
  font-size: 13px;
  font-weight: var(--fkf-font-weight-semibold);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-nav-tree-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: flex-end;
  margin-right: 6px;
}

.fkf-nav-tree-meta .badge {
  font-size: 10px;
}

.fkf-nav-tree-info {
  align-items: center;
  align-self: stretch;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 0;
  border-radius: 0 var(--fkf-radius-sm) var(--fkf-radius-sm) 0;
  color: var(--fkf-primary);
  display: inline-flex;
  height: auto;
  justify-content: center;
  margin: -5px -7px -5px 0;
  width: 40px;
}

.fkf-nav-tree-info:hover {
  background: color-mix(in srgb, var(--fkf-primary), transparent 78%);
}

.fkf-nav-tree-info i {
  font-size: 14px;
}

.fkf-nav-tree-children {
  border-left: 1px dashed color-mix(in srgb, var(--fkf-primary), transparent 60%);
  display: grid;
  gap: 4px;
  margin: 4px 0 4px 16px;
  min-width: calc(100% - 16px);
  padding-left: 8px;
  width: auto;
}

.fkf-nav-tree-loading {
  color: var(--fkf-text-muted);
  font-size: 12px;
  padding: 4px 8px;
}

.fkf-nav-tree-search-results {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  box-shadow: var(--fkf-shadow-sm);
  margin-bottom: 8px;
  max-height: 220px;
  overflow: auto;
}

.fkf-nav-search-result {
  align-items: center;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--fkf-border);
  color: var(--fkf-text);
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 6px 8px;
  text-align: left;
  width: 100%;
}

.fkf-nav-search-result:hover {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
}

.fkf-nav-search-result span {
  font-size: 12px;
  font-weight: var(--fkf-font-weight-semibold);
}

.fkf-nav-search-result small {
  color: var(--fkf-text-muted);
  font-size: 10px;
}

.fkf-nav-detail-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.fkf-nav-detail-grid {
  display: grid;
  gap: 6px 10px;
  grid-template-columns: auto minmax(0, 1fr);
}

.fkf-nav-detail-grid span {
  color: var(--fkf-text-muted);
  font-size: 12px;
}

.fkf-nav-detail-grid strong {
  font-size: 12px;
  overflow-wrap: anywhere;
}

.fkf-nav-detail-children {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  max-width: min(100%, 520px);
  min-width: 0;
}

.fkf-nav-detail-children span {
  background: color-mix(in srgb, var(--fkf-primary), transparent 93%);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  color: var(--fkf-text);
  font-size: 11px;
  max-width: 100%;
  overflow-wrap: anywhere;
  padding: 3px 8px;
  white-space: normal;
}

@media (max-width: 991.98px) {
  .fkf-nav-tree-shell {
    max-height: none;
  }
}

@media (max-width: 991.98px) {
  .fkf-nav-tree-detail-card:not([hidden]) {
    box-shadow: var(--fkf-shadow-lg);
    max-width: min(420px, calc(100vw - 22px));
    position: fixed;
    right: 10px;
    top: calc(var(--fkf-topbar-height, 58px) + 10px);
    width: min(420px, calc(100vw - 22px));
    z-index: 1050;
  }
}

@media (max-width: 575.98px) {
  .fkf-nav-tree-row {
    grid-template-columns: 20px minmax(0, 1fr) max-content 40px;
  }

  .fkf-nav-tree-meta {
    grid-column: auto;
    justify-content: flex-end;
  }
}

@media (max-width: 575.98px) {
  .fkf-team-competition-title {
    align-items: stretch;
    flex-direction: column;
  }

  .fkf-team-competition-actions {
    align-items: flex-start;
  }
}

.fkf-summary-value,
.fkf-stat-value,
.fkf-summary-mini strong {
  color: var(--fkf-primary);
  display: block;
  font-size: clamp(17px, 1.45vw, 22px);
  font-weight: var(--fkf-font-weight-heavy);
  line-height: 1.1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fkf-summary-label,
.fkf-stat-label,
.fkf-summary-mini span {
  color: var(--fkf-text-muted);
  display: block;
  font-size: clamp(10px, 0.85vw, 12px);
  line-height: 1.25;
  margin-top: auto;
  min-width: 0;
  overflow: hidden;
  padding-top: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-summary-icon {
  color: color-mix(in srgb, var(--fkf-primary), transparent 45%);
  font-size: 22px;
  line-height: 1;
  position: absolute;
  right: 12px;
  top: 14px;
}

.fkf-summary-success .fkf-summary-value,
.fkf-summary-accepted .fkf-summary-value,
.fkf-summary-success strong,
.fkf-summary-accepted strong {
  color: var(--fkf-success);
}

.fkf-summary-success .fkf-summary-icon,
.fkf-summary-accepted .fkf-summary-icon {
  color: color-mix(in srgb, var(--fkf-success), transparent 35%);
}

.fkf-summary-danger .fkf-summary-value,
.fkf-summary-rejected .fkf-summary-value,
.fkf-summary-cancelled .fkf-summary-value,
.fkf-summary-danger strong,
.fkf-summary-rejected strong,
.fkf-summary-cancelled strong {
  color: var(--fkf-danger);
}

.fkf-summary-danger .fkf-summary-icon,
.fkf-summary-rejected .fkf-summary-icon,
.fkf-summary-cancelled .fkf-summary-icon {
  color: color-mix(in srgb, var(--fkf-danger), transparent 35%);
}

.fkf-summary-warning .fkf-summary-value,
.fkf-summary-pending .fkf-summary-value,
.fkf-summary-warning strong,
.fkf-summary-pending strong {
  color: #b78000;
}

.fkf-summary-warning .fkf-summary-icon,
.fkf-summary-pending .fkf-summary-icon {
  color: color-mix(in srgb, var(--fkf-warning), #7a5700 35%);
}

.fkf-summary-dark .fkf-summary-value,
.fkf-summary-purple .fkf-summary-value,
.fkf-summary-dark strong,
.fkf-summary-purple strong {
  color: var(--fkf-secondary);
}

.fkf-summary-dark .fkf-summary-icon,
.fkf-summary-purple .fkf-summary-icon {
  color: color-mix(in srgb, var(--fkf-secondary), transparent 35%);
}

.fkf-summary-mini-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

@media (max-width: 575.98px) {
  .fkf-summary-strip,
  .fkf-stat-grid,
  .fkf-summary-mini-grid {
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .fkf-summary-strip-compact {
    gap: 5px;
  }

  .fkf-summary-card,
  .fkf-stat,
  .fkf-summary-mini {
    min-height: 68px;
    padding: 9px clamp(24px, 7vw, 34px) 9px clamp(7px, 2.4vw, 12px);
  }

  .fkf-summary-strip-compact .fkf-summary-card {
    min-height: 50px;
    padding: 7px 18px 7px 7px;
  }

  .fkf-summary-strip-compact .fkf-summary-value {
    font-size: 15px;
  }

  .fkf-summary-strip-compact .fkf-summary-label {
    font-size: 10px;
  }

  .fkf-summary-strip-compact .fkf-summary-icon {
    font-size: 12px;
    right: 5px;
    top: 8px;
  }
}

@media (max-width: 575.98px) {
  .fkf-player-status-summary-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .fkf-player-status-summary-strip .fkf-summary-card {
    padding-inline-end: 14px;
  }

  .fkf-player-status-summary-strip .fkf-summary-label {
    font-size: 9px;
  }

  .fkf-players-table-wrap {
    overflow-x: visible;
  }

  #competitionPlayersTable.fkf-players-responsive-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block;
  }

  #competitionPlayersTable.fkf-players-responsive-table thead {
    display: none;
  }

  #competitionPlayersTable.fkf-players-responsive-table tbody {
    display: grid;
    gap: 8px;
    padding: 8px;
  }

  #competitionPlayersTable.fkf-players-responsive-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "player player"
      "team status";
    column-gap: 8px;
    row-gap: 8px;
    overflow: hidden;
    padding: 8px;
  }

  #competitionPlayersTable.fkf-players-responsive-table td {
    border: 0;
    display: block;
    padding: 0;
  }

  #competitionPlayersTable.fkf-players-responsive-table .fkf-player-card-index {
    display: none;
  }

  #competitionPlayersTable.fkf-players-responsive-table .fkf-player-card-player {
    border-bottom: 1px solid var(--fkf-border);
    padding-bottom: 8px;
    grid-area: player;
  }

  #competitionPlayersTable.fkf-players-responsive-table .fkf-player-card-team {
    grid-area: team;
    min-width: 0;
  }

  #competitionPlayersTable.fkf-players-responsive-table .fkf-player-card-status {
    display: flex;
    grid-area: status;
    justify-content: flex-end;
    align-items: center;
  }
}

.player-status-legend {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-left: 4px solid var(--fkf-primary);
  border-radius: var(--fkf-radius-sm);
  margin: 8px 0 0;
  padding: 8px 10px;
}

.player-status-legend-item {
  align-items: center;
  display: flex;
  font-size: 12px;
  gap: 7px;
  line-height: 17px;
  margin: 4px 0;
}

.player-status-chip {
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  flex: 0 0 72px;
  font-size: 11px;
  font-weight: var(--fkf-font-weight-bold);
  line-height: 18px;
  padding: 0 7px;
  text-align: center;
  text-transform: uppercase;
}

.player-status-pending {
  background: #9a6a00;
}

.player-status-valid {
  background: var(--fkf-success);
}

.player-status-invalid {
  background: var(--fkf-danger);
}

.player-status-inactive {
  background: #64748b;
}

.player-window-compact {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}

.fkf-player-setup-button {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}

.fkf-card-preview {
  position: relative;
}

.fkf-card-preview::after {
  color: rgba(105, 113, 126, 0.58);
  content: "Preview";
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(0.9rem, 2vw, 1.08rem);
  font-style: italic;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  pointer-events: none;
  position: absolute;
  left: 50%;
  text-transform: uppercase;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-text-stroke: 0;
  text-shadow: none;
}

.fkf-alias-option-card {
  background: color-mix(in srgb, var(--fkf-secondary) 8%, var(--fkf-surface));
  border: 1px solid color-mix(in srgb, var(--fkf-secondary) 24%, var(--fkf-border));
  border-radius: var(--fkf-radius-sm);
  padding: 10px 12px;
}

.fkf-player-window-settings {
  display: grid;
  gap: 8px;
}

.fkf-player-window-setting {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 9px 10px;
}

.fkf-player-window-setting-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary) 10%, var(--fkf-surface));
  border: 1px solid color-mix(in srgb, var(--fkf-primary) 24%, var(--fkf-border));
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.fkf-player-window-setting-copy {
  cursor: pointer;
  display: grid;
  line-height: 1.25;
  min-width: 0;
}

.fkf-player-window-setting-control {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  white-space: nowrap;
}

.fkf-player-window-setting-control .form-check-input {
  cursor: pointer;
}

@media (max-width: 575.98px) {
  .fkf-player-window-setting {
    gap: 7px;
    padding: 8px;
  }

  .fkf-player-window-setting-icon {
    height: 28px;
    width: 28px;
  }

  .fkf-player-window-setting-control {
    gap: 5px;
  }
}

.player-window-compact--in-button {
  gap: 3px;
}

.player-window-compact--in-button .player-window-indicator {
  background: transparent;
  height: 20px;
  width: 20px;
}

.player-window-indicator {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text-muted);
  display: inline-flex;
  height: 31px;
  justify-content: center;
  width: 31px;
}

.player-window-indicator.is-open,
.player-window-indicator.is-master {
  border-color: color-mix(in srgb, var(--fkf-success), transparent 45%);
  color: var(--fkf-success);
}

.player-window-indicator.is-closed {
  border-color: color-mix(in srgb, var(--fkf-warning), transparent 45%);
  color: #9a6a00;
}

.player-window-indicator.is-disabled {
  opacity: .55;
}

.fkf-modal-section {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  padding: 12px;
}

.fkf-section-label {
  color: var(--fkf-text-muted);
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
  margin-bottom: 10px;
  text-transform: uppercase;
}

.fkf-card-preview {
  align-items: center;
  background: linear-gradient(135deg, var(--fkf-surface-muted), var(--fkf-surface));
  border: 1px dashed var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  display: flex;
  justify-content: center;
  min-height: 132px;
  padding: 10px;
}

.fkf-card-preview img {
  aspect-ratio: 86 / 54;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 6px;
  box-shadow: var(--fkf-shadow-soft);
  max-width: 220px;
  object-fit: contain;
  width: 100%;
}

.fkf-page-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 70%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 42px;
  font-size: 20px;
  height: 42px;
  justify-content: center;
}

.fkf-profile-logo {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  flex: 0 0 auto;
  height: 58px;
  object-fit: contain;
  padding: 4px;
  width: 58px;
}

.fkf-profile-photo-lg {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 12px;
  height: 150px;
  object-fit: cover;
  padding: 3px;
  width: 150px;
}

.fkf-profile-photo-inline {
  aspect-ratio: 1;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 12px;
  max-width: 150px;
  object-fit: cover;
  padding: 3px;
  width: 100%;
}

.fkf-profile-photo-modal-preview {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 14px;
  height: min(320px, 62vw);
  object-fit: cover;
  padding: 4px;
  width: min(320px, 62vw);
}


.fkf-group-title {
  color: var(--fkf-text);
  font-size: 13px;
  font-weight: var(--fkf-font-weight-heavy);
  margin: 14px 0 7px;
}

.fkf-group-list {
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  overflow: hidden;
}

.fkf-group-row {
  align-items: center;
  background: var(--fkf-surface);
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 8px 10px;
}

.fkf-group-row:last-child {
  border-bottom: 0;
}

.fkf-empty {
  background: var(--fkf-surface-muted);
  border: 1px dashed var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text-muted);
  padding: 12px;
}

.fkf-chip-nav {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fkf-competition-switcher {
  max-width: 100%;
}

.fkf-competition-switcher-toggle {
  align-items: center;
  display: inline-flex;
  max-width: min(100%, 520px);
}

.fkf-competition-current {
  display: inline-block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-competition-count {
  flex: 0 0 auto;
  font-size: 0.72rem;
  margin-left: 6px;
}

.fkf-competition-menu {
  max-width: calc(100vw - 24px);
  min-width: min(360px, calc(100vw - 24px));
  overflow: hidden;
  padding: 0;
  width: min(520px, calc(100vw - 24px));
}

.fkf-competition-search {
  border-bottom: 1px solid var(--fkf-border);
  padding: 8px;
}

.fkf-competition-list {
  max-height: min(430px, 64vh);
  overflow-y: auto;
  padding: 4px;
}

.fkf-competition-status,
.fkf-competition-empty {
  align-items: center;
  display: flex;
  font-size: 0.82rem;
  justify-content: center;
  min-height: 46px;
  padding: 8px 12px;
  text-align: center;
}

.fkf-competition-status[hidden],
.fkf-competition-empty[hidden] {
  display: none;
}

.fkf-competition-item {
  align-items: center;
  border-radius: var(--fkf-radius-sm);
  display: flex;
  gap: 8px;
  min-height: var(--fkf-control-min-height);
  white-space: normal;
}

.fkf-competition-item.active {
  background: var(--fkf-primary);
  color: #ffffff;
}

.fkf-competition-item.active:hover,
.fkf-competition-item.active:focus {
  background: var(--fkf-primary);
  color: #ffffff;
}

.fkf-competition-marker {
  align-items: center;
  display: inline-flex;
  flex: 0 0 1rem;
  justify-content: center;
  width: 1rem;
}

.fkf-competition-item.active .fkf-competition-count {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff;
}

.fkf-competition-item-label {
  flex: 1 1 auto;
  line-height: 1.2;
  min-width: 0;
}

.fkf-competition-empty {
  padding: 12px;
  text-align: center;
}

.fkf-option-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
}

.fkf-option-grid--wide {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.fkf-option-card {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: 42px;
  padding: 9px 10px;
}

.fkf-option-card span {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  min-width: 0;
}

.fkf-option-card:hover,
.fkf-option-card:focus-within {
  border-color: var(--fkf-primary);
  box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--fkf-primary), transparent 84%);
}

.fkf-option-card .form-check-input {
  margin: 0;
}

.fkf-option-card .form-check-input:checked + span {
  color: var(--fkf-primary);
  font-weight: var(--fkf-font-weight-heavy);
}

.fkf-preset-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.fkf-preset-card {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-text);
  cursor: pointer;
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 10px;
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.fkf-preset-card:hover,
.fkf-preset-card:focus-visible,
.fkf-preset-card.is-selected {
  border-color: var(--fkf-primary);
  box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--fkf-primary), transparent 84%);
}

.fkf-preset-card:hover,
.fkf-preset-card:focus-visible {
  transform: translateY(-1px);
}

.fkf-preset-title {
  align-items: center;
  display: flex;
  font-weight: var(--fkf-font-weight-heavy);
  gap: 8px;
  justify-content: space-between;
}

.fkf-preset-title .bi {
  color: var(--fkf-primary);
  opacity: 0;
}

.fkf-preset-card.is-selected .fkf-preset-title .bi {
  opacity: 1;
}

.fkf-preset-description {
  color: var(--fkf-text-muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.fkf-preset-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: 38px minmax(0, 1fr);
}

.fkf-preset-mode {
  color: var(--fkf-text-muted);
  font-size: 0.72rem;
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-preset-swatches {
  display: flex;
  gap: 4px;
  min-width: 0;
}

.fkf-preset-swatch {
  background: var(--fkf-swatch-color);
  border: 1px solid color-mix(in srgb, var(--fkf-swatch-color), var(--fkf-border) 25%);
  border-radius: 999px;
  display: inline-block;
  flex: 1 1 0;
  height: 14px;
  min-width: 18px;
}

.fkf-batch-competition-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fkf-batch-competition-label {
  display: block;
  line-height: 1.35;
  min-width: 0;
  width: 100%;
}

.fkf-batch-competition-name {
  display: inline;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.fkf-batch-id {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  color: var(--fkf-text-muted);
  display: inline-block;
  float: right;
  font-size: 0.72rem;
  font-weight: var(--fkf-font-weight-bold);
  line-height: 1.2;
  margin-bottom: 2px;
  margin-left: 8px;
  padding: 2px 6px;
  white-space: nowrap;
}

@media (min-width: 992px) {
  .fkf-batch-competition-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.fkf-check-option {
  align-items: flex-start;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: var(--fkf-control-min-height);
  padding: 8px 10px;
}

.fkf-check-option input {
  flex: 0 0 auto;
  margin-top: 3px;
}

.fkf-check-option span {
  line-height: 1.25;
}

.fkf-check-option:has(input:checked) {
  background: color-mix(in srgb, var(--fkf-primary), transparent 90%);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 35%);
}

.fkf-config-key,
.fkf-file-name {
  color: var(--fkf-text-muted);
  display: block;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.fkf-subtle-line {
  color: var(--fkf-text-muted);
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.fkf-subtle-inline {
  color: var(--fkf-text-muted);
  flex: 0 0 auto;
  font-size: 12px;
  margin-left: auto;
  padding-left: 10px;
  text-align: right;
  white-space: nowrap;
}

.fkf-invoice-client-cell {
  min-width: 170px;
}

.fkf-invoice-item-name {
  min-width: 220px;
}

.fkf-invoice-item-qty {
  width: 92px;
}

.fkf-invoice-item-money {
  width: 136px;
}

.fkf-account-view-toolbar {
  align-items: center;
  background: var(--fkf-surface);
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: var(--fkf-space-2);
  justify-content: flex-start;
  padding: var(--fkf-space-2);
}

.fkf-account-card-search {
  max-width: 360px;
}

.fkf-account-card-count {
  color: var(--fkf-text-muted);
  font-size: 0.75rem;
  margin-left: auto;
  white-space: nowrap;
}

.fkf-account-card-count strong {
  color: var(--fkf-text);
}

.fkf-account-card-grid {
  display: grid;
  gap: var(--fkf-space-2);
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  padding: var(--fkf-space-2);
}

.fkf-account-tile {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-primary) 64%, var(--fkf-border));
  border-radius: var(--fkf-radius-md);
  display: flex;
  flex-direction: column;
  gap: var(--fkf-space-2);
  min-width: 0;
  padding: var(--fkf-space-2);
}

.fkf-account-tile__head,
.fkf-account-tile__identity,
.fkf-account-tile__footer,
.fkf-account-tile__balance,
.fkf-account-tile__actions {
  align-items: center;
  display: flex;
  gap: var(--fkf-space-2);
}

.fkf-account-tile__head,
.fkf-account-tile__footer {
  justify-content: space-between;
  min-width: 0;
}

.fkf-account-tile__identity {
  min-width: 0;
}

.fkf-account-tile__icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary) 14%, transparent);
  border: 1px solid color-mix(in srgb, var(--fkf-primary) 36%, var(--fkf-border));
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-primary);
  display: inline-flex;
  flex: 0 0 auto;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.fkf-account-tile__copy {
  min-width: 0;
}

.fkf-account-tile__name {
  color: var(--fkf-text);
  overflow: hidden;
  font-weight: var(--fkf-font-weight-bold);
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-account-tile__number {
  color: var(--fkf-text-muted);
  font-size: 0.72rem;
  line-height: 1.2;
  margin-top: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-account-tile__balance {
  align-items: flex-end;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 1px;
  text-align: right;
}

.fkf-account-tile__balance span {
  color: var(--fkf-text-muted);
  font-size: 0.68rem;
  line-height: 1;
}

.fkf-account-tile__balance strong {
  color: var(--fkf-primary);
  font-size: 1rem;
  line-height: 1.1;
}

.fkf-account-tile__footer {
  border-top: 1px solid var(--fkf-border);
  padding-top: var(--fkf-space-2);
}

.fkf-account-tile__actions {
  gap: 0;
  justify-content: flex-end;
}

.fkf-form-actionbar {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface) 94%, var(--fkf-primary) 6%);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  bottom: 10px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: space-between;
  padding: 10px 12px;
  position: sticky;
  z-index: 20;
}

.fkf-form-actionbar__total {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 160px;
}

.fkf-form-actionbar__total span {
  color: var(--fkf-text-muted);
  font-size: 12px;
}

.fkf-form-actionbar__total strong {
  color: var(--fkf-primary);
  font-size: 18px;
  line-height: 1.15;
}

@media (max-width: 575.98px) {
  .fkf-account-view-toolbar {
    align-items: stretch;
    flex-wrap: wrap;
  }

  .fkf-account-card-search {
    flex: 1 1 100%;
    max-width: none;
    width: 100%;
  }

  .fkf-account-card-count {
    margin-left: 0;
  }

  .fkf-account-card-grid {
    grid-template-columns: 1fr;
    padding: var(--fkf-space-2);
  }

  .fkf-form-actionbar {
    bottom: 0;
    gap: 8px;
  }

  .fkf-form-actionbar__total {
    flex: 1 1 100%;
  }

  .fkf-form-actionbar > .d-flex {
    width: 100%;
  }

  .fkf-form-actionbar > .d-flex .btn {
    flex: 1 1 0;
  }
}

@media (max-width: 767.98px) {
  .fkf-my-tickets-table-wrap,
  .fkf-manage-tickets-table-wrap {
    overflow: visible;
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody,
  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody {
    gap: var(--fkf-grid-gap);
    padding: var(--fkf-card-spacer-x);
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty),
  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) {
    border-bottom: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 36%);
    box-shadow: none;
    display: grid;
    gap: var(--fkf-space-2);
    grid-template-areas: "ticket action";
    grid-template-columns: minmax(0, 1fr) auto;
    padding: var(--fkf-space-2);
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td,
  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td {
    display: none !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td:nth-child(2) {
    display: block !important;
    grid-area: ticket;
    min-width: 0;
    padding: 0;
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td:nth-child(7) {
    align-self: start;
    display: flex !important;
    grid-area: action;
    justify-content: flex-end;
    padding: 0;
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td:nth-child(3) {
    display: block !important;
    grid-area: ticket;
    min-width: 0;
    padding: 0;
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody tr:not(.fkf-responsive-record-empty) > td:nth-child(9) {
    align-self: start;
    display: flex !important;
    grid-area: action;
    justify-content: flex-end;
    padding: 0;
    width: auto !important;
  }

  .fkf-modern table.fkf-responsive-records.fkf-my-tickets-table[data-fkf-responsive-ready="true"] tbody td::before,
  .fkf-modern table.fkf-responsive-records.fkf-manage-tickets-table[data-fkf-responsive-ready="true"] tbody td::before {
    content: none;
  }

  .fkf-my-tickets-table .fkf-wide-cell > a,
  .fkf-manage-tickets-table .fkf-wide-cell > a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-my-ticket-mobile-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: var(--fkf-font-size-sm);
    gap: var(--fkf-space-1) var(--fkf-space-2);
    margin-top: var(--fkf-space-2);
    min-width: 0;
  }

  .fkf-my-ticket-mobile-meta .text-truncate {
    max-width: min(100%, 190px);
  }

  .fkf-manage-ticket-mobile-owner {
    align-items: center;
    display: flex;
    gap: var(--fkf-space-2);
    margin-top: var(--fkf-space-2);
    min-width: 0;
  }

  .fkf-manage-ticket-mobile-owner > a {
    min-width: 0;
  }

  .fkf-manage-ticket-mobile-meta .text-truncate {
    max-width: min(100%, 170px);
  }
}

.fkf-payment-card {
  align-items: center;
  display: flex;
  gap: 16px;
}

.fkf-payment-logo {
  background: #fff;
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  max-width: 126px;
  padding: 10px;
  width: 34%;
}

.fkf-till-digits {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.fkf-till-digits span {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  display: inline-flex;
  font-size: 18px;
  font-weight: var(--fkf-font-weight-heavy);
  height: 34px;
  justify-content: center;
  min-width: 30px;
  padding: 0 7px;
}

.fkf-copy-row {
  align-items: center;
  border-bottom: 1px solid var(--fkf-border);
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(110px, 0.7fr) minmax(0, 1.4fr) auto auto;
  padding: 10px 0;
}

.fkf-copy-row:first-child {
  padding-top: 0;
}

.fkf-copy-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.fkf-copy-row > span:first-child {
  color: var(--fkf-text-muted);
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-copy-row strong {
  overflow-wrap: anywhere;
}

.fkf-copy-feedback {
  color: var(--fkf-success);
  font-size: 12px;
  font-weight: var(--fkf-font-weight-bold);
}

.invoice-alert-status-table th:not(:first-child),
.invoice-alert-status-table td:not(:first-child) {
  min-width: 86px;
  width: 86px;
}

.invoice-alert-state {
  align-items: center;
  border-radius: 50%;
  display: inline-flex;
  font-size: 14px;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.invoice-alert-state.is-enabled {
  background: color-mix(in srgb, var(--fkf-success), transparent 86%);
  border: 1px solid color-mix(in srgb, var(--fkf-success), transparent 45%);
  color: var(--fkf-success);
}

.invoice-alert-state.is-disabled {
  background: color-mix(in srgb, var(--fkf-danger), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--fkf-danger), transparent 55%);
  color: var(--fkf-danger);
}

.invoice-alert-state.is-unavailable {
  background: transparent;
  border: 1px dashed var(--fkf-border);
  color: var(--fkf-text-muted);
}

@media (max-width: 575.98px) {
  .fkf-payment-card {
    align-items: flex-start;
    gap: 12px;
  }

  .fkf-payment-logo {
    max-width: 86px;
    width: 30%;
  }

  .fkf-copy-row {
    grid-template-columns: minmax(88px, 0.7fr) minmax(0, 1fr) auto;
  }

  .fkf-copy-feedback {
    grid-column: 2 / -1;
  }
}

.fkf-config-name-cell {
  min-width: 220px;
}

.fkf-config-value-cell {
  min-width: 280px;
}

.fkf-config-current-cell {
  color: var(--fkf-text-muted);
  font-size: 13px;
  max-width: 360px;
  overflow-wrap: anywhere;
}

.fkf-config-dropdown-current {
  display: inline-block;
  max-width: min(220px, 48vw);
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}

.fkf-config-dropdown-menu {
  max-height: min(360px, 64vh);
  max-width: calc(100vw - 24px);
  overflow-y: auto;
  width: min(360px, calc(100vw - 24px));
}

.fkf-app-config-card,
.fkf-category-config-card {
  margin-bottom: 96px;
}

.fkf-app-config-actionbar {
  bottom: 10px;
  left: calc(var(--fkf-sidebar-width) + var(--fkf-content-padding));
  position: fixed;
  right: var(--fkf-content-padding);
  z-index: 1030;
}

html[data-nav-layout="top"] body.fkf-modern .fkf-app-config-actionbar {
  left: var(--fkf-content-padding);
}

.fkf-app-config-table .form-control,
.fkf-app-config-table .form-select {
  max-width: 100%;
}

.fkf-app-config-switch {
  align-items: center;
  display: flex;
  min-height: var(--fkf-control-min-height);
}

.fkf-app-config-switch .form-check {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  min-height: 0;
  padding-left: 0;
}

.fkf-app-config-switch .form-check-input {
  cursor: pointer;
  flex: 0 0 auto;
  float: none;
  margin: 0;
}

.fkf-app-config-switch .form-check-label {
  color: var(--fkf-text-muted);
  cursor: pointer;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1;
}

.fkf-app-config-switch .fkf-switch-state-on {
  color: var(--fkf-primary);
  display: none;
}

.fkf-app-config-switch .form-check-input:checked + .form-check-label .fkf-switch-state-on {
  display: inline;
}

.fkf-app-config-switch .form-check-input:checked + .form-check-label .fkf-switch-state-off {
  display: none;
}

.fkf-eval-param-main-cell {
  min-width: 260px;
}

.fkf-eval-param-description-cell {
  min-width: 260px;
}

.fkf-eval-param-meta {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 0.75rem;
  gap: 0.35rem 0.5rem;
  margin-top: 0.25rem;
}

.fkf-eval-param-meta > span {
  align-items: center;
  display: inline-flex;
  gap: 0.25rem;
  white-space: nowrap;
}

@media (max-width: 767.98px) {
  .fkf-app-config-card,
  .fkf-category-config-card {
    margin-bottom: 132px;
  }

  .fkf-app-config-card .card-body {
    background: var(--fkf-surface-muted);
    padding: 6px !important;
  }

  .fkf-app-config-responsive {
    overflow-x: visible;
  }

  .fkf-app-config-table {
    border-collapse: separate;
    border-spacing: 0 8px;
  }

  .fkf-app-config-table thead {
    display: none;
  }

  .fkf-app-config-table,
  .fkf-app-config-table tbody,
  .fkf-app-config-table tr,
  .fkf-app-config-table td {
    display: block;
    width: 100%;
  }

  .fkf-app-config-table tbody {
    display: grid;
    gap: 8px;
  }

  .fkf-app-config-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    overflow: hidden;
  }

  .fkf-app-config-table td {
    border: 0;
    min-width: 0;
    padding: 8px 10px;
  }

  .fkf-app-config-table .fkf-config-name-cell {
    background: var(--fkf-surface);
    border-bottom: 1px solid var(--fkf-border);
  }

  .fkf-app-config-table .fkf-config-value-cell,
  .fkf-app-config-table .fkf-config-current-cell {
    background: color-mix(in srgb, var(--fkf-surface), var(--fkf-surface-muted) 34%);
  }

  .fkf-app-config-table td + td {
    border-top: 1px solid color-mix(in srgb, var(--fkf-border), transparent 22%);
  }

  .fkf-app-config-table td::before {
    color: var(--fkf-text-muted);
    content: attr(data-label);
    display: block;
    font-size: 0.72rem;
    font-weight: var(--fkf-font-weight-bold);
    margin-bottom: 4px;
    text-transform: uppercase;
  }

  .fkf-app-config-table .fkf-config-name-cell::before {
    display: none;
  }

  .fkf-app-config-table .fkf-config-name-cell strong {
    color: var(--fkf-primary);
    display: block;
    font-size: 0.95rem;
    line-height: 1.2;
  }

  .fkf-app-config-table .fkf-config-current-cell {
    max-width: none;
  }

  .fkf-app-config-table .fkf-option-grid {
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fkf-app-config-table .fkf-check-option {
    min-width: 0;
  }

  .fkf-app-config-table .fkf-check-option span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-eval-params-table {
    border-collapse: separate;
    border-spacing: 0;
  }

  .fkf-eval-params-table thead {
    display: none;
  }

  .fkf-eval-params-table,
  .fkf-eval-params-table tbody,
  .fkf-eval-params-table tr,
  .fkf-eval-params-table td {
    display: block;
    width: 100%;
  }

  .fkf-eval-params-table tbody {
    background: var(--fkf-surface-muted);
    display: grid;
    gap: 8px;
    padding: 6px;
  }

  .fkf-eval-params-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    overflow: hidden;
  }

  .fkf-eval-params-table td {
    border: 0;
    min-width: 0;
    padding: 8px 10px;
  }

  .fkf-eval-params-table td + td {
    border-top: 1px solid color-mix(in srgb, var(--fkf-border), transparent 22%);
  }

  .fkf-eval-params-table td::before {
    color: var(--fkf-text-muted);
    content: attr(data-label);
    display: block;
    font-size: 0.72rem;
    font-weight: var(--fkf-font-weight-bold);
    margin-bottom: 4px;
    text-transform: uppercase;
  }

  .fkf-eval-params-table .fkf-eval-param-main-cell {
    border-top: 0;
  }

  .fkf-eval-params-table .fkf-eval-param-main-cell::before {
    display: none;
  }

  .fkf-eval-params-table .fkf-eval-param-main-cell a {
    display: inline-block;
    line-height: 1.2;
  }

  .fkf-eval-params-table .fkf-eval-param-action-cell {
    text-align: left !important;
  }

  .fkf-eval-params-table .fkf-eval-param-action-cell .btn {
    width: auto;
  }
}

.fkf-category-config-toolbar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.fkf-category-config-search {
  max-width: min(100%, 420px);
}

@media (max-width: 575.98px) {
  .fkf-category-config-search {
    max-width: none;
    width: 100%;
  }
}

@media (max-width: 991.98px) {
  .fkf-app-config-actionbar {
    bottom: 8px;
    left: var(--fkf-content-padding);
    right: var(--fkf-content-padding);
  }
}

.fkf-min-cell {
  min-width: 180px;
}

.fkf-wide-cell {
  min-width: 260px;
}

.fkf-token-field,
.fkf-code-block {
  font-family: Consolas, "Liberation Mono", Menlo, monospace;
}

.fkf-code-block {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  font-size: 12px;
  max-height: 360px;
  overflow: auto;
  padding: 10px;
  white-space: pre-wrap;
}

.fkf-token-row {
  align-items: center;
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 6px 0;
}

.fkf-token-row:last-child {
  border-bottom: 0;
}

.fkf-search-results {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  box-shadow: var(--fkf-shadow-soft);
  max-height: 240px;
  overflow: auto;
  padding: 6px;
}

.fkf-lookup-results {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  box-shadow: var(--fkf-shadow-soft);
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 340px;
  overflow: auto;
  padding: 6px;
}

.fkf-lookup-results:empty {
  display: none;
}

.fkf-lookup-result {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  display: flex;
  gap: 9px;
  min-height: 42px;
  padding: 6px 8px;
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.fkf-lookup-result:hover,
.fkf-lookup-result:focus {
  background: var(--fkf-primary-soft);
  border-color: var(--fkf-primary);
  color: var(--fkf-text);
  text-decoration: none;
}

.fkf-lookup-image {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  flex: 0 0 28px;
  height: 28px;
  object-fit: cover;
  width: 28px;
}

.fkf-lookup-image-placeholder {
  align-items: center;
  color: var(--fkf-primary);
  display: inline-flex;
  justify-content: center;
}

.fkf-lookup-text {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
}

.fkf-lookup-title,
.fkf-lookup-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-lookup-title {
  color: var(--fkf-text);
  font-weight: var(--fkf-font-weight-bold);
}

.fkf-lookup-fixture-title {
  align-items: center;
  display: flex;
  gap: 6px;
  min-width: 0;
}

.fkf-lookup-fixture-team {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-lookup-fixture-score {
  background: color-mix(in srgb, var(--fkf-primary) 9%, var(--fkf-surface-muted));
  border: 1px solid color-mix(in srgb, var(--fkf-primary) 18%, var(--fkf-border));
  border-radius: 999px;
  color: var(--fkf-text-muted);
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: var(--fkf-font-weight-bold);
  line-height: 1;
  padding: 2px 6px;
}

.fkf-lookup-fixture-score.is-vs {
  background: color-mix(in srgb, var(--fkf-text-muted) 8%, var(--fkf-surface-muted));
  border-color: color-mix(in srgb, var(--fkf-text-muted) 18%, var(--fkf-border));
  text-transform: lowercase;
}

.fkf-lookup-subtitle {
  color: var(--fkf-text-muted);
  font-size: 11px;
}

.fkf-lookup-arrow {
  color: var(--fkf-primary);
  font-size: 18px;
}

.fkf-picker-result {
  justify-content: flex-start;
  margin-bottom: 5px;
  text-align: left;
  width: 100%;
}

.fkf-picker-result:last-child {
  margin-bottom: 0;
}

.fkf-selected-list {
  align-items: flex-start;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 44px;
  padding: 8px;
}

.fkf-selected-pill {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  color: var(--fkf-text);
  display: inline-flex;
  gap: 6px;
  padding: 5px 8px;
}

.fkf-selected-pill button {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  height: 22px;
  justify-content: center;
  padding: 0;
  width: 22px;
}

.fkf-media-thumb,
.fkf-logo {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  display: inline-flex;
  justify-content: center;
  object-fit: contain;
}

.fkf-media-thumb {
  height: 54px;
  width: 86px;
}

.fkf-logo {
  height: 46px;
  width: 46px;
}

.fkf-scroll-list {
  max-height: 420px;
  overflow: auto;
}

.fkf-color-value {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}

.fkf-color-swatch {
  background: var(--fkf-swatch-color, var(--fkf-primary));
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  display: inline-block;
  height: 18px;
  width: 18px;
}

.fkf-level-preview {
  align-items: center;
  background: var(--fkf-level-bg, var(--fkf-primary));
  border: 1px solid color-mix(in srgb, var(--fkf-level-bg, var(--fkf-primary)), #000 15%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-level-text, #ffffff);
  display: inline-flex;
  font-weight: var(--fkf-font-weight-semibold);
  justify-content: center;
  min-height: 30px;
  padding: 5px 10px;
}

.fkf-level-preview--plain {
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.2;
  min-height: 0;
  padding: 0.18rem 0.42rem;
}

.fkf-rich-content {
  color: var(--fkf-text);
  line-height: 1.6;
}

.fkf-rich-content img {
  height: auto;
  max-width: 100%;
}

.fkf-php-info {
  color: var(--fkf-text);
  overflow-x: auto;
}

.fkf-php-info table {
  border-collapse: collapse;
  color: var(--fkf-text);
  font-size: 12px;
  margin-bottom: 12px;
  width: 100%;
}

.fkf-php-info td,
.fkf-php-info th {
  border: 1px solid var(--fkf-border);
  padding: 6px 8px;
  vertical-align: top;
}

.fkf-php-info .h,
.fkf-php-info h1,
.fkf-php-info h2 {
  background: var(--fkf-surface-muted) !important;
  color: var(--fkf-primary) !important;
}

.fkf-php-info .e,
.fkf-php-info .v,
.fkf-php-info .vr {
  background: var(--fkf-surface) !important;
  color: var(--fkf-text) !important;
}

.fkf-php-info a {
  color: var(--fkf-link);
}

.fkf-sticky-panel {
  position: sticky;
  top: calc(var(--fkf-topbar-height) + 14px);
}

.fkf-nav-block-board {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.fkf-nav-block {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  overflow: hidden;
}

.fkf-nav-block-title {
  align-items: center;
  background: var(--fkf-surface-muted);
  border-bottom: 1px solid var(--fkf-border);
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 10px;
}

.fkf-nav-child-list {
  display: grid;
  gap: 6px;
  padding: 8px;
}

.fkf-nav-child-button {
  align-items: center;
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text);
  display: flex;
  gap: 8px;
  padding: 8px;
  text-align: left;
}

.fkf-nav-child-button:hover,
.fkf-nav-child-button:focus {
  background: color-mix(in srgb, var(--fkf-primary), transparent 92%);
  border-color: color-mix(in srgb, var(--fkf-primary), var(--fkf-border) 35%);
  color: var(--fkf-primary);
  outline: 0;
}

.fkf-modern .accordion {
  --bs-accordion-bg: var(--fkf-surface);
  --bs-accordion-border-color: var(--fkf-border);
  --bs-accordion-color: var(--fkf-text);
  --bs-accordion-btn-color: var(--fkf-text);
  --bs-accordion-btn-bg: var(--fkf-surface);
  --bs-accordion-active-bg: var(--fkf-surface-muted);
  --bs-accordion-active-color: var(--fkf-primary);
  --bs-accordion-btn-focus-border-color: var(--fkf-primary);
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--fkf-primary), transparent 78%);
}

.fkf-modern .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23109a8d' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: var(--bs-accordion-btn-icon);
}

.fkf-admin-accordion-heading {
  align-items: stretch;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.fkf-admin-accordion-heading .accordion-header,
.fkf-admin-accordion-heading .accordion-button {
  min-width: 0;
}

.fkf-admin-accordion-heading .accordion-button {
  height: 100%;
}

.fkf-admin-accordion-title {
  min-width: 0;
}

.fkf-admin-accordion-title > span:first-child {
  overflow-wrap: anywhere;
}

.fkf-admin-accordion-actions {
  align-items: center;
  border-left: 1px solid var(--fkf-border);
  display: flex;
  gap: 6px;
  padding: 8px 12px;
}

.fkf-admin-accordion-actions .btn {
  align-items: center;
  display: inline-flex;
  height: 32px;
  justify-content: center;
  padding: 0;
  width: 32px;
}

.fkf-modern .fkf-accordion-option-button {
  gap: 0.5rem;
  min-width: 0;
}

.fkf-modern .fkf-accordion-option-label {
  flex: 0 0 auto;
}

.fkf-modern .fkf-accordion-option-summary {
  color: var(--fkf-text-muted);
  flex: 1 1 auto;
  font-size: 0.8em;
  font-weight: 400;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-modern .fkf-accordion-option-button::after {
  flex: 0 0 auto;
  margin-left: 0;
}

body.fkf-modern:not([data-theme="dark"]) .accordion-button::after,
html:not([data-theme="dark"]) body.fkf-modern .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230a6464' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: var(--bs-accordion-btn-icon);
}

@media (min-width: 992px) {
  html[data-nav-layout="top"] body.fkf-modern .fkf-topbar {
    height: auto;
    min-height: var(--fkf-topbar-height);
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-topbar > .container-fluid {
    align-items: flex-start !important;
    min-height: var(--fkf-topbar-height);
    padding-bottom: calc(var(--fkf-space-1) + 1px);
    padding-top: calc(var(--fkf-space-1) + 1px);
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-topbar-leading,
  html[data-nav-layout="top"] body.fkf-modern .fkf-topbar-actions {
    flex: 0 0 auto;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-sidebar {
    align-self: stretch;
    background: transparent;
    border-bottom: 0;
    border-right: 0;
    bottom: auto;
    flex: 1 1 auto;
    height: auto;
    left: auto;
    min-width: 0;
    overflow: visible;
    position: static;
    top: auto;
    width: auto;
    z-index: auto;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav {
    align-items: flex-start;
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
    padding: 0;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-account-control--sidebar {
    display: none;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-account-control--topbar {
    display: flex;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-list {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: var(--fkf-nav-item-gap);
    min-width: 0;
    row-gap: calc(var(--fkf-nav-item-gap) + 1px);
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-item {
    margin-bottom: 0;
    position: relative;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-link,
  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-toggle {
    white-space: nowrap;
    width: auto;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-sublist {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-radius: var(--fkf-radius-md);
    box-shadow: var(--fkf-shadow-soft);
    display: none !important;
    left: 0;
    min-width: 220px;
    padding: var(--fkf-nav-sublist-y);
    position: absolute;
    top: 100%;
    z-index: 1040;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-item:hover > .fkf-nav-sublist {
    display: block !important;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-nav-sublist .fkf-nav-link {
    width: 100%;
  }

  html[data-nav-layout="top"] body.fkf-modern .fkf-main,
  html[data-nav-layout="top"] body.fkf-modern .fkf-footer {
    margin-left: 0;
  }

  html[data-nav-layout="top"][data-nav-sticky="false"] body.fkf-modern .fkf-topbar {
    position: static;
  }
}

@media (max-width: 575.98px) {
  .fkf-admin-accordion-actions {
    gap: 4px;
    padding: 6px;
  }
}

@media (max-width: 991.98px) {
  .fkf-sidebar {
    transform: translateX(-100%);
    transition: transform 160ms ease;
  }

  body.fkf-nav-open .fkf-sidebar {
    transform: translateX(0);
  }

  body.fkf-nav-open .fkf-nav-backdrop {
    background: rgba(15, 23, 42, 0.35);
    border: 0;
    bottom: 0;
    display: block;
    left: 0;
    position: fixed;
    right: 0;
    top: var(--fkf-topbar-height);
    z-index: 1010;
  }

  .fkf-main,
  .fkf-footer {
    margin-left: 0;
  }
}

@media (max-width: 575.98px) {
  .fkf-content {
    padding: var(--fkf-content-padding-mobile);
  }

  .fkf-fixture-row > .fkf-fixture-meta {
    grid-column: 1 / -1;
  }

  .fkf-fixture-actions-stack {
    flex-direction: column;
  }

  .fkf-fixture-match-cell {
    min-width: 11rem;
    width: auto;
  }

  .fkf-fixture-match-cell .fkf-match-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .fkf-fixture-match-cell .fkf-match-home,
  .fkf-fixture-match-cell .fkf-match-score,
  .fkf-fixture-match-cell .fkf-match-away {
    justify-self: center;
  }

  .fkf-fixture-match-cell .fkf-match-home {
    justify-content: center;
    text-align: center;
  }

  .fkf-fixture-date-time-inner {
    align-items: center;
    flex-direction: column;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table thead {
    display: none;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table tbody {
    display: grid;
    gap: 8px;
    padding: 8px;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: none;
    display: block;
    overflow: hidden;
    padding: 8px;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table td {
    border: 0;
    display: block;
    padding: 0;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-card-index {
    display: none;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-fixture-match-cell {
    border-bottom: 1px solid var(--fkf-border);
    margin-bottom: 8px;
    padding-bottom: 8px;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-card-details > .d-flex {
    gap: 6px;
  }

  .fkf-appointment-fixture-match-cell .fkf-match-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .fkf-appointment-fixture-match-cell .fkf-match-home,
  .fkf-appointment-fixture-match-cell .fkf-match-score,
  .fkf-appointment-fixture-match-cell .fkf-match-away {
    justify-self: center;
  }

  .fkf-appointment-fixture-match-cell .fkf-match-home {
    justify-content: center;
    text-align: center;
  }

  .fkf-appointment-fixture-match-cell .text-muted {
    justify-content: center;
    text-align: center;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-fixture-match-cell .fkf-match-layout {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-fixture-match-cell .fkf-match-home {
    justify-content: flex-end;
    justify-self: stretch;
    text-align: right;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-fixture-match-cell .fkf-match-score {
    justify-self: center;
  }

  #manageAppointmentsTable.fkf-appointments-responsive-table .fkf-appointment-fixture-match-cell .fkf-match-away {
    justify-self: stretch;
  }

  .fkf-my-appointments-table-wrap {
    overflow-x: visible;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block;
    width: 100% !important;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table thead {
    display: none;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table tbody {
    display: grid;
    gap: var(--fkf-space-3);
    padding: var(--fkf-space-2);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: none;
    display: block;
    overflow: hidden;
    padding: var(--fkf-space-2);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table tr:not(:last-child) {
    box-shadow: none;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table td {
    border: 0;
    display: block;
    padding: 0;
    width: 100%;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-card-index {
    display: none;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell {
    border-bottom: 1px solid var(--fkf-border);
    margin-bottom: var(--fkf-space-2);
    padding-bottom: var(--fkf-space-2);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell > .d-flex {
    gap: var(--fkf-space-1);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell .fkf-match-layout {
    column-gap: 0.25rem;
    display: flex;
    justify-content: center;
    width: 100%;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell .fkf-match-side {
    flex: 0 1 auto;
    gap: 0.25rem;
    max-width: min(42%, 12rem);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell .fkf-match-home {
    justify-content: flex-end;
    text-align: right;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell .fkf-match-score {
    flex: 0 0 auto;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-match-cell .fkf-match-away {
    justify-content: flex-start;
    text-align: left;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-details-cell .fkf-appointment-detail-list {
    gap: var(--fkf-space-2);
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 4px 6px;
    justify-content: flex-start;
    padding: 5px 6px;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail > .d-flex:first-child {
    flex: 0 1 auto;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail > .d-flex,
  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail > .small {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    flex: 0 1 auto;
    gap: 4px 6px;
    min-width: 0;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail > .d-flex:first-child .fw-semibold {
    max-width: 11rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail > .small {
    color: var(--fkf-text-muted) !important;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-my-appointment-detail .fkf-appointment-submission-summary {
    border-top: 0;
    flex: 0 1 auto;
    min-width: 0;
    margin-top: 0;
    padding-top: 0;
    width: auto;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-appointment-submission-summary > div {
    min-width: 0;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-appointment-submission-summary .text-nowrap {
    align-items: center;
    display: inline-flex;
    gap: 3px;
    max-width: 100%;
  }

  #myAppointmentsTable.fkf-my-appointments-responsive-table .fkf-appointment-submission-summary .fkf-logo-xs {
    height: 20px;
    width: 20px;
  }

  .fkf-appointment-reports-table-wrap {
    overflow-x: visible;
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block;
    width: 100% !important;
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table thead,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table thead {
    display: none;
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table tbody,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table tbody {
    display: grid;
    gap: var(--fkf-space-3);
    padding: var(--fkf-space-2);
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table tr,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: none;
    display: block;
    overflow: hidden;
    padding: var(--fkf-space-2);
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table td,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table td {
    border: 0;
    display: block;
    padding: 0;
    width: 100%;
  }

  #appointmentEntriesTable.fkf-appointment-reports-responsive-table .fkf-report-desktop-cell,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table .fkf-report-desktop-cell,
  #appointmentEntriesTable.fkf-appointment-reports-responsive-table .fkf-report-match-desktop,
  #appointmentEvaluationsTable.fkf-appointment-reports-responsive-table .fkf-report-match-desktop {
    display: none;
  }

  .fkf-appointment-report-card {
    display: grid;
    gap: var(--fkf-space-2);
    text-align: center;
  }

  .fkf-report-card-match {
    border-bottom: 1px solid var(--fkf-border);
    padding-bottom: var(--fkf-space-2);
  }

  .fkf-report-card-match .fkf-match-layout {
    column-gap: 0.25rem;
    display: flex;
    justify-content: center;
    width: 100%;
  }

  .fkf-report-card-match .fkf-match-side {
    flex: 0 1 auto;
    gap: 0.25rem;
    max-width: min(42%, 12rem);
  }

  .fkf-report-card-match .fkf-match-home {
    justify-content: flex-end;
    text-align: right;
  }

  .fkf-report-card-match .fkf-match-score {
    flex: 0 0 auto;
  }

  .fkf-report-card-match .fkf-match-away {
    justify-content: flex-start;
    text-align: left;
  }

  .fkf-report-card-league {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    margin-top: 2px;
    max-width: 100%;
  }

  .fkf-report-card-official {
    align-items: center;
    background: color-mix(in srgb, var(--fkf-primary), var(--fkf-surface) 90%);
    border: 1px solid var(--fkf-border);
    border-radius: var(--fkf-radius-md);
    display: flex;
    flex-wrap: wrap;
    gap: 4px 6px;
    justify-content: flex-start;
    min-width: 0;
    padding: 5px 6px;
    text-align: left;
  }

  .fkf-report-card-official-name {
    max-width: 11rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-report-card-submission {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px 6px;
    min-width: 0;
  }

  .fkf-report-card-submission .text-nowrap {
    align-items: center;
    display: inline-flex;
    gap: 3px;
    max-width: 100%;
  }

  .fkf-report-card-submission .fkf-logo-xs {
    height: 20px;
    width: 20px;
  }

  .fkf-date-filter {
    max-width: min(280px, 100%);
  }

  .fkf-date-filter.is-empty {
    max-width: 58px;
  }

  .fkf-date-filter-menu {
    min-width: calc(100vw - 16px);
  }

  .fkf-date-filter-grid {
    grid-template-columns: 1fr;
  }

  .fkf-date-filter-presets {
    border-bottom: 1px solid var(--fkf-border);
    border-right: 0;
    display: grid;
    gap: 2px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 6px;
  }

  .fkf-date-preset {
    font-size: 12px;
    padding: 7px 6px;
  }

  .fkf-date-filter-custom {
    padding: 8px;
  }

  .fkf-date-custom-title {
    margin-bottom: 6px;
  }

  .fkf-date-custom-fields {
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fkf-date-custom-fields .form-control {
    font-size: 12px;
    padding-left: 6px;
    padding-right: 6px;
  }

  .fkf-date-custom-actions {
    margin-top: 8px;
  }

  .fkf-table-pagination {
    flex-wrap: nowrap;
  }

  .fkf-table-pagination-info {
    font-size: 11px;
  }

  .fkf-table-page-number:not(.is-active):not(.is-neighbor),
  .fkf-table-page-ellipsis {
    display: none;
  }

  .fkf-table-pagination .btn {
    min-width: 28px;
    padding-left: 7px;
    padding-right: 7px;
  }

  .fkf-ai-chat-time-col,
  .fkf-wa-chat-time-col {
    width: 96px;
  }

  .fkf-ai-chat-contact-col,
  .fkf-wa-chat-contact-col {
    width: 118px;
  }

  .fkf-ai-conversations-card .fkf-table-action-col,
  .fkf-wa-conversations-card .fkf-table-action-col {
    width: 44px;
  }

  .fkf-ai-message,
  .fkf-chat-message {
    max-width: 100%;
  }

  .fkf-ai-message-meta,
  .fkf-chat-message-meta {
    font-size: 11px;
  }

  .fkf-chat-composer--top {
    padding: 10px;
  }

  .fkf-chat-composer-row {
    gap: 8px;
  }

  .fkf-chat-composer-row .form-control {
    resize: none;
  }

  .fkf-chat-composer-row .btn {
    min-width: 44px;
    padding-left: 10px;
    padding-right: 10px;
    width: 44px;
  }
}

.fkf-color-dot {
  border: 1px solid color-mix(in srgb, var(--fkf-border) 55%, transparent);
  border-radius: 999px;
  display: inline-block;
  height: 10px;
  width: 10px;
}

.fkf-logo-md {
  border-radius: 6px;
  height: 35px;
  object-fit: contain;
  width: 35px;
}

.fkf-inner-table {
  background: color-mix(in srgb, var(--fkf-surface) 90%, var(--fkf-primary) 10%);
  border: 1px solid var(--fkf-border);
  border-radius: 6px;
  overflow: hidden;
}

.fkf-public-guide-shell {
  max-width: 980px;
}

.fkf-guide-image {
  max-height: 360px;
}

.fkf-calendar-board {
  --fkf-calendar-board-gap: 14px;
  align-items: start;
  display: grid;
  gap: var(--fkf-calendar-board-gap);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fkf-calendar-month {
  align-self: start;
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  min-width: 0;
  overflow: visible;
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .fkf-calendar-board.is-masonry {
    column-gap: var(--fkf-calendar-board-gap);
    grid-auto-flow: row dense;
    grid-auto-rows: 1px;
    row-gap: 0;
  }

  .fkf-calendar-board.is-masonry > .fkf-calendar-month {
    grid-row-end: span var(--fkf-calendar-row-span, 1);
    margin-bottom: var(--fkf-calendar-board-gap);
  }
}

@media (max-width: 767.98px) {
  .fkf-appointment-reports-table-wrap {
    overflow-x: visible;
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block;
    width: 100% !important;
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table thead {
    display: none;
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table tbody {
    display: grid;
    gap: var(--fkf-space-3);
    padding: var(--fkf-space-2);
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table tr {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: none;
    display: block;
    overflow: hidden;
    padding: var(--fkf-space-2);
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table td {
    border: 0;
    display: block;
    padding: 0;
    width: 100%;
  }

  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table .fkf-report-desktop-cell,
  #appointmentEvaluationErrorsTable.fkf-appointment-reports-responsive-table .fkf-report-match-desktop {
    display: none;
  }

  #appointmentEvaluationErrorsTable .fkf-appointment-report-card {
    display: grid;
    gap: var(--fkf-space-2);
    text-align: center;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match {
    border-bottom: 1px solid var(--fkf-border);
    padding-bottom: var(--fkf-space-2);
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match .fkf-match-layout {
    column-gap: 0.25rem;
    display: flex;
    justify-content: center;
    width: 100%;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match .fkf-match-side {
    flex: 0 1 auto;
    gap: 0.25rem;
    max-width: min(42%, 12rem);
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match .fkf-match-home {
    justify-content: flex-end;
    text-align: right;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match .fkf-match-score {
    flex: 0 0 auto;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-match .fkf-match-away {
    justify-content: flex-start;
    text-align: left;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-league {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    margin-top: 2px;
    max-width: 100%;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-official {
    align-items: center;
    background: color-mix(in srgb, var(--fkf-primary), var(--fkf-surface) 90%);
    border: 1px solid var(--fkf-border);
    border-radius: var(--fkf-radius-md);
    display: flex;
    flex-wrap: wrap;
    gap: 4px 6px;
    justify-content: flex-start;
    min-width: 0;
    padding: 5px 6px;
    text-align: left;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-official-name {
    max-width: min(13rem, 58vw);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-submission {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px 6px;
    min-width: 0;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-submission .text-nowrap {
    align-items: center;
    display: inline-flex;
    gap: 3px;
    max-width: 100%;
  }

  #appointmentEvaluationErrorsTable .fkf-report-card-submission .fkf-logo-xs {
    height: 20px;
    width: 20px;
  }
}

.fkf-calendar-weekdays {
  background: var(--fkf-surface-muted);
  border-bottom: 1px solid var(--fkf-border);
  display: grid;
  grid-template-columns: var(--fkf-calendar-cols, repeat(7, minmax(0, 1fr)));
}

.fkf-calendar-weekdays span {
  color: var(--fkf-text-muted);
  font-size: 11px;
  font-weight: var(--fkf-font-weight-bold);
  padding: 6px 4px;
  text-align: center;
}

.fkf-calendar-grid {
  border-left: 1px solid var(--fkf-border);
  border-top: 1px solid var(--fkf-border);
  display: grid;
  grid-template-columns: var(--fkf-calendar-cols, repeat(7, minmax(0, 1fr)));
  overflow: visible;
}

.fkf-calendar-day {
  background: var(--fkf-surface);
  border-bottom: 1px solid var(--fkf-border);
  border-right: 1px solid var(--fkf-border);
  min-width: 0;
  overflow: visible;
}

.fkf-calendar-day.is-empty {
  background: color-mix(in srgb, var(--fkf-surface) 88%, var(--fkf-surface-muted));
}

.fkf-calendar-day.is-outside-month {
  background: color-mix(in srgb, var(--fkf-surface-muted) 75%, transparent);
}

.fkf-calendar-dropzone {
  display: flex;
  flex-direction: column;
  gap: 4px;
  list-style: none;
  margin: 0;
  min-height: 92px;
  overflow: visible;
  padding: 4px;
}

.fkf-calendar-dropzone.is-empty {
  min-height: 28px;
  padding: 2px 4px;
}

.fkf-calendar-day-label {
  align-items: center;
  color: var(--fkf-text-muted);
  display: flex;
  font-size: 11px;
  font-weight: var(--fkf-font-weight-bold);
  justify-content: space-between;
  margin-bottom: 2px;
  pointer-events: none;
}

.fkf-calendar-day.is-empty .fkf-calendar-day-label {
  font-size: 10px;
  justify-content: center;
  margin-bottom: 0;
}

.fkf-calendar-day.is-empty [data-day-count]:empty {
  display: none;
}

.fkf-calendar-fixture {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  border-radius: var(--fkf-radius-sm);
  box-shadow: none;
  color: var(--fkf-text);
  cursor: grab;
  padding: 5px;
  position: relative;
  z-index: 1;
}

.fkf-calendar-month:has(.dropdown-menu.show) {
  z-index: 25;
}

.fkf-calendar-fixture:focus-within,
.fkf-calendar-fixture:has(.dropdown-menu.show) {
  border-color: color-mix(in srgb, var(--fkf-primary) 48%, var(--fkf-border));
  z-index: 50;
}

.fkf-calendar-fixture:active {
  cursor: grabbing;
}

.fkf-calendar-fixture.is-saving {
  opacity: 0.62;
  pointer-events: none;
}

.fkf-calendar-fixture-main {
  align-items: center;
  display: grid;
  gap: 4px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  min-width: 0;
}

.fkf-calendar-team {
  align-items: center;
  display: flex;
  font-size: 11px;
  font-weight: var(--fkf-font-weight-bold);
  gap: 3px;
  min-width: 0;
}

.fkf-calendar-team span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-calendar-team img {
  border-radius: 999px;
  flex: 0 0 auto;
  height: 18px;
  object-fit: cover;
  width: 18px;
}

.fkf-calendar-home {
  justify-content: flex-end;
  text-align: right;
}

.fkf-calendar-score {
  align-items: center;
  border-radius: var(--fkf-radius-xs);
  display: inline-flex;
  font-size: 10px;
  font-weight: var(--fkf-font-weight-heavy);
  justify-content: center;
  min-width: 28px;
  padding: 2px 5px;
  text-align: center;
  white-space: nowrap;
}

.fkf-calendar-fixture-meta {
  color: var(--fkf-text-muted);
  display: block;
  font-size: 10px;
  margin-top: 4px;
  min-height: 22px;
  padding-right: 70px;
  position: relative;
}

.fkf-calendar-actions {
  align-items: center;
  display: inline-flex;
  gap: 3px;
  inset: auto 0 0 auto;
  position: absolute;
  z-index: 55;
}

.fkf-calendar-action-group {
  gap: 0;
}

.fkf-calendar-action-group > .btn:first-child {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.fkf-calendar-action-group > .btn + .fkf-calendar-more-menu > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -1px;
}

.fkf-calendar-action-group .dropdown-menu {
  z-index: 1085;
}

.fkf-calendar-icon-btn {
  align-items: center;
  display: inline-flex;
  height: 20px;
  justify-content: center;
  padding: 0;
  width: 20px;
}

.fkf-calendar-icon-btn .bi {
  font-size: 11px;
}

.fkf-calendar-drag-handle {
  display: none;
  touch-action: none;
}

@media (hover: none) and (pointer: coarse) {
  .fkf-calendar-drag-handle {
    display: inline-flex;
  }
}

.fkf-calendar-meta-details {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 3px 7px;
  justify-content: flex-end;
  margin-left: auto;
  min-width: 0;
  text-align: right;
}

.fkf-calendar-meta-details > span {
  min-width: 0;
}

.fkf-calendar-meta-details [data-fixture-venue] {
  display: inline-block;
  max-width: min(132px, 100%);
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}

.gu-mirror {
  margin: 0 !important;
  opacity: 0.9;
  position: fixed !important;
  transform: rotate(1deg);
  z-index: 9999 !important;
}

.gu-hide {
  display: none !important;
}

.gu-unselectable {
  user-select: none !important;
}

.gu-transit {
  opacity: 0.45;
}

@media (max-width: 767.98px) {
  .fkf-calendar-board {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .fkf-calendar-board {
    grid-template-columns: 1fr;
  }

  .fkf-calendar-dropzone {
    min-height: 68px;
    padding: 3px;
  }

  .fkf-calendar-dropzone.is-empty {
    min-height: 24px;
    padding: 2px;
  }

  .fkf-calendar-fixture-main {
    gap: 3px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  .fkf-calendar-home {
    justify-content: flex-end;
    text-align: right;
  }

  .fkf-calendar-score {
    width: max-content;
  }

  .fkf-calendar-team {
    font-size: 10px;
    gap: 2px;
  }

  .fkf-calendar-team img {
    height: 16px;
    width: 16px;
  }

  .fkf-calendar-score {
    font-size: 9px;
    min-width: 24px;
    padding: 1px 4px;
  }

  .fkf-calendar-fixture-meta {
    gap: 3px 5px;
    min-height: 21px;
    padding-right: 65px;
  }

  .fkf-calendar-icon-btn {
    height: 19px;
    width: 19px;
  }

  .fkf-calendar-icon-btn .bi {
    font-size: 10px;
  }

  .fkf-calendar-drag-handle {
    display: inline-flex;
  }

  .fkf-calendar-meta-details {
    gap: 2px 5px;
  }

  .fkf-calendar-meta-details [data-fixture-venue] {
    max-width: min(96px, 100%);
  }
}

@media (max-width: 575.98px) {
  .fkf-calendar-fixture-meta {
    min-height: 0;
    padding: 0 0 23px;
  }

  .fkf-calendar-actions {
    inset: auto 0 0 auto;
    position: absolute;
  }

  .fkf-calendar-meta-details {
    display: block;
    justify-content: flex-start;
    line-height: 1.45;
    margin-left: 0;
    text-align: left;
  }

  .fkf-calendar-meta-details > span {
    display: inline;
    margin-right: 6px;
  }

  .fkf-calendar-meta-details [data-fixture-venue] {
    display: inline;
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }
}

.fkf-kit-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fkf-kit-card {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  padding: 14px;
}

.fkf-kit-card-header {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.fkf-kit-icon {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--fkf-primary) 34%, transparent);
  border-radius: 6px;
  color: var(--fkf-primary);
  display: inline-flex;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.fkf-kit-display,
.fkf-kit-editor-preview {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface-muted) 70%, transparent);
  border: 1px solid var(--fkf-border);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 0;
  justify-content: center;
  padding: 16px;
}

.fkf-kit-display {
  min-height: 250px;
}

.fkf-kit-editor-preview {
  min-height: 320px;
}

.fkf-kit-piece {
  border-radius: 0;
  display: block;
  height: auto;
  object-fit: contain;
}

.fkf-kit-display .fkf-kit-piece {
  width: 100px;
}

.fkf-kit-editor-preview .fkf-kit-piece {
  width: 120px;
}

.fkf-kit-color-list {
  display: grid;
  gap: 8px;
}

.fkf-kit-color-row {
  align-items: center;
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 6px;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 8px 10px;
}

.fkf-kit-color-row > span {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}

.fkf-kit-swatch {
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  display: inline-flex;
  height: 18px;
  width: 18px;
}

.fkf-color-input {
  height: var(--fkf-control-min-height);
  max-width: 100%;
  padding: 4px;
  width: 100%;
}

.fkf-theme-preview {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  display: grid;
  gap: 12px;
  padding: 14px;
}

.fkf-theme-preview-head {
  align-items: center;
  display: flex;
  gap: 10px;
}

.fkf-theme-preview-head small {
  color: var(--fkf-text-muted);
  display: block;
}

.fkf-theme-preview-logo {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 86%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 55%);
  border-radius: var(--fkf-radius-md);
  color: var(--fkf-primary);
  display: inline-flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.fkf-theme-preview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fkf-theme-preview-card {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-left: 4px solid var(--fkf-primary);
  border-radius: var(--fkf-radius-md);
  display: grid;
  gap: 9px;
  padding: 12px;
}

.fkf-floating-actions {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface), transparent 4%);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-md);
  bottom: 12px;
  box-shadow: var(--fkf-shadow-soft);
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 10px;
  padding: 10px;
  position: sticky;
  z-index: 4;
}

@media (max-width: 991.98px) {
  .fkf-kit-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .fkf-kit-card {
    padding: 12px;
  }

  .fkf-kit-display,
  .fkf-kit-editor-preview {
    padding: 12px;
  }

  .fkf-kit-display {
    min-height: 220px;
  }

  .fkf-kit-editor-preview {
    min-height: 250px;
  }

  .fkf-kit-display .fkf-kit-piece {
    width: 100px;
  }

  .fkf-kit-editor-preview .fkf-kit-piece {
    width: 108px;
  }

  .fkf-floating-actions {
    flex-direction: column-reverse;
  }

  .fkf-floating-actions .btn {
    width: 100%;
  }
}

.fkf-squad-board {
  align-items: start;
}

body.fkf-squad-dragging {
  overscroll-behavior: none;
  touch-action: none;
}

body.fkf-squad-dragging .gu-mirror {
  touch-action: none;
}

.fkf-squad-pitch-card {
  margin-inline: auto;
  max-width: min(100%, 980px);
}

.fkf-squad-pitch-card .card-body {
  overflow: hidden;
}

.fkf-squad-pitch {
  background:
    linear-gradient(180deg, rgba(20, 126, 58, 0.18), rgba(8, 95, 41, 0.14)),
    url("../img/footballpitch9.jpg");
  background-blend-mode: normal;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 48%);
  border-radius: var(--fkf-radius-md);
  display: grid;
  gap: 8px;
  grid-template-rows: repeat(4, minmax(0, 1fr));
  height: clamp(430px, 64vw, 570px);
  min-height: 0;
  padding: 12px;
  width: 100%;
}

html[data-theme="dark"] body.fkf-modern .fkf-squad-pitch,
body.fkf-modern[data-theme="dark"] .fkf-squad-pitch {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--fkf-primary), #12281c 65%), color-mix(in srgb, var(--fkf-primary), #0f2419 78%)),
    url("../img/footballpitch9.jpg");
  background-blend-mode: multiply;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.fkf-squad-line {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: var(--fkf-radius-md);
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  padding: 8px 10px;
}

.fkf-squad-line-header {
  align-items: center;
  color: rgba(255, 255, 255, 0.96);
  display: flex;
  font-size: 12px;
  font-weight: var(--fkf-font-weight-heavy);
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 6px;
}

.fkf-squad-line-header small {
  color: rgba(255, 255, 255, 0.88);
  font-weight: var(--fkf-font-weight-semibold);
}

.fkf-squad-zone {
  align-content: center;
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  min-height: 0;
  padding: 0;
}

.fkf-squad-zone-field {
  flex-wrap: nowrap;
  justify-content: space-evenly;
  overflow-x: hidden;
  overflow-y: hidden;
  padding: 1px 0 4px;
  scrollbar-width: thin;
}

.fkf-squad-zone:empty::after {
  align-items: center;
  border: 1px dashed color-mix(in srgb, var(--fkf-primary), transparent 48%);
  border-radius: var(--fkf-radius-sm);
  color: var(--fkf-text-muted);
  content: attr(data-empty);
  display: flex;
  flex: 1 1 100%;
  font-size: 12px;
  justify-content: center;
  min-height: 46px;
  padding: 8px;
  text-align: center;
}

.fkf-squad-zone-side {
  max-height: none;
  overflow: visible;
  padding-right: 2px;
}

#Substitute.fkf-squad-zone-side {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--fkf-surface), transparent 18%), color-mix(in srgb, var(--fkf-primary), transparent 88%)),
    url("../img/squadbench.jpg");
  background-blend-mode: normal;
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px dashed color-mix(in srgb, var(--fkf-primary), transparent 46%);
  border-radius: var(--fkf-radius-md);
  min-height: 104px;
  padding: 8px;
}

#Substitute.fkf-squad-zone-side,
.fkf-squad-zone-available {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fkf-squad-zone-available {
  max-height: none;
}

.fkf-squad-zone-available .fkf-squad-player,
#Substitute.fkf-squad-zone-side .fkf-squad-player {
  max-width: none;
  width: 100%;
}

.fkf-squad-zone-available:empty::after {
  grid-column: 1 / -1;
}

.fkf-squad-player {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface), transparent 7%);
  border: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm);
  box-shadow: 0 8px 20px rgba(16, 24, 32, 0.08);
  color: var(--fkf-text);
  cursor: grab;
  display: grid;
  gap: 6px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 42px;
  min-width: 0;
  padding: 5px 7px;
  touch-action: none;
  width: min(164px, 100%);
}

.fkf-squad-zone-field .fkf-squad-player {
  flex: 1 1 0;
  max-width: 150px;
  min-width: 0;
  width: auto;
}

.fkf-squad-player:active {
  cursor: grabbing;
}

.fkf-squad-player.is-saving {
  opacity: 0.65;
  pointer-events: none;
}

.fkf-squad-avatar {
  background: var(--fkf-surface-muted);
  border: 1px solid var(--fkf-border);
  border-radius: 999px;
  height: 28px;
  object-fit: cover;
  width: 28px;
}

.fkf-squad-player-body {
  display: block;
  min-width: 0;
}

.fkf-squad-player-body strong,
.fkf-squad-player-body small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-squad-player-body strong {
  font-size: 11px;
  font-weight: var(--fkf-font-weight-heavy);
}

.fkf-squad-player-body small {
  color: var(--fkf-text-muted);
  font-size: 10px;
}

.fkf-squad-number {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-primary), transparent 84%);
  border: 1px solid color-mix(in srgb, var(--fkf-primary), transparent 55%);
  border-radius: 999px;
  color: var(--fkf-primary);
  display: inline-flex;
  font-size: 9px;
  font-weight: var(--fkf-font-weight-heavy);
  height: 16px;
  justify-content: center;
  min-width: 16px;
  padding: 0 3px;
}

.fkf-squad-zone-available .fkf-squad-player,
#Substitute.fkf-squad-zone-side .fkf-squad-player {
  gap: 3px;
}

.fkf-squad-zone-available .fkf-squad-player-body,
#Substitute.fkf-squad-zone-side .fkf-squad-player-body {
  flex: 0 1 auto;
}

.fkf-substitution-list {
  max-height: 280px;
  overflow: auto;
}

@media (max-width: 1199.98px) {
  .fkf-squad-pitch {
    height: clamp(390px, 70vw, 520px);
    min-height: 0;
  }
}

@media (min-width: 1200px) {
  .fkf-squad-zone-available {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .fkf-squad-zone-field {
    gap: 6px;
  }

  .fkf-squad-zone-field .fkf-squad-player {
    align-items: center;
    display: flex;
    flex: 0 0 calc((100% - 24px) / 5);
    flex-direction: column;
    gap: 4px;
    justify-content: center;
    max-width: calc((100% - 24px) / 5);
    min-height: 62px;
    min-width: 58px;
    padding: 5px 4px;
    position: relative;
    text-align: center;
    width: calc((100% - 24px) / 5);
  }

  .fkf-squad-zone-field .fkf-squad-avatar {
    height: 30px;
    width: 30px;
  }

  .fkf-squad-zone-field .fkf-squad-player-body {
    width: 100%;
  }

  .fkf-squad-zone-field .fkf-squad-player-body strong {
    font-size: 10px;
    line-height: 1.05;
    text-align: center;
  }

  .fkf-squad-zone-field .fkf-squad-player-body small {
    display: none;
  }

  .fkf-squad-zone-field .fkf-squad-number {
    font-size: 8px;
    height: 18px;
    min-width: 18px;
    padding: 0 3px;
    position: absolute;
    right: 3px;
    top: 3px;
  }
}

@media (max-width: 575.98px) {
  .fkf-squad-pitch {
    gap: 8px;
    height: clamp(360px, 112vw, 520px);
    min-height: 0;
    padding: 10px;
  }

  .fkf-squad-line {
    min-height: 92px;
    padding: 7px;
  }

  .fkf-squad-line-header {
    margin-bottom: 6px;
  }

  .fkf-squad-zone {
    gap: 6px;
  }

  .fkf-squad-zone-side {
    max-height: 280px;
  }

  .fkf-squad-player {
    gap: 6px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 40px;
    padding: 5px 7px;
    width: 100%;
  }

  .fkf-squad-zone-field .fkf-squad-player {
    align-items: center;
    display: flex;
    flex: 0 0 calc((100% - 24px) / 5);
    flex-direction: column;
    gap: 3px;
    justify-content: center;
    max-width: calc((100% - 24px) / 5);
    min-height: 58px;
    min-width: 56px;
    padding: 4px 3px;
    position: relative;
    text-align: center;
    width: calc((100% - 24px) / 5);
  }

  .fkf-squad-avatar {
    height: 26px;
    width: 26px;
  }

  .fkf-squad-zone-field .fkf-squad-avatar {
    height: 28px;
    width: 28px;
  }

  .fkf-squad-zone-field .fkf-squad-player-body {
    width: 100%;
  }

  .fkf-squad-zone-field .fkf-squad-player-body strong {
    font-size: 10px;
    line-height: 1.05;
    text-align: center;
  }

  .fkf-squad-zone-field .fkf-squad-player-body small {
    display: none;
  }

  .fkf-squad-zone-field .fkf-squad-number {
    font-size: 8px;
    height: 18px;
    min-width: 18px;
    padding: 0 3px;
    position: absolute;
    right: 3px;
    top: 3px;
  }
}

.fkf-squad-zone-available,
#Substitute.fkf-squad-zone-side {
  align-content: start;
  box-sizing: border-box;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow-y: visible;
  padding: 0.2rem 0.35rem 0.45rem;
  scroll-padding-top: 0.2rem;
}

.fkf-squad-available-card .card-body {
  position: relative;
}

.fkf-squad-available-card,
.fkf-squad-substitute-card {
  margin-top: 0.9rem;
}

.fkf-squad-substitute-card .card-body {
  position: relative;
}

.fkf-squad-panel-chip {
  align-items: center;
  background: color-mix(in srgb, var(--fkf-surface) 88%, var(--fkf-primary) 12%);
  border: 1px solid color-mix(in srgb, var(--fkf-border) 70%, var(--fkf-primary) 30%);
  border-radius: 999px;
  box-shadow: 0 6px 16px color-mix(in srgb, var(--fkf-primary), transparent 88%);
  color: var(--fkf-text);
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: var(--fkf-font-weight-heavy);
  gap: 0.45rem;
  padding: 0.18rem 0.28rem 0.18rem 0.55rem;
  pointer-events: none;
  position: absolute;
  right: 0.55rem;
  top: -1.7rem;
  z-index: 2;
}

.fkf-squad-zone-available .fkf-squad-player,
#Substitute.fkf-squad-zone-side .fkf-squad-player {
  min-width: 0;
  width: 100%;
}

@media (min-width: 576px) {
  .fkf-squad-zone-available,
  #Substitute.fkf-squad-zone-side {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 768px) {
  .fkf-squad-zone-available,
  #Substitute.fkf-squad-zone-side {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .fkf-squad-zone-available,
  #Substitute.fkf-squad-zone-side {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.fkf-sms-table .fkf-sms-date-cell,
.fkf-sms-table .fkf-sms-status-cell,
.fkf-sms-table .fkf-sms-meta-cell {
  width: 1%;
}

.fkf-sms-table .fkf-sms-status-cell,
.fkf-sms-table .fkf-sms-meta-cell {
  white-space: nowrap;
}

.fkf-sms-table .fkf-sms-message-cell {
  width: auto;
}

.fkf-sms-mobile-meta {
  display: none;
}

.fkf-all-log-actor {
  align-items: center;
  display: flex;
  gap: 0.55rem;
  min-width: 0;
}

.fkf-all-log-avatar {
  background: var(--fkf-surface-muted);
  border: 1px solid color-mix(in srgb, var(--fkf-border), transparent 8%);
  border-radius: 50%;
  flex: 0 0 2rem;
  height: 2rem;
  object-fit: cover;
  width: 2rem;
}

.fkf-all-log-actor-main {
  min-width: 0;
}

.fkf-all-log-actor-name {
  display: block;
  font-weight: var(--fkf-font-weight-bold);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-all-log-time,
.fkf-log-meta-cell {
  color: var(--fkf-text-muted);
}

.fkf-all-log-time {
  font-size: 0.72rem;
}

.fkf-log-table .fkf-log-meta-cell {
  white-space: nowrap;
  width: 1%;
}

.fkf-all-log-description,
.fkf-log-description {
  overflow-wrap: anywhere;
}

.fkf-all-log-ip,
.fkf-log-ip {
  color: var(--fkf-text-muted);
}

.fkf-dashboard-log-entry.fkf-log-card {
  background: var(--fkf-surface);
  border: 1px solid var(--fkf-border);
  border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  border-left-width: 1px;
  border-radius: var(--fkf-radius-md);
  box-shadow: var(--fkf-shadow-sm);
  padding: 0.6rem;
}

.fkf-dashboard-log-list {
  gap: 0.55rem !important;
}

@media (max-width: 767.98px) {
  .fkf-sms-responsive {
    overflow-x: hidden;
  }

  .fkf-sms-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block !important;
    min-width: 0 !important;
    table-layout: fixed;
    width: 100% !important;
  }

  .fkf-sms-table thead {
    display: none;
  }

  .fkf-sms-table tbody {
    display: grid;
    gap: 0.55rem;
    padding: 0.65rem;
    width: 100% !important;
  }

  .fkf-sms-table tbody tr:not(.fkf-empty-row) {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-radius: var(--fkf-radius-md);
    box-shadow: var(--fkf-shadow-sm);
    display: grid;
    gap: 0.28rem 0.55rem;
    grid-template-areas:
      "meta status"
      "message message";
    grid-template-columns: minmax(0, 1fr) auto;
    margin: 0;
    min-width: 0;
    overflow: hidden;
    padding: 0.6rem;
    width: 100%;
  }

  .fkf-sms-table tbody tr:not(.fkf-empty-row) {
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
  }

  .fkf-sms-table tbody tr.fkf-empty-row {
    display: block;
  }

  .fkf-sms-table tbody td {
    border: 0 !important;
    display: block;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
  }

  .fkf-sms-date-cell {
    display: none !important;
  }

  .fkf-sms-status-cell {
    grid-area: status;
    justify-self: end;
    max-width: 7.4rem;
    min-width: 0 !important;
    text-align: right;
    white-space: normal !important;
  }

  .fkf-sms-status-cell .badge {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
  }

  .fkf-sms-meta-cell {
    grid-area: meta;
    min-width: 0;
  }

  .fkf-sms-meta-cell .fw-semibold {
    line-height: 1.15;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-sms-desktop-recipient {
    display: none;
  }

  .fkf-sms-mobile-meta {
    display: block;
    line-height: 1.2;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-sms-message-cell {
    border-top: 1px solid var(--fkf-border) !important;
    grid-area: message;
    line-height: 1.35;
    margin-top: 0.2rem;
    padding-top: 0.45rem !important;
    width: 100% !important;
  }

  .fkf-sms-meta-cell .fw-semibold,
  .fkf-sms-meta-cell .text-muted,
  .fkf-sms-message-cell {
    overflow-wrap: anywhere;
  }

  .fkf-log-table-wrap {
    overflow-x: hidden;
  }

  .fkf-log-table {
    border-collapse: separate;
    border-spacing: 0;
    display: block !important;
    min-width: 0 !important;
    table-layout: fixed;
    width: 100% !important;
  }

  .fkf-log-table thead {
    display: none;
  }

  .fkf-log-table tbody {
    display: grid;
    gap: 0.55rem;
    padding: 0.65rem;
    width: 100% !important;
  }

  .fkf-log-table tbody tr:not(.fkf-empty-row) {
    background: var(--fkf-surface);
    border: 1px solid var(--fkf-border);
    border-bottom-color: color-mix(in srgb, var(--fkf-border) 58%, var(--fkf-primary) 42%);
    border-radius: var(--fkf-radius-md);
    box-shadow: var(--fkf-shadow-sm);
    display: block;
    margin: 0;
    min-width: 0;
    overflow: hidden;
    padding: 0.6rem;
    width: 100%;
  }

  .fkf-log-table tbody tr.fkf-empty-row {
    display: block;
  }

  .fkf-log-table tbody td {
    border: 0 !important;
    display: block;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
  }

  .fkf-log-table .fkf-log-meta-cell {
    font-size: 0.72rem;
    margin-bottom: 0.28rem;
    white-space: normal;
  }

  .fkf-all-log-actor {
    margin-bottom: 0.28rem;
  }

  .fkf-all-log-avatar {
    flex-basis: 1.85rem;
    height: 1.85rem;
    width: 1.85rem;
  }

  .fkf-log-action-title {
    font-size: 0.82rem;
    line-height: 1.2;
    margin-top: 0.08rem;
  }

  .fkf-log-detail-cell {
    border-top: 1px solid var(--fkf-border) !important;
    margin-top: 0.2rem;
    padding-top: 0.45rem !important;
  }

  .fkf-all-log-description,
  .fkf-log-description {
    color: var(--fkf-text);
    font-size: 0.8rem;
    line-height: 1.35;
  }

  .fkf-all-log-ip,
  .fkf-log-ip {
    display: inline-block;
    font-weight: 600;
    margin-top: 0.2rem;
  }
}

/* Standings list and promotion/playoff/relegation markers. */
.fkf-standing-legend {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--fkf-space-3);
}

.fkf-standing-legend-item {
  align-items: center;
  color: var(--fkf-text-muted);
  display: inline-flex;
  font-size: 0.78rem;
  gap: var(--fkf-space-1);
  white-space: nowrap;
}

.fkf-standing-legend-mark {
  border-radius: 999px;
  display: inline-block;
  height: 0.9rem;
  width: 0.22rem;
}

.fkf-standing-legend-mark.is-promotion {
  background: var(--fkf-success);
}

.fkf-standing-legend-mark.is-playoff {
  background: color-mix(in srgb, var(--fkf-warning) 68%, #8a5a00);
}

.fkf-standing-legend-mark.is-relegation {
  background: var(--fkf-danger);
}

.fkf-standings-table {
  border-collapse: separate;
  border-spacing: 0 var(--fkf-space-2);
}

.fkf-standings-table .fkf-standing-position-col {
  max-width: none;
  min-width: 76px;
  text-align: left;
  width: 76px;
}

.fkf-standings-table .fkf-standing-position-action {
  align-items: center;
  display: inline-flex;
  gap: var(--fkf-space-2);
}

.fkf-standings-table .fkf-standing-position {
  display: inline-block;
  font-weight: var(--fkf-font-weight-bold);
  min-width: 1.7rem;
  text-align: center;
}

.fkf-standings-table .fkf-standing-team-line,
.fkf-standings-table .fkf-standing-team-name {
  min-width: 0;
}

.fkf-standings-table .fkf-standing-team-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fkf-standings-table tbody .fkf-standing-row {
  --fkf-standing-marker: transparent;
  --fkf-standing-tint: var(--fkf-surface);
}

.fkf-standings-table tbody .fkf-standing-row.is-promotion {
  --fkf-standing-marker: var(--fkf-success);
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-success) 17%, var(--fkf-surface));
}

.fkf-standings-table tbody .fkf-standing-row.is-playoff {
  --fkf-standing-marker: color-mix(in srgb, var(--fkf-warning) 68%, #8a5a00);
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-warning) 15%, var(--fkf-surface));
}

.fkf-standings-table tbody .fkf-standing-row.is-relegation {
  --fkf-standing-marker: var(--fkf-danger);
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-danger) 12%, var(--fkf-surface));
}

html[data-theme="dark"] body.fkf-modern .fkf-standings-table tbody .fkf-standing-row.is-promotion,
body.fkf-modern[data-theme="dark"] .fkf-standings-table tbody .fkf-standing-row.is-promotion {
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-success) 24%, var(--fkf-surface));
}

html[data-theme="dark"] body.fkf-modern .fkf-standings-table tbody .fkf-standing-row.is-playoff,
body.fkf-modern[data-theme="dark"] .fkf-standings-table tbody .fkf-standing-row.is-playoff {
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-warning) 17%, var(--fkf-surface));
}

html[data-theme="dark"] body.fkf-modern .fkf-standings-table tbody .fkf-standing-row.is-relegation,
body.fkf-modern[data-theme="dark"] .fkf-standings-table tbody .fkf-standing-row.is-relegation {
  --fkf-standing-tint: color-mix(in srgb, var(--fkf-danger) 15%, var(--fkf-surface));
}

.fkf-standings-table tbody .fkf-standing-row > td {
  background: var(--fkf-standing-tint);
  border-bottom: 1px solid color-mix(in srgb, var(--fkf-border) 72%, var(--fkf-primary) 28%);
  border-top: 1px solid var(--fkf-border);
  box-shadow: none;
}

.fkf-standings-table tbody .fkf-standing-row > td:first-child {
  border-left: 1px solid var(--fkf-border);
  border-radius: var(--fkf-radius-sm) 0 0 var(--fkf-radius-sm);
  padding-left: calc(var(--fkf-table-cell-padding-x) + 0.48rem);
  position: relative;
}

.fkf-standings-table tbody .fkf-standing-row:not([data-standing-indicator=""]) > td:first-child::before {
  background: var(--fkf-standing-marker);
  border-radius: 0 999px 999px 0;
  bottom: 0.12rem;
  content: "";
  left: -1px;
  position: absolute;
  top: 0.12rem;
  width: 0.42rem;
}

.fkf-standings-table tbody .fkf-standing-row:not([data-standing-indicator=""]) .fkf-standing-position {
  color: var(--fkf-standing-marker);
}

.fkf-standings-table tbody .fkf-standing-row > td:last-child {
  border-radius: 0 var(--fkf-radius-sm) var(--fkf-radius-sm) 0;
  border-right: 1px solid var(--fkf-border);
}

.fkf-standings-table.table-hover > tbody > .fkf-standing-row:hover > td {
  background: color-mix(in srgb, var(--fkf-primary) 5%, var(--fkf-standing-tint));
  color: var(--fkf-text);
}

.fkf-standings-table tbody .fkf-standing-group-row > td {
  background: transparent;
  border: 0;
  padding-bottom: var(--fkf-space-1);
  padding-top: var(--fkf-space-3);
}

.fkf-standing-group-label {
  color: var(--fkf-text);
  font-size: var(--fkf-table-font-size);
  font-weight: 600;
}

.fkf-standing-group-label.is-custom {
  color: var(--fkf-text-muted);
  font-size: var(--fkf-btn-sm-font-size);
  font-weight: 500;
}

@media (max-width: 575.98px) {
  .fkf-standings-table-wrap {
    overflow-x: hidden;
  }

  .fkf-modern .fkf-standings-table {
    font-size: 0.68rem;
    min-width: 0 !important;
    table-layout: fixed;
    width: 100% !important;
  }

  .fkf-modern .fkf-standings-table > :not(caption) > * > * {
    overflow: hidden;
    padding-left: 2px;
    padding-right: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fkf-standings-table .fkf-standing-position-col {
    max-width: 46px;
    min-width: 46px;
    width: 46px;
  }

  .fkf-standings-table .fkf-standing-position-action {
    gap: 1px;
    width: 100%;
  }

  .fkf-standings-table .fkf-standing-position {
    min-width: 0.72rem;
  }

  .fkf-standings-table .fkf-standing-position-action .fkf-row-action {
    height: 27px;
    min-height: 27px;
    min-width: 27px;
    padding: 0;
    width: 27px;
  }

  .fkf-standings-table .fkf-standing-position-action .fkf-row-action .bi {
    font-size: 0.72rem;
  }

  .fkf-standings-table tbody .fkf-standing-row > td:first-child {
    padding-left: 5px;
    padding-right: 1px;
  }

  .fkf-standings-table tbody .fkf-standing-row:not([data-standing-indicator=""]) > td:first-child::before {
    width: 0.22rem;
  }

  .fkf-standings-table .fkf-standing-team-col {
    max-width: none;
    min-width: 0;
    width: auto;
  }

  .fkf-standings-table .fkf-standing-team-line {
    gap: 2px !important;
    width: 100%;
  }

  .fkf-standings-table .fkf-standing-team-line .fkf-logo-xs {
    flex: 0 0 auto;
    height: 20px;
    width: 20px;
  }

  .fkf-standings-table .fkf-standing-team-name {
    flex: 1 1 auto;
  }

  .fkf-standings-table th:nth-child(3),
  .fkf-standings-table th:nth-child(4),
  .fkf-standings-table th:nth-child(5),
  .fkf-standings-table th:nth-child(6) {
    width: 24px;
  }

  .fkf-standings-table th:nth-child(7) {
    width: 36px;
  }

  .fkf-standings-table th:nth-child(8) {
    width: 30px;
  }

  .fkf-standings-table th:nth-child(9) {
    width: 28px;
  }
}
