:root {
  --polish-bg: #f4f5f7;
  --polish-surface: #ffffff;
  --polish-surface-2: #f8fafc;
  --polish-line: #e5e7eb;
  --polish-line-2: #dbe3ea;
  --polish-text: #111827;
  --polish-muted: #6b7280;
  --polish-heading: #1f2937;
  --polish-green: #008d6d;
  --polish-green-2: #00a07d;
  --polish-green-soft: #e9f7f3;
  --polish-red-soft: #fee2e2;
  --polish-yellow-soft: #fef3c7;
  --polish-blue-soft: #dbeafe;
  --polish-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 8px 28px rgba(15, 23, 42, 0.06);
}

html, body { background: var(--polish-bg) !important; }
body.public-site {
  color: var(--polish-text) !important;
  letter-spacing: 0;
}
body.public-site .container {
  max-width: 1180px;
}
body.public-site .container.py-4,
body.public-site .container.mb-5,
body.public-site .container.mb-4,
body.public-site .container.mb-3 {
  position: relative;
}
body.public-site .card,
body.public-site .accordion-item,
body.public-site .summary-card,
body.public-site .news-card,
body.public-site .player-card,
body.public-site .team-banner,
body.public-site .polish-shell-card,
body.public-site .polish-match-card,
body.public-site .polish-live-card,
body.public-site .polish-upcoming-card,
body.public-site .polish-empty-state {
  border-radius: 16px !important;
  border: 1px solid var(--polish-line) !important;
  background: var(--polish-surface) !important;
  box-shadow: var(--polish-shadow) !important;
}
body.public-site .card:hover,
body.public-site .news-card:hover,
body.public-site .player-card:hover,
body.public-site .polish-match-card:hover,
body.public-site .polish-live-card:hover,
body.public-site .polish-upcoming-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08) !important;
}
body.public-site .badge,
body.public-site .mc-pill,
body.public-site .league-badge,
body.public-site .public-chip {
  border-radius: 999px !important;
  font-weight: 700;
  letter-spacing: .02em;
}
body.public-site .btn,
body.public-site button,
body.public-site .league-link-btn,
body.public-site .league-chip-btn,
body.public-site .read-more-btn {
  border-radius: 12px !important;
}
body.public-site .form-control,
body.public-site .form-select,
body.public-site textarea,
body.public-site select,
body.public-site input {
  border-radius: 12px !important;
  border-color: var(--polish-line-2) !important;
  box-shadow: none !important;
}
body.public-site .form-control:focus,
body.public-site .form-select:focus,
body.public-site textarea:focus,
body.public-site select:focus,
body.public-site input:focus {
  border-color: #8ad7c2 !important;
  box-shadow: 0 0 0 4px rgba(0, 141, 109, 0.09) !important;
}
body.public-site .table {
  margin-bottom: 0;
}
body.public-site .table th {
  font-size: .74rem !important;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--polish-muted) !important;
  background: #f8fafc !important;
}
body.public-site .table td {
  color: var(--polish-text) !important;
}
body.public-site .table > :not(caption) > * > * {
  padding-top: .92rem;
  padding-bottom: .92rem;
  border-color: var(--polish-line) !important;
}
body.public-site .text-uppercase {
  letter-spacing: .04em;
}
body.public-site .small,
body.public-site small {
  font-size: .83rem;
}

/* Navbar and footer polish */
.league-topbar .container { min-height: 44px; }
.league-main-nav {
  top: 0;
  z-index: 1030;
}
.league-main-nav .navbar-brand {
  min-height: 52px;
}
.league-main-nav .navbar-brand img {
  height: 44px !important;
  width: auto;
  object-fit: contain;
}
.league-main-nav .nav-link {
  padding: .95rem .9rem !important;
  font-size: .92rem;
}
.league-main-nav .btn {
  padding: .62rem 1rem !important;
  border-radius: 999px !important;
}
.league-footer {
  margin-top: 2.5rem !important;
}
.league-footer .row {
  row-gap: 1rem;
}

/* White-theme consistency for common inline dark blocks */
body.public-site .page-hero,
body.public-site .news-header,
body.public-site .team-banner,
body.public-site .mc-hero,
body.public-site .league-hero,
body.public-site .league-match-hero {
  background: linear-gradient(180deg, #ffffff, #fbfcfd) !important;
  border: 1px solid var(--polish-line) !important;
  box-shadow: var(--polish-shadow) !important;
}
body.public-site .news-header {
  border-radius: 18px;
  margin: 24px auto 28px;
  padding: 34px 0 !important;
  border-bottom: 1px solid var(--polish-line) !important;
}
body.public-site .news-header h1,
body.public-site .news-header p,
body.public-site .team-banner h1,
body.public-site .team-banner .badge,
body.public-site .team-banner span,
body.public-site .team-banner div,
body.public-site .page-points .text-center.mb-4 h1,
body.public-site .page-points .text-center.mb-4 .small,
body.public-site .page-series .text-center.mb-5 h1,
body.public-site .page-series .text-center.mb-5 p,
body.public-site .page-fixtures .text-center.mb-5 h1,
body.public-site .page-fixtures .text-center.mb-5 p {
  color: var(--polish-text) !important;
  text-shadow: none !important;
}
body.public-site .page-points .text-center.mb-4,
body.public-site .page-series .text-center.mb-5,
body.public-site .page-fixtures .text-center.mb-5 {
  padding: 26px 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff, #fbfcfd) !important;
  border: 1px solid var(--polish-line);
  box-shadow: var(--polish-shadow);
}
body.public-site .page-points .text-center.mb-4 .badge,
body.public-site .page-series .text-center.mb-5 .badge,
body.public-site .page-fixtures .text-center.mb-5 .badge,
body.public-site .team-banner .badge {
  background: var(--polish-green-soft) !important;
  color: var(--polish-green) !important;
  border: 1px solid #bde7da !important;
}

/* page tabs */
body.public-site .nav-scroll-container {
  background: #fff !important;
  border-radius: 16px;
  border: 1px solid var(--polish-line);
  box-shadow: var(--polish-shadow);
  padding: 6px;
}
body.public-site .nav-scroll-container a {
  color: var(--polish-muted) !important;
  border: 0 !important;
  border-radius: 12px !important;
  transition: .2s ease;
}
body.public-site .nav-scroll-container a.active-tab,
body.public-site .nav-scroll-container a:hover {
  color: var(--polish-green) !important;
  background: var(--polish-green-soft) !important;
  border-bottom: 0 !important;
}

/* points table */
body.public-site .page-points .pts-table tbody tr:hover {
  background: #f8fafc !important;
}
body.public-site .page-points .team-link {
  color: var(--polish-heading) !important;
  font-weight: 800;
}
body.public-site .page-points .team-link:hover {
  color: var(--polish-green) !important;
  transform: none !important;
}
body.public-site .page-points .font-monospace,
body.public-site .page-live .font-monospace,
body.public-site .page-liveScores .font-monospace {
  color: var(--polish-muted) !important;
}
body.public-site .page-points .rounded-circle.bg-dark,
body.public-site .page-series .badge.bg-dark,
body.public-site .page-fixtures .badge.bg-dark {
  background: #f3f4f6 !important;
  color: var(--polish-muted) !important;
  border-color: var(--polish-line) !important;
}

/* Series and fixtures cards */
body.public-site .page-series .card,
body.public-site .page-fixtures .card {
  overflow: hidden;
}
body.public-site .page-series .card-body,
body.public-site .page-fixtures .card-body {
  background: #fff !important;
}
body.public-site .page-series .text-white,
body.public-site .page-fixtures .text-white,
body.public-site .page-series .fw-bold.text-white,
body.public-site .page-fixtures .fw-bold.text-white {
  color: var(--polish-text) !important;
}
body.public-site .page-series [style*="rgba(0,0,0,.4)"],
body.public-site .page-fixtures [style*="rgba(0,0,0,.4)"],
body.public-site .page-series [style*="rgba(0,0,0,0.4)"],
body.public-site .page-fixtures [style*="rgba(0,0,0,0.4)"] {
  background: #f8fafc !important;
  border-color: var(--polish-line) !important;
}

/* News */
body.public-site .news-card,
body.public-site .summary-card {
  background: #fff !important;
  border-color: var(--polish-line) !important;
}
body.public-site .news-title,
body.public-site .news-title a,
body.public-site .news-excerpt,
body.public-site .news-meta,
body.public-site .summary-card .fs-3 {
  color: var(--polish-text) !important;
}
body.public-site .read-more-btn {
  background: var(--polish-green-soft) !important;
  border-color: #bde7da !important;
  color: var(--polish-green) !important;
}
body.public-site .read-more-btn:hover {
  background: var(--polish-green) !important;
  color: #fff !important;
}

/* Teams listing */
body.public-site .page-teams .card-header,
body.public-site .page-teams .card-body,
body.public-site .page-teams .list-group-item,
body.public-site .page-teams .card {
  background: #fff !important;
  color: var(--polish-text) !important;
}
body.public-site .page-teams .list-group-item {
  border-bottom-color: var(--polish-line) !important;
}
body.public-site .page-teams .custom-scrollbar::-webkit-scrollbar-thumb {
  background: #cbd5e1;
}

/* Team and player profile */
body.public-site .page-team_profile .team-banner,
body.public-site .page-player_profile .team-banner,
body.public-site .page-team_profile .player-card,
body.public-site .page-player_profile .player-card {
  background: #fff !important;
  border-color: var(--polish-line) !important;
}
body.public-site .page-team_profile .role-header,
body.public-site .page-player_profile .role-header {
  color: var(--polish-muted) !important;
  border-bottom-color: var(--polish-line) !important;
}
body.public-site .page-team_profile .player-avatar-placeholder,
body.public-site .page-player_profile .player-avatar-placeholder {
  background: #f3f4f6 !important;
  color: var(--polish-muted) !important;
  border-color: var(--polish-line) !important;
}
body.public-site .page-team_profile .bg-black,
body.public-site .page-player_profile .bg-black {
  background: #f8fafc !important;
}

/* Live scores page */
body.public-site .page-liveScores .premium-hover-card,
body.public-site .page-live .premium-hover-card {
  overflow: hidden;
}
body.public-site .page-liveScores .premium-hover-card .card-header,
body.public-site .page-live .premium-hover-card .card-header {
  background: #f8fafc !important;
  border-bottom: 1px solid var(--polish-line) !important;
}
body.public-site .page-liveScores .premium-hover-card .card-body,
body.public-site .page-live .premium-hover-card .card-body {
  background: #fff !important;
}
body.public-site .page-liveScores .premium-hover-card [style*="rgba(255,255,255,0.05)"],
body.public-site .page-live .premium-hover-card [style*="rgba(255,255,255,0.05)"] {
  background: #f8fafc !important;
  border-color: var(--polish-line) !important;
}
body.public-site .page-liveScores .premium-hover-card .btn,
body.public-site .page-live .premium-hover-card .btn {
  background: var(--polish-green-soft) !important;
  color: var(--polish-green) !important;
  border-top: 1px solid #bde7da !important;
}
body.public-site .page-liveScores .premium-hover-card .btn:hover,
body.public-site .page-live .premium-hover-card .btn:hover {
  background: var(--polish-green) !important;
  color: #fff !important;
}

/* Match center polish */
body.public-site .mc-shell {
  padding-top: 16px;
}
body.public-site .mc-hero,
body.public-site .mc-team-box,
body.public-site .mc-center-box,
body.public-site .mc-panel,
body.public-site .mc-mini-card,
body.public-site .mc-innings-card,
body.public-site .mc-table-wrap,
body.public-site .mc-info-box,
body.public-site .mc-graph-item,
body.public-site .mc-commentary .mc-com-item {
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid var(--polish-line) !important;
  box-shadow: none !important;
}
body.public-site .mc-topline {
  margin-bottom: 22px;
}
body.public-site .mc-title {
  line-height: 1.15;
}
body.public-site .mc-status,
body.public-site .mc-title,
body.public-site .mc-team-name,
body.public-site .mc-innings-title,
body.public-site .mc-innings-score,
body.public-site .mc-mini-value,
body.public-site .mc-value,
body.public-site .mc-player-name,
body.public-site .mc-section-title,
body.public-site .mc-info-text {
  color: var(--polish-text) !important;
}
body.public-site .mc-subtitle,
body.public-site .mc-team-abbr,
body.public-site .mc-team-note,
body.public-site .mc-label,
body.public-site .mc-mini-title,
body.public-site .mc-info-title,
body.public-site .mc-player-meta,
body.public-site .mc-com-desc,
body.public-site .mc-muted,
body.public-site .mc-note,
body.public-site .mc-empty,
body.public-site .mc-footer-note {
  color: var(--polish-muted) !important;
}
body.public-site .mc-kpi,
body.public-site .mc-list-item,
body.public-site .mc-player-card,
body.public-site .mc-note,
body.public-site .mc-graph-item {
  background: #f8fafc !important;
  border: 1px solid var(--polish-line) !important;
}
body.public-site .mc-tab {
  background: #fff !important;
  color: var(--polish-muted) !important;
  border: 1px solid var(--polish-line) !important;
}
body.public-site .mc-tab.active {
  background: var(--polish-green-soft) !important;
  color: var(--polish-green) !important;
  border-color: #bde7da !important;
}
body.public-site .mc-btn {
  background: #fff !important;
  color: var(--polish-heading) !important;
  border-color: var(--polish-line) !important;
}
body.public-site .mc-btn:hover {
  color: var(--polish-green) !important;
  background: var(--polish-green-soft) !important;
  border-color: #bde7da !important;
}
body.public-site .mc-bars {
  gap: 10px;
}
body.public-site .mc-bar {
  border-radius: 14px 14px 8px 8px;
}
body.public-site .mc-com-item {
  grid-template-columns: 84px 1fr;
}
body.public-site .mc-com-over {
  font-size: 1.04rem;
}
body.public-site .mc-sticky-score {
  border-radius: 14px !important;
  border-color: var(--polish-line) !important;
  box-shadow: var(--polish-shadow) !important;
}

/* Generic inline dark style rescue */
body.public-site [style*="background:#1e293b"],
body.public-site [style*="background: #1e293b"],
body.public-site [style*="background:#0f172a"],
body.public-site [style*="background: #0f172a"] {
  background: #fff !important;
  border-color: var(--polish-line) !important;
}
body.public-site [style*="border: 1px solid rgba(255,255,255,0.05)"],
body.public-site [style*="border:1px solid rgba(255,255,255,0.05)"],
body.public-site [style*="border: 1px dashed rgba(255,255,255,0.1)"],
body.public-site [style*="border:1px dashed rgba(255,255,255,0.1)"] {
  border-color: var(--polish-line) !important;
}
body.public-site [style*="background: rgba(255,255,255,0.05)"],
body.public-site [style*="background:rgba(255,255,255,0.05)"],
body.public-site [style*="background: rgba(255,255,255,0.03)"],
body.public-site [style*="background:rgba(255,255,255,0.03)"],
body.public-site [style*="background: rgba(0,0,0,0.2)"],
body.public-site [style*="background:rgba(0,0,0,0.2)"],
body.public-site [style*="background: rgba(0,0,0,.2)"],
body.public-site [style*="background:rgba(0,0,0,.2)"] {
  background: #f8fafc !important;
  border-color: var(--polish-line) !important;
}

/* Better spacing on mobile */
@media (max-width: 991px) {
  body.public-site .container {
    padding-left: 14px;
    padding-right: 14px;
  }
  .league-main-nav .nav-link {
    padding: .8rem .9rem !important;
  }
  body.public-site .news-header,
  body.public-site .page-points .text-center.mb-4,
  body.public-site .page-series .text-center.mb-5,
  body.public-site .page-fixtures .text-center.mb-5 {
    margin-top: 16px;
    padding: 22px 16px !important;
  }
}
@media (max-width: 767px) {
  body.public-site .news-header h1,
  body.public-site .page-points .text-center.mb-4 h1,
  body.public-site .page-series .text-center.mb-5 h1,
  body.public-site .page-fixtures .text-center.mb-5 h1,
  body.public-site .mc-title {
    font-size: 1.45rem !important;
  }
  body.public-site .mc-com-item {
    grid-template-columns: 1fr;
  }
  body.public-site .league-main-nav .btn,
  body.public-site .league-mobile-actions .btn {
    padding: .52rem .8rem !important;
  }
}
