:root {
  color-scheme: light;

  /* Core semantic tokens */
  --color-bg: #f3f4f6;
  --color-surface: #ffffff;
  --color-surface-elevated: #f8f9fb;
  --color-text-primary: #1c2229;
  --color-text-secondary: #5c6671;
  --color-muted: #87909c;
  --color-border: #d8dde3;
  --color-border-strong: #bfc7d1;
  --color-shadow: 0 8px 22px rgba(20, 32, 44, 0.08);
  --color-shadow-elevated: 0 16px 36px rgba(20, 32, 44, 0.12);
  --color-link: #2e3a46;
  --color-accent: #ea3b15;
  --color-accent-hover: #d83310;
  --color-accent-contrast: #ffffff;
  --color-focus-ring: rgba(234, 59, 21, 0.34);
  --color-selection-bg: rgba(234, 59, 21, 0.24);
  --color-selection-text: #111111;

  /* Motion and shape */
  --ui-radius-sm: 12px;
  --ui-radius: 16px;
  --ui-motion-fast: 160ms;
  --ui-motion: 220ms;
  --ui-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* Compatibility aliases for existing pages */
:root,
html[data-theme="light"],
html[data-theme="dark"] {
  --ui-bg: var(--color-bg);
  --ui-surface: color-mix(in srgb, var(--color-surface) 92%, transparent);
  --ui-surface-alt: color-mix(in srgb, var(--color-surface-elevated) 94%, transparent);
  --ui-border: color-mix(in srgb, var(--color-border) 82%, transparent);
  --ui-border-strong: color-mix(in srgb, var(--color-border-strong) 82%, transparent);
  --ui-text: var(--color-text-primary);
  --ui-text-muted: var(--color-text-secondary);
  --ui-accent: var(--color-accent);
  --ui-accent-contrast: var(--color-accent-contrast);
  --ui-success: #22b573;
  --ui-danger: #d95b71;
  --ui-shadow-soft: var(--color-shadow);
  --ui-shadow-elevated: var(--color-shadow-elevated);
  --ui-ring: 0 0 0 3px var(--color-focus-ring);

  --bg: var(--color-bg);
  --bg-card: var(--color-surface);
  --bg-card-hover: var(--color-surface-elevated);
  --surface: var(--color-surface);
  --border: var(--color-border);
  --border-light: var(--color-border-strong);
  --text: var(--color-text-primary);
  --text-dim: var(--color-text-secondary);
  --text-muted: var(--color-muted);
  --accent-primary: var(--color-accent);
  --accent-primary-dim: color-mix(in srgb, var(--color-accent) 18%, transparent);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  background-color: var(--color-bg);
  color: var(--color-text-primary);
}

body {
  background: linear-gradient(180deg, #fafbfc 0%, #f1f3f5 100%) !important;
}

body::before,
body::after {
  background: none !important;
  opacity: 0 !important;
}

::selection {
  background: var(--color-selection-bg);
  color: var(--color-selection-text);
}

a {
  color: var(--color-link);
}

a:hover {
  color: var(--color-accent);
}

input,
select,
textarea {
  caret-color: var(--color-accent);
}

input::placeholder,
textarea::placeholder {
  color: var(--color-muted);
}

input[disabled],
select[disabled],
textarea[disabled],
button:disabled {
  color: color-mix(in srgb, var(--color-text-secondary) 72%, transparent);
  opacity: 0.62;
  cursor: not-allowed;
}

:focus-visible {
  outline: 2px solid transparent;
  box-shadow: 0 0 0 3px var(--color-focus-ring);
}

:focus:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

a,
button,
input,
select,
textarea,
.panel,
.project-card,
.team-card,
.offer-item,
.live-votes-card,
.method-card,
.admin-card,
.modal-card,
.site-footer,
.site-footer-contact,
.site-footer-map,
.showcase-stat,
.stat-card,
.theme-toggle {
  transition:
    border-color var(--ui-motion) var(--ui-ease),
    background-color var(--ui-motion) var(--ui-ease),
    color var(--ui-motion) var(--ui-ease),
    box-shadow var(--ui-motion-fast) var(--ui-ease),
    transform var(--ui-motion-fast) var(--ui-ease),
    filter var(--ui-motion-fast) var(--ui-ease);
}

.logo-banner,
.header,
.summary-bar,
.site-footer,
.global-nav-wrap {
  border-color: var(--color-border) !important;
}

.global-nav-wrap {
  position: relative;
  z-index: 4200;
  overflow: visible !important;
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--color-surface-elevated) 96%, transparent),
    color-mix(in srgb, var(--color-surface) 96%, transparent)
  ) !important;
}

.global-nav {
  position: relative;
  z-index: 4201;
  overflow: visible !important;
  max-width: 1440px;
  margin: 0 auto;
  padding: 10px 20px 12px;
  display: flex;
  gap: 8px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

a.global-nav-link,
a.global-nav-link:visited,
button.global-nav-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  min-height: 40px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  border: 1px solid var(--color-border) !important;
  background: color-mix(in srgb, var(--color-surface) 90%, transparent) !important;
  color: var(--color-text-secondary) !important;
  font-family: "JetBrains Mono", monospace !important;
  font-size: 12px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

button.global-nav-link.global-nav-btn {
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
}

a.global-nav-link:hover,
a.global-nav-link:focus-visible,
button.global-nav-link:hover,
button.global-nav-link:focus-visible {
  color: var(--color-accent) !important;
  border-color: color-mix(in srgb, var(--color-accent) 55%, var(--color-border)) !important;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--color-accent) 22%, transparent) !important;
}

a.global-nav-link.active,
a.global-nav-link.active:visited,
button.global-nav-link.active {
  color: var(--color-accent-contrast) !important;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 65%, var(--color-border)) !important;
  box-shadow: 0 8px 24px color-mix(in srgb, var(--color-accent) 34%, transparent) !important;
}

.theme-toggle {
  --toggle-h: 44px;
  --toggle-w: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  min-width: 44px;
  padding: 0 10px;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--color-surface) 93%, transparent);
  color: var(--color-text-secondary);
  cursor: pointer;
  user-select: none;
}

.theme-toggle:hover {
  color: var(--color-text-primary);
  border-color: var(--color-border-strong);
  background: color-mix(in srgb, var(--color-surface-elevated) 96%, transparent);
}

.mobile-nav-select {
  display: none;
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid var(--color-border);
  background: color-mix(in srgb, var(--color-surface) 94%, transparent);
  color: #1f2730;
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  outline: none;
}

.mobile-nav-select option {
  color: #1f2730;
  background: #ffffff;
}

.mobile-nav-select:focus-visible {
  border-color: color-mix(in srgb, var(--color-accent) 70%, var(--color-border));
  box-shadow: 0 0 0 3px var(--color-focus-ring);
}

body.mobile-nav-mode .mobile-nav-select {
  display: block !important;
}

body.mobile-nav-mode .global-nav > a.global-nav-link,
body.mobile-nav-mode .global-nav > .user-menu-nav,
body.mobile-nav-mode .section-nav > .nav-tab,
body.mobile-nav-mode .nav-tabs-row > .nav-tab,
body.mobile-nav-mode .nav-tabs-row > .nav-home-btn {
  display: none !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle {
  display: inline-flex !important;
  min-height: 38px !important;
  width: 38px !important;
  min-width: 38px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  align-self: center;
  gap: 0 !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-label {
  display: none !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-track {
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  background: transparent !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-thumb {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: 28px !important;
  height: 28px !important;
  transform: none !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-icon.sun {
  display: block !important;
}

body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-icon.moon {
  display: none !important;
}

html[data-theme="dark"] body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-icon.sun {
  display: none !important;
}

html[data-theme="dark"] body.mobile-nav-mode .global-nav > .theme-toggle .theme-toggle-icon.moon {
  display: block !important;
}

/* Mobile header stabilization: keep only launchpad logo to avoid overlap */
body.mobile-nav-mode .logo-banner-inner {
  justify-content: center !important;
  align-items: center !important;
  gap: 0.35rem !important;
}

body.mobile-nav-mode .logo-banner-left {
  display: none !important;
}

body.mobile-nav-mode .logo-banner img.launchpad-logo {
  height: clamp(34px, 7.6vw, 44px) !important;
  max-width: 76vw !important;
  width: auto !important;
  margin: 0 auto !important;
}

html[data-theme="dark"] .mobile-nav-select {
  color: #e8ecf0 !important;
  background: rgba(10, 24, 37, 0.95) !important;
  border-color: rgba(95, 184, 232, 0.3) !important;
}

html[data-theme="dark"] .mobile-nav-select option {
  color: #e8ecf0;
  background: #0b1b2a;
}

/* My Profile modal field readability */
#profileModal .form-input,
#profileModal .form-select,
#profileModal input[type="text"],
#profileModal input[type="email"],
#profileModal select {
  color: #1f2730 !important;
  background: #ffffff !important;
  border-color: #cfd6de !important;
}

#profileModal .form-input::placeholder,
#profileModal .form-select::placeholder {
  color: #6f7c8b !important;
}

#profileModal .form-select option {
  color: #1f2730 !important;
  background: #ffffff !important;
}

.user-menu-nav {
  position: relative;
  display: inline-flex;
  align-items: center;
  z-index: 4205;
}

.user-menu-nav .nav-account-trigger {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px;
}

.user-menu-nav .nav-account-trigger::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  opacity: 0.78;
}

.user-dropdown-nav {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 200px;
  padding: 8px;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  background: color-mix(in srgb, var(--color-surface) 96%, transparent);
  box-shadow: 0 16px 36px color-mix(in srgb, var(--color-shadow-strong) 40%, transparent);
  backdrop-filter: blur(10px);
  display: none;
  z-index: 4210;
}

.section-nav,
.quick-nav {
  position: relative;
  z-index: 10;
}

.user-dropdown-nav.open {
  display: block;
}

.user-dropdown-item {
  width: 100%;
  border: 0;
  background: transparent;
  color: var(--color-text-primary);
  text-decoration: none;
  text-align: left;
  border-radius: 10px;
  padding: 9px 10px;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: block;
}

.user-dropdown-item:hover,
.user-dropdown-item:focus-visible {
  color: var(--color-accent);
  background: color-mix(in srgb, var(--color-accent) 10%, transparent);
  outline: none;
}

.user-dropdown-item.danger:hover,
.user-dropdown-item.danger:focus-visible {
  color: #ff7351;
  background: color-mix(in srgb, #ff4a1c 12%, transparent);
}

.theme-toggle:active {
  transform: translateY(1px);
}

.theme-toggle-track {
  position: relative;
  width: var(--toggle-w);
  height: var(--toggle-h);
  border-radius: 999px;
  border: 1px solid var(--color-border);
  background: color-mix(in srgb, var(--color-surface-elevated) 94%, transparent);
}

.theme-toggle-thumb {
  position: absolute;
  top: 4px;
  left: 4px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--color-accent-contrast);
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));
  box-shadow: 0 4px 14px color-mix(in srgb, var(--color-accent) 44%, transparent);
  transform: translateX(0);
  transition: transform var(--ui-motion) var(--ui-ease);
}

html[data-theme="dark"] .theme-toggle-thumb {
  transform: translateX(14px);
}

.theme-toggle-icon {
  width: 16px;
  height: 16px;
}

.theme-toggle-icon.moon {
  display: none;
}

html[data-theme="dark"] .theme-toggle-icon.sun {
  display: none;
}

html[data-theme="dark"] .theme-toggle-icon.moon {
  display: block;
}

.theme-toggle-label {
  font-family: "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.card,
.panel,
.section,
.project-card,
.admin-card,
.live-votes-card,
.method-card,
.modal-card,
.showcase,
.hero,
.team-card,
.offer-highlight,
.offer-item,
.site-footer-contact,
.site-footer-map,
.stat-card {
  border: 1px solid var(--color-border) !important;
  background: linear-gradient(
    160deg,
    color-mix(in srgb, var(--color-surface) 97%, transparent),
    color-mix(in srgb, var(--color-surface-elevated) 96%, transparent)
  ) !important;
  box-shadow: var(--color-shadow) !important;
}

.section:hover,
.project-card:hover,
.team-card:hover,
.offer-item:hover,
.live-votes-card:hover,
.method-card:hover,
.admin-card:hover {
  border-color: var(--color-border-strong) !important;
  box-shadow: var(--color-shadow-elevated) !important;
}

.btn.btn-primary,
.auth-btn,
.submit,
.jury-btn.select,
.modal-btn.primary,
.summary-export,
#signinBtn.auth-btn {
  border: 1px solid transparent !important;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  color: var(--color-accent-contrast) !important;
}

.btn.btn-primary:hover,
.auth-btn:hover,
.submit:hover,
.jury-btn.select:hover,
.modal-btn.primary:hover,
.summary-export:hover,
#signinBtn.auth-btn:hover {
  background: linear-gradient(135deg, var(--color-accent-hover), var(--color-accent)) !important;
  filter: brightness(1.01);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--color-accent) 34%, transparent) !important;
}

.nav-tab,
.pill,
.domain-pill,
.admin-btn,
.comment-save-btn,
.modal-btn.secondary,
.google-btn,
.auth-tab,
.nav-home-btn,
.jury-btn.maybe,
.jury-btn.reject {
  border: 1px solid var(--color-border) !important;
  background: color-mix(in srgb, var(--color-surface) 94%, transparent) !important;
  color: var(--color-text-secondary) !important;
}

.nav-tab:hover,
.pill:hover,
.domain-pill:hover,
.admin-btn:hover,
.comment-save-btn:hover,
.modal-btn.secondary:hover,
.google-btn:hover,
.auth-tab:hover,
.nav-home-btn:hover,
.jury-btn.maybe:hover,
.jury-btn.reject:hover {
  border-color: color-mix(in srgb, var(--color-accent) 52%, var(--color-border)) !important;
  color: var(--color-accent) !important;
  background: color-mix(in srgb, var(--color-accent) 8%, var(--color-surface)) !important;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="password"],
select,
textarea,
.form-input,
.form-select,
#searchInput,
#sortSelect,
.comment-input {
  border: 1px solid var(--color-border) !important;
  background: color-mix(in srgb, var(--color-surface) 96%, transparent) !important;
  color: var(--color-text-primary) !important;
}

input:hover,
select:hover,
textarea:hover,
.form-input:hover,
.form-select:hover,
#searchInput:hover,
#sortSelect:hover,
.comment-input:hover {
  border-color: var(--color-border-strong) !important;
}

input:focus,
select:focus,
textarea:focus,
.form-input:focus,
.form-select:focus,
#searchInput:focus,
#sortSelect:focus,
.comment-input:focus {
  border-color: color-mix(in srgb, var(--color-accent) 70%, var(--color-border)) !important;
  box-shadow: 0 0 0 3px var(--color-focus-ring) !important;
}

.kicker,
.section-kicker,
label,
.form-label,
.card-rank,
.card-domain,
.site-footer-note,
.dropdown-header .d-role {
  color: var(--color-text-secondary) !important;
}

.foot,
.lead,
.card-expand,
.site-footer-contact p,
.method-card p {
  color: var(--color-text-secondary) !important;
}

h1,
h2,
h3,
h4,
.card-title,
.showcase-orb h2,
.site-footer-contact h3 {
  color: var(--color-text-primary) !important;
}

@media (max-width: 980px) {
  .wrap,
  .hero,
  .grid-section,
  .controls {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition-duration: 1ms !important;
  }
}

/* Light-mode contrast hardening for sections with inline bright text */
.offer-section .kicker,
.offer-section h2,
.offer-section h3,
.offer-item p,
.offer-highlight p strong,
.showcase-orb h2,
.showcase-stat strong,
.card-title,
.team-card h3 {
  color: var(--color-text-primary) !important;
}

.offer-highlight p,
.showcase-stat small,
.team-card p,
.card-domain,
.card-rank,
.foot {
  color: var(--color-text-secondary) !important;
}

.offer-item p,
.offer-highlight p {
  text-shadow: none !important;
}

.offer-badge {
  color: var(--color-accent) !important;
  border-color: color-mix(in srgb, var(--color-accent) 45%, var(--color-border)) !important;
  background: color-mix(in srgb, var(--color-accent) 10%, var(--color-surface)) !important;
  box-shadow: none !important;
}

.offer-mark {
  color: var(--color-accent) !important;
  text-shadow: none !important;
}

/* Full-site light mode normalization */
body,
.loading-screen,
.auth-overlay {
  color: var(--color-text-primary) !important;
}

.logo-banner,
.top-logo-banner,
.form-header,
.header,
.header-strip,
.showcase,
.showcase-stage,
.about-launchpad,
.framework,
.team-section,
.offer-section,
.site-footer,
.site-footer-contact,
.site-footer-map,
.auth-card,
.live-votes-card,
.project-card,
.admin-card,
.method-card,
.modal-card,
.summary-bar,
.controls,
.toolbar,
.nav-tabs-row,
.quick-nav {
  background: linear-gradient(165deg, #ffffff, #f5f7f9) !important;
  border-color: var(--color-border) !important;
  box-shadow: var(--color-shadow) !important;
}

/* Auth logo block must stay transparent in both themes */
.auth-brand {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.grid,
.scanline-overlay,
.showcase-bg,
.showcase-particles,
.showcase-ping,
.showcase-arm,
.loading-screen::before,
.loading-screen::after,
.logo-banner::before,
.logo-banner::after,
.showcase::after,
.site-footer::before {
  opacity: 0 !important;
}

.panel,
.framework-item,
.step,
.stat,
.showcase-stat,
.chip,
.presence-tag,
.review-chip,
.toast,
.metric,
.live-kpi,
.admin-kpi,
.dropdown-header,
.dropdown-item,
.card-detail,
.offer-item,
.offer-highlight {
  background: #ffffff !important;
  border-color: var(--color-border) !important;
  box-shadow: none !important;
}

.header-title,
.header-brand,
.header-stat,
.header-stat strong,
.project-card .card-title,
.project-card .metric strong,
.stat-card .value,
.method-card h2,
.method-card h3,
.modal-card h2,
.dropdown-header .d-name,
.quick-nav a,
.nav-tab,
.nav-home-btn,
.site-footer-note {
  color: var(--color-text-primary) !important;
  text-shadow: none !important;
}

/* Jury header stats: vertical alignment fix */
.header-meta {
  align-items: center !important;
}

.header-stat {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

.header-stat strong {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
  transform: translateY(-1px);
}

.lead,
.description,
.card-domain,
.card-rank,
.card-expand,
.method-card p,
.site-footer-contact p,
.footer p,
.header-hex,
.header-badge,
.project-card .metric,
.form-hint,
.field-hint,
.dropdown-item {
  color: var(--color-text-secondary) !important;
}

.site-footer-contact a,
.cta-link,
.auth-link,
.quick-nav a:hover,
.site-footer-contact a:hover {
  color: var(--color-accent) !important;
  text-shadow: none !important;
}

.btn,
.auth-btn,
.modal-btn.primary,
.jury-btn.select,
.comment-save-btn,
.submit,
.nav-home-btn.active,
.nav-tab.active,
.auth-tab.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 62%, var(--color-border)) !important;
  color: var(--color-accent-contrast) !important;
}

.btn:hover,
.auth-btn:hover,
.modal-btn.primary:hover,
.jury-btn.select:hover,
.comment-save-btn:hover,
.submit:hover,
.nav-home-btn.active:hover,
.nav-tab.active:hover,
.auth-tab.active:hover {
  background: linear-gradient(135deg, var(--color-accent-hover), #c92f10) !important;
  border-color: color-mix(in srgb, var(--color-accent) 76%, var(--color-border)) !important;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--color-accent) 28%, transparent) !important;
}

.jury-btn.maybe,
.jury-btn.reject,
.modal-btn.secondary,
.google-btn,
.admin-btn,
.domain-pill,
.pill,
.nav-tab,
.auth-tab,
.nav-home-btn {
  background: #ffffff !important;
  color: var(--color-text-primary) !important;
  border-color: var(--color-border) !important;
}

.jury-btn.maybe:hover,
.jury-btn.reject:hover,
.modal-btn.secondary:hover,
.google-btn:hover,
.admin-btn:hover,
.domain-pill:hover,
.pill:hover,
.nav-tab:hover,
.auth-tab:hover,
.nav-home-btn:hover {
  color: var(--color-accent) !important;
  border-color: color-mix(in srgb, var(--color-accent) 52%, var(--color-border)) !important;
  background: color-mix(in srgb, var(--color-accent) 8%, #ffffff) !important;
}

.nav-tab.active,
.auth-tab.active,
.nav-home-btn.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 65%, var(--color-border)) !important;
  color: var(--color-accent-contrast) !important;
}

/* Jury light mode: no green accents on tabs/buttons */
html[data-theme="light"] .nav-tabs-row .nav-tab,
html[data-theme="light"] .nav-tabs-row .nav-home-btn {
  color: var(--color-text-primary) !important;
  border-color: var(--color-border) !important;
}

html[data-theme="light"] .nav-tabs-row .nav-tab:hover,
html[data-theme="light"] .nav-tabs-row .nav-home-btn:hover {
  color: var(--color-accent) !important;
  border-color: color-mix(in srgb, var(--color-accent) 52%, var(--color-border)) !important;
  box-shadow: 0 0 14px rgba(234, 59, 21, 0.18) !important;
  text-shadow: none !important;
}

html[data-theme="light"] .nav-tabs-row .nav-tab.active,
html[data-theme="light"] .nav-tabs-row .nav-home-btn.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 65%, var(--color-border)) !important;
  color: #ffffff !important;
  text-shadow: none !important;
  box-shadow: 0 8px 24px rgba(234, 59, 21, 0.28) !important;
}

.form-input,
.form-select,
.search-box input,
#searchInput,
#sortSelect,
.comment-input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="tel"],
textarea,
select {
  background: #ffffff !important;
  color: var(--color-text-primary) !important;
  border-color: var(--color-border) !important;
}

.form-input::placeholder,
.search-box input::placeholder,
#searchInput::placeholder,
.comment-input::placeholder,
textarea::placeholder {
  color: var(--color-muted) !important;
}

.form-input:focus,
.form-select:focus,
.search-box input:focus,
#searchInput:focus,
#sortSelect:focus,
.comment-input:focus,
input:focus,
select:focus,
textarea:focus {
  border-color: color-mix(in srgb, var(--color-accent) 72%, var(--color-border)) !important;
  box-shadow: 0 0 0 3px var(--color-focus-ring) !important;
}

.showcase-stat small,
.showcase-stat strong,
.stat span,
.stat strong,
.step-id,
.step h3,
.step p {
  color: var(--color-text-primary) !important;
  text-shadow: none !important;
}

.logo-divider,
.footer-logo-row .logo-divider,
.header-brand .logo-divider {
  background: var(--color-border-strong) !important;
  box-shadow: none !important;
}

/* Landing hero CTA readability and color corrections */
.jury-ctas .jury-cta-text {
  color: var(--color-text-primary) !important;
  font-weight: 700 !important;
}

/* Orb subtitle: keep text compact so it fits inside the circle in both themes */
.showcase-pill,
.hero-sub {
  font-size: clamp(0.72rem, 0.78vw, 0.92rem) !important;
  letter-spacing: 0.12em !important;
  line-height: 1.28 !important;
  padding: 0.46rem 0.9rem !important;
}

.hero-sub {
  max-width: min(92%, 560px) !important;
}

.jury-ctas .btn-ghost {
  background: #ffffff !important;
  color: var(--color-accent) !important;
  border: 1px solid color-mix(in srgb, var(--color-accent) 58%, var(--color-border)) !important;
  box-shadow: none !important;
}

.jury-ctas .btn-ghost:hover {
  background: color-mix(in srgb, var(--color-accent) 9%, #ffffff) !important;
  color: var(--color-accent-hover) !important;
  border-color: color-mix(in srgb, var(--color-accent) 75%, var(--color-border)) !important;
}

html[data-theme="dark"] .jury-ctas .btn-ghost {
  background: linear-gradient(145deg, #1a2230, #141c27) !important;
  color: #d5dde6 !important;
  border: 1px solid #324252 !important;
}

html[data-theme="dark"] .jury-ctas .btn-ghost:hover {
  background: linear-gradient(145deg, #202b3a, #17202c) !important;
  color: #ffffff !important;
  border-color: color-mix(in srgb, var(--color-accent) 58%, #324252) !important;
  box-shadow: 0 0 18px rgba(234, 59, 21, 0.2) !important;
}

.step-id {
  color: var(--color-accent) !important;
}

.chip strong {
  color: var(--color-accent) !important;
}

.about-launchpad .tagline {
  color: var(--color-text-primary) !important;
}

.about-launchpad p {
  color: var(--color-text-secondary) !important;
}

.launchpad-question {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  width: 108px !important;
  height: 108px !important;
  display: grid !important;
  place-items: center !important;
  position: relative !important;
  margin-bottom: 0.9rem !important;
}

.launchpad-question span {
  color: var(--color-accent) !important;
  font-size: 3.3rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-shadow:
    0 0 10px rgba(234, 59, 21, 0.45),
    0 0 24px rgba(234, 59, 21, 0.32),
    0 0 38px rgba(255, 139, 74, 0.28) !important;
  animation: questionGlowPulse 2.2s ease-in-out infinite alternate;
}

.launchpad-question::before {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 50%;
  border: 1px solid rgba(234, 59, 21, 0.34);
  box-shadow:
    0 0 18px rgba(234, 59, 21, 0.22),
    inset 0 0 14px rgba(234, 59, 21, 0.12);
}

.launchpad-question::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 1px dashed rgba(255, 138, 74, 0.28);
  animation: questionRingSpin 10s linear infinite;
}

@keyframes questionGlowPulse {
  0% {
    transform: scale(0.98);
    opacity: 0.92;
  }
  100% {
    transform: scale(1.02);
    opacity: 1;
  }
}

@keyframes questionRingSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Light mode KPI bar: orange figures/titles + orange tri-dots */
html[data-theme="light"] .showcase-stat small {
  color: #9b4a2f !important;
  letter-spacing: 0.12em !important;
}

html[data-theme="light"] .showcase-stat strong {
  color: var(--color-accent) !important;
  text-shadow:
    0 0 10px rgba(234, 59, 21, 0.22),
    0 0 20px rgba(255, 138, 74, 0.18) !important;
}

html[data-theme="light"] .showcase-stat::before {
  background: rgba(234, 59, 21, 0.95) !important;
  box-shadow:
    -16px 0 0 rgba(255, 164, 114, 0.95),
    16px 0 0 rgba(255, 110, 54, 0.95),
    0 0 14px rgba(234, 59, 21, 0.55) !important;
  opacity: 0.92 !important;
}

html[data-theme="light"] .stats .stat strong {
  color: var(--color-accent) !important;
  text-shadow:
    0 0 10px rgba(234, 59, 21, 0.2),
    0 0 20px rgba(255, 138, 74, 0.16) !important;
}

html[data-theme="light"] .stats .stat span {
  color: #9b4a2f !important;
}

html[data-theme="light"] .stats .stat::before {
  background: rgba(234, 59, 21, 0.95) !important;
  box-shadow:
    -16px 0 0 rgba(255, 164, 114, 0.95),
    16px 0 0 rgba(255, 110, 54, 0.95),
    0 0 14px rgba(234, 59, 21, 0.52) !important;
  opacity: 0.92 !important;
}

/* FINAL: replace every neon-green hover with orange-neon hover */
.panel:hover,
.framework-item:hover,
.about-launchpad:hover,
.step:hover,
.stat:hover,
.offer-item:hover,
.offer-highlight:hover,
.showcase-stat:hover,
.project-card:hover,
.live-votes-card:hover,
.admin-card:hover,
.method-card:hover,
.team-card:hover,
.nav-tab:hover,
.nav-home-btn:hover,
.pill:hover,
.domain-pill:hover,
.origin-pill:hover,
.scoring-pill:hover,
.admin-btn:hover,
.comment-save-btn:hover,
.google-btn:hover,
.modal-btn:hover,
.cta-link:hover,
.site-footer-contact a:hover,
a.global-nav-link:hover {
  border-color: color-mix(in srgb, var(--color-accent) 66%, var(--color-border)) !important;
  color: var(--color-accent) !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.34),
    0 0 22px rgba(234, 59, 21, 0.28) !important;
  text-shadow: 0 0 10px rgba(234, 59, 21, 0.34) !important;
}

/* Home light mode: richer futuristic orange atmosphere */
html[data-theme="light"] .showcase {
  position: relative !important;
  isolation: isolate !important;
  background:
    radial-gradient(110% 88% at 20% 12%, rgba(255, 158, 97, 0.22), transparent 56%),
    radial-gradient(92% 74% at 82% 22%, rgba(255, 112, 56, 0.2), transparent 58%),
    radial-gradient(86% 66% at 50% 94%, rgba(255, 186, 140, 0.22), transparent 62%),
    linear-gradient(160deg, #fff7f2 0%, #ffece2 48%, #fff4ee 100%) !important;
  border-color: #f2b49a !important;
  box-shadow:
    0 24px 56px rgba(234, 59, 21, 0.12),
    0 0 42px rgba(255, 127, 69, 0.16) !important;
}

html[data-theme="light"] .showcase::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.46;
  background:
    repeating-linear-gradient(
      115deg,
      rgba(238, 108, 45, 0.08) 0 2px,
      transparent 2px 14px
    );
  mix-blend-mode: multiply;
  animation: lightScanDrift 14s linear infinite;
}

html[data-theme="light"] .showcase-stage {
  background:
    radial-gradient(90% 64% at 18% 18%, rgba(255, 154, 95, 0.24), transparent 58%),
    radial-gradient(84% 58% at 84% 28%, rgba(255, 108, 56, 0.2), transparent 62%),
    radial-gradient(70% 56% at 48% 86%, rgba(255, 194, 154, 0.24), transparent 68%),
    linear-gradient(170deg, rgba(255, 248, 243, 0.94), rgba(255, 239, 228, 0.86)) !important;
}

html[data-theme="light"] .showcase-bg {
  opacity: 0.88 !important;
  filter: saturate(1.18) contrast(1.05) !important;
}

html[data-theme="light"] .showcase-ping {
  border-color: rgba(255, 116, 59, 0.86) !important;
  box-shadow: 0 0 26px rgba(255, 116, 59, 0.52) !important;
}

html[data-theme="light"] .showcase-pill {
  border-color: rgba(234, 59, 21, 0.4) !important;
  color: #7f3720 !important;
  background: rgba(255, 246, 238, 0.74) !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.14),
    0 0 20px rgba(234, 59, 21, 0.2) !important;
}

html[data-theme="light"] .showcase-orb::before {
  box-shadow:
    0 0 0 18px rgba(255, 172, 128, 0.3),
    0 0 0 46px rgba(255, 140, 82, 0.18),
    0 0 44px rgba(234, 59, 21, 0.28) !important;
}

@keyframes lightScanDrift {
  0% { transform: translateX(-2%); }
  100% { transform: translateX(2%); }
}

/* Light mode logos: preserve original colored assets */
html[data-theme="light"] .logo-banner img.org-logo,
html[data-theme="light"] .header-brand img.org-logo,
html[data-theme="light"] .auth-launchpad-logo,
html[data-theme="light"] .footer-brand-logo:not(.launchpad-logo-glow) {
  filter: none !important;
  mix-blend-mode: normal !important;
  background: transparent !important;
  opacity: 1 !important;
}

html[data-theme="light"] .launchpad-logo-glow,
html[data-theme="light"] img.launchpad-logo.launchpad-logo-glow,
html[data-theme="light"] img.auth-launchpad-logo.launchpad-logo-glow,
html[data-theme="light"] img.footer-brand-logo.launchpad-logo-glow {
  animation: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

/* Keep launchpad logos native in light mode (no dark plate) */
html[data-theme="light"] .logo-banner img.launchpad-logo,
html[data-theme="light"] .header-brand img.launchpad-logo,
html[data-theme="light"] .auth-launchpad-logo,
html[data-theme="light"] img.footer-brand-logo.launchpad-logo-glow {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Keep launchpad logo sizing identical across themes */
.logo-banner img.launchpad-logo,
.header-brand img.launchpad-logo,
.auth-launchpad-logo,
img.footer-brand-logo.launchpad-logo-glow {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Lock exact logo boxes in both themes so visual size stays consistent */
html[data-theme="light"] .logo-banner img.org-logo.org-logo-um6pabs,
html[data-theme="dark"] .logo-banner img.org-logo.org-logo-um6pabs {
  height: 152px !important;
  width: clamp(180px, 17.5vw, 268px) !important;
  object-fit: contain !important;
}

html[data-theme="light"] .logo-banner img.org-logo.org-logo-coe,
html[data-theme="dark"] .logo-banner img.org-logo.org-logo-coe {
  height: 142px !important;
  width: clamp(160px, 15.2vw, 235px) !important;
  object-fit: contain !important;
}

html[data-theme="light"] .logo-banner img.org-logo:not(.org-logo-um6pabs):not(.org-logo-coe),
html[data-theme="dark"] .logo-banner img.org-logo:not(.org-logo-um6pabs):not(.org-logo-coe) {
  height: 128px !important;
  width: clamp(150px, 14vw, 220px) !important;
  object-fit: contain !important;
}

html[data-theme="light"] .logo-banner img.launchpad-logo,
html[data-theme="dark"] .logo-banner img.launchpad-logo {
  height: 220px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Dark mode fallback so the switch clearly changes the UI */
html[data-theme="dark"] {
  --color-bg: #0f141a;
  --color-surface: #171e26;
  --color-surface-elevated: #1d2630;
  --color-text-primary: #e9eef2;
  --color-text-secondary: #b7c0ca;
  --color-muted: #8f9aa6;
  --color-border: #2b3642;
  --color-border-strong: #3c4957;
  --color-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
  --color-shadow-elevated: 0 18px 42px rgba(0, 0, 0, 0.48);
}

html[data-theme="dark"] body {
  background: linear-gradient(180deg, #111820 0%, #0d141b 100%) !important;
}

html[data-theme="dark"] .logo-banner,
html[data-theme="dark"] .top-logo-banner,
html[data-theme="dark"] .form-header,
html[data-theme="dark"] .header,
html[data-theme="dark"] .showcase,
html[data-theme="dark"] .showcase-stage,
html[data-theme="dark"] .about-launchpad,
html[data-theme="dark"] .framework,
html[data-theme="dark"] .team-section,
html[data-theme="dark"] .offer-section,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .site-footer-contact,
html[data-theme="dark"] .site-footer-map,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .live-votes-card,
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .admin-card,
html[data-theme="dark"] .method-card,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .summary-bar,
html[data-theme="dark"] .controls,
html[data-theme="dark"] .toolbar,
html[data-theme="dark"] .nav-tabs-row,
html[data-theme="dark"] .quick-nav,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .framework-item,
html[data-theme="dark"] .step,
html[data-theme="dark"] .stat,
html[data-theme="dark"] .showcase-stat,
html[data-theme="dark"] .chip,
html[data-theme="dark"] .presence-tag,
html[data-theme="dark"] .review-chip,
html[data-theme="dark"] .toast,
html[data-theme="dark"] .metric,
html[data-theme="dark"] .live-kpi,
html[data-theme="dark"] .admin-kpi,
html[data-theme="dark"] .dropdown-header,
html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .card-detail,
html[data-theme="dark"] .offer-item,
html[data-theme="dark"] .offer-highlight {
  background: linear-gradient(165deg, #171e26, #111821) !important;
  color: var(--color-text-primary) !important;
  border-color: var(--color-border) !important;
  box-shadow: var(--color-shadow) !important;
}

html[data-theme="dark"] .logo-banner img.org-logo,
html[data-theme="dark"] .logo-banner img.launchpad-logo,
html[data-theme="dark"] .header-brand img.org-logo,
html[data-theme="dark"] .header-brand img.launchpad-logo,
html[data-theme="dark"] .auth-launchpad-logo,
html[data-theme="dark"] .footer-brand-logo,
html[data-theme="dark"] .launchpad-logo-glow {
  filter: none !important;
  mix-blend-mode: normal !important;
}

/* Dark mode: restore dark button/tab system */
html[data-theme="dark"] .nav-tab,
html[data-theme="dark"] .pill,
html[data-theme="dark"] .domain-pill,
html[data-theme="dark"] .auth-tab,
html[data-theme="dark"] .nav-home-btn,
html[data-theme="dark"] .jury-btn.maybe,
html[data-theme="dark"] .jury-btn.reject,
html[data-theme="dark"] .modal-btn.secondary,
html[data-theme="dark"] .google-btn,
html[data-theme="dark"] .admin-btn,
html[data-theme="dark"] .comment-save-btn,
html[data-theme="dark"] .section-nav .nav-tab {
  background: linear-gradient(145deg, #1a2230, #151d28) !important;
  color: #c3ccd7 !important;
  border-color: #324252 !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .nav-tab:hover,
html[data-theme="dark"] .pill:hover,
html[data-theme="dark"] .domain-pill:hover,
html[data-theme="dark"] .auth-tab:hover,
html[data-theme="dark"] .nav-home-btn:hover,
html[data-theme="dark"] .jury-btn.maybe:hover,
html[data-theme="dark"] .jury-btn.reject:hover,
html[data-theme="dark"] .modal-btn.secondary:hover,
html[data-theme="dark"] .google-btn:hover,
html[data-theme="dark"] .admin-btn:hover,
html[data-theme="dark"] .comment-save-btn:hover,
html[data-theme="dark"] .section-nav .nav-tab:hover {
  color: #ffffff !important;
  border-color: color-mix(in srgb, var(--color-accent) 58%, #324252) !important;
  background: linear-gradient(145deg, #212c3b, #17202c) !important;
  box-shadow: 0 0 18px rgba(234, 59, 21, 0.22) !important;
}

html[data-theme="dark"] .nav-tab.active,
html[data-theme="dark"] .auth-tab.active,
html[data-theme="dark"] .nav-home-btn.active,
html[data-theme="dark"] .section-nav .nav-tab.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 72%, #324252) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px rgba(234, 59, 21, 0.34) !important;
}

/* Futuristic light-mode backdrop */
html[data-theme="light"] body {
  background:
    radial-gradient(1200px 540px at 8% -12%, rgba(122, 170, 255, 0.14), transparent 62%),
    radial-gradient(980px 480px at 96% 8%, rgba(234, 59, 21, 0.1), transparent 58%),
    radial-gradient(860px 420px at 50% 112%, rgba(120, 78, 255, 0.1), transparent 70%),
    linear-gradient(165deg, #eef2f6 0%, #e8edf3 48%, #f3f6f9 100%) !important;
}

html[data-theme="light"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.45 !important;
  background-image:
    linear-gradient(rgba(57, 83, 112, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(57, 83, 112, 0.05) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(circle at 50% 35%, black 36%, transparent 88%);
}

html[data-theme="light"] body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.5 !important;
  background:
    radial-gradient(circle at 14% 28%, rgba(93, 144, 255, 0.14), transparent 24%),
    radial-gradient(circle at 82% 32%, rgba(234, 59, 21, 0.12), transparent 22%),
    radial-gradient(circle at 62% 86%, rgba(123, 84, 255, 0.14), transparent 28%);
}

html[data-theme="light"] body > *:not(.loading-screen):not(.auth-overlay):not(.modal-overlay):not(#loadingScreen):not(#authOverlay):not(#profileModal):not(#onboardingModal) {
  position: relative;
  z-index: 1;
}

/* Keep global nav/dropdowns above section tabs in light mode */
html[data-theme="light"] body > .global-nav-wrap {
  position: relative !important;
  z-index: 4200 !important;
  overflow: visible !important;
}

html[data-theme="light"] body > .global-nav-wrap .global-nav {
  position: relative !important;
  z-index: 4201 !important;
  overflow: visible !important;
}

html[data-theme="light"] body > .global-nav-wrap .user-menu-nav {
  z-index: 4205 !important;
}

html[data-theme="light"] body > .global-nav-wrap .user-dropdown-nav {
  z-index: 4210 !important;
}

/* Keep hidden auth/loading overlays out of layout flow on Jury page */
body.jury-page #loadingScreen.hidden,
body.jury-page #authOverlay.hidden {
  display: none !important;
}

/* Showcase title readability + clipping fix */
.showcase-orb {
  overflow: visible !important;
}

.showcase-orb h2 {
  color: #f1f5ff !important;
  text-shadow:
    0 0 14px rgba(106, 156, 255, 0.42),
    0 0 30px rgba(112, 84, 255, 0.34) !important;
}

.showcase-orb h2 em {
  color: var(--color-accent) !important;
  display: inline-block !important;
  padding-right: 0.18em !important; /* avoids italic glyph clipping on the final "1" */
}

html[data-theme="dark"] .showcase-orb h2 {
  color: #f5f8ff !important;
  text-shadow:
    0 0 18px rgba(110, 160, 255, 0.52),
    0 0 36px rgba(112, 84, 255, 0.4) !important;
}

html[data-theme="dark"] .showcase-orb h2 em {
  color: #ff8a3b !important;
  text-shadow: 0 0 14px rgba(255, 138, 59, 0.34) !important;
}

/* Futuristic stage effects */
.showcase-stage {
  position: relative;
  isolation: isolate;
}

.showcase-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background:
    radial-gradient(84% 56% at 16% 18%, rgba(90, 145, 255, 0.2), transparent 62%),
    radial-gradient(72% 48% at 84% 22%, rgba(132, 96, 255, 0.2), transparent 64%),
    radial-gradient(70% 50% at 52% 86%, rgba(234, 59, 21, 0.12), transparent 72%);
  mix-blend-mode: screen;
  animation: stageNebulaFloat 9s ease-in-out infinite alternate;
}

.showcase-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0.28;
  background-image:
    linear-gradient(rgba(136, 166, 222, 0.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(136, 166, 222, 0.11) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: radial-gradient(circle at 50% 44%, black 38%, transparent 86%);
  animation: stageGridDrift 13s linear infinite;
}

@keyframes stageNebulaFloat {
  0% { transform: translate3d(-1.4%, -1%, 0) scale(1); }
  100% { transform: translate3d(1.4%, 1%, 0) scale(1.05); }
}

@keyframes stageGridDrift {
  0% { transform: translateY(0); }
  100% { transform: translateY(-22px); }
}

/* Header logos: always luminous, no dark badge */
.logo-banner img.launchpad-logo,
.top-logo-banner img.launchpad-logo,
.header-brand img.launchpad-logo,
.auth-brand img.auth-launchpad-logo {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}

/* Jury labels visibility in light */
html[data-theme="light"] .domain-pill,
html[data-theme="light"] .pill,
html[data-theme="light"] .origin-pill,
html[data-theme="light"] .scoring-pill {
  color: #24303d !important;
}

html[data-theme="light"] .domain-pill.active,
html[data-theme="light"] .pill.active,
html[data-theme="light"] .origin-pill.active,
html[data-theme="light"] .scoring-pill.is-active {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  border-color: color-mix(in srgb, var(--color-accent) 65%, #cfd6de) !important;
}

html[data-theme="light"] .about-launchpad h2,
html[data-theme="light"] .framework h2 {
  color: var(--color-accent) !important;
  text-shadow: none !important;
}

html[data-theme="light"] .hero h1 {
  color: var(--color-accent) !important;
  text-shadow: none !important;
}

html[data-theme="light"] .team-section h2,
html[data-theme="light"] .offer-section h2 {
  color: var(--color-accent) !important;
  text-shadow: none !important;
}

/* Light mode: orange futuristic treatment for framework cluster */
html[data-theme="light"] .framework-triangle {
  filter: drop-shadow(0 0 16px rgba(234, 59, 21, 0.28)) !important;
}

html[data-theme="light"] .framework-triangle::before {
  background: radial-gradient(circle, rgba(234, 59, 21, 0.22), transparent 70%) !important;
}

html[data-theme="light"] .framework-triangle svg path:first-of-type {
  stroke: #ea3b15 !important;
  stroke-opacity: 0.95 !important;
  filter: drop-shadow(0 0 12px rgba(234, 59, 21, 0.42));
}

html[data-theme="light"] .framework-triangle svg path:nth-of-type(2) {
  stroke: #ff8a4a !important;
  stroke-opacity: 0.95 !important;
}

html[data-theme="light"] .framework-triangle svg circle {
  fill: #ff7a3d !important;
  filter: drop-shadow(0 0 10px rgba(255, 122, 61, 0.46));
}

html[data-theme="light"] .box-dot {
  background: #ff7a3d !important;
  box-shadow:
    0 0 0 5px rgba(234, 59, 21, 0.2),
    0 0 18px rgba(234, 59, 21, 0.48) !important;
}

html[data-theme="light"] .framework-item h3 {
  color: #1f2730 !important;
}

html[data-theme="light"] .framework-item p strong {
  color: var(--color-accent) !important;
}

html[data-theme="light"] .framework-item:hover {
  border-color: color-mix(in srgb, var(--color-accent) 62%, var(--color-border)) !important;
  box-shadow:
    0 10px 26px rgba(20, 32, 44, 0.12),
    0 0 16px rgba(234, 59, 21, 0.2) !important;
}

/* Hover system lock */
html[data-theme="light"] .btn:hover,
html[data-theme="light"] .nav-tab:hover,
html[data-theme="light"] .nav-home-btn:hover,
html[data-theme="light"] .pill:hover,
html[data-theme="light"] .domain-pill:hover,
html[data-theme="light"] .origin-pill:hover,
html[data-theme="light"] .scoring-pill:hover,
html[data-theme="light"] .admin-btn:hover,
html[data-theme="light"] .comment-save-btn:hover,
html[data-theme="light"] .google-btn:hover,
html[data-theme="light"] .modal-btn:hover,
html[data-theme="light"] .project-card:hover,
html[data-theme="light"] .live-votes-card:hover,
html[data-theme="light"] .admin-card:hover,
html[data-theme="light"] .method-card:hover,
html[data-theme="light"] .team-card:hover,
html[data-theme="light"] .offer-item:hover {
  border-color: color-mix(in srgb, var(--color-accent) 60%, var(--color-border)) !important;
  box-shadow: 0 0 18px rgba(234, 59, 21, 0.22) !important;
}

html[data-theme="dark"] .btn:hover,
html[data-theme="dark"] .nav-tab:hover,
html[data-theme="dark"] .nav-home-btn:hover,
html[data-theme="dark"] .pill:hover,
html[data-theme="dark"] .domain-pill:hover,
html[data-theme="dark"] .origin-pill:hover,
html[data-theme="dark"] .scoring-pill:hover,
html[data-theme="dark"] .admin-btn:hover,
html[data-theme="dark"] .comment-save-btn:hover,
html[data-theme="dark"] .google-btn:hover,
html[data-theme="dark"] .modal-btn:hover,
html[data-theme="dark"] .project-card:hover,
html[data-theme="dark"] .live-votes-card:hover,
html[data-theme="dark"] .admin-card:hover,
html[data-theme="dark"] .method-card:hover,
html[data-theme="dark"] .team-card:hover,
html[data-theme="dark"] .offer-item:hover {
  border-color: rgba(80, 255, 190, 0.68) !important;
  box-shadow:
    0 0 0 1px rgba(80, 255, 190, 0.28),
    0 0 22px rgba(80, 255, 190, 0.28) !important;
}

/* Final dark-mode lock for Jury controls */
html[data-theme="dark"] .controls,
html[data-theme="dark"] .toolbar {
  background: linear-gradient(160deg, #101926, #0f1722) !important;
  border-color: #2a3b4d !important;
}

html[data-theme="dark"] .controls .pill,
html[data-theme="dark"] .controls .domain-pill,
html[data-theme="dark"] .controls .nav-tab,
html[data-theme="dark"] .controls .nav-home-btn,
html[data-theme="dark"] .controls .admin-btn,
html[data-theme="dark"] .controls .comment-save-btn {
  background: linear-gradient(145deg, #1a2431, #131c27) !important;
  color: #d3dbe5 !important;
  border-color: #34465a !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .controls .pill:hover,
html[data-theme="dark"] .controls .domain-pill:hover,
html[data-theme="dark"] .controls .nav-tab:hover,
html[data-theme="dark"] .controls .nav-home-btn:hover,
html[data-theme="dark"] .controls .admin-btn:hover,
html[data-theme="dark"] .controls .comment-save-btn:hover {
  background: linear-gradient(145deg, #202c3a, #16212e) !important;
  color: #ffffff !important;
  border-color: color-mix(in srgb, var(--color-accent) 56%, #34465a) !important;
}

html[data-theme="dark"] .controls .pill.active,
html[data-theme="dark"] .controls .domain-pill.active,
html[data-theme="dark"] .controls .nav-tab.active,
html[data-theme="dark"] .controls .nav-home-btn.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  color: #ffffff !important;
  border-color: color-mix(in srgb, var(--color-accent) 68%, #34465a) !important;
  box-shadow: 0 8px 20px rgba(234, 59, 21, 0.28) !important;
}

html[data-theme="dark"] .controls .search-box input,
html[data-theme="dark"] #searchInput,
html[data-theme="dark"] .controls .sort-select,
html[data-theme="dark"] #sortSelect {
  background: #151f2c !important;
  color: #e7edf4 !important;
  border-color: #34465a !important;
}

html[data-theme="dark"] .controls .search-box input::placeholder,
html[data-theme="dark"] #searchInput::placeholder {
  color: #96a3b2 !important;
}

/* Restore futuristic neon effects in dark mode (Jury + shared cards) */
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .live-votes-card,
html[data-theme="dark"] .admin-card,
html[data-theme="dark"] .method-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .showcase,
html[data-theme="dark"] .panel {
  position: relative;
  overflow: hidden;
  border-color: #2f4257 !important;
  box-shadow:
    0 14px 36px rgba(0, 0, 0, 0.42),
    0 0 26px rgba(74, 215, 248, 0.12) !important;
}

html[data-theme="dark"] .project-card::after,
html[data-theme="dark"] .live-votes-card::after,
html[data-theme="dark"] .admin-card::after,
html[data-theme="dark"] .method-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(120deg, transparent 15%, rgba(93, 173, 255, 0.09), transparent 72%);
  transform: translateX(-120%);
  transition: transform 540ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

html[data-theme="dark"] .project-card:hover::after,
html[data-theme="dark"] .live-votes-card:hover::after,
html[data-theme="dark"] .admin-card:hover::after,
html[data-theme="dark"] .method-card:hover::after {
  transform: translateX(120%);
}

html[data-theme="dark"] .project-card:hover,
html[data-theme="dark"] .live-votes-card:hover,
html[data-theme="dark"] .admin-card:hover,
html[data-theme="dark"] .method-card:hover,
html[data-theme="dark"] .stat-card:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--color-accent) 44%, #2f4257) !important;
  box-shadow:
    0 18px 44px rgba(0, 0, 0, 0.5),
    0 0 34px rgba(74, 215, 248, 0.2),
    0 0 20px rgba(234, 59, 21, 0.16) !important;
}

html[data-theme="dark"] .presence-tag.present {
  color: #66ffd2 !important;
  border-color: rgba(102, 255, 210, 0.56) !important;
  background: rgba(54, 247, 191, 0.16) !important;
  box-shadow:
    0 0 18px rgba(54, 247, 191, 0.32),
    inset 0 0 12px rgba(54, 247, 191, 0.12) !important;
}

html[data-theme="dark"] .presence-tag.online {
  color: #8bdcff !important;
  border-color: rgba(117, 216, 255, 0.58) !important;
  background: rgba(117, 216, 255, 0.14) !important;
  box-shadow:
    0 0 18px rgba(117, 216, 255, 0.3),
    inset 0 0 12px rgba(117, 216, 255, 0.1) !important;
}

html[data-theme="dark"] .controls .pill,
html[data-theme="dark"] .controls .domain-pill,
html[data-theme="dark"] .scoring-pill,
html[data-theme="dark"] .nav-tabs-row .nav-tab,
html[data-theme="dark"] .nav-tabs-row .nav-home-btn {
  box-shadow: inset 0 0 0 1px rgba(121, 165, 212, 0.14) !important;
}

html[data-theme="dark"] .controls .pill:hover,
html[data-theme="dark"] .controls .domain-pill:hover,
html[data-theme="dark"] .scoring-pill:hover,
html[data-theme="dark"] .nav-tabs-row .nav-tab:hover,
html[data-theme="dark"] .nav-tabs-row .nav-home-btn:hover {
  box-shadow:
    inset 0 0 0 1px rgba(145, 186, 230, 0.24),
    0 0 20px rgba(74, 215, 248, 0.18) !important;
}

html[data-theme="dark"] .controls .pill.active,
html[data-theme="dark"] .controls .domain-pill.active,
html[data-theme="dark"] .scoring-pill.is-active,
html[data-theme="dark"] .nav-tabs-row .nav-tab.active,
html[data-theme="dark"] .nav-tabs-row .nav-home-btn.active {
  box-shadow:
    0 10px 24px rgba(234, 59, 21, 0.34),
    0 0 18px rgba(234, 59, 21, 0.22) !important;
}

/* Final light-mode lock for Jury top tabs */
html[data-theme="light"] .nav-tabs-row .nav-tab,
html[data-theme="light"] .nav-tabs-row .nav-home-btn {
  background: linear-gradient(165deg, #ffffff, #f4f6f8) !important;
  color: #1f2730 !important;
  border: 1px solid #cfd6de !important;
  box-shadow: 0 2px 8px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] .nav-tabs-row .nav-tab:hover,
html[data-theme="light"] .nav-tabs-row .nav-home-btn:hover {
  background: linear-gradient(165deg, #fff7f4, #fff1eb) !important;
  color: var(--color-accent) !important;
  border-color: color-mix(in srgb, var(--color-accent) 54%, #cfd6de) !important;
  box-shadow: 0 6px 16px rgba(234, 59, 21, 0.16) !important;
}

html[data-theme="light"] .nav-tabs-row .nav-tab.active,
html[data-theme="light"] .nav-tabs-row .nav-home-btn.active {
  background: linear-gradient(135deg, var(--color-accent), var(--color-accent-hover)) !important;
  color: #ffffff !important;
  border-color: color-mix(in srgb, var(--color-accent) 70%, #cfd6de) !important;
  box-shadow: 0 10px 24px rgba(234, 59, 21, 0.3) !important;
}

/* Global lock: same visible header/footer on every page and theme */
.logo-banner,
.top-logo-banner {
  display: block !important;
  position: relative !important;
  margin-top: 0 !important;
  background:
    radial-gradient(120% 180% at 100% 0%, rgba(147, 119, 255, 0.14), transparent 62%),
    radial-gradient(120% 150% at 0% 100%, rgba(74, 215, 248, 0.1), transparent 56%),
    linear-gradient(145deg, rgba(10, 29, 44, 0.92), rgba(6, 20, 34, 0.96)) !important;
  border-bottom: 1px solid rgba(95, 184, 232, 0.26) !important;
  box-shadow: 0 0 0 1px rgba(74, 215, 248, 0.08), 0 14px 34px rgba(1, 10, 20, 0.34) !important;
}

.global-nav-wrap {
  margin-top: 0 !important;
  background: linear-gradient(180deg, rgba(10, 24, 37, 0.95), rgba(9, 21, 33, 0.95)) !important;
  border-top: 1px solid rgba(95, 184, 232, 0.15) !important;
  border-bottom: 1px solid rgba(95, 184, 232, 0.2) !important;
}

.site-footer,
.site-footer-contact,
.site-footer-map {
  background:
    radial-gradient(120% 180% at 100% 0%, rgba(147, 119, 255, 0.16), transparent 64%),
    radial-gradient(120% 150% at 0% 100%, rgba(74, 215, 248, 0.12), transparent 58%),
    linear-gradient(145deg, rgba(10, 29, 44, 0.92), rgba(6, 20, 34, 0.96)) !important;
  border-color: rgba(95, 184, 232, 0.3) !important;
}

/* Jury safety: prevent blank state in light mode */
#appContent {
  display: block !important;
  visibility: visible !important;
}

/* Jury status tags: force orange for visibility */
.presence-tag.present,
.presence-tag.online,
html[data-theme="light"] .presence-tag.present,
html[data-theme="light"] .presence-tag.online,
html[data-theme="dark"] .presence-tag.present,
html[data-theme="dark"] .presence-tag.online {
  color: #ea3b15 !important;
  background: rgba(234, 59, 21, 0.1) !important;
  border-color: rgba(234, 59, 21, 0.48) !important;
  box-shadow: 0 0 14px rgba(234, 59, 21, 0.24) !important;
}

/* Jury top stats in light mode: match Home color rules */
html[data-theme="light"] .stat-card .label {
  color: #7b8797 !important;
}

html[data-theme="light"] .stat-card .value,
html[data-theme="light"] .stat-card .value.green,
html[data-theme="light"] .stat-card .value.blue,
html[data-theme="light"] .stat-card .value.amber,
html[data-theme="light"] .stat-card .value.rose {
  color: var(--color-accent) !important;
  text-shadow:
    0 0 10px rgba(234, 59, 21, 0.22),
    0 0 20px rgba(255, 138, 74, 0.18) !important;
}

html[data-theme="light"] .stat-card::before {
  background: rgba(234, 59, 21, 0.95) !important;
  box-shadow:
    -16px 0 0 rgba(255, 164, 114, 0.95),
    16px 0 0 rgba(255, 110, 54, 0.95),
    0 0 14px rgba(234, 59, 21, 0.55) !important;
  opacity: 0.92 !important;
}

/* Live KPI numbers: orange glow instead of blue */
.live-kpi .live-kpi-value,
html[data-theme="light"] .live-kpi .live-kpi-value,
html[data-theme="dark"] .live-kpi .live-kpi-value {
  color: #ea3b15 !important;
  text-shadow:
    0 0 10px rgba(234, 59, 21, 0.28),
    0 0 22px rgba(255, 138, 74, 0.2) !important;
}

.live-kpi::before,
html[data-theme="light"] .live-kpi::before,
html[data-theme="dark"] .live-kpi::before {
  background: rgba(234, 59, 21, 0.95) !important;
  box-shadow:
    -16px 0 0 rgba(255, 164, 114, 0.95),
    16px 0 0 rgba(255, 110, 54, 0.95),
    0 0 14px rgba(234, 59, 21, 0.55) !important;
  opacity: 0.92 !important;
}

/* Light consistency lock: same color logic across Home, Jury, Mentor */
html[data-theme="light"] body {
  background: linear-gradient(180deg, #f7f8fa 0%, #eef1f4 100%) !important;
  color: #1f2730 !important;
}

html[data-theme="light"] .logo-banner,
html[data-theme="light"] .top-logo-banner,
html[data-theme="light"] .global-nav-wrap,
html[data-theme="light"] .header,
html[data-theme="light"] .summary-bar,
html[data-theme="light"] .controls,
html[data-theme="light"] .toolbar,
html[data-theme="light"] .nav-tabs-row,
html[data-theme="light"] .site-footer,
html[data-theme="light"] .site-footer-contact,
html[data-theme="light"] .site-footer-map {
  border-color: #cfd6de !important;
}

html[data-theme="light"] .panel,
html[data-theme="light"] .card,
html[data-theme="light"] .project-card,
html[data-theme="light"] .live-votes-card,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .live-kpi,
html[data-theme="light"] .admin-card,
html[data-theme="light"] .method-card,
html[data-theme="light"] .auth-card,
html[data-theme="light"] .modal-card,
html[data-theme="light"] .framework-item,
html[data-theme="light"] .team-card,
html[data-theme="light"] .offer-item,
html[data-theme="light"] .offer-highlight,
html[data-theme="light"] .step {
  background: linear-gradient(165deg, #ffffff, #f7f9fb) !important;
  border-color: #cfd6de !important;
  color: #1f2730 !important;
  box-shadow: 0 8px 24px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] .card-title,
html[data-theme="light"] .header-title,
html[data-theme="light"] .method-card h2,
html[data-theme="light"] .method-card h3 {
  color: #1f2730 !important;
}

html[data-theme="light"] p,
html[data-theme="light"] .lead,
html[data-theme="light"] .description,
html[data-theme="light"] .card-domain,
html[data-theme="light"] .metric .metric-label,
html[data-theme="light"] .live-kpi-label,
html[data-theme="light"] .site-footer-contact p,
html[data-theme="light"] .text-muted {
  color: #5f6b79 !important;
}

html[data-theme="light"] .btn-primary,
html[data-theme="light"] .btn-submit,
html[data-theme="light"] .auth-btn,
html[data-theme="light"] .summary-export,
html[data-theme="light"] .modal-btn.primary,
html[data-theme="light"] .jury-btn.select,
html[data-theme="light"] .nav-tab.active,
html[data-theme="light"] .nav-home-btn.active,
html[data-theme="light"] .pill.active,
html[data-theme="light"] .domain-pill.active,
html[data-theme="light"] .scoring-pill.is-active,
html[data-theme="light"] a.global-nav-link.active,
html[data-theme="light"] button.global-nav-link.active {
  background: linear-gradient(135deg, #ea3b15, #d83310) !important;
  color: #ffffff !important;
  border-color: #d94a29 !important;
  box-shadow: 0 10px 24px rgba(234, 59, 21, 0.28) !important;
}

html[data-theme="light"] .btn-ghost,
html[data-theme="light"] .modal-btn.secondary,
html[data-theme="light"] .google-btn,
html[data-theme="light"] .pill,
html[data-theme="light"] .domain-pill,
html[data-theme="light"] .origin-pill,
html[data-theme="light"] .scoring-pill,
html[data-theme="light"] .nav-tab,
html[data-theme="light"] .nav-home-btn,
html[data-theme="light"] a.global-nav-link,
html[data-theme="light"] button.global-nav-link {
  background: linear-gradient(165deg, #ffffff, #f4f7fa) !important;
  color: #24303d !important;
  border-color: #cfd6de !important;
}

html[data-theme="light"] .btn:hover,
html[data-theme="light"] .btn-primary:hover,
html[data-theme="light"] .btn-submit:hover,
html[data-theme="light"] .auth-btn:hover,
html[data-theme="light"] .btn-ghost:hover,
html[data-theme="light"] .modal-btn:hover,
html[data-theme="light"] .google-btn:hover,
html[data-theme="light"] .summary-export:hover,
html[data-theme="light"] .pill:hover,
html[data-theme="light"] .domain-pill:hover,
html[data-theme="light"] .origin-pill:hover,
html[data-theme="light"] .scoring-pill:hover,
html[data-theme="light"] .nav-tab:hover,
html[data-theme="light"] .nav-home-btn:hover,
html[data-theme="light"] a.global-nav-link:hover,
html[data-theme="light"] button.global-nav-link:hover,
html[data-theme="light"] .project-card:hover,
html[data-theme="light"] .live-votes-card:hover,
html[data-theme="light"] .stat-card:hover,
html[data-theme="light"] .live-kpi:hover,
html[data-theme="light"] .admin-card:hover,
html[data-theme="light"] .method-card:hover,
html[data-theme="light"] .offer-item:hover,
html[data-theme="light"] .team-card:hover {
  color: #ea3b15 !important;
  border-color: #e07b5b !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.28),
    0 0 22px rgba(234, 59, 21, 0.2) !important;
}

html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea,
html[data-theme="light"] .form-input,
html[data-theme="light"] .form-select,
html[data-theme="light"] .search-box input,
html[data-theme="light"] #searchInput,
html[data-theme="light"] #sortSelect,
html[data-theme="light"] .comment-input {
  background: #ffffff !important;
  color: #1f2730 !important;
  border-color: #cfd6de !important;
}

html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder,
html[data-theme="light"] .search-box input::placeholder,
html[data-theme="light"] #searchInput::placeholder,
html[data-theme="light"] .comment-input::placeholder {
  color: #7b8797 !important;
}

html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus,
html[data-theme="light"] .form-input:focus,
html[data-theme="light"] .form-select:focus,
html[data-theme="light"] .search-box input:focus,
html[data-theme="light"] #searchInput:focus,
html[data-theme="light"] #sortSelect:focus,
html[data-theme="light"] .comment-input:focus {
  border-color: #ea3b15 !important;
  box-shadow: 0 0 0 3px rgba(234, 59, 21, 0.2) !important;
}

/* Mentor light fix: section cards must be white (not dark) */
html[data-theme="light"] .form-section .section-card {
  background: linear-gradient(165deg, #ffffff, #f7f9fb) !important;
  border-color: #cfd6de !important;
  box-shadow: 0 8px 24px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] .form-section .section-card:hover {
  border-color: #e07b5b !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.24),
    0 0 20px rgba(234, 59, 21, 0.16) !important;
}

html[data-theme="light"] .form-section .section-title {
  color: #1f2730 !important;
}

html[data-theme="light"] .form-section .section-id,
html[data-theme="light"] .form-section .section-subtitle,
html[data-theme="light"] .form-section .field-label {
  color: #5f6b79 !important;
}

/* Mentor header brand in light mode */
html[data-theme="light"] .header-logo .logo-text {
  color: #ea3b15 !important;
}

html[data-theme="light"] .header-logo .logo-icon {
  background: #ffffff !important;
  border-color: #ea3b15 !important;
  color: #ea3b15 !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.2),
    0 8px 20px rgba(234, 59, 21, 0.16) !important;
}

/* Home light mode: keep header/footer white */
html[data-theme="light"] body.home-page .logo-banner,
html[data-theme="light"] body.home-page .global-nav-wrap,
html[data-theme="light"] body.home-page .site-footer,
html[data-theme="light"] body.home-page .site-footer-contact,
html[data-theme="light"] body.home-page .site-footer-map {
  background: linear-gradient(165deg, #ffffff, #f7f9fb) !important;
  border-color: #cfd6de !important;
  box-shadow: 0 8px 24px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] body.home-page .site-footer-note,
html[data-theme="light"] body.home-page .site-footer-contact p,
html[data-theme="light"] body.home-page .site-footer-contact h3,
html[data-theme="light"] body.home-page .logo-banner .logo-text,
html[data-theme="light"] body.home-page .header-hex {
  color: #5f6b79 !important;
}

/* Home orb title must stay white for readability */
html[data-theme="light"] body.home-page .showcase-orb h2 {
  color: #f5f8ff !important;
  text-shadow:
    0 0 16px rgba(110, 160, 255, 0.5),
    0 0 34px rgba(112, 84, 255, 0.38) !important;
}

/* Mentor light mode: same white header/footer as other light pages */
html[data-theme="light"] body.mentor-page .logo-banner,
html[data-theme="light"] body.mentor-page .global-nav-wrap,
html[data-theme="light"] body.mentor-page .site-footer,
html[data-theme="light"] body.mentor-page .site-footer-contact,
html[data-theme="light"] body.mentor-page .site-footer-map {
  background: linear-gradient(165deg, #ffffff, #f7f9fb) !important;
  border-color: #cfd6de !important;
  box-shadow: 0 8px 24px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] body.mentor-page .site-footer-note,
html[data-theme="light"] body.mentor-page .site-footer-contact p,
html[data-theme="light"] body.mentor-page .site-footer-contact h3,
html[data-theme="light"] body.mentor-page .logo-banner .logo-text,
html[data-theme="light"] body.mentor-page .header-hex {
  color: #5f6b79 !important;
}

/* Animated futuristic light backdrop (Home + Jury) */
html[data-theme="light"] body.home-page::before,
html[data-theme="light"] body.jury-page::before {
  opacity: 0.52 !important;
  background-size: 34px 34px !important;
  animation: lightGridDrift 14s linear infinite;
}

html[data-theme="light"] body.home-page::after,
html[data-theme="light"] body.jury-page::after {
  opacity: 0.62 !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(255, 171, 120, 0.18), transparent 26%),
    radial-gradient(circle at 84% 24%, rgba(234, 59, 21, 0.14), transparent 24%),
    radial-gradient(circle at 54% 86%, rgba(255, 204, 171, 0.18), transparent 30%),
    radial-gradient(circle at 28% 72%, rgba(255, 142, 94, 0.12), transparent 22%) !important;
  animation: lightNebulaFloat 10s ease-in-out infinite alternate;
}

@keyframes lightGridDrift {
  0% { transform: translateY(0); }
  100% { transform: translateY(-24px); }
}

@keyframes lightNebulaFloat {
  0% { transform: translate3d(-1.2%, -0.8%, 0) scale(1); }
  100% { transform: translate3d(1.2%, 0.8%, 0) scale(1.04); }
}

/* Jury visibility guard */
body.jury-page #page-dashboard.page-section.active {
  display: block !important;
}

/* Jury fail-safe: never hide core sections if reveal animation fails */
body.jury-page .section-reveal {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

body.jury-page .section-reveal.inview {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

/* Jury light: same white header/footer treatment as other pages */
html[data-theme="light"] body.jury-page .logo-banner,
html[data-theme="light"] body.jury-page .global-nav-wrap,
html[data-theme="light"] body.jury-page .site-footer,
html[data-theme="light"] body.jury-page .site-footer-contact,
html[data-theme="light"] body.jury-page .site-footer-map {
  background: linear-gradient(165deg, #ffffff, #f7f9fb) !important;
  border-color: #cfd6de !important;
  box-shadow: 0 8px 24px rgba(20, 32, 44, 0.08) !important;
}

html[data-theme="light"] body.jury-page .site-footer-note,
html[data-theme="light"] body.jury-page .site-footer-contact p,
html[data-theme="light"] body.jury-page .site-footer-contact h3,
html[data-theme="light"] body.jury-page .logo-banner .logo-text,
html[data-theme="light"] body.jury-page .header-hex {
  color: #5f6b79 !important;
}

/* Jury auth in light mode: improve visibility + remove green Sign In */
html[data-theme="light"] body.jury-page .auth-brand p {
  color: #ffffff !important;
  font-weight: 600 !important;
  text-shadow: 0 0 12px rgba(255, 255, 255, 0.28) !important;
}

html[data-theme="light"] body.jury-page .auth-tab[data-tab="signin"].active {
  color: #ffffff !important;
  border-bottom-color: #d94a29 !important;
  background: linear-gradient(135deg, #ea3b15, #d83310) !important;
  box-shadow: 0 8px 20px rgba(234, 59, 21, 0.26) !important;
}

html[data-theme="light"] body.jury-page #signinBtn.auth-btn {
  background: linear-gradient(135deg, #ea3b15, #d83310) !important;
  color: #ffffff !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.38),
    0 10px 24px rgba(234, 59, 21, 0.28) !important;
}

html[data-theme="light"] body.jury-page #signinBtn.auth-btn:hover {
  background: linear-gradient(135deg, #f04a21, #d83310) !important;
  color: #ffffff !important;
}

/* Jury light: remove any blank offset before header */
html[data-theme="light"] body.jury-page,
html[data-theme="light"] body.jury-page #appContent {
  margin: 0 !important;
  padding-top: 0 !important;
}

html[data-theme="light"] body.jury-page #appContent > :first-child {
  margin-top: 0 !important;
}

/* Mobile optimization across Home/Jury/Mentor */
@media (max-width: 900px) {
  .logo-banner,
  .top-logo-banner {
    padding: 0.8rem 0.95rem !important;
  }

  .logo-banner-inner {
    gap: 0.8rem !important;
    align-items: center !important;
  }

  .logo-banner-left {
    gap: 0.65rem !important;
    flex-wrap: nowrap !important;
    min-width: 0 !important;
  }

  .logo-banner img.org-logo {
    height: 34px !important;
    width: auto !important;
    max-width: 30vw !important;
  }

  .logo-banner img.org-logo.org-logo-um6pabs {
    height: 40px !important;
  }

  .logo-banner img.org-logo.org-logo-coe {
    height: 38px !important;
  }

  .logo-banner img.launchpad-logo {
    height: 40px !important;
    max-width: 36vw !important;
  }

  .logo-banner .logo-divider {
    height: 28px !important;
  }

  .global-nav {
    padding: 8px 10px 10px !important;
    gap: 6px !important;
    justify-content: center !important;
  }

  a.global-nav-link,
  a.global-nav-link:visited,
  button.global-nav-link {
    min-height: 38px !important;
    padding: 9px 12px !important;
    font-size: 11px !important;
  }

  .theme-toggle {
    min-height: 40px !important;
  }

  .mobile-nav-select {
    display: block !important;
  }

  .global-nav > a.global-nav-link,
  .global-nav > .user-menu-nav {
    display: none !important;
  }

  .global-nav > .theme-toggle {
    display: inline-flex !important;
    min-height: 38px !important;
    width: 38px !important;
    min-width: 38px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    gap: 0 !important;
  }

  .section-nav > .nav-tab {
    display: none !important;
  }

  .nav-tabs-row {
    padding: 0.5rem 0.75rem 0.65rem !important;
    gap: 0.45rem !important;
  }

  .nav-tabs-row .nav-tab,
  .nav-tabs-row .nav-home-btn {
    flex: 1 1 44% !important;
    min-height: 42px !important;
    font-size: 0.75rem !important;
  }

  .nav-tabs-row > .nav-tab,
  .nav-tabs-row > .nav-home-btn {
    display: none !important;
  }

  .header {
    padding: 0 0.75rem !important;
  }

  .header-inner {
    min-height: 60px !important;
    height: auto !important;
    padding: 0.4rem 0 !important;
    flex-wrap: wrap !important;
    gap: 0.45rem !important;
  }

  .header-title {
    font-size: 0.95rem !important;
  }

  .header-meta {
    gap: 0.45rem !important;
    font-size: 0.7rem !important;
    flex-wrap: wrap !important;
  }

  .controls,
  .grid-section,
  .admin-content,
  .method-content,
  .methodology-content {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }

  .stats-bar,
  .live-votes-kpis,
  .admin-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.55rem !important;
  }

  .search-box input,
  #searchInput {
    font-size: 16px !important;
  }

  .project-card,
  .live-votes-card,
  .admin-card,
  .method-card,
  .form-section .section-card,
  .panel,
  .card {
    border-radius: 14px !important;
  }

  .site-footer-inner {
    grid-template-columns: 1fr !important;
    gap: 0.8rem !important;
    padding: 0.85rem !important;
  }

  .site-footer-map iframe {
    min-height: 180px !important;
  }

  .footer-logo-row {
    gap: 0.65rem !important;
  }

  .footer-logo-row .logo-divider {
    height: 32px !important;
  }

  .footer-brand-logo {
    height: 42px !important;
    width: auto !important;
    max-width: 28vw !important;
  }
}

@media (max-width: 640px) {
  .hero {
    padding-top: 1rem !important;
  }

  .showcase,
  .hero,
  .form-header {
    border-radius: 16px !important;
  }

  .showcase-orb h2,
  .hero h1,
  .form-header h1 {
    font-size: clamp(1.7rem, 8.2vw, 2.3rem) !important;
    line-height: 1.08 !important;
  }

  .showcase-pill {
    font-size: 0.7rem !important;
    letter-spacing: 0.04em !important;
    padding: 0.5rem 0.75rem !important;
  }

  .stats-bar,
  .showcase-stats {
    grid-template-columns: 1fr 1fr !important;
  }

  .form-header {
    padding: 1.2rem 0.8rem 1rem !important;
  }

  .header-top {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.5rem !important;
  }

  .header-logo .logo-text {
    font-size: 1.05rem !important;
    letter-spacing: 0.08em !important;
  }

  .progress-wrap,
  .progress-steps {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .progress-steps {
    gap: 0.6rem !important;
    padding-bottom: 0.35rem !important;
  }

  .progress-step {
    min-width: 72px !important;
  }

  .nav-buttons {
    position: static !important;
    flex-direction: column-reverse !important;
    gap: 0.55rem !important;
  }

  .nav-buttons .btn,
  .nav-buttons button {
    width: 100% !important;
  }

  .jury-actions {
    flex-direction: column !important;
  }

  .jury-actions .jury-btn,
  .jury-actions .comment-save-btn,
  .admin-actions .admin-btn {
    width: 100% !important;
  }
}

/* Jury top tabs: uniform pill extremities */
.nav-tabs-row .nav-tab,
.nav-tabs-row .nav-home-btn,
html[data-theme="light"] .nav-tabs-row .nav-tab,
html[data-theme="light"] .nav-tabs-row .nav-home-btn,
html[data-theme="dark"] .nav-tabs-row .nav-tab,
html[data-theme="dark"] .nav-tabs-row .nav-home-btn {
  border-radius: 999px !important;
  overflow: hidden !important;
  height: 46px !important;
  min-height: 46px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1 !important;
}

html[data-theme="light"] .nav-tabs-row .nav-tab.active,
html[data-theme="light"] .nav-tabs-row .nav-home-btn.active {
  box-shadow: 0 8px 20px rgba(234, 59, 21, 0.26) !important;
}

/* Jury tabs container: clean and uniform left/right extremities (light + dark) */
.nav-tabs-row {
  border-left: 1px solid var(--color-border) !important;
  border-right: 1px solid var(--color-border) !important;
  border-bottom: 1px solid var(--color-border) !important;
  border-radius: 0 0 16px 16px !important;
  padding-left: 1.6rem !important;
  padding-right: 1.6rem !important;
}

html[data-theme="light"] .nav-tabs-row {
  background: linear-gradient(180deg, #f4f6f8, #eef2f5) !important;
  border-color: #cfd6de !important;
}

html[data-theme="dark"] .nav-tabs-row {
  background: linear-gradient(180deg, rgba(11, 24, 38, 0.96), rgba(9, 21, 33, 0.96)) !important;
  border-color: rgba(95, 184, 232, 0.24) !important;
}

@media (max-width: 900px) {
  .nav-tabs-row {
    border-radius: 0 0 14px 14px !important;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}

/* Launchpad logo: no contour in dark mode */
html[data-theme="dark"] .logo-banner img.launchpad-logo,
html[data-theme="dark"] .auth-launchpad-logo,
html[data-theme="dark"] img.footer-brand-logo.launchpad-logo-glow,
html[data-theme="dark"] #footerLaunchpadLogo {
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  filter: none !important;
}

/* Launchpad logo: 2x bigger in all footers (light + dark) */
#footerLaunchpadLogo,
img.footer-brand-logo#footerLaunchpadLogo,
.footer-brand-logo.launchpad-logo-glow#footerLaunchpadLogo {
  height: clamp(96px, 11.6vw, 144px) !important;
  width: clamp(220px, 22vw, 360px) !important;
  max-width: none !important;
  object-fit: contain !important;
  opacity: 1 !important;
}

@media (max-width: 900px) {
  #footerLaunchpadLogo,
  img.footer-brand-logo#footerLaunchpadLogo,
  .footer-brand-logo.launchpad-logo-glow#footerLaunchpadLogo {
    height: clamp(74px, 16vw, 108px) !important;
    width: clamp(170px, 40vw, 260px) !important;
  }
}

/* Jury comment box readability */
html[data-theme="dark"] .comment-input,
html[data-theme="dark"] textarea.comment-input {
  background: linear-gradient(155deg, #15202d, #111a25) !important;
  border-color: #33475b !important;
  color: #e9eef4 !important;
}

.comment-input::placeholder,
textarea.comment-input::placeholder,
html[data-theme="dark"] .comment-input::placeholder,
html[data-theme="dark"] textarea.comment-input::placeholder {
  color: #ea3b15 !important;
  opacity: 1 !important;
}

/* Card detail headings: PROBLEM / SOLUTION / MARKET in orange */
.detail-section h4,
.project-card .detail-section h4,
html[data-theme="light"] .detail-section h4,
html[data-theme="dark"] .detail-section h4 {
  color: #ea3b15 !important;
  text-shadow: 0 0 10px rgba(234, 59, 21, 0.2) !important;
}

.project-card .detail-section.problem h4,
.project-card .detail-section.solution h4,
.project-card .detail-section.market h4,
html[data-theme="light"] .project-card .detail-section.problem h4,
html[data-theme="light"] .project-card .detail-section.solution h4,
html[data-theme="light"] .project-card .detail-section.market h4,
html[data-theme="dark"] .project-card .detail-section.problem h4,
html[data-theme="dark"] .project-card .detail-section.solution h4,
html[data-theme="dark"] .project-card .detail-section.market h4 {
  color: #ea3b15 !important;
}

/* "Details" trigger in orange too */
.card-expand,
.card-expand:visited,
html[data-theme="light"] .card-expand,
html[data-theme="dark"] .card-expand {
  color: #ea3b15 !important;
}

.card-expand:hover,
html[data-theme="light"] .card-expand:hover,
html[data-theme="dark"] .card-expand:hover {
  color: #ff6e45 !important;
}

/* Orange hover for project mini-metric boxes */
.card-metrics .metric {
  transition:
    border-color var(--ui-motion-fast) var(--ui-ease),
    box-shadow var(--ui-motion-fast) var(--ui-ease),
    transform var(--ui-motion-fast) var(--ui-ease),
    color var(--ui-motion-fast) var(--ui-ease),
    background var(--ui-motion-fast) var(--ui-ease) !important;
}

.card-metrics .metric:hover {
  border-color: rgba(234, 59, 21, 0.6) !important;
  box-shadow:
    0 0 0 1px rgba(234, 59, 21, 0.26),
    0 0 22px rgba(234, 59, 21, 0.22) !important;
  transform: translateY(-1px);
}

html[data-theme="dark"] .card-metrics .metric:hover {
  background: linear-gradient(155deg, rgba(30, 28, 30, 0.92), rgba(19, 26, 34, 0.95)) !important;
}

html[data-theme="light"] .card-metrics .metric:hover {
  background: linear-gradient(165deg, #fff9f6, #fff3ed) !important;
}

/* Urgent mobile hotfix (Jury): profile menu + centered hero globe */
@media (max-width: 900px) {
  body.jury-page .header,
  body.jury-page .header-inner,
  body.jury-page .header-meta,
  body.jury-page #userWidget {
    overflow: visible !important;
  }

  body.jury-page .header-inner {
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0.5rem !important;
  }

  body.jury-page .header-title {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  body.jury-page .header-meta {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  body.jury-page #userWidget {
    margin-left: auto !important;
    position: relative !important;
    z-index: 4300 !important;
    pointer-events: auto !important;
  }

  body.jury-page #userWidget .user-avatar {
    pointer-events: none;
  }

  body.jury-page #userWidget .user-dropdown {
    left: auto !important;
    right: 0 !important;
    top: calc(100% + 10px) !important;
    min-width: 186px !important;
    max-width: min(82vw, 280px) !important;
    z-index: 4310 !important;
  }

  body.jury-page .hero-inner {
    width: 100% !important;
  }

  body.jury-page .hero-main {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: center !important;
    width: 100% !important;
  }

  body.jury-page .hero-globe-wrap {
    position: relative !important;
    width: min(92vw, 430px) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    justify-self: center !important;
  }

  body.jury-page .hero-globe {
    margin: 0 auto !important;
  }
}

@media (max-width: 640px) {
  body.jury-page #userWidget .user-dropdown {
    position: fixed !important;
    top: 184px !important;
    right: 12px !important;
    left: auto !important;
    max-width: calc(100vw - 24px) !important;
    z-index: 6000 !important;
  }

  body.jury-page .showcase-arm {
    right: 10px !important;
    left: auto !important;
  }

  body.jury-page .showcase-robot {
    right: 8px !important;
    left: auto !important;
    top: 28px !important;
  }
}
