/**
 * nfl-market-base.css — the MARKETPLACE-FAMILY BASELINE (v0.44.7b).
 *
 * The six classes both marketplace halves share:
 *   nfl-market-container · -title · -desc · -breadcrumb · -stats-card · -stats-table
 *
 * WHY THIS IS ITS OWN FILE (auditor ruling, v0.44.7b Q1b): v0.44.7a put these
 * rules in nfl-algo-detail.css, which only /algorithm/{id}/ enqueues — so
 * /market/ rendered them correctly only if it happened to borrow the detail
 * page's stylesheet. That is implicit coupling that breaks silently the moment
 * someone splits or renames that file. The baseline is now explicit: ONE
 * source, enqueued by BOTH halves (Marketplace::enqueue_assets), and available
 * to any future surface that wants the family look.
 *
 * KEEP THESE RULES STRUCTURAL — geometry, table rhythm, type scale. Every
 * surface that loads this also loads its own sheet on top; opinionated
 * treatment belongs there, not here. /compare/ co-classes onto this markup
 * (v0.44.6) and carries its own rule for every shared class it uses, so this
 * baseline can never silently redefine that page.
 */

.nfl-market-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0.75rem 1rem 2.5rem;
  color: var(--nfl-text, #111827);
}

.nfl-market-container *,
.nfl-market-container *::before,
.nfl-market-container *::after {
  box-sizing: border-box;
}

.nfl-market-breadcrumb {
  margin: 0 0 10px;
  font-size: 0.9rem;
}

.nfl-market-breadcrumb a {
  color: var(--nfl-text-muted, #6b7280);
  text-decoration: none;
  font-weight: 600;
}

.nfl-market-breadcrumb a:hover { color: var(--nfl-accent, #2563eb); }

.nfl-market-title {
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  line-height: 1.15;
  letter-spacing: -0.015em;
  margin: 0 0 6px;
}

.nfl-market-desc {
  color: var(--nfl-text-muted, #6b7280);
  margin: 0 0 20px;
  max-width: 68ch;
}

/* The family's card + table rhythm. Structural on purpose — /compare/ and
   /market/ both inherit this and layer their own treatment over it. */
.nfl-market-stats-card {
  background: var(--nfl-card-bg, #fff);
  border: 1px solid var(--nfl-card-border, #e6e8ec);
  border-radius: var(--nfl-radius-card, 12px);
  padding: 18px 20px;
  margin: 0 0 16px;
}

.nfl-market-stats-table {
  width: 100%;
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
  font-size: 0.92rem;
}

.nfl-market-stats-table th,
.nfl-market-stats-table td {
  padding: 9px 12px;
  text-align: right;
  border-bottom: 1px solid var(--nfl-card-border, #e6e8ec);
  white-space: nowrap;
}

.nfl-market-stats-table th:first-child,
.nfl-market-stats-table td:first-child { text-align: left; }

.nfl-market-stats-table thead th {
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--nfl-text-muted, #6b7280);
  border-bottom-width: 2px;
}

.nfl-market-stats-table tbody tr:hover { background: var(--nfl-page-bg, #fafafa); }


/* -------------------------------------------------------- responsive   -- */

@media (max-width: 560px) {
  .nfl-market-container { padding: 0.5rem 0.75rem 1.5rem; }
  .nfl-market-stats-table { font-size: 0.86rem; }
  .nfl-market-stats-table th,
  .nfl-market-stats-table td { padding: 8px 9px; }
}
