/* BossEdge sports board
   Capa final de presentación. Tipografía, líneas y jerarquía.
   Se carga después de design_system / ui_density / hojas de página. */

:root {
  --board-line: rgba(248, 250, 252, 0.08);
  --board-line-strong: rgba(248, 250, 252, 0.14);
  --board-ink: #f8fafc;
  --board-soft: #a1a1aa;
  --board-muted: #71717a;
  --board-surface: #0f0f14;
  --board-bg: #09090b;
}

/* —— Fondo plano. Sin observatorio. —— */
body,
body.page-dashboard,
body.page-daily-picks,
body.explain-page,
body.page-subscribe,
body.page-landing,
body.page-jornada-results,
body.page-recap,
body.page-performance,
body.page-copilot,
body.page-nfl-hub {
  background: var(--board-bg);
  background-image: none;
}

body::before,
body::after {
  content: none;
  display: none;
  background: none;
}

.bg-gradient,
.landing-bg,
.landing-bg__layer {
  display: none !important;
}

.app-header,
.topbar,
.auth-strip,
.landing-topbar {
  background: var(--board-bg);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

.app-header {
  border-bottom: 1px solid var(--board-line);
}

/* —— Chrome: marca + secciones + deportes —— */
@media (min-width: 901px) {
  .brand-page {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .page-intro {
    display: none;
  }
}

.site-nav-primary {
  gap: 0.15rem;
  padding: 0 0 0.15rem;
  border: 0;
  background: transparent;
}

.site-nav-primary-link {
  border-radius: 0;
  background: transparent;
  color: var(--board-soft);
  font-weight: 500;
  letter-spacing: -0.01em;
  border-bottom: 2px solid transparent;
  padding: 0.55rem 0.75rem 0.45rem;
}

.site-nav-primary-icon {
  opacity: 0.7;
}

.site-nav-primary-link:hover {
  background: transparent;
  color: var(--board-ink);
}

.site-nav-primary-link.is-active {
  background: transparent;
  color: var(--board-ink);
  border-bottom-color: #7c3aed;
  box-shadow: none;
}

.site-nav-primary-link.is-active .site-nav-primary-icon {
  color: #a78bfa;
}

.sport-explorer {
  display: block;
  border-top: 1px solid var(--board-line);
  background: var(--board-bg);
}

.sport-explorer-inner {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
}

.sport-explorer-inner::-webkit-scrollbar {
  display: none;
}

.sport-explorer-all,
.sport-explorer-pill,
.sport-explorer-trigger,
.sport-explorer-featured {
  border: 0;
  border-radius: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  box-shadow: none;
  color: var(--board-muted);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.7rem 0.85rem 0.55rem;
}

.sport-explorer-pill-icon,
.sport-explorer-all-icon,
.sport-section-icon,
.daily-sport-icon,
.sport-explorer-featured > span[aria-hidden="true"],
.mobile-sports-group-title > span[aria-hidden="true"],
.results-sport-badge {
  /* el texto de la liga identifica el deporte */
}

.sport-explorer-pill-icon,
.sport-explorer-all-icon,
.sport-section-icon,
.daily-sport-icon,
.results-sport-badge {
  display: none;
}

.sport-explorer-all:hover,
.sport-explorer-pill:hover,
.sport-explorer-trigger:hover {
  background: transparent;
  color: var(--board-ink);
}

.sport-explorer-all.is-active,
.sport-explorer-pill.is-active,
.sport-explorer-group.is-active .sport-explorer-trigger {
  background: transparent;
  color: var(--board-ink);
  border-bottom-color: #7c3aed;
  box-shadow: none;
}

@media (max-width: 900px) {
  .mobile-tab-bar {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    background: #09090b;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .mobile-tab-sports {
    display: none;
  }

  .brand-page h1 {
    font-size: 0.95rem;
  }
}

.btn-primary,
.btn-primary:hover,
.ghost-link-accent {
  box-shadow: none;
}

.btn-primary:hover {
  background: #8b5cf6;
}

/* —— Feed de partidos —— */
.page-predictions-feed .predictions-feed-layout,
.page-predictions-feed .dashboard-content,
.page-predictions-feed .dashboard-main {
  display: block;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.page-predictions-feed .predictions-feed-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  padding: 0.45rem 0 0;
  margin: 0;
  border: 0;
  background: transparent;
}

.page-predictions-feed .predictions-feed-head-copy {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.page-predictions-feed .predictions-feed-head .btn-primary,
.page-predictions-feed .predictions-feed-head .ghost-link {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #a78bfa;
  padding: 0.2rem 0;
  font-weight: 600;
}

.page-predictions-feed .predictions-filters-bar,
.page-predictions-feed .predictions-filters-bar .controls {
  position: static;
  margin: 0 0 0.75rem;
  padding: 0 0 0.65rem;
  border: 0;
  border-bottom: 1px solid var(--board-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.page-predictions-feed .sport-section {
  margin: 0 0 1.25rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.page-predictions-feed .sport-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 0.85rem 0 0.35rem;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--board-line-strong);
  background: transparent;
}

.page-predictions-feed .sport-section-title {
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--board-soft);
}

.page-predictions-feed .sport-section-sub,
.page-predictions-feed .league-block-meta,
.page-predictions-feed .jornada-block-sub,
.page-predictions-feed .league-toggle-text,
.page-predictions-feed .jornada-toggle-text,
.page-predictions-feed .pill-league-code {
  color: var(--board-muted);
}

.page-predictions-feed .league-block,
.page-predictions-feed .jornada-block,
.page-predictions-feed .league-block-body,
.page-predictions-feed .jornada-block-body {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.page-predictions-feed .league-block > summary.league-block-head,
.page-predictions-feed .jornada-block > summary.jornada-block-head {
  padding: 0.55rem 0 0.2rem;
  margin: 0;
  border: 0;
  background: transparent;
  list-style: none;
}

.page-predictions-feed .league-block-title,
.page-predictions-feed .jornada-block-title {
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--board-ink);
}

.page-predictions-feed .predictions-feed-list,
.page-predictions-feed .featured-predictions-grid,
.league-grid.featured-predictions-grid,
.page-daily-picks .featured-predictions-grid,
.page-daily-picks .daily-picks-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.board-group-line {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.35rem 1rem;
  margin: 0.85rem 0 0;
  padding: 0.35rem 0 0.15rem;
}

.board-group-title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--board-ink);
}

.board-group-meta {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: baseline;
  color: var(--board-muted);
  font-family: var(--font-data);
  font-size: 0.78rem;
}

.page-predictions-feed .filter-chip,
.page-predictions-feed .filter-chip-more {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--board-muted);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding: 0.2rem 0.7rem 0.2rem 0;
}

.page-predictions-feed .filter-chip.is-active,
.page-predictions-feed .filter-chip-more[aria-expanded="true"] {
  color: var(--board-ink);
  background: transparent;
  box-shadow: inset 0 -1px 0 #7c3aed;
}

.page-predictions-feed .filter-chip-count,
.page-predictions-feed .filter-status {
  color: var(--board-muted);
  font-family: var(--font-data);
}

.page-predictions-feed .sport-section-sub,
.page-predictions-feed .sport-section-parlay-link {
  display: none;
}

/* —— Match panel —— */
.match-card.match-panel,
.predictions-feed-list .match-card,
.league-grid .match-card,
.featured-predictions-grid .match-card,
.daily-pick-card.board-row {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  height: auto;
  margin: 0;
  padding: 1rem 0 1.15rem;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
  transform: none;
}

.match-card:hover,
.match-card.match-panel:hover,
.daily-pick-card.board-row:hover {
  background: transparent;
  border-color: var(--board-line);
  box-shadow: none;
  transform: none;
}

.match-card.prediction-hero-strong_pick,
.prediction-hero-strong_pick,
.match-card-free {
  box-shadow: none;
}

.match-head {
  gap: 0.7rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--board-line);
}

.match-meta-line {
  font-family: var(--font-ui);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.match-meta-league {
  color: var(--board-soft);
  font-weight: 650;
}

.match-meta-time {
  font-family: var(--font-data);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
  text-transform: none;
  color: var(--board-soft);
}

.match-phase-badge,
.pill-phase {
  border-radius: 0;
  background: transparent;
  border: 0;
  padding: 0;
  font-size: 0.68rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  box-shadow: none;
}

.match-phase-live,
.pill-phase-live {
  color: #f87171;
}

.match-phase-upcoming,
.pill-phase-upcoming {
  color: var(--board-muted);
}

.match-phase-finished,
.pill-phase-finished {
  color: #94a3b8;
}

.match-card .match-teams-row,
.daily-pick-card .match-teams-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 0.75rem 1.25rem;
  margin: 0.35rem 0 0.55rem;
}

.match-card .team-name-row,
.daily-pick-card .team-name-row {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin: 0;
}

.match-card .team.away .team-name-row,
.daily-pick-card .team.away .team-name-row {
  flex-direction: row-reverse;
  text-align: right;
}

.match-card .team-name,
.daily-pick-card .team-name {
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: var(--board-ink);
}

.match-card .team.is-pick-side .team-name,
.daily-pick-card .team.is-pick-side .team-name {
  font-weight: 700;
  color: #f8fafc;
}

.match-card .team.is-pick-side .team-name-row,
.daily-pick-card .team.is-pick-side .team-name-row {
  box-shadow: inset 0 -2px 0 #7c3aed;
}

.match-card .team-logo,
.daily-pick-card .team-logo {
  width: 52px;
  height: 52px;
  object-fit: contain;
  flex: 0 0 auto;
}

.match-vs-label {
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.match-score-inline {
  font-family: var(--font-data);
  font-size: 1.15rem;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.match-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  padding-top: 0.75rem;
}

.prediction-hero {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.2rem;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.match-pick-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.prediction-hero-kicker,
.bet-pick-kicker,
.explain-plain-kicker,
.board-kicker {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 650;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #a78bfa;
}

.prediction-hero-kicker::before,
.bet-pick-kicker::before,
.hero-kicker::before,
.section-eyebrow::before,
.explain-kicker::before {
  content: none;
  display: none;
  box-shadow: none;
}

.prediction-hero-label {
  margin: 0.15rem 0 0;
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.15;
  color: var(--board-ink);
}

.match-pick-market {
  margin: 0;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--board-soft);
}

.prediction-hero-pct,
.daily-pick-pct,
.bet-pick-metrics dd,
.prob-triple-pct,
.results-board-goals {
  font-family: var(--font-data);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.03em;
}

.prediction-hero-pct,
.board-pick-pct {
  margin: 0.2rem 0 0;
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1;
  color: var(--board-ink);
}

.board-pick-compare {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.4rem;
  margin: 0.4rem 0 0;
  color: var(--board-soft);
  font-size: 0.82rem;
}

.board-pick-compare .num {
  font-family: var(--font-data);
  font-variant-numeric: tabular-nums;
  color: var(--board-ink);
}

.board-pick-compare .sep {
  color: var(--board-muted);
}

.board-pick-tier {
  margin: 0.35rem 0 0;
}

.pick-meter {
  height: 5px;
  margin: 0.45rem 0 0.15rem;
  background: rgba(248, 250, 252, 0.08);
}

.pick-meter > span {
  display: block;
  height: 100%;
  width: var(--w, 0%);
  max-width: 100%;
  background: #7c3aed;
}

.pick-compare {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0.55rem 0 0;
}

.pick-compare div {
  min-width: 0;
}

.pick-compare dt {
  margin: 0;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.pick-compare dd {
  margin: 0.1rem 0 0;
  font-family: var(--font-data);
  font-size: 0.95rem;
  font-variant-numeric: tabular-nums;
  color: var(--board-ink);
}

.prediction-hero-side {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.75rem;
  margin-top: 0.35rem;
}

.prediction-hero-edge {
  font-family: var(--font-data);
  font-size: 0.82rem;
}

.pill-bet-tier,
.pill-tier,
.pick-tier,
.pill-value-signal {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 0.68rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-soft);
}

.pill-bet-tier::before,
.pill-tier::before,
.pick-tier::before,
.pill-value-signal::before {
  content: "";
  width: 6px;
  height: 6px;
  background: currentColor;
  box-shadow: none;
}

.pill-bet-tier-strong_pick,
.pick-tier-strong_pick,
.pill-tier-strong_pick {
  color: #a78bfa;
}

.pill-bet-tier-valid_pick,
.pick-tier-valid_pick,
.pill-tier-valid_pick {
  color: #c4b5fd;
}

.pill-bet-tier-lean,
.pick-tier-lean,
.pill-tier-lean {
  color: #fbbf24;
}

.pill-bet-tier-no_bet,
.pick-tier-no_bet,
.pill-tier-no_bet,
.pick-tier-no_bet {
  color: var(--board-muted);
}

.pick-tier-value_signal,
.pill-value-signal {
  color: #22d3ee;
}

.prediction-why {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  margin: 0.15rem 0 0;
  padding: 0;
  list-style: none;
}

.prediction-why-item {
  color: var(--board-soft);
  font-size: 0.82rem;
  line-height: 1.35;
}

.prediction-why-mark {
  background: #7c3aed;
  box-shadow: none;
}

.prob-mini {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem 1.1rem;
  margin: 0;
  padding: 0.35rem 0 0;
  border: 0;
  background: transparent;
}

.prob-mini-cell {
  display: inline-flex;
  align-items: baseline;
  gap: 0.35rem;
  padding: 0;
  border: 0;
  background: transparent;
}

.prob-mini-key {
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  color: var(--board-muted);
}

.prob-mini-pct {
  font-family: var(--font-data);
  font-size: 0.85rem;
  color: var(--board-soft);
}

.prob-mini-cell.is-pick .prob-mini-pct {
  color: var(--board-ink);
}

.match-more {
  margin: 0;
  border-top: 1px solid var(--board-line);
}

.match-more summary {
  cursor: pointer;
  padding: 0.45rem 0;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--board-muted);
  list-style: none;
}

.match-more summary::-webkit-details-marker {
  display: none;
}

.match-more-body {
  padding: 0 0 0.35rem;
}

.markets-preview {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.markets-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 1rem;
  margin: 0.25rem 0 0;
  padding: 0;
  list-style: none;
}

.markets-preview-list li {
  display: flex;
  gap: 0.4rem;
  font-size: 0.8rem;
  color: var(--board-soft);
}

.markets-preview-list strong {
  font-family: var(--font-data);
  font-weight: 500;
  color: var(--board-ink);
}

.match-card-foot {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: auto;
  padding-top: 0.35rem;
}

.match-card .explain-link {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0.25rem 0;
  color: #a78bfa;
  font-weight: 600;
  box-shadow: none;
}

.match-card .explain-link:hover {
  color: #c4b5fd;
  background: transparent;
}

@media (max-width: 720px) {
  .brand-page,
  .page-intro {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .match-card .match-teams-row,
  .daily-pick-card .match-teams-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45rem;
  }

  .match-card .team.away .team-name-row,
  .daily-pick-card .team.away .team-name-row {
    flex-direction: row;
    text-align: left;
  }

  .match-card .team-logo,
  .daily-pick-card .team-logo {
    width: 42px;
    height: 42px;
  }

  .match-card .team-name,
  .daily-pick-card .team-name {
    font-size: 1.05rem;
  }

  .match-score-block {
    padding: 0.1rem 0;
  }

  .prediction-hero-label {
    font-size: 1.2rem;
  }

  .prediction-hero-pct,
  .board-pick-pct {
    font-size: 1.25rem;
  }

  .match-card.match-panel,
  .predictions-feed-list .match-card,
  .daily-pick-card.board-row {
    padding: 0.9rem 0 1rem;
  }

  .page-daily-picks .today-summary h2,
  .page-daily-picks .today-summary .board-kicker {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
  }
}

/* —— Picks del día —— */
.page-daily-picks .daily-picks-main {
  gap: 1.25rem;
  max-width: 1100px;
}

.page-daily-picks .today-summary { order: 1; }
.page-daily-picks .daily-picks-controls { order: 2; }
.page-daily-picks .daily-featured-wrap { order: 3; }
.page-daily-picks .content-empty,
.page-daily-picks .daily-lane { order: 4; }
.page-daily-picks .daily-parlays-complement { order: 5; }
.page-daily-picks .daily-apuesta70-owner { order: 6; }
.page-daily-picks .referral-invite { order: 7; }

.page-daily-picks .panel,
.page-daily-picks .daily-lane,
.page-daily-picks .featured-predictions,
.page-daily-picks .daily-picks-controls {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}

.today-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid var(--board-line-strong);
}

.today-summary h2 {
  margin: 0.15rem 0 0;
  font-size: 1.55rem;
  letter-spacing: -0.03em;
}

.today-summary-date {
  margin: 0.2rem 0 0;
  color: var(--board-muted);
  font-family: var(--font-data);
  font-size: 0.85rem;
}

.today-summary-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem 1.25rem;
  margin: 0;
}

.today-summary-stats div {
  min-width: 4.5rem;
}

.today-summary-stats dt {
  margin: 0;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.today-summary-stats dd {
  margin: 0.1rem 0 0;
  font-family: var(--font-data);
  font-size: 1.35rem;
  font-variant-numeric: tabular-nums;
  color: var(--board-ink);
}

.page-daily-picks .daily-picks-summary .callout {
  background: transparent;
  border: 0;
  padding: 0;
  color: var(--board-soft);
}

.page-daily-picks .board-section-label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--board-soft);
}

.page-daily-picks .daily-lane-head h2,
.page-daily-picks .featured-predictions-head .section-title,
.page-daily-picks .daily-parlay-head h2 {
  font-size: 1.05rem;
  letter-spacing: -0.02em;
}

.page-daily-picks .daily-picks-list,
.page-daily-picks .featured-predictions-grid {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.daily-pick-card {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 0 1.1rem;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
}

.page-daily-picks .today-summary .board-kicker {
  display: none;
}

.daily-pick-card .prediction-lock {
  grid-column: 1 / -1;
}

.daily-pick-match {
  margin: 0.15rem 0 0;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.daily-pick-choice {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.15rem;
  margin: 0;
}

.daily-pick-choice-label {
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.daily-pick-choice strong,
.daily-pick-pct {
  font-family: var(--font-data);
  font-size: 1.25rem;
  font-weight: 500;
}

.daily-pick-time,
.daily-pick-foot-meta {
  color: var(--board-muted);
  font-size: 0.75rem;
}

.page-daily-picks .daily-parlay-suggestion,
.page-daily-picks .daily-dual-combinations {
  margin-top: 0.5rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--board-line-strong);
}

.parlay-card,
.daily-parlay-card {
  padding: 0.7rem 0.8rem;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
}

.parlay-card-head {
  display: flex;
  align-items: baseline;
  gap: 0.6rem;
  margin-bottom: 0.25rem;
}

.parlay-card-head h3,
.parlay-card-head h4 {
  margin: 0;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--board-soft);
}

.parlay-stats {
  margin: 0 0 0.35rem;
  font-size: 0.82rem;
  color: var(--board-soft);
}

.parlay-stats strong,
.parlay-leg-prob {
  font-family: var(--font-data);
  font-variant-numeric: tabular-nums;
  color: var(--board-ink);
}

.parlay-legs {
  margin: 0;
  padding: 0;
  list-style: none;
}

.parlay-leg {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.1rem 0.75rem;
  padding: 0.35rem 0;
  border-top: 1px solid var(--board-line);
}

.parlay-leg-teams {
  margin: 0;
  color: var(--board-muted);
  font-size: 0.75rem;
}

.parlay-leg-pick {
  margin: 0;
  font-weight: 600;
}

.parlay-leg-match {
  grid-column: 1 / -1;
  color: var(--board-muted);
  font-size: 0.72rem;
}

.parlay-intel {
  margin-top: 0.35rem;
}

.parlay-intel summary {
  cursor: pointer;
  color: var(--board-muted);
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

@media (max-width: 800px) {
  .daily-pick-card {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

/* —— Análisis —— */
.explain-page .explain-main {
  max-width: min(100% - 2rem, 46rem);
  padding-top: 0.5rem;
}

.explain-page .explain-article {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0 0 2rem;
}

.explain-page .explain-match {
  padding-bottom: 0.85rem;
  border-bottom: 1px solid var(--board-line-strong);
}

.explain-page .explain-title {
  margin: 0.2rem 0 0;
  font-size: clamp(1.6rem, 3vw, 2.15rem);
  letter-spacing: -0.035em;
  line-height: 1.1;
}

.explain-page .explain-vs {
  margin: 0 0.35rem;
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.explain-page .bet-pick {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.explain-page .bet-pick-label {
  font-size: 1.55rem;
  letter-spacing: -0.03em;
  margin: 0.2rem 0;
}

.explain-page .bet-pick-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0.75rem 0 0;
}

.explain-page .bet-pick-metric dt {
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.explain-page .bet-pick-metric dd {
  font-size: 1.35rem;
  margin: 0.1rem 0 0;
}

.explain-page .explain-why-block {
  padding: 1rem 0;
  border-bottom: 1px solid var(--board-line);
}

.explain-page .explain-plain-headline,
.explain-page .explain-plain-action-text {
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--board-ink);
}

.explain-page .explain-plain-why {
  margin: 0.4rem 0 0;
  padding-left: 1rem;
  color: var(--board-soft);
}

.explain-page .explain-probs,
.explain-page .explain-evidence,
.explain-page .explain-technical,
.explain-page .explain-why-block {
  padding: 1rem 0;
  border-bottom: 1px solid var(--board-line);
  background: transparent;
}

.explain-page .explain-probs-context .prob-triple-pct {
  font-size: 1rem;
  color: var(--board-soft);
}

.explain-page .explain-pick-block {
  padding: 0.85rem 0 0.35rem;
  border-bottom: 1px solid var(--board-line);
}

.explain-page .prob-triple {
  display: grid;
  gap: 0.65rem;
}

.explain-page .prob-triple-cell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.15rem 0.75rem;
  padding: 0;
  background: transparent;
  border: 0;
}

.explain-page .prob-triple-track {
  grid-column: 1 / -1;
  height: 4px;
  background: rgba(248, 250, 252, 0.08);
  border-radius: 0;
}

.explain-page .prob-triple-fill {
  display: block;
  height: 100%;
  width: var(--w, 0%);
  background: #7c3aed;
  box-shadow: none;
}

.explain-page .explain-secondary {
  margin-top: 0.5rem;
  background: transparent;
  border: 0;
}

.explain-page .explain-tabs {
  background: transparent;
  border-bottom: 1px solid var(--board-line);
  border-radius: 0;
}

.explain-page .explain-tab {
  border-radius: 0;
  background: transparent;
  border-bottom: 2px solid transparent;
}

.explain-page .explain-tab.is-active {
  color: var(--board-ink);
  border-bottom-color: #7c3aed;
  background: transparent;
}

.explain-page .explain-section {
  border-top: 1px solid var(--board-line);
  background: transparent;
}

.explain-page .explain-section-index {
  font-family: var(--font-data);
  color: var(--board-muted);
}

.explain-page .explain-sticky-summary {
  background: #09090b;
  border: 0;
  border-bottom: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
}

/* —— Resultados —— */
.page-jornada-results .results-card,
.page-jornada-results .results-controls,
.page-jornada-results .results-kpi-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.page-jornada-results .results-kpi-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  border-top: 1px solid var(--board-line);
  padding-top: 0.75rem;
}

.page-jornada-results .results-kpi-card-value {
  font-family: var(--font-data);
  font-size: 1.6rem;
}

.results-board-row {
  display: grid;
  grid-template-columns: minmax(14rem, 22rem) minmax(0, 1fr);
  gap: 0.75rem 1.25rem;
  align-items: start;
  padding: 0.7rem 0;
  margin: 0;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
}

.results-board-side {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
}

.results-board-side + .results-board-side {
  margin-top: 0.15rem;
}

.results-board-team {
  font-weight: 600;
  letter-spacing: -0.02em;
}

.results-board-goals {
  font-size: 1.15rem;
  font-weight: 500;
}

.results-board-kicker {
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--board-muted);
}

.results-board-row .pick-label {
  font-weight: 600;
}

.outcome-won {
  color: #2dd4bf;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

.outcome-lost {
  color: #f87171;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

.results-board-meta {
  grid-column: 1 / -1;
  color: var(--board-muted);
  font-size: 0.78rem;
}

.results-board-meta .market-model,
.results-board-meta .market-edge {
  font-family: var(--font-data);
}

@media (max-width: 760px) {
  .results-board-row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

/* —— Rendimiento —— */
.page-performance .perf-hero,
.page-performance .perf-shell section,
.page-performance .panel {
  background: transparent;
  box-shadow: none;
}

.page-performance .perf-hero {
  border-bottom: 1px solid var(--board-line-strong);
}

.page-performance .perf-kpi-value,
.page-performance .perf-stat-value,
.page-performance .perf-hero-primary strong {
  font-family: var(--font-data);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
}

.page-performance .perf-table {
  border-collapse: collapse;
}

.page-performance .perf-table th,
.page-performance .perf-table td {
  border-bottom: 1px solid var(--board-line);
  background: transparent;
}

.page-performance .perf-period-tab,
.page-performance .perf-dim-tab {
  border-radius: 0;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  box-shadow: none;
}

.page-performance .perf-period-tab.is-active,
.page-performance .perf-dim-tab.is-active,
.page-performance .perf-period-tab[aria-selected="true"],
.page-performance .perf-dim-tab[aria-selected="true"] {
  background: transparent;
  color: var(--board-ink);
  border-bottom-color: #7c3aed;
}

/* —— Revista —— */
.page-recap .recap-index,
.page-recap .recap-article {
  background: transparent;
}

.page-recap .recap-card,
.page-recap article.card {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--board-line);
  border-radius: 0;
  box-shadow: none;
}

.page-recap .recap-masthead h1,
.page-recap .recap-title {
  letter-spacing: -0.035em;
}

/* —— Auth / suscripción —— */
.page-subscribe .subscribe-card,
.page-subscribe .subscribe-wrap {
  background: transparent;
  box-shadow: none;
}

.page-subscribe .subscribe-card {
  border: 1px solid var(--board-line);
  border-radius: 2px;
  background: var(--board-surface);
}

.page-subscribe .subscribe-brand h1,
.page-subscribe .subscribe-price .amount {
  letter-spacing: -0.03em;
}

/* —— NFL / copiloto: menos panel flotante —— */
.page-nfl-hub .nfl-hub-pick,
.page-nfl-hub .nfl-division,
.page-copilot .copilot-main {
  background: var(--board-surface);
  border: 1px solid var(--board-line);
  border-radius: 2px;
  box-shadow: none;
}

.page-copilot .copilot-main {
  max-width: 42rem;
  margin: 1rem auto;
}
