/* Home — the hero board (next offs) and the bento below it, from mockup B. */

/* ── board rows: the next offs ───────────────────────────────────────── */
.board--hero { padding-block: var(--space-32) var(--space-40); }
.board__count { display: grid; gap: 6px; justify-items: start; }
.board__count-label { font: 600 var(--fs-micro)/1.4 var(--font-mono); letter-spacing: .2em; text-transform: uppercase; color: var(--color-board-ink-2); }
@media (min-width: 900px) { .board__count { justify-items: end; } }

.board__rows { border-top: 1px solid var(--color-board-line); margin-top: var(--space-24); }
.board__row {
  display: grid; grid-template-columns: auto 1fr auto; gap: 8px 14px; align-items: center;
  padding: 12px 0; min-height: 64px; border-bottom: 1px solid var(--color-board-line);
  color: inherit; text-decoration: none;
}
.board__row > * { min-width: 0; }
.board__row:hover { background: var(--color-board-2); }
.board__row .flap { font-size: 17px; }
.board__where { display: block; font: 600 22px/1 var(--font-display); text-transform: uppercase; letter-spacing: .02em; }
.board__race { display: block; margin-top: 3px; font-size: var(--fs-small); color: var(--color-board-ink-2); }
.board__fav { display: none; font-size: var(--fs-small); color: var(--color-board-ink-2); }
.board__fav b { color: var(--color-board-ink); font: 600 14px var(--font-mono); }
.board__row .status { font-size: 10.5px; padding: 0 7px; letter-spacing: .1em; }
.board__go { display: none; }
@media (min-width: 900px) {
  .board__row { grid-template-columns: 120px 1.3fr 1fr 130px 44px; gap: 18px; }
  .board__row .flap { font-size: 20px; }
  .board__where { font-size: 24px; }
  .board__fav { display: block; }
  .board__row .status { font-size: var(--fs-micro); padding: 0 10px; letter-spacing: .14em; }
  .board__go { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid var(--color-board-line); transition: background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease); }
  .board__go .icon { width: 18px; height: 18px; }
  .board__row:hover .board__go { background: var(--color-amber); color: var(--color-ink); border-color: var(--color-amber); transform: translateX(3px); }
}
.board__foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; margin-top: var(--space-16); font-size: var(--fs-small); color: var(--color-board-ink-2); }
.board__foot a { color: var(--color-amber); font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; min-height: 44px; }
.board__foot a:hover { text-decoration: underline; }

/* ── bento ───────────────────────────────────────────────────────────── */
.bento { display: grid; gap: 14px; padding-block: var(--space-32) var(--space-40); }
@media (min-width: 700px) { .bento { grid-template-columns: repeat(6, 1fr); } }
@media (min-width: 700px) {
  .t-race { grid-column: span 4; grid-row: span 2; }
  .t-slip { grid-column: span 2; grid-row: span 2; }
  .t-virtual, .t-results, .t-how { grid-column: span 2; }
  .t-rg, .t-op { grid-column: span 3; }
  .t-pay { grid-column: span 6; }
}
@media (min-width: 1100px) {
  .t-pay { grid-column: span 6; }
}

/* the featured race tile */
.t-race .runner { grid-template-columns: 34px 24px 1fr auto; }
.t-race .tile__head { flex-wrap: wrap; }
.t-race .chips { margin: 10px 0 6px; }

/* the slip tile mirrors the sheet: same markup, dark tile */
.t-slip .slip__title { color: var(--color-board-ink); }
.t-slip .slip__head { margin-bottom: var(--space-4); }

/* virtual tile */
.vcount { display: flex; align-items: center; gap: 12px; margin: 8px 0 12px; }
.vcount .flap__unit { display: none; }
.vcount__note { font-size: 13px; color: var(--color-ink-3); }

/* how to bet */
.t-how .steps { margin-top: 6px; }

/* rg */
.t-rg { display: grid; gap: 10px; align-content: start; }
.t-rg .lines { display: grid; gap: 6px; font-size: 14.5px; }
.t-rg .lines b { font: 600 14.5px var(--font-mono); }
.t-rg .links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 4px; }
.t-rg .links a { justify-content: center; }
@media (min-width: 1100px) { .t-rg .links { display: flex; flex-wrap: wrap; } }
.t-rg .links a { min-height: 36px; display: inline-flex; align-items: center; padding: 0 12px; border: 1px solid var(--color-ink); border-radius: var(--radius-pill); text-decoration: none; font-size: 14px; font-weight: 600; transition: background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease); }
.t-rg .links a:hover { background: var(--color-ink); color: var(--color-white); }

/* operator */
.t-op p { margin-top: 6px; font-size: 14.5px; color: var(--color-ink-2); line-height: 1.55; }
.t-op b { color: var(--color-ink); }

/* payments strip */
.t-pay { display: grid; gap: var(--space-12); }
.t-pay .pay-list { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.t-pay__foot { font-size: 13.5px; color: var(--color-ink-3); }
.t-pay__foot a { color: var(--color-ink); }
