@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Rajdhani:wght@600;700&display=swap');

/* Tema visual del módulo Clubes. */
.bc-tema-deporte {
  --ff-line: rgba(212, 175, 55, 0.38);
  --ff-gold: #d4af37;
  --ff-pitch: #157a3c;
  --bc-brand: #d4af37;
  --bc-brand-dark: #f5d76e;
  --bc-brand-deep: #071018;
  --bc-gold: #f5d76e;
  --bc-border: rgba(212, 175, 55, 0.28);
  --bc-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
  --bc-font: 'Rajdhani', 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --bc-display: 'Oswald', 'Montserrat', system-ui, sans-serif;
  color-scheme: dark;
  background: var(--ff-navy);
  color: var(--ff-texto);
}
html.bc-tono-claro .bc-tema-deporte { color-scheme: light; }
html, body, #app {
  min-height: 100%;
  background: var(--ff-navy);
  color: var(--ff-texto);
}
html:has(.bc-tema-deporte) {
  --ff-navy: #4e5966;
  --ff-fondo-alto: #5d6876;
  --ff-panel: #434d59;
  --ff-ink: #3a4450;
  --ff-texto: #f7f9fc;
  --ff-suave: #d5dee8;
  --ff-acento: #ffe7a3;
  --ff-text: #f7f9fc;
  --ff-muted: #d5dee8;
  --ff-gold2: #ffe7a3;
  --bc-cream: #4e5966;
  --bc-surface: #434d59;
  --bc-text: #f7f9fc;
  --bc-muted: #d5dee8;
  background: var(--ff-navy);
  color: var(--ff-texto);
}
html.bc-fondo-gris {
  --ff-navy: #4e5966; --ff-fondo-alto: #5d6876; --ff-panel: #434d59; --ff-ink: #3a4450;
  --ff-texto: #f7f9fc; --ff-suave: #d5dee8; --ff-acento: #ffe7a3;
  --bc-text: #f7f9fc; --bc-muted: #d5dee8; --bc-cream: #4e5966; --bc-surface: #434d59;
}
html.bc-fondo-grafito {
  --ff-navy: #2c323a; --ff-fondo-alto: #3a424c; --ff-panel: #242a32; --ff-ink: #1e242b;
  --ff-texto: #f4f7fb; --ff-suave: #c5d4e8; --ff-acento: #f5d76e;
  --bc-text: #f4f7fb; --bc-muted: #c5d4e8; --bc-cream: #2c323a; --bc-surface: #242a32;
}
html.bc-fondo-negro {
  --ff-navy: #12181f; --ff-fondo-alto: #1c2838; --ff-panel: #0e141c; --ff-ink: #0a1016;
  --ff-texto: #f4f7fb; --ff-suave: #c5d4e8; --ff-acento: #f5d76e;
  --bc-text: #f4f7fb; --bc-muted: #c5d4e8; --bc-cream: #12181f; --bc-surface: #0e141c;
}
html.bc-fondo-pizarra {
  --ff-navy: #3a4a5c; --ff-fondo-alto: #4a5c70; --ff-panel: #314152; --ff-ink: #2a3848;
  --ff-texto: #f4f7fb; --ff-suave: #d5dee8; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #d5dee8; --bc-cream: #3a4a5c; --bc-surface: #314152;
}
html.bc-fondo-acero {
  --ff-navy: #3e4a58; --ff-fondo-alto: #4e5c6c; --ff-panel: #35414e; --ff-ink: #2d3844;
  --ff-texto: #f4f7fb; --ff-suave: #d5dee8; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #d5dee8; --bc-cream: #3e4a58; --bc-surface: #35414e;
}
html.bc-fondo-azul {
  --ff-navy: #1b3a5c; --ff-fondo-alto: #274e78; --ff-panel: #16304e; --ff-ink: #122844;
  --ff-texto: #f4f7fb; --ff-suave: #c9daf0; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #c9daf0; --bc-cream: #1b3a5c; --bc-surface: #16304e;
}
html.bc-fondo-bosque {
  --ff-navy: #1a3c2e; --ff-fondo-alto: #245743; --ff-panel: #143226; --ff-ink: #10281e;
  --ff-texto: #f4f7fb; --ff-suave: #c9e6d6; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #c9e6d6; --bc-cream: #1a3c2e; --bc-surface: #143226;
}
html.bc-fondo-vino {
  --ff-navy: #4c2434; --ff-fondo-alto: #633044; --ff-panel: #3f1d2b; --ff-ink: #341824;
  --ff-texto: #f4f7fb; --ff-suave: #f0d0da; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #f0d0da; --bc-cream: #4c2434; --bc-surface: #3f1d2b;
}
html.bc-fondo-petroleo {
  --ff-navy: #163e48; --ff-fondo-alto: #1f5562; --ff-panel: #12343c; --ff-ink: #0e2c33;
  --ff-texto: #f4f7fb; --ff-suave: #c9e6ee; --ff-acento: #ffe7a3;
  --bc-text: #f4f7fb; --bc-muted: #c9e6ee; --bc-cream: #163e48; --bc-surface: #12343c;
}
html.bc-fondo-cobre {
  --ff-navy: #4a3424; --ff-fondo-alto: #5e4530; --ff-panel: #3d2b1e; --ff-ink: #332418;
  --ff-texto: #f7f3ee; --ff-suave: #eadccb; --ff-acento: #ffe7a3;
  --bc-text: #f7f3ee; --bc-muted: #eadccb; --bc-cream: #4a3424; --bc-surface: #3d2b1e;
}
html.bc-fondo-humo {
  --ff-navy: #c5ced8; --ff-fondo-alto: #d5dde6; --ff-panel: #b4bec9; --ff-ink: #ffffff;
  --ff-texto: #1c1917; --ff-suave: #3f3a34; --ff-acento: #5c4308;
  --bc-text: #1c1917; --bc-muted: #3f3a34; --bc-cream: #c5ced8; --bc-surface: #b4bec9;
}
html.bc-fondo-niebla {
  --ff-navy: #e4e8ee; --ff-fondo-alto: #f2f5f8; --ff-panel: #d3dae3; --ff-ink: #ffffff;
  --ff-texto: #1c1917; --ff-suave: #3f3a34; --ff-acento: #5c4308;
  --bc-text: #1c1917; --bc-muted: #3f3a34; --bc-cream: #e4e8ee; --bc-surface: #d3dae3;
}
html.bc-fondo-arena {
  --ff-navy: #efe8da; --ff-fondo-alto: #f7f3ea; --ff-panel: #e2d8c6; --ff-ink: #ffffff;
  --ff-texto: #1c1917; --ff-suave: #44403c; --ff-acento: #5c4308;
  --bc-text: #1c1917; --bc-muted: #44403c; --bc-cream: #efe8da; --bc-surface: #e2d8c6;
}
html.bc-fondo-gris { --ff-text: #f7f9fc; --ff-muted: #d5dee8; --ff-gold2: #ffe7a3; }
html.bc-fondo-grafito,
html.bc-fondo-negro { --ff-text: #f4f7fb; --ff-muted: #c5d4e8; --ff-gold2: #f5d76e; }
html.bc-fondo-pizarra,
html.bc-fondo-acero,
html.bc-fondo-azul,
html.bc-fondo-bosque,
html.bc-fondo-vino,
html.bc-fondo-petroleo,
html.bc-fondo-cobre { --ff-text: var(--ff-texto); --ff-muted: var(--ff-suave); --ff-gold2: var(--ff-acento); }
html.bc-fondo-humo,
html.bc-fondo-niebla,
html.bc-fondo-arena { --ff-text: #1c1917; --ff-muted: #3f3a34; --ff-gold2: #5c4308; }
html.bc-tono-claro .ff {
  --ff-text: #1c1917;
  --ff-muted: #3f3a34;
  --ff-gold: #5c4308;
  --ff-gold2: #5c4308;
}
.bc-tema-deporte .bc-fondos { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 0.75rem; }
.bc-tema-deporte .bc-fondo-op {
  width: 8rem;
  padding: 0.55rem;
  border-radius: 12px;
  border: 1px solid var(--ff-line);
  background: var(--ff-panel);
  color: var(--ff-texto);
  cursor: pointer;
  text-align: left;
}
.bc-tema-deporte .bc-fondo-op i {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 2.8rem;
  padding: 0.35rem 0.45rem;
  border-radius: 8px;
  margin-bottom: 0.4rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.bc-tema-deporte .bc-fondo-op i b {
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 4px;
}
.bc-tema-deporte .bc-fondo-op i em {
  font-style: normal;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.bc-tema-deporte .bc-fondo-op.activo { border-color: var(--ff-acento); box-shadow: 0 0 0 1px #f5d76e; }
.bc-tema-deporte .bc-login {
  background:
    radial-gradient(ellipse at 20% -10%, rgba(212, 175, 55, 0.2), transparent 46%),
    radial-gradient(ellipse at 100% 0%, rgba(21, 122, 60, 0.22), transparent 42%),
    linear-gradient(180deg, var(--ff-fondo-alto) 0%, var(--ff-navy) 60%);
}
.bc-tema-deporte .bc-login__card {
  background: var(--ff-panel);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-login__kicker { color: var(--ff-acento); }
.bc-tema-deporte .bc-login h1 {
  font-family: 'Oswald', sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-login__lead { color: var(--ff-suave); }
.bc-tema-deporte .bc-login input {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border: 1px solid var(--ff-line);
}
.bc-tema-deporte .bc-login__ver { color: var(--ff-suave); }

.bc-shell.bc-tema-deporte,
.bc-tema-deporte .bc-shell {
  background: var(--ff-navy);
  color: var(--ff-texto);
}

.bc-tema-deporte .bc-brandbar {
  position: relative;
  overflow: hidden;
  background: var(--ff-navy);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.28);
}
.bc-tema-deporte .bc-brandbar::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 120%, rgba(212, 175, 55, 0.22), transparent 42%),
    repeating-linear-gradient(135deg, transparent 0 14px, rgba(255, 255, 255, 0.03) 14px 15px);
  pointer-events: none;
}
.bc-tema-deporte .bc-brandbar-inner { position: relative; z-index: 1; }
.bc-tema-deporte .bc-escudo {
  width: 40px;
  height: 40px;
  object-fit: contain;
  flex-shrink: 0;
  border-radius: 10px;
  padding: 3px;
  background: var(--ff-navy);
  border: 1px solid rgba(212, 175, 55, 0.55);
  box-shadow: 0 0 0 1px rgba(7, 16, 24, 0.4);
}
.bc-tema-deporte .bc-escudo-btn {
  display: inline-flex;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  line-height: 0;
}
.bc-escudo-modal {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
  background: rgba(7, 16, 24, 0.72);
}
.bc-escudo-modal__caja {
  width: min(22rem, 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  padding: 0.75rem 0.75rem 1rem;
  border-radius: 16px;
  background: var(--ff-panel);
  border: 1px solid rgba(212, 175, 55, 0.5);
}
.bc-escudo-modal__caja img {
  width: min(16rem, 70vw);
  height: min(16rem, 50vh);
  object-fit: contain;
  background: var(--ff-navy);
  border-radius: 12px;
}
.bc-escudo-modal__caja p {
  margin: 0;
  color: var(--ff-acento);
  font-family: 'Oswald', sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-align: center;
  font-size: 0.95rem;
}
.bc-escudo-modal__cerrar {
  align-self: flex-end;
  border: 0;
  background: transparent;
  color: var(--ff-acento);
  cursor: pointer;
  font-size: 0.85rem;
}
.bc-tema-deporte .bc-brandbar::after {
  position: relative;
  z-index: 1;
  background: linear-gradient(90deg, #8a6a12 0%, #f5d76e 50%, #d4af37 100%);
}
.bc-tema-deporte .bc-logo { font-family: 'Oswald', sans-serif; letter-spacing: 0.06em; text-transform: uppercase; }
.bc-tema-deporte .bc-logo-ayni { color: var(--ff-acento); }
.bc-tema-deporte .bc-logo-free { color: var(--ff-texto); }
.bc-tema-deporte .bc-colegio strong {
  font-family: 'Oswald', sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.bc-tema-deporte .bc-colegio small { color: var(--ff-acento); letter-spacing: 0.16em; }
.bc-tema-deporte .bc-badge {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
  border-color: var(--ff-acento);
}
.bc-tema-deporte .bc-brand-user strong { font-family: 'Oswald', sans-serif; }
.bc-tema-deporte .bc-brand-user span { color: var(--ff-acento); }

.bc-tema-deporte .bc-topnav {
  background: var(--ff-navy);
  border-bottom: 1px solid var(--ff-line);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(10px);
}
.bc-tema-deporte .bc-burger {
  background: var(--ff-panel);
  border-color: var(--ff-line);
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-link,
.bc-tema-deporte .bc-trigger {
  color: var(--ff-acento);
  font-family: 'Oswald', sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.bc-tema-deporte .bc-link:hover,
.bc-tema-deporte .bc-trigger:hover,
.bc-tema-deporte .bc-link.activo,
.bc-tema-deporte .bc-group.activo > .bc-trigger {
  background: rgba(212, 175, 55, 0.18);
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-drop {
  background: var(--ff-panel);
  border: 1px solid var(--ff-line);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
}
.bc-tema-deporte .bc-drop button {
  color: var(--ff-texto);
  font-family: 'Rajdhani', sans-serif;
}
.bc-tema-deporte .bc-drop button:hover,
.bc-tema-deporte .bc-drop button.activo {
  background: rgba(212, 175, 55, 0.16);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-user-trigger {
  background: var(--ff-panel);
  border-color: var(--ff-line);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-user-trigger:hover { background: rgba(212, 175, 55, 0.12); }
.bc-tema-deporte .bc-avatar {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
}
.bc-tema-deporte .bc-guia-avatar {
  background: #157a3c;
  box-shadow: 0 0 0 2px #fff, 0 4px 14px rgba(21, 122, 60, 0.4);
}
.bc-tema-deporte .bc-user-drop {
  background: var(--ff-panel);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-user-head { border-color: var(--ff-line); }
.bc-tema-deporte .bc-user-drop button:hover { background: rgba(212, 175, 55, 0.1); }
.bc-tema-deporte .bc-drawer-pie { flex-wrap: wrap; gap: 0.45rem; justify-content: flex-end; }
.bc-tema-deporte .bc-modal-clave { max-width: 28rem; }
.bc-tema-deporte .bc-modal-clave h2 { margin: 0 2rem 0.35rem 0; }

.bc-tema-deporte .bc-drawer {
  background: linear-gradient(180deg, var(--ff-panel) 0%, var(--ff-ink) 100%);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-drawer p { color: var(--ff-acento); }
.bc-tema-deporte .bc-drawer nav button { color: var(--ff-texto); }
.bc-tema-deporte .bc-drawer nav button.activo,
.bc-tema-deporte .bc-drawer nav button:hover {
  background: rgba(212, 175, 55, 0.18);
  color: var(--ff-texto);
}

.ff-tabbar,
.ff-tabsheet,
.ff-tabfondo { display: none; }
.bc-tema-deporte .bc-volver {
  margin: 0.85rem 2rem 0;
  background: transparent;
  border: 1px solid var(--ff-line);
  color: var(--ff-acento);
  border-radius: 999px;
  padding: 0.35rem 0.9rem;
  font-family: 'Oswald', sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.78rem;
  cursor: pointer;
}
.bc-tema-deporte .bc-volver[hidden] { display: none; }
@media (max-width: 991px) {
  .bc-tema-deporte .bc-volver { margin: 0.7rem 1rem 0; }
}
.ff-hub__titulo {
  margin: 0 0 0.9rem;
  font-family: 'Oswald', sans-serif;
  font-size: 1.45rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ff-acento);
}
.ff-mods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
}
.ff-mod {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 0.4rem;
  min-height: 6.2rem;
  text-align: center;
  background: linear-gradient(180deg, rgba(212, 175, 55, 0.14), rgba(7, 16, 24, 0.35));
  border: 1px solid var(--ff-line);
  color: var(--ff-texto);
  border-radius: 14px;
  padding: 0.85rem 0.55rem;
}
.ff-mod svg { width: 28px; height: 28px; color: var(--ff-acento); }
.ff-mod b {
  font-family: 'Oswald', sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.15;
}
.ff-mod.activo { box-shadow: inset 0 0 0 1px var(--ff-acento); }
@media (max-width: 991px) {
  .bc-tema-deporte .bc-links,
  .bc-tema-deporte .bc-burger { display: none !important; }
  .bc-tema-deporte .bc-main { padding-bottom: calc(4.8rem + env(safe-area-inset-bottom)); }
  .bc-tema-deporte .ff-tabbar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 37;
    display: flex;
    overflow-x: auto;
    background: color-mix(in srgb, var(--ff-navy) 94%, transparent);
    border-top: 1px solid var(--ff-line);
    padding: 0.35rem 0.1rem calc(0.35rem + env(safe-area-inset-bottom));
  }
  .bc-tema-deporte .ff-tabbar button {
    flex: 1 0 4.6rem;
    display: grid;
    gap: 0.12rem;
    justify-items: center;
    align-content: center;
    border: 0;
    background: none;
    color: var(--ff-suave);
    font-family: 'Oswald', sans-serif;
    font-size: 0.62rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 0.3rem 0.15rem;
  }
  .bc-tema-deporte .ff-tabbar button.activo { color: var(--ff-acento); }
  .bc-tema-deporte .ff-tabbar svg { width: 20px; height: 20px; }
  .bc-tema-deporte .ff-tabbar span {
    max-width: 4.5rem;
    line-height: 1.05;
    text-align: center;
  }
}

.bc-tema-deporte .bc-main {
  background-color: var(--ff-navy);
  background-image:
    radial-gradient(ellipse 70% 40% at 100% 0%, rgba(212, 175, 55, 0.12), transparent 55%),
    radial-gradient(ellipse 60% 40% at 0% 0%, rgba(21, 122, 60, 0.16), transparent 50%),
    linear-gradient(180deg, var(--ff-fondo-alto) 0%, var(--ff-navy) 58%);
}
.bc-tema-deporte .bc-title {
  font-family: 'Oswald', sans-serif;
  color: var(--ff-acento);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  animation: none;
  text-shadow: 0 2px 18px rgba(212, 175, 55, 0.28);
}
.bc-tema-deporte .bc-accent {
  background: linear-gradient(105deg, #fff3b0 0%, #f5d76e 40%, #d4af37 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: none;
  filter: none;
}
html.bc-tono-claro .bc-tema-deporte .bc-accent {
  background: none;
  -webkit-text-fill-color: #3f2e06;
  color: #3f2e06;
}
.bc-tema-deporte .bc-lead { color: var(--ff-suave); }
.bc-tema-deporte h2,
.bc-tema-deporte .bc-seccion {
  font-family: 'Oswald', sans-serif;
  color: var(--ff-acento);
  letter-spacing: 0.08em;
}

.bc-tema-deporte button.primario,
.bc-tema-deporte .primario {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
  border: 0;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.28);
  font-weight: 800;
}
.bc-tema-deporte .secundario,
.bc-tema-deporte button.secundario {
  background: transparent;
  color: var(--ff-acento);
  border: 1px solid var(--ff-line);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.22);
}

.bc-tema-deporte .bc-pills { gap: 0.5rem; }
.bc-tema-deporte .bc-pill {
  background: var(--ff-panel);
  color: var(--ff-suave);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-pill.activo {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
  border-color: var(--ff-acento);
}

.bc-tema-deporte .bc-ficha,
.bc-tema-deporte .bc-form-page,
.bc-tema-deporte .tarjeta,
.bc-tema-deporte .item,
.bc-tema-deporte form.alta,
.bc-tema-deporte .bc-tabla-tools,
.bc-tema-deporte .bc-tabla-wrap,
.bc-tema-deporte .bc-caja-alta,
.bc-tema-deporte .bc-caja-confirma,
.bc-tema-deporte .bc-modal {
  background: var(--ff-panel);
  border: 1px solid var(--ff-line);
  color: var(--ff-texto);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}
.bc-tema-deporte .bc-ficha:hover { box-shadow: 0 16px 40px rgba(212, 175, 55, 0.12); }
.bc-tema-deporte .bc-ficha h3,
.bc-tema-deporte .tarjeta strong { color: var(--ff-acento); font-family: 'Oswald', sans-serif; }
.bc-tema-deporte .bc-kpi {
  border: 1px solid var(--ff-line);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
}
.bc-tema-deporte .bc-kpi strong { font-family: 'Oswald', sans-serif; }
.bc-tema-deporte .bc-kpi-marca {
  background: linear-gradient(135deg, #f5d76e 0%, #8a6a12 100%);
  color: #1a1404;
}
.bc-tema-deporte .bc-kpi-ok { background: linear-gradient(135deg, #1aa34a 0%, #0c3d22 100%); }
.bc-tema-deporte .bc-kpi-aviso { background: linear-gradient(135deg, #c08457 0%, #7a4b28 100%); }
.bc-tema-deporte .bc-kpi-info {
  background: linear-gradient(135deg, #1b3a5c 0%, var(--ff-panel) 100%);
  color: var(--ff-acento);
}

.bc-tema-deporte input,
.bc-tema-deporte select,
.bc-tema-deporte textarea {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border: 1px solid var(--ff-line);
}
.bc-tema-deporte .bc-label,
.bc-tema-deporte label { color: var(--ff-suave); }
.bc-tema-deporte .bc-form-pie { border-color: var(--ff-line); }

.bc-tema-deporte .bc-tabla { background: transparent; color: var(--ff-texto); }
.bc-tema-deporte .bc-tabla thead {
  background: var(--ff-ink);
  border-bottom: 2px solid #d4af37;
}
.bc-tema-deporte .bc-tabla th { color: var(--ff-acento); background: var(--ff-ink); }
.bc-tema-deporte .bc-tabla td {
  color: var(--ff-texto);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.bc-tema-deporte .bc-tabla tbody tr:hover { background: rgba(212, 175, 55, 0.08); }
.bc-tema-deporte .bc-tabla a,
.bc-tema-deporte .bc-tabla .bc-titulo-reunion,
.bc-tema-deporte .bc-enlace,
.bc-tema-deporte .bc-doc a {
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-paginador {
  color: var(--ff-suave);
  border-top-color: var(--ff-line);
}
.bc-tema-deporte .bc-icono {
  background: var(--ff-panel);
  border-color: var(--ff-line);
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-icono:hover { background: rgba(212, 175, 55, 0.16); }
.bc-tema-deporte .bc-icono-marca {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
  border-color: #d4af37;
}

.bc-tema-deporte .bc-acciones button,
.bc-tema-deporte .bc-acciones button.primario {
  background: var(--ff-ink);
  color: var(--ff-acento);
  border-color: var(--ff-line);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.28);
}
html.bc-tono-claro .bc-tema-deporte .secundario,
html.bc-tono-claro .bc-tema-deporte button.secundario,
html.bc-tono-claro .bc-tema-deporte .bc-acciones button:not(.primario) {
  background: #fff;
  color: #1c1917;
  border-color: rgba(28, 25, 23, 0.16);
  box-shadow: 0 2px 6px rgba(28, 25, 23, 0.16);
}
html.bc-tono-claro .bc-tema-deporte .primario,
html.bc-tono-claro .bc-tema-deporte button.primario,
html.bc-tono-claro .bc-tema-deporte .bc-acciones button.primario {
  background: linear-gradient(180deg, #f5d76e, #d4af37);
  color: #1a1404;
  box-shadow: 0 3px 8px rgba(28, 25, 23, 0.2);
}
.bc-tema-deporte .bc-acciones button:hover {
  background: rgba(212, 175, 55, 0.16);
  border-color: var(--ff-acento);
}
.bc-tema-deporte .bc-origen {
  background: rgba(212, 175, 55, 0.16);
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-badge-aviso { background: rgba(192, 132, 87, 0.22); color: #f3d3b3; border-color: #c08457; }
.bc-tema-deporte .bc-badge-ok { background: rgba(21, 122, 60, 0.28); color: #7dffb0; border-color: #157a3c; }
.bc-tema-deporte .bc-badge-mal { background: rgba(185, 28, 28, 0.22); color: #ffb4a2; border-color: #7f1d1d; }
.bc-tema-deporte .bc-badge-neutro { background: var(--ff-panel); color: var(--ff-suave); border-color: var(--ff-line); }
.bc-tema-deporte .bc-badge-info { background: var(--ff-panel); color: var(--ff-acento); border-color: var(--ff-line); }

.bc-tema-deporte .bc-alerta-info { background: var(--ff-panel); color: #cfe3ff; border-color: var(--ff-line); }
.bc-tema-deporte .bc-alerta-ok { background: rgba(12, 61, 34, 0.55); color: #7dffb0; border-color: #157a3c; }
.bc-tema-deporte .bc-alerta-aviso { background: rgba(122, 75, 40, 0.35); color: #f3d3b3; border-color: #c08457; }
.bc-tema-deporte .bc-alerta-error { background: rgba(127, 29, 29, 0.4); color: #ffb4a2; border-color: #b91c1c; }
.bc-tema-deporte .bc-aviso { background: var(--ff-panel); color: #cfe3ff; border-color: var(--ff-line); }

.bc-tema-deporte .bc-barra { background: #16304a; }
.bc-tema-deporte .bc-barra > span { background: linear-gradient(90deg, #d4af37, #f5d76e); }
.bc-tema-deporte .bc-tabla tr.bc-fila-rojo { background: rgba(127, 29, 29, 0.28); }
.bc-tema-deporte .bc-tabla tr.bc-fila-amarillo { background: rgba(122, 75, 40, 0.28); }

.bc-tema-deporte .bc-ayuda-fab,
.bc-tema-deporte #bc-ayuda,
.bc-tema-deporte .bc-pwa-banner {
  background: var(--ff-panel);
  border-color: var(--ff-line);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-gestion-dato strong { color: var(--ff-acento); }

.bc-tema-deporte .bc-help-btn {
  background: var(--ff-panel);
  color: var(--ff-acento);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-help-btn:hover,
body:has(.bc-tema-deporte) .bc-help-btn:hover {
  background: rgba(212, 175, 55, 0.16);
  color: var(--ff-acento);
}
body:has(.bc-tema-deporte) .bc-help-btn,
body:has(.bc-tema-deporte) .bc-help-btn--float,
body:has(.bc-tema-deporte) .bc-guia-launch {
  background: var(--ff-panel);
  color: var(--ff-acento);
  border-color: rgba(212, 175, 55, 0.38);
}
body:has(.bc-tema-deporte) .bc-guia-panel {
  background: var(--ff-panel);
  color: var(--ff-texto);
  border-color: rgba(212, 175, 55, 0.38);
}

/* Libro de banco: el CSS de finanzas es de tema claro; aquí el texto iba casi negro sobre navy. */
.bc-tema-deporte .bc-libro-toolbar {
  background: var(--ff-panel);
  border-color: var(--ff-line);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}
.bc-tema-deporte .bc-libro-campo { color: var(--ff-suave); }
.bc-tema-deporte .bc-libro-campo select,
.bc-tema-deporte .bc-libro-campo input,
.bc-tema-deporte .bc-libro-campo select:focus,
.bc-tema-deporte .bc-libro-campo input:focus,
.bc-tema-deporte .bc-libro-campo select:focus-visible,
.bc-tema-deporte .bc-libro-campo input:focus-visible {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border-color: var(--ff-line);
  color-scheme: dark;
  box-shadow: none;
}
.bc-tema-deporte .bc-libro-campo select option {
  background: var(--ff-ink);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-libro-saldo {
  background: rgba(21, 122, 60, 0.18);
  border-color: rgba(125, 255, 176, 0.28);
}
.bc-tema-deporte .bc-libro-saldo-muted {
  background: var(--ff-ink);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-libro-saldo span { color: var(--ff-suave); }
.bc-tema-deporte .bc-libro-saldo strong,
.bc-tema-deporte .bc-libro-saldo-muted strong { color: #7dffb0; }
.bc-tema-deporte .bc-libro-hint,
.bc-tema-deporte .bc-finanzas-pie,
.bc-tema-deporte .bc-finanzas-nota { color: var(--ff-suave); }
.bc-tema-deporte .bc-finanzas-vacio h3 { color: var(--ff-acento); }
.bc-tema-deporte .bc-finanzas-vacio p { color: var(--ff-suave); }

.bc-tema-deporte .bc-tabla .bc-finanzas-fecha { color: #d5e2f2; }
.bc-tema-deporte .bc-tabla .bc-finanzas-glosa strong,
.bc-tema-deporte .bc-tabla td strong { color: var(--ff-texto); }
.bc-tema-deporte .bc-tabla .bc-finanzas-meta { color: var(--ff-suave); }
.bc-tema-deporte .bc-tabla .bc-finanzas-dash { color: #8aa0b8; }
.bc-tema-deporte .bc-tabla .bc-finanzas-monto-in { color: #7dffb0; }
.bc-tema-deporte .bc-tabla .bc-finanzas-monto-out { color: #ffc14d; }
.bc-tema-deporte .bc-tabla .bc-cartola-saldo { color: var(--ff-texto); }
.bc-tema-deporte .bc-tabla .bc-finanzas-comprobante { color: var(--ff-acento); }
.bc-tema-deporte .bc-tabla td { color: var(--ff-texto); }

.bc-tema-deporte .bc-finanzas-mov-kicker,
.bc-tema-deporte .bc-finanzas-mov-fecha { color: var(--ff-suave); }
.bc-tema-deporte .bc-finanzas-mov-glosa { color: var(--ff-texto); }
.bc-tema-deporte .bc-finanzas-mov-in .bc-finanzas-mov-monto { color: #7dffb0; }
.bc-tema-deporte .bc-finanzas-mov-out .bc-finanzas-mov-monto { color: #ffc14d; }
.bc-tema-deporte .bc-finanzas-mov-item {
  background: var(--ff-ink);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-finanzas-mov-item dt { color: var(--ff-suave); }
.bc-tema-deporte .bc-finanzas-mov-item dd { color: var(--ff-texto); }
.bc-tema-deporte .bc-finanzas-mov-saldo {
  background: var(--ff-ink);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-finanzas-mov-saldo span,
.bc-tema-deporte .bc-finanzas-mov-saldo small { color: var(--ff-suave); }
.bc-tema-deporte .bc-finanzas-mov-saldo strong { color: var(--ff-texto); }

/* Consultas: el hilo venía en tarjeta clara con el texto claro del tema. */
.bc-tema-deporte .bc-tickets-mensaje {
  background: var(--ff-ink);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-tickets-mensaje-admin {
  background: rgba(212, 175, 55, 0.12);
  border-color: rgba(212, 175, 55, 0.45);
}
.bc-tema-deporte .bc-tickets-mensaje-autor,
.bc-tema-deporte .bc-tickets-mensaje-cuerpo { color: var(--ff-texto); }
.bc-tema-deporte .bc-tickets-mensaje-head,
.bc-tema-deporte .bc-tickets-mensaje-rol,
.bc-tema-deporte .bc-tickets-mensaje-fecha { color: var(--ff-suave); }
.bc-tema-deporte .bc-tickets-doc,
.bc-tema-deporte .bc-tickets-imagen-btn {
  background: var(--ff-ink);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-tickets-doc-nombre a { color: var(--ff-acento); }
.bc-tema-deporte .bc-tickets-imagen-nombre { color: var(--ff-suave); }

/* Textos del tema claro (azul marino) sobre el fondo oscuro del portal. */
.bc-tema-deporte .bc-main a,
.bc-tema-deporte .bc-main a:visited {
  color: var(--ff-acento);
}
.bc-tema-deporte .bc-colegio strong { color: var(--ff-texto); }
.bc-tema-deporte .bc-user-head strong,
.bc-tema-deporte .bc-user-drop button {
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-user-drop #salir,
.bc-tema-deporte .bc-user-drop #salir-drawer { color: #ffb4a2; }

.bc-tema-deporte .bc-proyectos-seccion,
.bc-tema-deporte .bc-proyectos-tl-item,
.bc-tema-deporte .bc-bolsa-card,
.bc-tema-deporte .bc-bolsa-panel,
.bc-tema-deporte .bc-bolsa-post,
.bc-tema-deporte .bc-adm-estructura-miembro,
.bc-tema-deporte .bc-modal.bc-adm-estructura-modal {
  background: var(--ff-panel);
  color: var(--ff-texto);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-proyectos-seccion-head,
.bc-tema-deporte .bc-proyectos-descripcion,
.bc-tema-deporte .bc-proyectos-tl-autor,
.bc-tema-deporte .bc-proyectos-tl-body,
.bc-tema-deporte .bc-proyectos-eval-num,
.bc-tema-deporte .bc-proyectos-vacio h3,
.bc-tema-deporte .bc-bolsa-card-title,
.bc-tema-deporte .bc-bolsa-prose,
.bc-tema-deporte .bc-bolsa-dato dd,
.bc-tema-deporte .bc-bolsa-panel-title,
.bc-tema-deporte .bc-bolsa-post-nombre,
.bc-tema-deporte .bc-bolsa-post-msg,
.bc-tema-deporte .bc-bolsa-post-exp,
.bc-tema-deporte .bc-adm-estructura-modal-titulo,
.bc-tema-deporte .bc-adm-estructura-modal h2.bc-adm-estructura-modal-titulo,
.bc-tema-deporte .bc-adm-estructura-check,
.bc-tema-deporte .bc-adm-estructura-check span,
.bc-tema-deporte .bc-adm-estructura-radios label,
.bc-tema-deporte .bc-adm-estructura-form .bc-label {
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-proyectos-icono,
.bc-tema-deporte .bc-bolsa-dato dd a,
.bc-tema-deporte .bc-proyectos-ayuda,
.bc-tema-deporte .bc-proyectos-creado,
.bc-tema-deporte .bc-proyectos-tl-head,
.bc-tema-deporte .bc-bolsa-dato dt,
.bc-tema-deporte .bc-bolsa-panel-lead,
.bc-tema-deporte .bc-bolsa-panel-vacio,
.bc-tema-deporte .bc-bolsa-post-meta,
.bc-tema-deporte .bc-adm-estructura-muted,
.bc-tema-deporte .bc-adm-estructura-miembro-cargo,
.bc-tema-deporte .bc-adm-estructura-miembro-desde,
.bc-tema-deporte .bc-adm-estructura-sin,
.bc-tema-deporte .bc-adm-estructura-vacio p,
.bc-tema-deporte .bc-adm-estructura-vacio-inline {
  color: var(--ff-suave);
}
.bc-tema-deporte .bc-adm-estructura-form input:not([type="checkbox"]):not([type="radio"]),
.bc-tema-deporte .bc-adm-estructura-form select,
.bc-tema-deporte .bc-adm-estructura-form textarea,
.bc-tema-deporte .bc-adm-estructura-form input:focus,
.bc-tema-deporte .bc-adm-estructura-form select:focus,
.bc-tema-deporte .bc-adm-estructura-form textarea:focus {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border-color: var(--ff-line);
  box-shadow: none;
}
.bc-tema-deporte .bc-transparencia-acciones button,
.bc-tema-deporte .bc-noticias-tabla-acciones button {
  background: var(--ff-panel);
  color: var(--ff-acento);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-noticias-audiencia-opcion,
.bc-tema-deporte .bc-reuniones-audiencia-op,
.bc-tema-deporte .bc-encuestas-audiencia-op,
.bc-tema-deporte .bc-bolsa-audiencia-op {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-noticias-audiencia-opcion strong,
.bc-tema-deporte .bc-reuniones-audiencia-op,
.bc-tema-deporte .bc-encuestas-audiencia-op,
.bc-tema-deporte .bc-bolsa-audiencia-op { color: var(--ff-texto); }
.bc-tema-deporte .bc-noticias-audiencia-hint { color: var(--ff-suave); }
.bc-tema-deporte .bc-reuniones-audiencia-op:has(input:checked),
.bc-tema-deporte .bc-encuestas-audiencia-op:has(input:checked),
.bc-tema-deporte .bc-noticias-audiencia-opcion:has(input:checked),
.bc-tema-deporte .bc-bolsa-audiencia-op:has(input:checked) {
  background: rgba(212, 175, 55, 0.16);
  border-color: var(--ff-acento);
  color: var(--ff-texto);
}
.bc-tema-deporte .bc-extracto,
.bc-tema-deporte .bc-noticias-cuerpo { color: var(--ff-texto); }
.bc-tema-deporte .bc-noticias-voto {
  background: var(--ff-ink);
  color: var(--ff-texto);
  border-color: var(--ff-line);
}
.bc-tema-deporte .bc-noticias-voto-kicker,
.bc-tema-deporte .bc-noticias-voto-stats strong,
.bc-tema-deporte .bc-noticias-voto-filas strong { color: var(--ff-acento); }
.bc-tema-deporte .bc-noticias-voto-intro,
.bc-tema-deporte .bc-noticias-voto-filas span { color: var(--ff-texto); }
.bc-tema-deporte .bc-noticias-voto-stats span,
.bc-tema-deporte .bc-noticias-voto-pie { color: var(--ff-suave); }
.bc-tema-deporte .bc-noticias-voto-stats li,
.bc-tema-deporte .bc-noticias-voto-filas li {
  background: var(--ff-panel);
  color: var(--ff-texto);
  border-color: var(--ff-line);
}
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card,
html.bc-tono-claro .bc-tema-deporte .bc-stack > .bc-ficha,
html.bc-tono-claro .bc-tema-deporte .bc-alerta-info,
html.bc-tono-claro .bc-tema-deporte .bc-aviso {
  background: #fff;
  color: #1c1917;
  border-color: rgba(28, 25, 23, 0.12);
}
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card h3,
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card .bc-extracto,
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card .bc-meta,
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card .bc-meta span,
html.bc-tono-claro .bc-tema-deporte .bc-noticias-cuerpo,
html.bc-tono-claro .bc-tema-deporte .bc-stack > .bc-ficha,
html.bc-tono-claro .bc-tema-deporte .bc-stack > .bc-ficha p,
html.bc-tono-claro .bc-tema-deporte .bc-stack > .bc-ficha .bc-seccion,
html.bc-tono-claro .bc-tema-deporte .bc-lead,
html.bc-tono-claro .bc-tema-deporte .bc-alerta-info,
html.bc-tono-claro .bc-tema-deporte .bc-aviso {
  color: #1c1917;
}
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card .bc-meta,
html.bc-tono-claro .bc-tema-deporte .bc-noticias-card .bc-eval,
html.bc-tono-claro .bc-tema-deporte .bc-eval {
  color: #3f3a34;
}
html.bc-tono-claro .bc-tema-deporte .bc-origen {
  background: #fff8e1;
  color: #3f2e06;
  border: 1px solid rgba(92, 67, 8, 0.35);
}
html.bc-tono-claro .bc-tema-deporte .bc-badge-ok { background: #d1fae5; color: #065f46; border-color: #6ee7b7; }
html.bc-tono-claro .bc-tema-deporte .bc-badge-aviso { background: #fef3c7; color: #92400e; border-color: #fcd34d; }
html.bc-tono-claro .bc-tema-deporte .bc-badge-mal { background: #fee2e2; color: #991b1b; border-color: #fca5a5; }
html.bc-tono-claro .bc-tema-deporte .bc-badge-neutro,
html.bc-tono-claro .bc-tema-deporte .bc-badge-info { background: #fff; color: #1c1917; border-color: rgba(28, 25, 23, 0.16); }
body:has(.bc-tema-deporte) .bc-guia-msgs { background: var(--ff-ink); }
body:has(.bc-tema-deporte) .bc-guia-msg--bot {
  background: var(--ff-panel);
  color: var(--ff-texto);
  border-color: var(--ff-line);
}
body:has(.bc-tema-deporte) .bc-guia-chip {
  background: var(--ff-panel);
  color: var(--ff-acento);
  border-color: var(--ff-line);
}
body:has(.bc-tema-deporte) .bc-guia-map,
body:has(.bc-tema-deporte) .bc-guia-map span,
body:has(.bc-tema-deporte) .bc-guia-steps-label,
body:has(.bc-tema-deporte) .bc-help-modal-panel,
body:has(.bc-tema-deporte) .bc-help-body,
body:has(.bc-tema-deporte) .bc-help-section p,
body:has(.bc-tema-deporte) .bc-help-section h3,
body:has(.bc-tema-deporte) .bc-help-modal-titulo,
body:has(.bc-tema-deporte) .bc-help-resumen {
  color: var(--ff-texto);
}
body:has(.bc-tema-deporte) .bc-help-modal-panel {
  background: var(--ff-panel);
  border: 1px solid rgba(212, 175, 55, 0.38);
}
body:has(.bc-tema-deporte) .bc-help-resumen {
  background: rgba(212, 175, 55, 0.12);
  border-color: rgba(212, 175, 55, 0.38);
}
body:has(.bc-tema-deporte) .bc-guia-paraque {
  background: rgba(212, 175, 55, 0.12);
  border-color: rgba(212, 175, 55, 0.38);
  color: var(--ff-texto);
}
