/* FIT100 — correção final da tela Provas e do topo aprovado do Perfil. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] {
  background: #fff !important;
  color: #071426 !important;
}

/* PROVAS — remove qualquer card antigo azul duplicado da área de busca. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box)::before,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box)::after,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-box::before,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-box::after {
  content: none !important;
  display: none !important;
}

/* Qualquer bloco legado escuro/gradiente entre o título e a busca deve desaparecer. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box) > div[class*="linear-gradient"],
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box) > div[class*="bg-[#061"],
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box) > div[class*="bg-[#071"],
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] section:has(.race-search-box) > div[class*="bg-[#082"] {
  display: none !important;
}

/* O helper aprovado é sempre claro. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-note {
  display: block !important;
  background: #f6f9fc !important;
  background-color: #f6f9fc !important;
  background-image: none !important;
  border: 1px solid #dbe7f2 !important;
  box-shadow: none !important;
  color: #5f7188 !important;
  opacity: 1 !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-note strong {
  color: #168cff !important;
  -webkit-text-fill-color: #168cff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-note span {
  color: #5f7188 !important;
  -webkit-text-fill-color: #5f7188 !important;
}

/* Campo de busca aprovado: branco. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-box {
  display: flex !important;
  align-items: center !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border: 1.5px solid #cbdced !important;
  box-shadow: 0 8px 24px rgba(6,26,53,.06) !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-input,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] input[placeholder^="Ex.: Maratona"] {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  color: #071426 !important;
  -webkit-text-fill-color: #071426 !important;
  caret-color: #168cff !important;
  color-scheme: light !important;
  border: 0 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-search-input::placeholder,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] input[placeholder^="Ex.: Maratona"]::placeholder {
  color: #8797aa !important;
  -webkit-text-fill-color: #8797aa !important;
  opacity: 1 !important;
}

/* Cards das provas: azul-marinho FIT100, mantendo a tela clara ao redor. */
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card {
  background: #061a35 !important;
  background-color: #061a35 !important;
  background-image: linear-gradient(145deg,#061a35 0%,#08294e 100%) !important;
  border: 1px solid #174b7c !important;
  box-shadow: 0 12px 30px rgba(6,26,53,.18) !important;
  color: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card h3,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card h4 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card p,
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card span:not(.race-save-button span) {
  color: #aebdce !important;
  -webkit-text-fill-color: #aebdce !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-catalog-card svg {
  color: #168cff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-date-icon {
  background: #0a315b !important;
  border-color: #2d6ca7 !important;
  color: #69b7ff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-save-button {
  background: #168cff !important;
  color: #fff !important;
  border-color: #168cff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-save-button * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-save-button.saved {
  background: #0a315b !important;
  color: #69b7ff !important;
  border: 1px solid #2d6ca7 !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-save-button.saved * {
  color: #69b7ff !important;
  -webkit-text-fill-color: #69b7ff !important;
}
html body #root [data-fit100-premium-app] .fit-social-shell [data-races-panel] .race-link-button {
  background: #0a2443 !important;
  color: #69b7ff !important;
  border-color: #2a5f92 !important;
}

/* PERFIL NORMAL — card principal branco igual ao perfil público aprovado. */
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border-color: #d7e3ee !important;
  box-shadow: 0 10px 28px rgba(6,26,53,.07) !important;
  color: #071426 !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] h1,
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] strong {
  color: #071426 !important;
  -webkit-text-fill-color: #071426 !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] p,
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] span:not([class*="bg-[#168cff]"]) {
  color: #718096 !important;
  -webkit-text-fill-color: #718096 !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] [class*="rounded-full"] {
  border-color: #168cff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] button:not([class*="bg-[#168cff]"]) {
  background: #ffffff !important;
  background-image: none !important;
  border-color: #168cff !important;
  color: #168cff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] button:not([class*="bg-[#168cff]"]) svg {
  color: #168cff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] button[class*="bg-[#168cff]"] {
  background: #168cff !important;
  color: #ffffff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section[class*="linear-gradient(180deg,#06172a"] button[class*="bg-[#168cff]"] * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* O card das três métricas continua azul-marinho, como aprovado. */
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section.grid.grid-cols-3 {
  background: #061a35 !important;
  background-color: #061a35 !important;
  background-image: none !important;
  border-color: #168cff !important;
  color: #ffffff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section.grid.grid-cols-3 > div,
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section.grid.grid-cols-3 strong {
  background: #061a35 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section.grid.grid-cols-3 span {
  color: #aebdce !important;
  -webkit-text-fill-color: #aebdce !important;
}
html body #root [data-fit100-premium-app] [role="tabpanel"][data-state="active"] section.grid.grid-cols-3 svg {
  color: #168cff !important;
}

/* LIVE TRACKING PUBLICO — o Safari/WhatsApp precisa deixar a pagina inteira rolar. */
html:has([data-live-public="true"]),
body:has([data-live-public="true"]) {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
  background: #ffffff !important;
}

body:has([data-live-public="true"]) #root {
  height: auto !important;
  min-height: 100vh !important;
  overflow: visible !important;
  background: #ffffff !important;
}

[data-live-public="true"] {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  min-height: 100vh !important;
  height: auto !important;
  overflow: visible !important;
  touch-action: pan-y !important;
  background: #ffffff !important;
}

[data-live-public="true"] [data-live-map],
[data-live-public="true"] .maplibregl-map,
[data-live-public="true"] .maplibregl-canvas-container,
[data-live-public="true"] .maplibregl-canvas {
  touch-action: pan-y !important;
}

[data-live-public="true"] .maplibregl-canvas {
  filter: none !important;
  opacity: 1 !important;
}
