/* NextGen standings — NASCAR-inspired information density, Chop Shop styling */
.ng-standings-scroll{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
}
.ng-nascar-standings{
  width:100%;
  min-width:1180px;
  border-collapse:separate;
  border-spacing:0;
  font-variant-numeric:tabular-nums;
}
.ng-nascar-standings thead th{
  position:sticky;
  top:0;
  z-index:3;
  padding:11px 12px;
  border-bottom:2px solid #d9a927;
  background:#0b1118;
  color:#dbe5ed;
  font-size:9px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.ng-nascar-standings tbody td{
  padding:12px;
  border-bottom:1px solid rgba(151,169,183,.16);
  background:rgba(10,16,23,.72);
  color:#d8e2ea;
  vertical-align:middle;
  white-space:nowrap;
}
.ng-nascar-standings tbody tr:hover td{
  background:rgba(255,255,255,.035);
}
.ng-nascar-standings .standings-leader td{
  background:linear-gradient(90deg,rgba(215,169,39,.18),rgba(22,28,35,.9));
  border-bottom-color:rgba(215,169,39,.42);
}
.ng-nascar-standings .ng-pos{
  width:62px;
  text-align:center;
}
.ng-nascar-standings .ng-pos b{
  display:inline-grid;
  place-items:center;
  min-width:34px;
  height:34px;
  padding:0 6px;
  border-radius:8px;
  background:#121b24;
  color:#fff;
  font-size:16px;
}
.ng-nascar-standings .standings-leader .ng-pos b{
  background:#d9a927;
  color:#071018;
}
.ng-nascar-standings .ng-move{
  width:70px;
  text-align:center;
}
.ng-nascar-standings .move-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  min-height:24px;
  padding:3px 7px;
  border-radius:999px;
  font-size:9px;
  font-weight:1000;
}
.ng-nascar-standings .move-badge.up{color:#75f0ad;background:rgba(48,187,111,.13)}
.ng-nascar-standings .move-badge.down{color:#ff7b86;background:rgba(239,65,80,.13)}
.ng-nascar-standings .move-badge.same{color:#9aa8b5;background:rgba(130,145,158,.11)}
.ng-nascar-standings .move-badge.new{color:#7bdcf4;background:rgba(48,166,202,.12)}
.ng-nascar-standings .ng-car{
  width:82px;
  text-align:center;
}
.ng-nascar-standings .ng-car b{
  display:inline-flex;
  min-width:46px;
  justify-content:center;
  padding:5px 8px;
  border:1px solid #344554;
  border-radius:8px;
  background:#0a131c;
  color:#fff;
  font-size:14px;
  font-style:italic;
}
.ng-nascar-standings .ng-driver{
  min-width:220px;
  white-space:normal;
}
.ng-nascar-standings .ng-driver a,
.ng-nascar-standings .ng-driver>b{
  color:#fff;
  font-size:12px;
  font-weight:1000;
  text-decoration:none;
}
.ng-nascar-standings .ng-driver a:hover{color:#8eeaf0}
.ng-nascar-standings .ng-points b{
  color:#fff;
  font-size:14px;
}
.ng-nascar-standings .ng-behind{
  color:#aebbc6;
}
.full-srh-table.ng-nascar-standings .full-srh-top4 td{
  box-shadow:inset 3px 0 0 rgba(255,80,96,.48);
}
.full-srh-table.ng-nascar-standings .full-srh-top16 td{
  background:rgba(25,31,42,.82);
}
.full-srh-table.ng-nascar-standings .full-srh-cutline td{
  border-bottom:2px solid #ff4458;
}
.full-srh-table.ng-nascar-standings .championship-cutline-label td{
  padding:7px 12px;
  background:#210d13;
  color:#ff8e99;
  text-align:center;
  font-size:8px;
  font-weight:1000;
  letter-spacing:.12em;
}
@media(max-width:760px){
  .ng-standings-scroll{
    margin-inline:-2px;
    padding-bottom:4px;
  }
  .ng-nascar-standings{
    min-width:1040px!important;
    font-size:10px;
  }
  .ng-nascar-standings thead th{
    position:static;
    padding:9px 10px;
    font-size:8px;
  }
  .ng-nascar-standings tbody td{
    padding:10px;
  }
  .ng-nascar-standings .ng-driver{
    min-width:180px;
  }
}


/* Full-width NextGen standings only; other pages keep the standard layout. */
@media (min-width: 1100px) {
  body:has(.ng-nascar-standings) main {
    max-width: none;
    width: 100%;
    padding-inline: clamp(18px, 1.7vw, 36px);
  }
  body:has(.ng-nascar-standings) .ng-nascar-standings {
    min-width: 1360px;
  }
  body:has(.ng-nascar-standings) .ng-nascar-standings th,
  body:has(.ng-nascar-standings) .ng-nascar-standings td {
    padding-inline: 9px;
  }
  body:has(.ng-nascar-standings) .ng-nascar-standings .ng-driver {
    min-width: 240px;
  }
}
/* A second, synchronized scroll rail stays at the top of each long table. */
.ng-standings-top-scroll {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  height: 17px;
  margin: 8px 0 3px;
  scrollbar-width: auto;
  scrollbar-color: #8295a8 #15202b;
}
.ng-standings-top-scroll > div { height: 1px; }
.ng-standings-top-scroll[hidden] { display: none; }
.ng-standings-scroll { scrollbar-color: #8295a8 #15202b; }

/* NASCAR-style standings: integrate movement into the position cell. */
.ng-nascar-standings .ng-pos{width:auto;min-width:86px;white-space:nowrap}
.ng-nascar-standings .ng-inline-move{display:inline-flex;vertical-align:middle;margin-left:6px}
.ng-nascar-standings .ng-inline-move .move-badge{min-width:24px;padding:3px 5px;font-size:9px}
.ng-nascar-standings .ng-unavailable{color:#8c9ba8}
.ng-nascar-standings .ng-driver{min-width:220px}
@media(min-width:1500px){.ng-nascar-standings{min-width:0}}
