/* ============================================================================
   Previously — Night Mode hero (James, 2026-10-05).

   After the last game of the night ends, the homepage hero switches from
   the game matchup card to this editorial product:
     1. Tonight's finals
     2. Tomorrow's lookahead (lines + P's lean + injuries)
     3. While you were out (day's biggest stories)

   Rendered by buildNightHero() in js/livegrid.js via the #lgHero shell.
   Desktop: three columns. Mobile (390px): stacked, scannable.
   ========================================================================== */

#lgHero[data-night-mode="active"] #lgHeroTitle{
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  margin: 0;
}.nm-wrap{
  display: grid;
  grid-template-columns: 1fr 1.25fr 1fr;
  gap: 18px;
  margin-top: 14px;
  text-align: left;
}.nm-block{
  background: rgba(var(--desert-card-rgb), .045);
  border: 1px solid rgba(var(--desert-card-rgb), .09);
  border-radius: 14px;
  padding: 14px 15px;
  min-width: 0;
}.nm-kicker{
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--desert-accent-soft);
  margin-bottom: 10px;
}.nm-block ul{ list-style: none; margin: 0; padding: 0; }.nm-block li{ padding: 7px 0; border-bottom: 1px solid rgba(var(--desert-card-rgb), .07); }.nm-block li:last-child{ border-bottom: 0; }.nm-final{
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-size: 13.5px;
  font-weight: 600;
}.nm-league{
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  color: rgba(var(--desert-card-rgb), .45);
  min-width: 30px;
}.nm-teams{ white-space: nowrap; }.nm-teams.nm-dim{ opacity: .55; font-weight: 400; }.nm-at{ color: rgba(var(--desert-card-rgb), .35); font-size: 11px; }.nm-f{
  margin-left: auto;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(var(--desert-card-rgb), .4);
}.nm-game{
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  font-size: 13px;
}.nm-matchup{ font-weight: 700; }.nm-tip{ color: rgba(var(--desert-card-rgb), .5); font-size: 12px; }.nm-line{
  display: block;
  width: 100%;
  font-size: 12px;
  color: var(--desert-accent-soft);
  font-weight: 600;
}.nm-plean{
  display: block;
  width: 100%;
  font-size: 12.5px;
  color: var(--desert-card);
}.nm-plean b{ color: var(--brand-red-ember); }.nm-ptake{
  display: block;
  width: 100%;
  font-size: 12px;
  color: rgba(var(--desert-card-rgb), .6);
  font-style: italic;
}.nm-inj{
  display: inline-block;
  font-size: 11px;
  color: var(--desert-accent-soft);
  background: rgba(var(--brand-red-ember-rgb), .12);
  border-radius: 6px;
  padding: 2px 7px;
  margin-top: 3px;
}.nm-story a{
  color: var(--desert-card);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  display: block;
}.nm-story a:hover{ text-decoration: underline; }.nm-empty{
  font-size: 13px;
  color: rgba(var(--desert-card-rgb), .5);
  margin: 0;
}/* Mobile: stack the three blocks */
@media (max-width: 760px){
  .nm-wrap{
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 12px;
  }
  .nm-block{ padding: 12px 13px; }
  /* Keep the hero scannable on phones: cap the lookahead list */
  .nm-look .nm-game:nth-child(n+5){ display: none; }
  .nm-finals .nm-final:nth-child(n+6){ display: none; }
}

/* --- Logos + pressable rows (owner orders 2026-10-19 22:34/22:39 PT) ---
   Team logos beside each team; every row a tap target via a stretched
   gamecast link under the row's own links. The rows' static look is
   unchanged: same type, same hairlines, same chips. */
.nm-logo{
  width: 22px;
  height: 22px;
  object-fit: contain;
  vertical-align: -6px;
  margin-right: 5px;
}
.nm-final, .nm-game{ position: relative; }
.nm-rowlink{
  position: absolute;
  inset: 0;
  z-index: 0;
}
.nm-final > *:not(.nm-rowlink),
.nm-game > *:not(.nm-rowlink){
  position: relative;
  z-index: 1;
  pointer-events: none;
}
.nm-final > a:not(.nm-rowlink),
.nm-game > a:not(.nm-rowlink),
.nm-game .nm-matchup a{
  pointer-events: auto;
}
.nm-final a, .nm-game a{ text-decoration: none; }
.nm-final:hover, .nm-game:hover{ background: rgba(var(--desert-card-rgb), .03); }
a.nm-teams:hover, a.nm-league:hover{ text-decoration: underline; }

/* Layout correction (2026-10-19, same build): at phone width the
   lookahead matchup was crushed to min-content by flex shrink and its
   two teams stacked. The matchup is now one unbreakable inline-flex
   unit, and logos ride at 20px, so league + matchup + tip keep the
   single line the design always had. */
.nm-logo{ width: 20px; height: 20px; vertical-align: -5px; }
.nm-matchup{ display: inline-flex; align-items: center; gap: 6px; flex: none; }
