@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/poppins-latin-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/poppins-latin-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/poppins-latin-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/poppins-latin-700.woff2') format('woff2');
}

html.theme-light {
  color-scheme: light;
}

html.theme-light body {
  background-image: linear-gradient(to bottom right, #e8eef5, #d5e0ec) !important;
  background-color: #e8eef5 !important;
  color: #0f172a !important;
}

html.theme-light ::-webkit-scrollbar-track { background: #dbe3ec; }
html.theme-light ::-webkit-scrollbar-thumb { background: #94a3b8; }

html.theme-light header,
html.theme-light footer {
  background-color: #ffffff !important;
  color: #0f172a !important;
}

html.theme-light header {
  border-bottom: 1px solid #d5deea;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04), 0 8px 24px rgba(15, 23, 42, 0.04);
}

html.theme-light footer {
  border-top: 1px solid #d5deea;
}

html.theme-light .bg-gray-900 {
  background-color: #ffffff !important;
  color: #0f172a !important;
}

html.theme-light .bg-gray-900\/90 {
  background-color: #e8eef6 !important;
  color: #475569 !important;
}

html.theme-light .bg-gray-900\/40 {
  background-color: #f4f7fb !important;
}

html.theme-light .bg-gray-800,
html.theme-light .bg-\[\#111827\] {
  background-color: #ffffff !important;
  color: #0f172a !important;
  border-color: #d5deea !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 10px 28px rgba(15, 23, 42, 0.06);
}

html.theme-light .bg-gray-700,
html.theme-light .bg-gray-700\/50,
html.theme-light .bg-\[\#0b1220\] {
  background-color: #f3f6fb !important;
  color: #0f172a !important;
}

html.theme-light .wp-fixture {
  background-color: #f3f6fb !important;
  border: 1px solid #d7e0ec;
}
html.theme-light .wp-fixture.wp-outcome-wrong {
  outline-color: #dc2626;
  border-color: #dc2626;
}
html.theme-light .wp-fixture.wp-outcome-result {
  outline-color: #ca8a04;
  border-color: #ca8a04;
}
html.theme-light .wp-fixture.wp-outcome-exact {
  outline-color: #16a34a;
  border-color: #16a34a;
}

html.theme-light .wp-pred-modal-card {
  background-color: #ffffff !important;
  border-color: #d5deea !important;
}
html.theme-light .wp-pred-row {
  background-color: #f3f6fb !important;
  outline-color: #d5deea;
}
html.theme-light .wp-pred-row-wrong { outline-color: #dc2626; }
html.theme-light .wp-pred-row-result { outline-color: #ca8a04; }
html.theme-light .wp-pred-row-exact { outline-color: #16a34a; }

html.theme-light .wp-save-bar {
  background-color: #ffffff !important;
  border-top-color: #d5deea !important;
  color: #0f172a !important;
}
html.theme-light .wp-save-bar #wpSaveCount {
  color: #0f172a !important;
}

html.theme-light .wp-round-heading {
  border-bottom-color: #d5deea;
}

html.theme-light .wp-round-locked-badge {
  color: #991b1b;
  background: linear-gradient(180deg, #fee2e2, #fecaca);
  border-color: #f87171;
  box-shadow: 0 6px 14px rgba(185, 28, 28, 0.12);
}

html.theme-light .hover\:bg-gray-700:hover,
html.theme-light .hover\:bg-gray-600:hover,
html.theme-light .hover\:bg-\[\#1a2333\]:hover {
  background-color: #e8eef6 !important;
}

html.theme-light .border-gray-700,
html.theme-light .border-gray-600,
html.theme-light .border-\[\#1f2937\],
html.theme-light .border-\[\#243044\] {
  border-color: #d5deea !important;
}

html.theme-light .divide-gray-600 > :not([hidden]) ~ :not([hidden]) {
  border-color: #d5deea !important;
}

html.theme-light .bg-blue-500\/20 {
  background-color: #dbeafe !important;
}

html.theme-light .text-white {
  color: #0f172a !important;
}

html.theme-light .text-gray-300,
html.theme-light .text-gray-400 {
  color: #475569 !important;
}

html.theme-light .text-gray-500 {
  color: #64748b !important;
}

html.theme-light .text-blue-300,
html.theme-light .text-blue-400 { color: #1d4ed8 !important; }
html.theme-light .text-green-300,
html.theme-light .text-green-400 { color: #047857 !important; }
html.theme-light .text-yellow-300,
html.theme-light .text-yellow-400 { color: #b45309 !important; }
html.theme-light .text-red-400 { color: #dc2626 !important; }

html.theme-light .super-admin-badge {
  color: #b45309;
  border-color: #d97706;
  background: #fef3c7;
}
html.theme-light .super-admin-row { background: #fff7ed; }
html.theme-light .super-admin-card {
  border-color: #f6c77b;
  background: #fff7ed;
}

html.theme-light .hover\:text-blue-300:hover,
html.theme-light .group:hover .group-hover\:text-blue-300,
html.theme-light .hover\:text-blue-400:hover { color: #1e40af !important; }
html.theme-light .hover\:text-green-300:hover,
html.theme-light .group:hover .group-hover\:text-green-300 { color: #065f46 !important; }
html.theme-light .hover\:text-yellow-300:hover,
html.theme-light .group:hover .group-hover\:text-yellow-300 { color: #92400e !important; }
html.theme-light .hover\:border-blue-500:hover { border-color: #3b82f6 !important; }
html.theme-light .hover\:border-green-500:hover { border-color: #16a34a !important; }
html.theme-light .hover\:border-yellow-500:hover { border-color: #ca8a04 !important; }

html.theme-light .bg-blue-500,
html.theme-light .bg-blue-600,
html.theme-light .bg-green-500,
html.theme-light .bg-green-600,
html.theme-light .bg-red-500,
html.theme-light .bg-red-600,
html.theme-light .bg-yellow-500,
html.theme-light .bg-purple-500,
html.theme-light .bg-purple-600,
html.theme-light .bg-purple-700,
html.theme-light .bg-teal-500,
html.theme-light .bg-teal-600,
html.theme-light .hover\:bg-blue-600:hover,
html.theme-light .hover\:bg-green-600:hover,
html.theme-light .hover\:bg-purple-600:hover,
html.theme-light .hover\:bg-teal-600:hover,
html.theme-light #toast {
  color: #ffffff !important;
}

html.theme-light input,
html.theme-light select,
html.theme-light textarea {
  background-color: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1;
}

html.theme-light .wdl-btn {
  background: #ffffff;
  color: #0f172a;
  border: 1px solid #cbd5e1;
}
html.theme-light .wdl-btn:not(:disabled):hover { background: #e8eef6; }
html.theme-light .wdl-btn.is-active[data-result="W"] { background: #16a34a; color: #fff; border-color: #16a34a; }
html.theme-light .wdl-btn.is-active[data-result="D"] { background: #eab308; color: #111827; border-color: #eab308; }
html.theme-light .wdl-btn.is-active[data-result="L"] { background: #dc2626; color: #fff; border-color: #dc2626; }

html.theme-light .wp-score-input,
html.theme-light .wp-live-score,
html.theme-light .wp-final-score {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.06);
}

html.theme-light .countdown-unit {
  background: #ffffff;
  border-color: #d5deea;
}

html.theme-light .wp-round-status.is-locked {
  border-color: rgba(220, 38, 38, 0.28);
}
html.theme-light .wp-round-status-badge {
  background: rgba(220, 38, 38, 0.1);
  color: #dc2626;
  border-color: rgba(220, 38, 38, 0.22);
}
html.theme-light .wp-round-status-next {
  background: #ffffff;
  border-color: #d5deea;
}
html.theme-light .wp-round-status-date {
  color: #475569;
}
html.theme-light .wp-round-status-time,
html.theme-light .wp-round-status-round {
  color: #0f172a;
}

html.theme-light .zone-none { background: #f8fafc; }
html.theme-light .zone-badge-cl { color: #1d4ed8; }
html.theme-light .zone-badge-el { color: #c2410c; }
html.theme-light .zone-badge-rel { color: #dc2626; }

html.theme-light .theme-toggle-btn {
  background-color: #ffffff !important;
  color: #0f172a !important;
  border-color: #cbd5e1 !important;
}
html.theme-light .theme-toggle-btn:hover {
  background-color: #f3f6fb !important;
}

.theme-switch-track {
  width: 2.75rem;
  height: 1.5rem;
  border-radius: 999px;
  background: #4b5563;
  position: relative;
  flex-shrink: 0;
  transition: background 0.2s ease;
}
.theme-switch-thumb {
  position: absolute;
  top: 0.15rem;
  left: 0.15rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 999px;
  background: #fff;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
html.theme-light .theme-switch-track { background: #16a34a; }
html.theme-light .theme-switch-thumb { transform: translateX(1.25rem); }

.site-topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  width: 100%;
  align-self: flex-start;
}

.site-header-desktop {
  display: none;
  align-items: center;
}
.site-header-mobile {
  position: relative;
  display: flex;
  align-items: center;
}
.site-header-mobile button {
  color: inherit;
}
.site-header-mobile #mobileMenuDropdown {
  top: calc(100% + 0.7rem);
  right: 0;
  left: auto;
  margin-top: 0;
  min-width: 13rem;
  padding: 0.4rem;
  border-radius: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
}
.site-header-mobile #mobileMenuDropdown a {
  padding: 0.7rem 0.9rem;
  border-radius: 0.6rem;
  font-weight: 600;
}
html.theme-light .site-header-mobile #mobileMenuDropdown {
  border-color: #d5deea;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
}
@media (min-width: 768px) {
  .site-header-desktop {
    display: flex;
  }
  .site-header-mobile {
    display: none;
  }
}
