/*
 * SLS Clubhouse public components
 *
 * Ownership:
 * - The SLS plugin provides markup, behaviour, data, accessibility and its
 *   small structural CSS foundation.
 * - Clubhouse provides the public visual treatment in this file.
 * - Scoring-console, admin, print and embedded-scorecard CSS remains in the
 *   plugin because those interfaces must work independently of the theme.
 */

.sls-public-page,
.sls-public-list,
.sls-public-display,
.sls-widget{
  --sls-public-button-height:38px;
  --sls-public-button-font-size:13px;
  --sls-public-button-font-weight:700;
  --sls-public-button-primary:var(--sls-theme-accent,#12613a);
  --sls-public-button-success:var(--sls-theme-button-success-bg,#2f7d24);
  --sls-public-button-warning:var(--sls-theme-button-warning-bg,#f5bd00);
  --sls-public-button-danger:var(--sls-theme-button-danger-bg,#c70d00);
  --sls-public-button-dark:var(--sls-theme-ink,#111827);
  --sls-public-card-border:var(--sls-theme-line,#dbe3ef);
}

body.sls-public-route #content.site-content{
  margin-top:0;
}

.sls-public-page{
  width:min(1600px,calc(100vw - 24px));
  max-width:none;
  margin-inline:auto;
  padding:0 clamp(14px,2vw,28px) clamp(16px,2vw,28px);
  color:var(--sls-theme-text,#111827);
  font-family:var(--sls-theme-font,"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
}

.sls-public-page--game{
  width:min(1600px,calc(100vw - 20px));
}

.sls-public-page__header{
  display:grid;
  gap:8px;
  margin-bottom:18px;
}

.sls-public-page__brand{
  display:flex;
  align-items:center;
  min-width:0;
}

.sls-public-page__brand-copy{
  display:grid;
  gap:6px;
  min-width:0;
}

.sls-public-page__intro,
.sls-public-copy,
.sls-public-muted,
.sls-player-profile__meta,
.sls-team-profile__meta{
  color:var(--sls-theme-muted,#64748b);
  line-height:1.5;
}

.sls-public-page__intro{
  max-width:78ch;
  margin:0;
}

.sls-public-nav,
.sls-public-actions,
.sls-public-filter-actions,
.sls-public-game-actions,
.sls-public-game-recap__head-actions,
.sls-calendar-feed-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}

.sls-public-nav{
  margin-top:10px;
}

.sls-public-actions{
  margin-top:16px;
}

.sls-public-button,
.sls-public-status,
.sls-public-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--sls-public-button-height);
  max-width:100%;
  padding:8px 13px;
  border:1px solid var(--sls-public-button-primary,var(--sls-theme-accent,#12613a));
  border-radius:var(--sls-theme-button-radius,0);
  font-family:inherit;
  font-size:var(--sls-public-button-font-size);
  font-weight:var(--sls-public-button-font-weight);
  line-height:1.1;
  letter-spacing:0;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  box-sizing:border-box;
}

.sls-public-button,
.sls-public-nav a{
  background:var(--sls-public-button-primary,var(--sls-theme-accent,#12613a));
  color:var(--sls-theme-button-primary-text,#fff);
  box-shadow:var(--sls-theme-card-shadow,0 2px 7px rgba(15,23,42,.16));
}

.sls-public-button:hover,
.sls-public-button:focus-visible,
.sls-public-nav a:hover,
.sls-public-nav a:focus-visible,
.sls-public-nav a.is-active{
  border-color:var(--sls-public-button-dark);
  background:var(--sls-public-button-dark);
  color:#fff;
  text-decoration:none;
}

.sls-public-button--primary{
  --sls-public-button-primary:var(--sls-theme-accent,#12613a);
}

.sls-public-button--secondary{
  --sls-public-button-primary:var(--sls-theme-secondary,#111827);
}

.sls-public-button--tertiary{
  --sls-public-button-primary:var(--sls-theme-tertiary,#f5bd00);
  color:var(--sls-theme-tertiary-contrast,#111827);
}

.sls-public-button--success{
  --sls-public-button-primary:var(--sls-public-button-success);
}

.sls-public-button--warning{
  --sls-public-button-primary:var(--sls-public-button-warning);
  color:#111827;
}

.sls-public-button--danger{
  --sls-public-button-primary:var(--sls-public-button-danger);
}

.sls-public-status{
  --sls-status-color:var(--sls-theme-accent,#12613a);
  border-color:var(--sls-status-color);
  border-radius:var(--sls-theme-button-radius,0);
  background:var(--sls-status-color);
  color:var(--sls-status-text,#fff);
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:none;
}

.sls-public-status.is-long{
  font-size:11px;
}

.sls-public-status.is-very-long{
  font-size:10px;
}

.sls-public-filters{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;
  align-items:end;
  margin:0 0 16px;
  padding:14px;
}

.sls-public-filter{
  display:grid;
  gap:5px;
  min-width:0;
}

.sls-public-filter label,
.sls-venue-selector label{
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
  font-weight:700;
}

.sls-public-filter select,
.sls-venue-selector select{
  width:100%;
  min-height:38px;
  padding:6px 10px;
  border:1px solid var(--sls-theme-line,#cbd5e1);
  border-radius:var(--sls-theme-button-radius,0);
  background:#fff;
  color:var(--sls-theme-text,#111827);
  font:inherit;
  box-shadow:none;
}

.sls-public-filter select:focus,
.sls-venue-selector select:focus{
  border-color:var(--sls-theme-accent,#12613a);
  outline:2px solid rgba(18,97,58,.22);
  outline:2px solid color-mix(in srgb,var(--sls-theme-accent,#12613a) 22%,transparent);
  outline-offset:1px;
}

.sls-public-empty,
.sls-venue-browser-empty{
  margin:0;
  padding:16px 18px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
  color:var(--sls-theme-muted,#64748b);
}

.sls-public-panel,
.sls-event-card,
.sls-player-profile,
.sls-team-profile,
.sls-directory-card,
.sls-award-card,
.sls-venue-directory-card,
.sls-public-filters,
.sls-public-scoreboard{
  min-width:0;
  border:1px solid var(--sls-public-card-border);
  border-radius:var(--sls-theme-card-radius,0);
  background:var(--sls-theme-surface,#fff);
  color:var(--sls-theme-text,#111827);
  box-shadow:var(--sls-theme-card-shadow,0 2px 7px rgba(15,23,42,.16));
}

.sls-public-table-wrap,
.sls-widget .sls-public-table-wrap{
  border:1px solid var(--sls-public-card-border);
  border-radius:var(--sls-theme-card-radius,0);
  background:var(--sls-theme-surface,#fff);
  box-shadow:var(--sls-theme-card-shadow,0 2px 7px rgba(15,23,42,.16));
}

.sls-event-card,
.sls-player-profile,
.sls-team-profile,
.sls-directory-card,
.sls-public-filters,
.sls-public-game-recap{
  border-top-width:var(--sls-theme-bar-width,8px);
  border-top-color:var(--sls-accent,var(--sls-team-color,var(--sls-theme-accent,#12613a)));
}

.sls-public-panel{
  padding:18px;
  border-top:var(--sls-theme-bar-width,8px) solid var(--sls-accent,var(--sls-team-color,var(--sls-theme-accent,#12613a)));
}

.sls-public-card-grid,
.sls-public-grid,
.sls-directory-grid,
.sls-public-insight-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
}

.sls-public-event-blocks-display,
.sls-public-mini-table,
.sls-tournament-games{
  display:grid;
  gap:10px;
}

.sls-public-title,
.sls-player-profile__title,
.sls-team-profile__title,
.sls-directory-card__title,
.sls-award-card__title{
  margin:0 0 6px;
  color:var(--sls-theme-text,#111827);
  font-family:inherit;
  font-size:var(--sls-type-section,16px);
  font-weight:var(--sls-weight-heading,600);
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
}

.sls-public-subtitle{
  margin:0 0 14px;
  color:var(--sls-theme-muted,#64748b);
  font-size:13px;
  line-height:1.5;
}

.sls-public-featured-display > .sls-public-title{
  display:none;
}

.sls-public-table th{
  background:var(--sls-theme-table-head,var(--sls-theme-secondary,var(--sls-theme-ink,#111827)));
  color:var(--sls-theme-table-head-text,#fff);
  font-size:12px;
  font-weight:800;
}

.sls-public-table td{
  font-weight:600;
}

.sls-public-team-logo,
.sls-event-card__team-logo,
.sls-directory-card__logo,
.sls-team-profile__logo,
.sls-public-kpi{
  border-radius:0;
}

.sls-public-kpi{
  box-shadow:0 1px 0 rgba(15,23,42,.04);
}

.sls-public-kpi strong,
.sls-public-scoreboard__score,
.sls-event-card__score{
  font-weight:900;
}

/* Event and game cards */

.sls-event-card{
  grid-template-columns:minmax(0,1fr) auto;
  padding:12px;
  border-top:8px solid var(--sls-accent,var(--sls-theme-accent,#12613a));
}

.sls-event-card__details{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.sls-event-card__detail{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:var(--sls-theme-soft,#f8fafc);
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
  line-height:1.2;
}

.sls-event-card__side{
  display:grid;
  align-content:start;
  justify-items:end;
  gap:6px;
  min-width:116px;
}

.sls-event-card__status-text{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  color:var(--sls-status-color,var(--sls-theme-accent,#12613a));
  font-size:13px;
  font-weight:700;
  line-height:1.25;
  text-align:right;
  white-space:nowrap;
}

.sls-event-card__teams{
  display:grid;
  gap:8px;
  margin-top:6px;
}

.sls-event-card__team-link,
a.sls-public-team-cell{
  color:inherit;
  text-decoration:none;
}

.sls-event-card__team-link:hover,
a.sls-public-team-cell:hover{
  color:var(--sls-theme-accent,#12613a);
  text-decoration:none;
}

.sls-event-card__team-name,
.sls-public-team-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.sls-event-card__team-logo,
.sls-public-team-logo{
  width:32px;
  height:32px;
  flex:0 0 32px;
}

.sls-public-matchup{
  display:grid;
  gap:8px;
}

.sls-event-card__score,
.sls-public-scoreboard__score{
  color:var(--sls-theme-text,#111827);
  font-size:var(--sls-text-score-compact,28px);
  font-weight:700;
  line-height:1;
  text-align:right;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.sls-event-card__score-label{
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
  text-align:right;
}

.sls-event-card__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin-top:8px;
}

.sls-event-card-list>.sls-event-card:nth-child(odd){
  background:#fff;
}

.sls-event-card-list>.sls-event-card:nth-child(even),
.sls-event-card-list>.sls-event-card:nth-child(even) .sls-event-card__body{
  background:#f7f7f7;
}

.sls-fixture-score{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.sls-fixture-score__logo.sls-public-team-logo{
  width:20px;
  height:20px;
  flex-basis:20px;
}

.sls-fixture-score__value,
.sls-fixture-score__dash{
  font-weight:var(--sls-weight-heading,600);
}

.sls-fixture-score--empty{
  color:var(--sls-theme-muted,#64748b);
}

.sls-public-game-recap{
  display:grid;
  gap:18px;
  padding:18px;
  border-top:8px solid var(--sls-accent,var(--sls-theme-accent,#12613a));
}

.sls-public-game-recap__head,
.sls-public-game-section-intro{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
}

.sls-public-game-page{
  display:grid;
  gap:20px;
}

.sls-public-game-live{
  padding:0;
  overflow:visible;
}

.sls-public-game-live>.sls-public-title{
  padding:18px 18px 0;
}

.sls-public-game-live>.sls-public-subtitle{
  padding-inline:18px;
}

.sls-public-box-score-team{
  --sls-theme-accent:var(--sls-box-score-color,var(--sls-theme-accent,#12613a));
  display:grid;
  gap:8px;
  margin-top:16px;
}

.sls-public-game-section-intro+.sls-public-box-score-team{
  margin-top:0;
}

.sls-public-box-score-team-title{
  margin:0;
  color:var(--sls-box-score-color,var(--sls-theme-accent,#12613a));
  font-size:16px;
  font-weight:700;
}

.sls-public-box-score-total td{
  font-weight:700;
}

.sls-public-box-score-total td:first-child{
  text-align:left;
}

.sls-public-scoreboard{
  display:grid;
  overflow:hidden;
}

.sls-public-scoreboard__row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 72px;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border-top:1px solid var(--sls-theme-line,#dbe3ef);
}

.sls-public-scoreboard__row:first-child{
  border-top:0;
}

.sls-public-insight-card{
  display:grid;
  align-content:start;
  gap:5px;
  min-height:92px;
  padding:12px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
}

.sls-public-insight-card span,
.sls-public-insight-card small{
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
}

.sls-public-insight-card strong{
  color:var(--sls-theme-text,#111827);
  font-size:20px;
  line-height:1.15;
}

.sls-public-stat-strip,
.sls-public-detail-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  margin:0;
}

.sls-public-detail-list div{
  display:grid;
  gap:3px;
  padding:12px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:var(--sls-theme-soft,#f8fafc);
}

.sls-public-detail-list dt{
  margin:0;
  color:var(--sls-theme-muted,#64748b);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
}

.sls-public-detail-list dd{
  margin:0;
  color:var(--sls-theme-text,#111827);
}

/* Profiles, directories, awards and galleries */

.sls-player-profile,
.sls-team-profile{
  display:grid;
  grid-template-columns:124px minmax(0,1fr);
  gap:20px;
  padding:20px;
  border-top:8px solid var(--sls-accent,var(--sls-theme-accent,#12613a));
}

.sls-team-profile--no-logo{
  grid-template-columns:minmax(0,1fr);
}

.sls-player-profile__image,
.sls-player-gallery-card__image{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#f1f5f9;
  color:var(--sls-theme-muted,#64748b);
}

.sls-player-profile__image{
  width:124px;
  aspect-ratio:4/6;
}

.sls-player-profile__image.is-landscape{
  aspect-ratio:6/4;
}

.sls-player-profile__image.is-square{
  aspect-ratio:1;
}

.sls-player-profile__image img,
.sls-player-gallery-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.sls-team-profile__logo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:124px;
  aspect-ratio:1;
}

.sls-team-profile__logo img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.sls-player-profile__badges,
.sls-team-profile__badges,
.sls-team-profile__swatches{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.sls-team-profile__swatch{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:28px;
  padding:4px 8px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
}

.sls-team-profile__swatch i{
  display:block;
  width:14px;
  height:14px;
  background:var(--sls-swatch,#64748b);
}

.sls-team-profile__season-note{
  margin-top:10px;
  color:var(--sls-theme-muted,#64748b);
}

.sls-public-badge{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:var(--sls-theme-soft,#f8fafc);
  color:#475569;
  font-size:12px;
  font-weight:600;
}

.sls-directory-grid{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}

.sls-directory-card{
  display:grid;
  gap:12px;
  padding:16px;
  border-top:8px solid var(--sls-accent,var(--sls-theme-accent,#12613a));
}

.sls-directory-card--team{
  grid-template-columns:64px minmax(0,1fr);
}

.sls-directory-card__head{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.sls-directory-card__logo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  flex:0 0 64px;
}

.sls-directory-card__logo img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.sls-directory-card__meta{
  color:var(--sls-theme-muted,#64748b);
  font-size:13px;
}

.sls-awards-list{
  display:grid;
  gap:16px;
}

.sls-award-card{
  overflow:hidden;
}

.sls-award-card__placeholder{
  display:grid;
  place-items:center;
  min-height:180px;
  background:var(--sls-theme-soft,#f8fafc);
  color:var(--sls-theme-muted,#64748b);
  font-weight:700;
}

.sls-award-recipients{
  display:grid;
  gap:8px;
}

.sls-award-recipient{
  display:flex;
  align-items:center;
  gap:8px;
}

.sls-player-season-gallery{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
  gap:14px;
}

.sls-player-season-gallery > :where(.sls-public-season-nav,.sls-public-view-switch,.sls-public-panel){
  width:100%;
  min-width:0;
}

.sls-public-page--player-gallery .sls-player-season-gallery{
  margin-top:14px;
}

.sls-player-gallery-card{
  display:grid;
  overflow:hidden;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
}

.sls-player-gallery-card__image{
  aspect-ratio:4/6;
}

.sls-player-gallery-card__positions{
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
}

/* Competitions */

.sls-competition-description .sls-public-copy{
  max-width:78ch;
}

.sls-competition-description .sls-public-copy>*:first-child{
  margin-top:0;
}

.sls-competition-description .sls-public-copy>*:last-child{
  margin-bottom:0;
}

.sls-theme-preview{
  color:var(--sls-theme-text,#111827);
  font-family:var(--sls-theme-font,"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
}

.sls-competition-divisions,
.sls-competition-division-list,
.sls-competition-matrix-list,
.sls-competition-groups,
.sls-competition-stages,
.sls-competition-stage-list,
.sls-competition-bracket-streams{
  display:grid;
  gap:14px;
}

.sls-competition-group-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:16px;
}

.sls-competition-group,
.sls-competition-stage,
.sls-competition-bracket-stream{
  display:grid;
  gap:10px;
  min-width:0;
}

.sls-competition-group>.sls-public-subtitle,
.sls-competition-stage>.sls-public-subtitle,
.sls-competition-bracket-stream>.sls-public-subtitle{
  margin:0;
  padding-inline:16px;
  color:var(--sls-theme-text,#111827);
  font-size:16px;
  font-weight:700;
}

.sls-competition-bracket-panel{
  display:grid;
  gap:14px;
  overflow:hidden;
}

.sls-competition-bracket{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(230px,1fr);
  gap:16px;
  overflow-x:auto;
  padding-bottom:6px;
}

.sls-competition-bracket__round{
  display:grid;
  align-content:start;
  gap:12px;
  min-width:230px;
}

.sls-competition-bracket__round-title{
  margin:0;
  padding:9px 10px;
  background:var(--sls-theme-accent,#12613a);
  color:var(--sls-theme-accent-contrast,#fff);
  font-size:13px;
  font-weight:700;
  text-align:center;
}

.sls-competition-bracket__match{
  display:grid;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
  box-shadow:var(--sls-theme-card-shadow,0 2px 7px rgba(15,23,42,.16));
}

.sls-competition-bracket__meta{
  display:block;
  padding:8px 10px;
  border-bottom:1px solid var(--sls-theme-line,#dbe3ef);
  background:var(--sls-theme-soft,#f8fafc);
  color:var(--sls-theme-muted,#64748b);
  font-size:12px;
  text-decoration:none;
}

.sls-competition-bracket__team{
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border-top:1px solid var(--sls-theme-line,#dbe3ef);
}

.sls-competition-bracket__team:first-of-type{
  border-top:0;
}

.sls-competition-bracket__team.is-winner{
  border-left:6px solid var(--sls-row-accent,var(--sls-theme-accent,#12613a));
  font-weight:700;
}

.sls-competition-bracket__team strong{
  text-align:center;
  font-variant-numeric:tabular-nums;
}

.sls-competition-bracket__team .sls-public-team-logo{
  width:26px;
  height:26px;
  flex-basis:26px;
}

/* Venues */

.sls-venue-list,
.sls-venue-browser,
.sls-profile-venues-grid{
  display:grid;
  gap:16px;
}

.sls-venue-directory-card{
  overflow:hidden;
  border-top:8px solid var(--sls-theme-accent,#12613a);
}

.sls-venue-directory-card>.sls-public-panel{
  border:0;
  border-top:1px solid var(--sls-theme-line,#dbe3ef);
  box-shadow:none;
}

.sls-venue-directory-card>.sls-public-panel:first-child{
  border-top:0;
}

.sls-venue-card{
  display:grid;
  gap:10px;
  padding:18px;
}

.sls-venue-map{
  width:100%;
  margin-top:12px;
  overflow:hidden;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#f1f5f9;
  aspect-ratio:16/9;
}

.sls-venue-map iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}

.sls-venue-selector{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:10px;
}

.sls-venue-selector label{
  display:grid;
  gap:5px;
}

.sls-venue-selected-layout,
.sls-profile-venues-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
}

.sls-profile-venue-card,
.sls-profile-venue-details{
  display:grid;
  gap:10px;
  min-width:0;
}

.sls-profile-venue-card .sls-venue-map{
  margin-top:0;
}

/* Table helpers that belong to the theme skin. */

.sls-public-table--compact th,
.sls-public-table--compact td{
  padding:8px 10px;
  font-size:13px;
}

.sls-results-matrix__result-col{
  width:auto;
}

.sls-public-player-cell__thumb{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.08);
  background:#f1f5f9;
}

.sls-public-player-cell__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.sls-public-player-cell__name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.sls-public-sort-link{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:inherit;
  text-decoration:none;
}

.sls-public-sort-link:hover,
.sls-public-sort-link.is-active{
  color:inherit;
  text-decoration:none;
}

.sls-public-sort-link.is-active{
  font-weight:700;
}

.sls-public-sort-triangle{
  display:inline-block;
  width:0;
  height:0;
  border-right:4px solid transparent;
  border-left:4px solid transparent;
}

.sls-public-sort-link.is-asc .sls-public-sort-triangle{
  border-bottom:6px solid currentColor;
}

.sls-public-sort-link.is-desc .sls-public-sort-triangle{
  border-top:6px solid currentColor;
}

.sls-public-visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.sls-calendar-month{
  display:grid;
  gap:12px;
}

.sls-calendar-date{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:30px;
  padding:5px 10px;
  border:1px solid var(--sls-theme-line,#dbe3ef);
  background:#fff;
  color:#334155;
  font-size:13px;
  font-weight:700;
}

@media (min-width:761px){
  .sls-competition-bracket{
    grid-auto-flow:row;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    grid-auto-columns:auto;
    overflow-x:visible;
  }

  .sls-competition-bracket__round{
    min-width:0;
  }
}

@media (max-width:900px){
  .sls-venue-selected-layout,
  .sls-profile-venues-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:760px){
  .sls-public-page{
    width:100%;
    padding-inline:12px;
  }

  .sls-public-filters{
    grid-template-columns:1fr;
  }

  .sls-public-filter-actions .sls-public-button{
    flex:1;
  }

  .sls-event-card{
    grid-template-columns:1fr;
  }

  .sls-event-card__side{
    justify-items:start;
    min-width:0;
  }

  .sls-event-card__score,
  .sls-event-card__score-label{
    text-align:left;
  }

  .sls-event-card__actions{
    justify-content:flex-start;
  }

  .sls-player-profile,
  .sls-team-profile{
    grid-template-columns:82px minmax(0,1fr);
    gap:14px;
    padding:16px;
  }

  .sls-player-profile__image,
  .sls-team-profile__logo{
    width:82px;
  }

  .sls-competition-group-grid{
    grid-template-columns:1fr;
  }

  .sls-public-card-grid,
  .sls-public-grid,
  .sls-directory-grid,
  .sls-public-insight-grid{
    grid-template-columns:1fr;
  }
}
