/* WDHC UI LOCKS - Milo hard rules. Load LAST. Never overwrite with gold Grip Age or 1.4rem marquee.
   Ship tag companion: bump ?v= on this file whenever locks change. 20260914sweep1: +lb on time line; mobile hide hang title. 20260913fulllb1: Private Grip Age type + full-LB mobile loc.
   Locked 2026-09-09 ga1 (mq8 + Grip Age orange); younger Grip Age orange 20260909ga1; Past Winners type labels 20260909pw1; tier more-link + loc left 20260910tier1; hangtypes-gripage gap 20260910ht1; homepage P1 20260910p1 (mobile filters: data-wdhc-mobile-filters=selects to revert) */
:root { --wdhc-hero-orange: #E87820; --wdhc-hero-orange-hi: #F0A030; }

/* Marquee smaller (mq6) */
.marquee-container,
.wdhc-marquee { padding: 12px 0 !important; }
.marquee-track > span,
.wdhc-marquee__row > span {
  font-size: 1.05rem !important;
  letter-spacing: 0.1em;
}
.marquee-item svg,
.marquee-item .svg-icon,
.wdhc-marquee__icon {
  width: 0.95em !important;
  height: 0.95em !important;
}
@media (max-width: 900px) {
  .marquee-container,
  .wdhc-marquee { padding: 10px 0 !important; }
  .marquee-track > span,
  .wdhc-marquee__row > span { font-size: 0.95rem !important; }
}

/* Hero "Grip Age" mark = hero orange (NOT gold #D4AF37) */
.hero-gripage-mark,
.hero-gripage-hook .hero-gripage-mark,
a .hero-gripage-mark {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
  background: none !important;
  filter: none !important;
}
.hero-gripage-hook a {
  border-bottom-color: rgba(232, 120, 32, 0.55) !important;
}
.hero-gripage-hook a:hover,
.hero-gripage-hook a:focus-visible {
  border-bottom-color: #E87820 !important;
}

/* Grip Age calculator Gender label + control = hero orange (mob1) */
.grip-calc-field label[for="ga-gender"],
.calc-field label[for="ga-gender"],
label[for="ga-gender"] {
  color: #E87820 !important;
}
#ga-gender,
select#ga-gender {
  color: #E87820 !important;
  border-color: rgba(232, 120, 32, 0.65) !important;
  accent-color: #E87820 !important;
}

/* Younger Grip Age on the board = hero orange (NOT gold #D4AF37, NOT gray).
   Mature (grip age >= chrono) stays gray. Load this file LAST so hover/open-glow gold cannot win. */
.grip-age-val.younger,
.grip-age-val:not(.mature):not(.na),
.lb-card-grip.younger,
.lb-card-grip.younger .lb-card-grip-label,
.lb-card-grip.younger .lb-card-grip-label .lb-tm,
.lb-card-grip.younger .lb-card-grip-val,
.lb-card-grip-val.younger,
.lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-label,
.lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-label .lb-tm,
.lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-val,
.video-submission-meta-row .grip-age-val:not(.mature):not(.na),
.video-submission-stats-row .grip-age-val:not(.mature),
.video-submission-grip-row .grip-age-val:not(.mature),
.icon-legend-symbol .grip-age-val:not(.mature),
.grip-calc-result:not(.mature) {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
}

.lb-row-wrapper.details-visible .grip-age-val:not(.mature):not(.na),
.lb-row-wrapper.details-visible .lb-card-grip-val:not(.mature):not(.na),
.lb-row-wrapper.details-visible .lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-val,
.lb-row-wrapper.details-visible .lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-label,
.lb-row-wrapper:hover .grip-age-val:not(.mature):not(.na),
.lb-row-wrapper:hover .lb-card-grip-val:not(.mature):not(.na),
.lb-row-wrapper:hover .lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-val,
.lb-row-wrapper:hover .lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-label {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
  text-shadow: 0 0 10px rgba(232, 120, 32, 0.35) !important;
}

.grip-age-val.mature,
.lb-card-grip.mature,
.lb-card-grip.mature .lb-card-grip-label,
.lb-card-grip.mature .lb-card-grip-label .lb-tm,
.lb-card-grip.mature .lb-card-grip-val,
.lb-card-grip-val.mature,
.grip-calc-result.mature {
  color: #9a9a9a !important;
  -webkit-text-fill-color: #9a9a9a !important;
}

/* Recent lead one line mobile (mq7) */
@media (max-width: 900px) {
  .video-submissions-lead,
  .video-submissions-section--lead .video-submissions-lead,
  .video-submissions-tagline {
    font-size: 0.78rem !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  /* keep 2026 board live pill visible */
  body:has(.marquee-container) header .status-pill,
  body:has(.marquee-container) header .status-pill.status-pill--pulse,
  .marquee-container + header .status-pill,
  .marquee-container + header .status-pill.status-pill--pulse {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Grip Age younger = hero orange (NOT bronze #cd7f32). Mature stays gray. Locked 2026-09-09 ga1 */
.grip-age-val:not(.mature):not(.na),
.grip-age-val.younger,
.lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-val,
.lb-card-grip:not(.mature):not(.lb-card-grip--na) .lb-card-grip-label,
.lb-card-grip.younger,
.lb-card-grip.younger .lb-card-grip-val,
.lb-card-grip.younger .lb-card-grip-label,
.lb-card-grip-val.younger,
.video-submission-meta-row .grip-age-val:not(.mature),
.video-submission-stats-row .grip-age-val:not(.mature),
.video-submission-grip-row .grip-age-val:not(.mature),
.icon-legend-symbol .grip-age-val:not(.mature),
.details-delta-younger {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
}
.grip-age-val.mature,
.lb-card-grip.mature,
.lb-card-grip.mature .lb-card-grip-val,
.lb-card-grip.mature .lb-card-grip-label,
.lb-card-grip-val.mature {
  color: #9a9a9a !important;
  -webkit-text-fill-color: #9a9a9a !important;
}

/* Hangboard Hold/mm filters: author display:flex on .lb-filter-group beats UA [hidden]. 20260909audit1 */
#hangboard-hold-filters[hidden],
#hangboard-mm-filter-group[hidden],
#hangboard-fingers-filter-group[hidden],
#hangboard-weighted-filter-group[hidden],
#hangboard-finger-chips[hidden],
#hangboard-weighted-chips[hidden],
.lb-filter-group--hangboard[hidden] {
  display: none !important;
}
.lb-filter-chips--hangboard {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  width: 100%;
}
.lb-filter-chips--hangboard:not([hidden]) {
  display: flex !important;
}
/* Chips are the hangboard finger/load UI. Keep the selects in the DOM for JS. */
body:has(#hangboard-finger-chips:not([hidden])) #hangboard-fingers-filter-group,
body:has(#hangboard-weighted-chips:not([hidden])) #hangboard-weighted-filter-group {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
#hangboard-finger-chips:not([hidden])::before {
  content: 'Fingers (per hand)';
  width: 100%;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #9a9ea6;
  font-family: 'Rajdhani', 'Source Sans 3', sans-serif;
  font-weight: 700;
}
#hangboard-weighted-chips:not([hidden])::before {
  content: 'Load';
  width: 100%;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #9a9ea6;
  font-family: 'Rajdhani', 'Source Sans 3', sans-serif;
  font-weight: 700;
}

/* Past Winners challenge-type labels must stay visible (mobile especially). 20260909pw1 */
.home-challenges-winners-type {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  text-overflow: clip !important;
  max-width: none !important;
  max-height: none !important;
  height: auto !important;
  clip: auto !important;
  position: static !important;
}
@media (max-width: 900px) {
  .home-challenges-winners-type {
    grid-column: 1 / -1 !important;
    white-space: normal !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.1em !important;
    color: #e8d9a0 !important;
    -webkit-text-fill-color: #e8d9a0 !important;
  }
}

/* Tier legend → specialty hang thresholds. 20260910tier1 */
.tier-legend-more {
  margin: 0;
  padding: 2px 20px 6px;
  font-size: 0.88rem;
  line-height: 1.4;
  font-weight: 600;
}
.tier-legend-more a {
  color: var(--gold, #D4AF37);
  font-weight: 700;
  text-decoration: none;
}
.tier-legend-more a:hover { text-decoration: underline; }
.tier-legend-more-sub {
  display: block;
  margin-top: 2px;
  font-size: 0.78rem;
  font-weight: 500;
  color: #9a9a9a;
}

/* Desktop LB location: header sits over the city. Column hugs hang time. 20260911loc2 */
@media (min-width: 901px) {
  .lb-row > .location-col,
  .location-col {
    justify-content: center !important;
    text-align: center !important;
    padding-left: 0 !important;
  }
  .lb-header > .lb-h-loc {
    justify-content: center !important;
    text-align: center !important;
    padding-left: 0 !important;
  }
  .location-cluster {
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .location-stack {
    align-items: center !important;
    text-align: center !important;
  }
  .location-city,
  .location-state {
    text-align: center !important;
  }
  .lb-header > .lb-h-time {
    justify-content: center !important;
  }
}

/* Desktop: Hang types → Grip Age flush (calc in sidebar). 20260910ht2 */
@media (min-width: 1100px) {
  .content-grid {
    row-gap: 0 !important;
    align-items: start !important;
  }
  .content-grid > .sidebar-column {
    display: flex !important;
    flex-direction: column !important;
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    gap: 8px !important;
  }
  .content-grid > .sidebar-column > .sidebar-upper {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .sidebar-column .sidebar-card.icon-legend-card {
    margin-bottom: 0 !important;
    padding-bottom: 4px !important;
  }
  .sidebar-column > .grip-calc-card,
  .sidebar-column > .home-lower-band__calc {
    flex: 0 0 auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    width: 100% !important;
  }
  .sidebar-column > .grip-age-blurb {
    margin-top: 0 !important;
  }
  .icon-legend-hangtypes {
    margin-top: 8px !important;
    padding-top: 8px !important;
    padding-bottom: 0 !important;
  }
  .icon-legend-list { padding-bottom: 0 !important; }
  .content-grid > .home-lower-band {
    display: block !important;
    grid-column: 1 / -1 !important; /* 20260910gap1 */
    grid-row: 3 !important;
    width: 100% !important;
    margin-top: 8px !important;
    padding-top: 0 !important;
  }
  .content-grid > .cta-section--full-grid,
  .content-grid > .cta-section--under-submissions {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
  }
  .content-grid > .wdhc-friend-share--home {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
  }
}
@media (min-width: 901px) and (max-width: 1099px) {
  .content-grid > .sidebar-column {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }
}

/* Larger Hang types label + list copy */
.icon-legend-hangtypes > summary.icon-legend-kicker,
.icon-legend-kicker {
  font-size: 0.95rem !important;
  letter-spacing: 0.12em !important;
}
.icon-legend-hangtypes-lead { font-size: 0.92rem !important; }
.icon-legend-ht-copy strong { font-size: 1rem !important; }
.icon-legend-ht-copy span { font-size: 0.9rem !important; }
.icon-legend-ht-link { font-size: 0.95rem !important; }

/* ---- homepage P0 polish 20260910p0 ---- */
.marquee-container,
.wdhc-marquee {
  min-height: 44px;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  isolation: auto !important;
  will-change: auto !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%) !important;
  mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%) !important;
}
/* Whole-pixel layer promotion makes the crawl step. Leave text on the compositor without a snapped raster. */
.marquee-content,
.wdhc-marquee__track,
.marquee-content.is-marquee-js,
.wdhc-marquee__track.is-marquee-js {
  backface-visibility: visible !important;
  -webkit-backface-visibility: visible !important;
  will-change: auto !important;
}
.marquee-item svg,
.marquee-item .svg-icon,
.wdhc-marquee__icon {
  transform: none !important;
  filter: none !important;
}
#wdhc-season-strip {
  min-height: 76px;
}
.video-carousel,
#video-carousel {
  min-height: 420px;
}
.video-carousel-viewport {
  min-height: 380px;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: none;
  scroll-behavior: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}
.video-carousel-viewport::-webkit-scrollbar { display: none; }
.video-carousel-track {
  transition: none !important;
  min-height: 360px;
}
.video-carousel-slide {
  scroll-snap-align: none;
  scroll-snap-stop: normal;
}
.video-submission-frame {
  aspect-ratio: 9 / 16;
  min-height: 220px;
  background: #0a0a0a;
}
.carousel-poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  z-index: 1;
  pointer-events: none;
  background: #0a0a0a;
}
.carousel-poster:not([src]) { display: none; }
.carousel-poster.is-playing-hidden { opacity: 0; }
.video-submission-frame video.carousel-video {
  z-index: 2;
  opacity: 0;
  transition: opacity 0.18s ease;
}
.video-submission-frame.is-playing video.carousel-video,
.video-submission-frame.is-video-ready video.carousel-video {
  z-index: 3;
  opacity: 1;
}

.details-panel {
  position: relative;
}
.details-panel__close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 6;
  appearance: none;
  border: 1px solid rgba(212, 175, 55, 0.4);
  background: rgba(10, 10, 12, 0.92);
  color: #f5e6b8;
  font-family: Oswald, sans-serif;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 8px 12px;
  min-height: 40px;
  border-radius: 8px;
  cursor: pointer;
}
.details-panel__close:hover,
.details-panel__close:focus-visible {
  border-color: rgba(212, 175, 55, 0.75);
  color: #fff;
}
@media (min-width: 901px) {
  .lb-row-wrapper.details-visible {
    z-index: 4;
  }
}

@media (max-width: 900px) {
  #leaderboard-body,
  .leaderboard-body,
  .lb-list {
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 88px + env(safe-area-inset-bottom, 0px));
  }
  .lb-card-actions {
    padding-bottom: 4px;
  }
}

/* ==== 20260910gap2: challenges inside main-column under board (no sidebar-height hole) ==== */
@media (min-width: 1100px) {
  .main-column-stack > .home-lower-band,
  .main-column .home-lower-band {
    display: block !important;
    width: calc(100% + 360px + 28px) !important;
    max-width: none !important;
    margin-top: 12px !important;
    margin-right: calc(-360px - 28px) !important;
    padding-top: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    box-sizing: border-box !important;
    position: relative;
    z-index: 3;
  }
  .main-column .home-lower-band > .home-challenges-block > .home-lower-challenges {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px 18px !important;
  }
  /* content-grid sibling rule from gap1 no longer applies; neutralize if orphaned */
  .content-grid > .home-lower-band {
    grid-column: 1 / -1 !important;
  }
  .content-grid > .cta-section--full-grid,
  .content-grid > .cta-section--under-submissions {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  /* 20260910p0b: last WATCH must clear sticky SUBMIT + chat (Otis QA FAIL) */
  #leaderboard-body,
  .leaderboard-body,
  .lb-list,
  .leaderboard,
  .main-column-stack,
  .content-grid {
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 140px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .lb-row-wrapper:last-child,
  .lb-card:last-child {
    margin-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 48px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .lb-card-actions {
    padding-bottom: 8px;
  }
  .lb-card-actions .watch-btn,
  .lb-card-actions a.watch-btn,
  button.watch-btn {
    scroll-margin-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 72px + env(safe-area-inset-bottom, 0px));
  }
}

/* ---- homepage P1 polish 20260910p1 ---- */
:root {
  --wdhc-duration-cta: 150ms;
  --wdhc-duration-link: 100ms;
  --wdhc-duration-filter: 150ms;
}

/* 1) Filter feedback: 150ms opacity dim + skeleton */
#leaderboard-body {
  transition: opacity var(--wdhc-duration-filter) var(--wdhc-ease, cubic-bezier(0.2, 0.8, 0.2, 1));
}
#leaderboard-body.is-filtering {
  opacity: 0.42;
  pointer-events: none;
}
#leaderboard-body .lb-skel-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 12px;
  min-height: 52px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.lb-status {
  margin: 6px 2px 10px;
  min-height: 1.15em;
  font-family: 'Rajdhani', 'Source Sans 3', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wdhc-ui-caption, #d8d8d8);
  font-variant-numeric: tabular-nums;
}
.sidebar-card--leaders .wdhc-skel-row,
.ch-podium .wdhc-skel-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  padding: 8px 4px;
}

/* 3) Mobile filters: chips + 2x2 full labels.
   REVERT: set html data-wdhc-mobile-filters="selects" (or remove attr). One flip restores selects. */
.lb-filter-chips[hidden] { display: none !important; }
.lb-filter-chips {
  display: none;
  flex-wrap: wrap;
  gap: 6px;
  width: 100%;
}
.lb-filter-chip {
  appearance: none;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: #111;
  color: #d4d4d4;
  font-family: 'Rajdhani', 'Source Sans 3', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 8px 12px;
  min-height: 40px;
  border-radius: 999px;
  cursor: pointer;
  transition: color var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    background var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    border-color var(--wdhc-duration-cta) var(--wdhc-ease, ease);
}
.lb-filter-chip.is-active {
  border-color: rgba(212, 175, 55, 0.72);
  color: #f5e6b8;
  background: rgba(212, 175, 55, 0.14);
}
.lb-filter-chip:focus-visible {
  outline: 2px solid var(--wdhc-gold, #D4AF37);
  outline-offset: 2px;
}
@media (max-width: 900px) {
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row,
  html[data-wdhc-mobile-filters="chips"] body:has(#wdhc-season-strip) .lb-toolbar-filters--row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    gap: 10px 8px !important;
    align-items: stretch !important;
  }
  html[data-wdhc-mobile-filters="chips"] body:not(.full-leaderboard-page) .lb-filter-group--gym,
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--gym {
    display: none !important; /* 20260914comb1c: Gym HIDDEN on home mobile */
  }
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--sort,
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--hang,
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--division,
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-search,
  html[data-wdhc-mobile-filters="chips"] #hangboard-hold-filters,
  html[data-wdhc-mobile-filters="chips"] #hangboard-mm-filter-group,
  html[data-wdhc-mobile-filters="chips"] #hangboard-fingers-filter-group,
  html[data-wdhc-mobile-filters="chips"] #hangboard-weighted-filter-group,
  html[data-wdhc-mobile-filters="chips"] #hangboard-finger-chips,
  html[data-wdhc-mobile-filters="chips"] #hangboard-weighted-chips {
    grid-column: 1 / -1;
    width: 100% !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--select {
    width: 100%;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 4px !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-filter-label {
    min-width: 0 !important;
    width: 100%;
    white-space: nowrap;
    overflow: visible;
    font-size: 0.72rem !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-select,
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-gym-select {
    min-width: 0 !important;
    max-width: none !important;
    width: 100% !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--sort .lb-filter-select,
  html[data-wdhc-mobile-filters="chips"] .lb-filter-group--division .lb-filter-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-filter-chips {
    display: flex !important;
  }
}

/* 4) Carousel polish: posters, play, disabled prev */
.carousel-poster {
  object-position: center 18% !important;
  filter: saturate(1.05);
}
.video-submission-frame.is-poster {
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, 0.22);
}
.video-submission-frame.is-poster::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 38%;
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.55));
  pointer-events: none;
  z-index: 2;
}
.video-submission-frame:not(.is-playing) .video-play-btn {
  z-index: 7;
  box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.55), 0 10px 28px rgba(0, 0, 0, 0.55);
}
.video-play-btn:focus-visible {
  outline: 2px solid var(--wdhc-gold, #D4AF37);
  outline-offset: 3px;
}
.video-carousel-btn.is-disabled,
.video-carousel-btn:disabled {
  opacity: 0.28 !important;
  color: #6a6a6a !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(12, 12, 12, 0.45) !important;
  cursor: not-allowed !important;
  transform: translateY(-50%) !important;
  box-shadow: none !important;
  pointer-events: none;
}
.video-carousel-btn.prev.is-disabled,
.video-carousel-btn.prev:disabled {
  opacity: 0.18 !important;
}

/* 5) Grip Age scorebug */
#ga-chron,
#ga-result,
#ga-delta,
.grip-calc-stat-value,
.grip-calc-result {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" 1;
}
.grip-calc-conf-row {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 8px;
}
.grip-calc-conf-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid rgba(232, 120, 32, 0.45);
  color: #E87820;
  font-family: 'Rajdhani', sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: rgba(232, 120, 32, 0.08);
}
.grip-calc-conf-pill.is-measured {
  border-color: rgba(212, 175, 55, 0.55);
  color: #f0d78c;
  background: rgba(212, 175, 55, 0.1);
}
.grip-calc-conf-pill.is-pulse {
  animation: wdhc-pill-pulse 720ms var(--wdhc-ease, ease);
}
@keyframes wdhc-pill-pulse {
  0% { box-shadow: 0 0 0 0 rgba(232, 120, 32, 0.45); }
  70% { box-shadow: 0 0 0 8px rgba(232, 120, 32, 0); }
  100% { box-shadow: 0 0 0 0 rgba(232, 120, 32, 0); }
}
#grip-age-calculator.is-hero-target,
.grip-calc-widget.is-hero-target,
.grip-calc-card.is-hero-target {
  outline: 2px solid var(--wdhc-gold, #D4AF37) !important;
  outline-offset: 4px;
  box-shadow: 0 0 0 2px #D4AF37, 0 0 0 8px rgba(212, 175, 55, 0.28), 0 0 28px rgba(232, 120, 32, 0.32) !important;
  border-radius: 16px;
  transition: box-shadow 150ms var(--wdhc-ease, ease), outline-color 150ms var(--wdhc-ease, ease);
}

/* 6) Challenges: Enter CTA + podium hover hairline gold */
.home-challenges-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin-top: 12px;
}
.home-challenges-enter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 16px;
  border-radius: 10px;
  border: 1px solid rgba(232, 120, 32, 0.7);
  background: #E87820;
  color: #111 !important;
  font-family: 'Oswald', sans-serif;
  font-size: 0.92rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
}
.home-challenges-enter:hover,
.home-challenges-enter:focus-visible {
  background: #F0A030;
  color: #111 !important;
}
.post-video-challenge-card .ch-podium__row {
  transition: box-shadow var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    background var(--wdhc-duration-cta) var(--wdhc-ease, ease);
}
.post-video-challenge-card .ch-podium__item:hover .ch-podium__row,
.post-video-challenge-card .ch-podium__row:hover {
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, 0.58);
}

/* 7) Hover/focus tokens: 150ms CTA, 100ms links, gold :focus-visible */
a.mobile-submit-bar,
.mobile-submit-bar,
.home-challenges-enter,
.home-challenges-full,
.cta-section a,
a.wdhc-cine-hero__cta,
.watch-btn,
button.watch-btn,
.video-play-btn,
.video-carousel-btn,
.lb-filter-chip {
  transition: color var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    background var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    border-color var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    box-shadow var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    opacity var(--wdhc-duration-cta) var(--wdhc-ease, ease),
    transform var(--wdhc-duration-cta) var(--wdhc-ease, ease);
}
a:not(.mobile-submit-bar):not(.home-challenges-enter):not(.watch-btn):not(.video-carousel-btn) {
  transition: color var(--wdhc-duration-link) var(--wdhc-ease, ease),
    border-color var(--wdhc-duration-link) var(--wdhc-ease, ease),
    opacity var(--wdhc-duration-link) var(--wdhc-ease, ease);
}
:focus-visible {
  outline: 2px solid var(--wdhc-gold, #D4AF37);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  #leaderboard-body,
  .grip-calc-conf-pill,
  .home-challenges-enter,
  .video-carousel-btn,
  .lb-filter-chip {
    transition: none !important;
    animation: none !important;
  }
}

/* ==== 20260910lb2: hover-open back, full-size film, no page dimmer, Close off Watch ==== */
@media (min-width: 901px) {
  body:has(.lb-row-wrapper.details-visible)::before {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  .lb-row-wrapper {
    transition:
      background var(--wdhc-duration, 220ms) var(--wdhc-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
      box-shadow var(--wdhc-duration, 220ms) var(--wdhc-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
      transform var(--wdhc-duration, 220ms) var(--wdhc-ease-out, cubic-bezier(0.22, 1, 0.36, 1));
  }
  .lb-row-wrapper.details-visible .details-film-room {
    border-color: #D4AF37 !important;
    box-shadow: 0 0 0 1px #D4AF37, 0 12px 28px rgba(0, 0, 0, 0.42) !important;
  }
  .details-film-room__video {
    background-color: #111;
    background-size: cover;
    background-position: center;
  }
  .lb-row-wrapper:hover {
    background: linear-gradient(90deg, rgba(212, 175, 55, 0.14) 0%, rgba(18, 16, 12, 0.35) 36%, transparent 100%) !important;
    box-shadow: inset 3px 0 0 #D4AF37, 0 8px 22px rgba(0, 0, 0, 0.28) !important;
    transform: translateX(2px);
    z-index: 4;
  }
  .lb-row-wrapper.details-visible {
    z-index: 4;
  }
  .lb-row-wrapper:hover .lb-best-time,
  .lb-row-wrapper.details-visible .lb-best-time {
    color: #ffe566;
    text-shadow: 0 0 14px rgba(212, 175, 55, 0.45);
  }
  .lb-row-wrapper:hover .name-line.name-first,
  .lb-row-wrapper:hover .name-line.name-last,
  .lb-row-wrapper:hover .lb-card-name,
  .lb-row-wrapper:hover .lb-card-name-block {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  .details-panel__close {
    position: static !important;
    top: auto !important;
    right: auto !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    align-self: flex-end;
    margin: 14px 0 0 auto !important;
    z-index: 1 !important;
  }
  .details-panel__inner {
    display: flex;
    flex-direction: column;
  }

  .lb-row .video-btn,
  .lb-row a.video-btn,
  .lb-row .watch-link {
    position: relative;
    z-index: 5;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  }
  .lb-row-wrapper:hover .video-btn,
  .lb-row-wrapper:hover a.video-btn {
    background: #D4AF37;
    color: #111;
    border-color: #D4AF37;
    box-shadow: 0 0 16px rgba(212, 175, 55, 0.35);
  }

  .lb-filter-select,
  .lb-gym-select {
    appearance: none;
    -webkit-appearance: none;
    background-color: #0c0c0e;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23D4AF37' d='M1 1l5 5 5-5'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 32px !important;
    border: 1px solid rgba(212, 175, 55, 0.28);
    border-radius: 10px;
    color: #f3ead2;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  }
  .lb-filter-select:hover,
  .lb-gym-select:hover {
    border-color: rgba(212, 175, 55, 0.6);
    background-color: #121214;
  }
  .lb-filter-select:focus,
  .lb-gym-select:focus {
    outline: none;
    border-color: #D4AF37;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.22);
  }
}

/* Ask WDHC on 390: video chevrons sit mid-right and mid-left. FAB goes in the
   gap above Submit (center). Open panel spans the width. */
@media (max-width: 900px) {
  body:has(.video-carousel):has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .wdhc-chat {
    left: calc(50% - 26px) !important;
    right: auto !important;
    bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 12px) !important;
  }
  body:has(.video-carousel):has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .wdhc-chat.is-open {
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
  }
  body:has(.video-carousel):has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .wdhc-chat__launcher-label {
    display: none;
  }
}

.ch-verified-chip,
.ch-unverified-chip {
  display: inline-block;
  margin-left: 6px;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  vertical-align: middle;
}
.ch-verified-chip {
  color: #111;
  background: #D4AF37;
}
.ch-unverified-chip {
  color: #c8c0b0;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.tier-legend-hang {
  margin: 0 0 8px;
  font-family: Rajdhani, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #D4AF37;
}
.tier-legend-hang[hidden] { display: none !important; }

.lb-rank-delta {
  display: inline-block;
  margin-left: 5px;
  font-family: Rajdhani, sans-serif;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  vertical-align: middle;
}
.lb-rank-delta.is-up { color: #8FBC8F; }
.lb-rank-delta.is-down { color: #c08080; }
.lb-rank-delta.is-new,
.rank .lb-rank-delta.is-new,
.lb-card-rank .lb-rank-delta.is-new {
  display: none !important;
}

.lb-search-suggest {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  z-index: 30;
  margin: 0;
  padding: 6px;
  list-style: none;
  background: #0c0c0e;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 10px;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.45);
  max-height: 320px;
  overflow: auto;
}
.lb-search-suggest[hidden] { display: none !important; }
.lb-search-suggest__row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #f3ead2;
  text-align: left;
  cursor: pointer;
  font: inherit;
}
.lb-search-suggest__row:hover,
.lb-search-suggest__row.is-active {
  background: rgba(212, 175, 55, 0.14);
}
.lb-search-suggest__avatar {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #1a1814;
  border: 1px solid rgba(212, 175, 55, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-family: Oswald, sans-serif;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  color: #D4AF37;
}
.lb-search-suggest__name .emoji-flag {
  width: 16px;
  height: 11px;
  margin-right: 4px;
  vertical-align: -1px;
}
.lb-search-suggest__meta {
  min-width: 0;
  flex: 1;
}
.lb-search-suggest__name {
  display: block;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.lb-search-suggest__sub {
  display: block;
  font-size: 0.78rem;
  color: #b8b0a0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 20260911mobtight1: mobile — kill blank under Past Winners + under friend Share */
@media (max-width: 900px) {
  .home-challenges-winners {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
    padding: 12px 12px 10px !important;
  }
  .home-challenges-winners-list {
    min-height: 0 !important;
    height: auto !important;
    gap: 10px !important;
  }
  .home-challenges-winners-month-block {
    min-height: 0 !important;
    height: auto !important;
    padding: 10px 12px 8px !important;
  }
  .home-challenges-winners-title {
    margin: 0 0 8px !important;
  }
  .home-challenges-block {
    gap: 6px !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    align-items: stretch !important;
  }
  .home-lower-band,
  .main-column .home-lower-band,
  .main-column-stack > .home-lower-band {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .home-challenges-full {
    margin-top: 4px !important;
    margin-bottom: 0 !important;
  }
  .content-grid > .cta-section--under-submissions,
  .content-grid > .cta-section--full-grid {
    margin-top: 8px !important;
    margin-bottom: 6px !important;
  }
  .content-grid > .wdhc-friend-share--home,
  .wdhc-friend-share.wdhc-friend-share--home,
  .wdhc-friend-share--home {
    margin-top: 6px !important;
    margin-bottom: 8px !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .wdhc-friend-share--home .wdhc-friend-share__copy {
    margin-bottom: 10px !important;
  }
  /* Don't leave a tall empty band before the site footer */
  .content-grid {
    row-gap: 8px !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  main.main-content,
  .main-content {
    padding-bottom: 12px !important;
  }
}


/* 20260911top10notitle2: Top 10 time-only — no hang-type mark OR specialty caption text */
#top-10-list .mini-time .hang-type-mark,
#world-leaders .mini-time .hang-type-mark {
  display: none !important;
}
#top-10-list .mini-time .lb-pr-hold:not([data-load="1"]),
#world-leaders .mini-time .lb-pr-hold:not([data-load="1"]) {
  /* JS top10LoadSublineHtml only emits +lbs; belt-and-suspenders keep marks gone */
}

/* 20260911compact1: Top 10 = time (+lbs if weighted) ONLY — hide specialty captions + marks */
#top-10-list .mini-time .hang-type-mark,
#world-leaders .mini-time .hang-type-mark,
#top-10-list .mini-time .lb-pr-hold--compact,
#world-leaders .mini-time .lb-pr-hold--compact {
  display: none !important;
}
#top-10-list .mini-time .lb-hang-meta,
#world-leaders .mini-time .lb-hang-meta {
  display: none !important;
}
/* Compact board: never let time paint over Grip Age / Watch */
.lb-row > .time,
.lb-row > .desktop-time {
  overflow: hidden !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
.lb-row > .grip-age-col,
.lb-row > .watch-col {
  position: relative !important;
  z-index: 2 !important;
  overflow: hidden !important;
}

/* 20260911lbcoll1: desktop time column — load stays on the time line, mark in col 3 */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    flex-direction: unset !important;
    align-items: center !important;
    width: 100% !important;
  }
  .time .lb-time-main .lb-time-topline,
  .desktop-time .lb-time-main .lb-time-topline {
    grid-column: 2 !important;
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    white-space: nowrap !important;
  }
  .time .lb-time-main .lb-hang-meta,
  .desktop-time .lb-time-main .lb-hang-meta {
    grid-column: 3 !important;
    display: inline-flex !important;
    width: auto !important;
    max-width: none !important;
    align-items: center !important;
  }
}

/* 20260911lbcoll1: last-file lock — mobile expanded card name vs time+load */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-head {
    display: grid !important;
    grid-template-columns: minmax(7.6rem, 1fr) max-content !important;
    column-gap: 12px !important;
    align-items: start !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    overflow: visible !important;
    padding-right: 4px !important;
    z-index: 2 !important;
  }
  .lb-row.lb-mobile-card .lb-card-right {
    max-width: none !important;
    width: max-content !important;
    min-width: 0 !important;
    z-index: 1 !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-time,
  .lb-row.lb-mobile-card .lb-card-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    animation: none !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }
  .lb-row.lb-mobile-card .lb-time-topline {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }
  .lb-row.lb-mobile-card .lb-hang-meta {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title {
    color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
}

/* 20260911htalign6: reserve aside room so Grip Age never sits on the hang mark */
@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 40px 80px minmax(100px, 1.1fr) minmax(96px, 0.78fr) minmax(92px, 0.7fr) minmax(168px, 1.12fr) minmax(48px, 64px) 68px !important;
  }
  .lb-col-occupation,
  .lb-header .lb-col-occupation,
  .lb-row > .lb-col-occupation {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    min-width: 0 !important;
    max-width: 100% !important;
    font-size: 0.82rem !important;
  }
  .lb-h-bg {
    display: flex !important;
    overflow: hidden !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.04em !important;
    justify-content: center !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 118px minmax(168px, 1.25fr) minmax(108px, 1fr) minmax(104px, 0.68fr) minmax(168px, 0.92fr) minmax(60px, 80px) minmax(76px, 0.5fr) !important;
  }
}

/* 20260913audit1: time numbers line up; +lb on the TIME LINE; mark to the right; white title under time */
@media (min-width: 901px) {
  .lb-row > .time,
  .lb-row > .desktop-time {
    overflow: hidden !important;
    min-width: 0 !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) auto minmax(5.4rem, 0.85fr) !important;
    grid-template-areas: none !important;
    grid-template-rows: auto !important;
    column-gap: 8px !important;
    row-gap: 0 !important;
    align-items: start !important;
    width: 100% !important;
    flex-direction: unset !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    grid-column: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-width: 4.6ch !important;
    gap: 6px !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    font-variant-numeric: tabular-nums !important;
    text-align: center !important;
    min-width: 4.6ch !important;
    line-height: 1 !important;
    padding-bottom: 0 !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    grid-column: 3 !important;
    justify-self: start !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 6px !important;
    padding-top: 2px !important;
    min-height: 1.05em !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold {
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark {
    position: static !important;
    left: auto !important;
    top: auto !important;
    margin: 0 !important;
    transform: none !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    max-width: 12em !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin: 0 !important;
    padding-top: 0 !important;
    line-height: 1.2 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-card-right {
    max-width: 10.2rem !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside {
    display: contents !important;
  }
  .lb-row.lb-mobile-card .lb-time-main {
    display: grid !important;
    grid-template-columns: auto auto auto !important;
    justify-content: end !important;
    align-items: center !important;
    column-gap: 6px !important;
    row-gap: 0 !important;
    flex-direction: unset !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold {
    grid-column: 2 !important;
    grid-row: 1 !important;
    color: #D4AF37 !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
  }
}


/* 20260912: dark scrollbars site-wide (Milo) — kill white OS scroll thumbs */
html {
  scrollbar-width: thin;
  scrollbar-color: #2a2a2a #0a0a0a;
}
* {
  scrollbar-width: thin;
  scrollbar-color: #2a2a2a #0a0a0a;
}
*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
*::-webkit-scrollbar-track {
  background: #0a0a0a;
}
*::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 8px;
  border: 2px solid #0a0a0a;
}
*::-webkit-scrollbar-thumb:hover {
  background: #3a3a3a;
}
*::-webkit-scrollbar-corner {
  background: #0a0a0a;
}

/* 20260913audit1: Hang Type closed select must paint cream text (not empty) */
#hang-type-filter,
#sort-filter,
#division-filter,
#gym-filter,
.lb-filter-select,
.lb-gym-select {
  color: #f0ead8 !important;
  -webkit-text-fill-color: #f0ead8 !important;
}
#hang-type-filter {
  min-width: 10.75rem !important;
  padding-right: 2.4rem !important;
  text-overflow: clip !important;
}

/* World Leaders / Top 10: names and times always visible on phone */
@media (max-width: 430px) {
  #top-10-list .mini-row,
  #world-leaders .mini-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 36px !important;
  }
  #top-10-list .mini-name,
  #world-leaders .mini-name,
  #top-10-list .mini-name-line,
  #world-leaders .mini-name-line {
    color: #e8e8e8 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-size: 0.92rem !important;
    overflow: visible !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  #top-10-list .mini-time,
  #world-leaders .mini-time,
  #top-10-list .mini-time-val,
  #world-leaders .mini-time-val {
    color: #D4AF37 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-size: 1rem !important;
    display: inline-block !important;
    min-width: 3.2rem !important;
  }
}

/* Recent: loading vs hard error */
.video-submission-frame .video-load-pending {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: #c8c0b0;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: rgba(0, 0, 0, 0.35);
  pointer-events: none;
}
.video-submission-frame.is-video-pending .video-load-pending {
  display: flex;
}
.video-submission-frame.is-video-pending .video-load-fallback,
.video-submission-frame.is-video-pending .video-load-fallback[hidden] {
  display: none !important;
}
.video-submission-frame.is-video-error .video-load-pending {
  display: none !important;
}

/* Mobile Ask WDHC: sit left, above Submit bar, not over search */
@media (max-width: 900px) {
  body:has(.leaderboard):not(.page-submit):not(.wdhc-form-page) .wdhc-chat {
    left: max(10px, env(safe-area-inset-left, 0px)) !important;
    right: auto !important;
    bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 14px) !important;
  }
  body:has(.leaderboard) .lb-toolbar-search {
    padding-left: 0;
  }
}

/* Hero: Submit is the primary championship action */
.hero-cta-row {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 18px auto 0;
  max-width: 520px;
}
.hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  border-radius: 999px;
  font-family: Oswald, Rajdhani, sans-serif;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  box-sizing: border-box;
}
.hero-cta--primary {
  background: linear-gradient(135deg, #FFE566 0%, #D4AF37 42%, #E87820 100%);
  color: #0a0a0a !important;
  border: 0;
  box-shadow: 0 8px 24px rgba(212, 175, 55, 0.28);
}
.hero-cta--ghost {
  background: transparent;
  color: #f0ead8 !important;
  border: 1px solid rgba(212, 175, 55, 0.45);
}
.hero-cta--text {
  background: transparent;
  border: 0;
  min-height: 36px;
  padding: 6px 10px;
  color: #d8d0c0 !important;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: 0.82rem;
}
.hero-cta--primary:hover {
  filter: brightness(1.06);
}
.hero-cta--ghost:hover {
  border-color: #D4AF37;
  color: #fff !important;
}
.hero-cta--text:hover {
  color: #fff !important;
}
@media (max-width: 900px) {
  .hero-cta-row {
    max-width: 280px;
    gap: 6px;
  }
  .hero-cta--primary {
    width: 100%;
  }
  body:has(.video-carousel) .wdhc-chat {
    display: none !important;
  }
}

/* Mobile: rank stays left of the name block, not between first/last */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-rank {
    align-self: start !important;
    padding-top: 4px !important;
    flex: 0 0 32px !important;
    font-size: 1.15rem !important;
  }
  .details-film-room__media {
    overflow: visible !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    background: #000 !important;
    min-height: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-film-room--portrait .details-film-room__video,
  .lb-row-wrapper:hover .details-film-room--portrait .details-film-room__video,
  .details-film-room--portrait .details-film-room__video,
  .details-film-room__video {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: min(78vh, 720px) !important;
    aspect-ratio: 9 / 16 !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
  }
  .details-film-room--landscape .details-film-room__video {
    aspect-ratio: 16 / 9 !important;
    max-height: min(48vh, 420px) !important;
    object-fit: contain !important;
  }
  .video-submission-frame video,
  .video-submission-frame iframe.submission-video-embed {
    object-fit: contain !important;
    object-position: center center !important;
  }
}

/* Grip Age "Private" must stay small on index + full board (not Oswald number size). 20260913fulllb1 */
.grip-age-val.na,
.grip-age-val--private,
.lb-card-grip--na .lb-card-grip-val,
.lb-card-grip-val--private,
.lb-card-right .lb-card-grip--na .lb-card-grip-val,
.lb-row.lb-mobile-card .lb-card-grip--na .lb-card-grip-val {
  font-family: 'Rajdhani', 'Source Sans 3', sans-serif !important;
  font-size: 0.58rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
  max-width: 4.8rem;
}

/* Full LB mobile: flag flush to city, location left-aligned, Grip Age cannot cover it. 20260913fulllb1 */
@media (max-width: 900px) {
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row {
    justify-content: flex-start !important;
    text-align: left !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    max-width: calc(100% - 5.6rem) !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .flag {
    flex: 0 0 auto !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-stack {
    align-items: flex-start !important;
    text-align: left !important;
    min-width: 0 !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-city,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-state,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc {
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    overflow-wrap: anywhere !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-row .lb-card-grip {
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  .full-leaderboard-page main > .container,
  .full-leaderboard-page .container {
    padding-bottom: 4px !important;
  }
  /* Homepage sticky-CTA pad on the board does not apply: footer already clears SUBMIT */
  .full-leaderboard-page #leaderboard-body,
  .full-leaderboard-page .leaderboard-body,
  .full-leaderboard-page .lb-list,
  .full-leaderboard-page .leaderboard,
  .full-leaderboard-page .content-grid,
  .full-leaderboard-page .main-column-stack {
    padding-bottom: 0 !important;
  }
  .full-leaderboard-page .lb-row-wrapper:last-child,
  .full-leaderboard-page .lb-card:last-child {
    margin-bottom: 0 !important;
  }
  .full-leaderboard-page #lb-scroll-loader {
    padding: 8px 12px !important;
  }
  .full-leaderboard-page footer.wdhc-site-footer {
    margin-top: 4px !important;
    padding-top: 28px !important;
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 12px) !important;
  }
  body.full-leaderboard-page:has(.mobile-submit-bar) {
    padding-bottom: 0 !important;
  }
}


/* ==== 20260914home1 batch locks ==== */
/* A already in index: Grip Age demo lead gone; age line = How your hang stacks up for your age. */

/* B) Monthly titles = headings; CTAs stay Enter September / View full leaderboard */
@media (max-width: 900px) {
  a.home-challenges-hero-kicker,
  .home-challenges-hero-kicker {
    display: block !important;
    padding: 0 !important;
    min-height: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    color: rgba(240, 208, 112, 0.92) !important;
    -webkit-text-fill-color: rgba(240, 208, 112, 0.92) !important;
    font-family: 'Rajdhani', 'Source Sans 3', sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    text-align: center !important;
  }
  .home-challenges-hero-title,
  .post-video-challenge-card .ch-card__title {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: 'Oswald', sans-serif !important;
    text-transform: uppercase !important;
  }
  .home-challenges-full {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    color: #b8ae96 !important;
    text-decoration: underline !important;
    text-transform: none !important;
  }
}

/* C) Past winners flush — kill empty band (20260907mq2b restore) */
.home-challenges-winners,
.home-challenges-winners-list,
.home-challenges-winners-month-block {
  min-height: 0 !important;
  height: auto !important;
}
.home-challenges-winners {
  margin-bottom: 0 !important;
  padding-bottom: 8px !important;
  flex: 0 0 auto !important;
}
.home-challenges-block {
  min-height: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  align-items: flex-start !important;
}
@media (min-width: 901px) {
  .home-challenges-winners {
    padding: 6px 4px 0 !important;
    margin-top: 6px !important;
    margin-bottom: 0 !important;
  }
  .home-lower-band > .home-challenges-block,
  .home-lower-band > .home-challenges-block > .home-lower-challenges {
    flex: 0 0 auto !important;
    align-self: start !important;
    align-content: start !important;
  }
}

/* D1) Hide Showing X of Y under search on mobile — no gap */
@media (max-width: 900px) {
  #lb-status,
  .lb-status,
  .full-leaderboard-page #lb-status,
  .full-leaderboard-page .lb-status {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    line-height: 0 !important;
    border: 0 !important;
  }
}

/* D2-D3 20260914sweep1: restore lock. Mobile = time + load + mark on ONE line. Hide under-title. */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: contents !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: auto auto auto !important;
    justify-content: end !important;
    align-items: center !important;
    column-gap: 6px !important;
    row-gap: 0 !important;
    flex-direction: unset !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    gap: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-card-time .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    margin: 0 !important;
    text-align: left !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    color: var(--gold, #D4AF37) !important;
  }
  /* D4) Location slightly lower; flag stays flush */
  .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row {
    margin-top: 8px !important;
    padding-top: 2px !important;
  }
  .lb-row.lb-mobile-card .lb-card-loc-group .flag,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .flag {
    flex: 0 0 auto !important;
    align-self: center !important;
  }
}

/* 20260914comb1: hero Grip Age TM must match mark orange (not gold) */
.hero-gripage-mark .grip-calc-tm,
.hero-gripage-hook .grip-calc-tm,
a .hero-gripage-mark .grip-calc-tm {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
}

/* ============================================================
   20260914comb1 HARD LOCK (Milo): weighted / hang-type stack
   Under gold hang time: (1) white hang-type name (2) weight under that.
   NEVER weight on same line / right of time. NEVER hide .lb-hang-title.
   Undoes 20260914sweep1 one-line time+load+mark.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-align: right !important;
    white-space: normal !important;
    max-width: 11em !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 2px !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 2px !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    color: var(--gold, #D4AF37) !important;
    -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-card-time .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-hang-meta .lb-pr-hold {
    display: block !important;
    grid-column: auto !important;
    grid-row: auto !important;
    text-align: right !important;
    white-space: nowrap !important;
  }
  .lb-row.lb-mobile-card .lb-hang-meta {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: 100% !important;
    gap: 1px !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark {
    grid-column: auto !important;
    grid-row: auto !important;
    margin-top: 2px !important;
  }
}
.time .lb-time-stack,
.desktop-time .lb-time-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
}
.time .lb-hang-title,
.desktop-time .lb-hang-title {
  display: block !important;
  color: #f4f4f4 !important;
  -webkit-text-fill-color: #f4f4f4 !important;
}

/* 20260914comb1: center Enter September under challenges */
.challenges-enter-wrap,
.challenge-enter-wrap,
.monthly-challenges .enter-cta-wrap,
#challenges .enter-sep-wrap,
a.enter-september,
.challenges-section .btn-enter-wrap {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  text-align: center !important;
}

/* 20260914comb1b: weight lives IN .lb-time-stack under hang-title (JS moved it). Undo sweep1 hide. */
.time .lb-time-stack .lb-pr-hold,
.desktop-time .lb-time-stack .lb-pr-hold,
.lb-card-time .lb-time-stack .lb-pr-hold,
.lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold {
  display: block !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  text-align: inherit !important;
  margin: 0 !important;
  white-space: nowrap !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    padding-top: 0 !important;
  }
  .time .lb-time-stack .lb-pr-hold,
  .desktop-time .lb-time-stack .lb-pr-hold {
    text-align: center !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    text-align: right !important;
    font-size: 0.78rem !important;
  }
}

/* 20260914comb1: mobile filters Hang then Division; Gym hidden */
@media (max-width: 900px) {
  .lb-toolbar-filters .lb-filter-group--gym,
  .lb-gym-filter {
    display: none !important;
  }
  .lb-toolbar-filters--row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
  .home-challenges-enter,
  a#home-challenges-enter {
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .home-challenges-actions,
  .home-challenges-enter-wrap {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    text-align: center !important;
  }
}
@media (min-width: 901px) {
  a#home-challenges-enter,
  .home-challenges-enter {
    display: inline-flex !important;
  }
  /* center Enter September under challenges */
  .home-challenges-hero,
  .home-challenges-block,
  #post-video-challenges {
    text-align: center;
  }
  .home-challenges-enter {
    margin: 12px auto 0 !important;
  }
  /* if parent is flex */
  .home-challenges-cta-row,
  .home-challenges-footer,
  .challenges-enter-row {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
}

/* ============================================================
   20260914comb1c GYM HIDDEN + filter order (Milo)
   Mobile home: Sort full-width top; Hang type then Division; Gym never.
   ============================================================ */
@media (max-width: 900px) {
  body:not(.full-leaderboard-page) .lb-filter-group--gym,
  body:not(.full-leaderboard-page) .lb-gym-filter,
  html[data-wdhc-mobile-filters="chips"] body:not(.full-leaderboard-page) .lb-filter-group--gym,
  html[data-wdhc-mobile-filters="chips"] body:not(.full-leaderboard-page) .lb-gym-filter {
    display: none !important;
  }
  .lb-toolbar-filters--row .lb-filter-group--sort { order: 1 !important; width: 100% !important; }
  .lb-toolbar-filters--row .lb-filter-group--hang { order: 2 !important; width: 100% !important; display: flex !important; }
  .lb-toolbar-filters--row .lb-filter-group--division { order: 3 !important; width: 100% !important; }
  .lb-toolbar-filters--row .lb-toolbar-search { order: 4 !important; }
}

/* ============================================================
   20260914hangmark1 HARD LOCK (Milo): mark RIGHT of gold time
   DOM: .lb-time-main > .lb-time-stack (time, title, weight) + .lb-time-aside (mark)
   Visual:  [gold time] [mark]
            [white title]
            [weight]
   Mark NEVER under the stack. No 3-col grid that stretches row height.
   ============================================================ */

/* Kill prior desktop 3-col / column-main layouts that blow row height */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    grid-template-areas: none !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    grid-column: auto !important;
    grid-row: auto !important;
    min-width: 0 !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    grid-column: auto !important;
    grid-row: auto !important;
    padding-top: 0.12em !important; /* optically center with gold time line */
    margin: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    position: static !important;
    display: inline-flex !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    max-width: 12em !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .time .lb-time-stack .lb-pr-hold,
  .desktop-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    line-height: 1 !important;
    padding-bottom: 0 !important;
  }
}

/* Mobile cards: same geometry, right-aligned in card */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 2px !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    align-self: flex-start !important;
    padding-top: 0.1em !important;
    margin: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-card-right .hang-type-mark {
    position: static !important;
    display: inline-flex !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-align: right !important;
    white-space: normal !important;
    max-width: 11em !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    text-align: right !important;
    margin: 0 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    white-space: nowrap !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-hang-meta {
    display: contents !important;
  }
}

/* Compact mark sizing — never stretch the time column */
.time .lb-time-aside .hang-type-mark,
.desktop-time .lb-time-aside .hang-type-mark,
.lb-card-time .lb-time-aside .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside .hang-type-mark {
  width: auto !important;
  height: auto !important;
  max-height: 1.15em !important;
  min-height: 0 !important;
  line-height: 1 !important;
}

/* Past winners mobile blank strip lock (pack with hangmark deploy) */
@media (max-width: 900px) {
  .home-challenges-winners,
  .home-challenges-winners-list,
  .home-challenges-winners-month-block,
  .home-challenges-block,
  .home-lower-band > .home-challenges-block {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .home-challenges-winners {
    padding: 10px 12px 8px !important;
  }
}

/* Tier legend badge clip into pop % */
.tier-legend-row,
.sidebar-card--tiers .tier-legend-row {
  overflow: visible !important;
  min-width: 0 !important;
}
.tier-legend-row .tier-badge,
.tier-legend-row .tier-contender,
.tier-legend-row .tier-challenger,
.tier-legend-row .tier-pro-gold {
  flex-shrink: 0 !important;
  overflow: visible !important;
}
.tier-legend-pop {
  flex-shrink: 0 !important;
  overflow: visible !important;
  white-space: nowrap !important;
}
.tier-legend-spec {
  min-width: 0 !important;
  overflow: visible !important;
}

/* Hide partner-gym badge when gymPartner is false (data is source of truth);
   also hide on Milo row if a data-name attr is present */
.lb-row[data-athlete="Milo Birk"] .partner-gym-badge,
.lb-row[data-name="Milo Birk"] .partner-gym-badge,
.name-cell[data-athlete="Milo Birk"] .partner-gym-badge {
  display: none !important;
}

/* ============================================================
   20260914fixp0c HARD LOCK — visual QA sweep P0/P1
   ============================================================ */

/* P0-1 reinforce: hang mark RIGHT of gold time (row flex), title+weight under in stack */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: max-content !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    padding-top: 0.12em !important;
    margin: 0 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: max-content !important;
    margin-left: auto !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 2px !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-self: flex-start !important;
    padding-top: 0.1em !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark {
    margin-top: 0 !important;
  }
}

/* P0-2 icon legend open glyph — force ASCII hyphen (beats any stale content) */
.icon-legend-item[open] .icon-legend-summary::after,
details.icon-legend-item[open] > .icon-legend-summary::after {
  content: '-' !important;
}

/* P0-3 Past Winners: when hidden, truly gone (no reserved strip) */
#home-challenges-winners[hidden],
.home-challenges-winners[hidden] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  flex: 0 0 0 !important;
}
@media (max-width: 900px) {
  .home-challenges-block,
  .home-lower-band,
  .main-column .home-lower-band,
  .main-column-stack > .home-lower-band {
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    gap: 6px !important;
    align-items: flex-start !important;
  }
  .home-challenges-actions {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  /* no phantom band between Enter September and World Leaders */
  .home-lower-band + .sidebar-column,
  .main-column-stack {
    row-gap: 0 !important;
  }
}

/* P0-4 Desktop blank under Grip Age / beside challenges — hug content, no stretch */
@media (min-width: 901px) {
  .content-grid {
    align-items: start !important;
  }
  .home-lower-band {
    align-items: start !important;
    align-content: start !important;
  }
  .home-lower-band > .home-challenges-block,
  .home-lower-band > .grip-calc-card,
  .home-lower-band > .home-lower-band__calc {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
  }
  .main-column,
  .sidebar-column {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
  }
}

/* P0-5 Partner gym on Milo — belt-and-suspenders (JS also skips by name) */
.lb-card-name-block .partner-gym-badge[title*="DYNO"],
.lb-card-name .partner-gym-badge[title*="DYNO"],
.name-cell .partner-gym-badge[title*="DYNO"],
.name-wrapper .partner-gym-badge[title*="DYNO Detroit"] {
  display: none !important;
}

/* P0-6 Tier legend not clipped into pop % */
.tier-legend-list,
.sidebar-card--tiers .tier-legend-list {
  overflow: visible !important;
  min-width: 0 !important;
  padding-right: 12px !important;
  padding-left: 12px !important;
}
.tier-legend-row,
.sidebar-card--tiers .tier-legend-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: visible !important;
  min-width: 0 !important;
}
.tier-legend-row .tier-badge,
.tier-legend-row .tier-contender,
.tier-legend-row .tier-challenger,
.tier-legend-row .tier-pro-gold {
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  overflow: visible !important;
}
.tier-legend-spec {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow: visible !important;
}
.tier-legend-pop {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  font-size: 0.88rem !important;
}
.tier-legend-row--pro .tier-legend-pop {
  white-space: normal !important;
  overflow: visible !important;
}
@media (max-width: 900px) {
  .tier-legend-row {
    gap: 8px !important;
  }
  .tier-legend-row .tier-badge {
    min-width: 96px !important;
    max-width: 72px !important;
  }
  .tier-legend-pop {
    font-size: 0.8rem !important;
  }
}

/* P1-7 Mobile sticky SUBMIT must not cover board/sidebar rows */
@media (max-width: 900px) {
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) {
    --wdhc-mobile-cta-h: 58px;
    padding-bottom: calc(var(--wdhc-mobile-cta-h) + env(safe-area-inset-bottom, 0px) + 72px) !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) #leaderboard-body,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .leaderboard,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-column,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .home-lower-band,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .icon-legend-card,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-card--tiers,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-card--leaders {
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 28px) !important;
  }
  .lb-row.lb-mobile-card,
  .lb-row-wrapper {
    scroll-margin-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 24px) !important;
  }
}

/* P1-8a Mobile marquee: contain + readable, no mid-sentence hard clip feel */
@media (max-width: 900px) {
  .marquee-container,
  .wdhc-marquee {
    overflow: hidden !important;
    max-width: 100vw !important;
    padding: 10px 0 !important;
  }
  .marquee-track > span,
  .wdhc-marquee__row > span {
    font-size: 1.05rem !important;
    letter-spacing: 0.08em !important;
  }
}

/* P1-8b Recent carousel: fill frame, kill black empty card */
@media (max-width: 900px) {
  .video-submissions-section--lead .video-carousel-viewport {
    --carousel-visible: 1.15 !important;
    overflow: hidden !important;
  }
  .video-submissions-section--lead .video-carousel-slide {
    display: flex !important;
    justify-content: center !important;
  }
  .video-submissions-section--lead .video-submission-item,
  .video-submissions-section--lead .video-submission-frame {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    background: #0a0a0a !important;
  }
  .video-submissions-section--lead .video-submission-frame video,
  .video-submissions-section--lead .video-submission-frame iframe.submission-video-embed {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
}

/* P1-8c Challenge names / rules: less aggressive truncation on mobile */
@media (max-width: 900px) {
  .post-video-challenge-card .ch-podium__name,
  .post-video-challenge-card .ch-podium__name a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.2 !important;
  }
  .post-video-challenge-card .ch-card__rule,
  .ch-card__rule {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    max-height: none !important;
  }
}
/* 20260914 hangmark-size-align Milo */
/* P0: hang-type mark LARGER + centered on gold Hang Time digits.
   Gold times share ONE baseline across standard + specialty + weighted
   (top-align time stack + reserved title-line slot). Mark stays RIGHT of time;
   white title under; weight under title. Do not blow Grip Age gap. */

/* --- Desktop board: top-align time cell so gold digits share a horizontal line --- */
@media (min-width: 901px) {
  .lb-row > .time,
  .lb-row > .desktop-time,
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-self: start !important;
    padding-top: 2px !important;
  }
  .time .lb-time-inner,
  .desktop-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    /* Reserve title-line slot so standard (no title) matches specialty baseline */
    min-height: calc(1.15em + 2px + 0.85em) !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Title always occupies its slot when present; keep reserved height when empty via stack min-height */
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    min-height: 0.85em !important;
    line-height: 1.15 !important;
    font-size: 0.72rem !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Mark aside: sit on gold time line (not lifted, not mid-stack) */
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    min-height: 1.15em !important;
    height: 1.15em !important;
    transform: none !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    align-self: center !important;
    margin: 0 !important;
    margin-top: 0 !important;
    transform: translateY(1px) !important; /* optical center with gold glyphs */
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    min-height: 26px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 14px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack,
  .time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .time .lb-time-aside .hang-type-mark[data-type="towel_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="towel_weighted"] {
    width: auto !important;
    min-width: 28px !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: none !important;
    font-size: 13px !important;
  }
  .time .hang-type-mark__txt,
  .desktop-time .hang-type-mark__txt {
    font-size: inherit !important;
    line-height: 1 !important;
  }
  .time .hang-type-mark__plus,
  .desktop-time .hang-type-mark__plus {
    width: 12px !important;
    height: 12px !important;
  }
}

/* Kill compact max-height:1.15em shrink that made marks ~14–16px */
.time .lb-time-aside .hang-type-mark,
.desktop-time .lb-time-aside .hang-type-mark,
.lb-card-time .lb-time-aside .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
.time .lb-time-main .hang-type-mark,
.desktop-time .lb-time-main .hang-type-mark,
.lb-row.lb-mobile-card .hang-type-mark,
.lb-card-time .hang-type-mark,
.lb-card-right .hang-type-mark {
  max-height: none !important;
}

/* --- Mobile cards: same geometry, larger mark, top-aligned gold baseline --- */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-card-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-card-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    min-height: calc(1.1em + 2px + 0.75em) !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title {
    display: block !important;
    min-height: 0.75em !important;
    line-height: 1.15 !important;
    font-size: 0.58rem !important;
    text-align: right !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    min-height: 1.1em !important;
    height: 1.1em !important;
    transform: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-card-right .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    transform: translateY(1px) !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 12px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 24px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: none !important;
    font-size: 11px !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark__txt,
  .lb-card-time .hang-type-mark__txt {
    font-size: inherit !important;
    line-height: 1 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark__plus,
  .lb-card-time .hang-type-mark__plus {
    width: 11px !important;
    height: 11px !important;
  }
}

/* Mini boards: bump mark if same shrink applies */
#top-10-list .mini-time .hang-type-mark,
#world-leaders .mini-time .hang-type-mark {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  max-height: none !important;
  font-size: 11px !important;
  transform: none !important;
  align-self: center !important;
}

/* 20260914 recent-caption-size */
/* Recent Submissions carousel: larger NAME / TIME / HANG TYPE (desktop + mobile).
   ~+28-32% vs wdhc-home / mobile bases. Do not touch video quality/autoplay or hang-mark layout. */
.video-submissions-section--lead .video-submission-name,
.video-carousel .video-submission-name,
.video-submission-item .video-submission-name {
  font-size: 1.3rem !important;
  line-height: 1.25 !important;
  letter-spacing: 0.2px !important;
}
.video-submissions-section--lead .video-submission-time,
.video-carousel .video-submission-time,
.video-submission-item .video-submission-time {
  font-size: 1.5rem !important;
  line-height: 1.15 !important;
  color: var(--gold) !important; /* keep gold time gold */
}
.video-submissions-section--lead .video-submission-hangtype,
.video-carousel .video-submission-hangtype,
.video-submission-item .video-submission-hangtype {
  font-size: 0.88rem !important;
  line-height: 1.3 !important;
  letter-spacing: 0.05em !important;
  /* color unchanged (currently gold in home.css; not white) */
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  max-width: 100% !important;
}
.video-submissions-section--lead .video-submission-caption,
.video-carousel .video-submission-caption,
.video-submission-item .video-submission-meta {
  overflow: visible !important;
}
.video-submissions-section--lead .video-submission-name-row,
.video-submissions-section--lead .video-submission-time-row {
  gap: 6px !important;
  flex-wrap: wrap !important;
}

@media (max-width: 900px) {
  .video-submissions-section--lead .video-submission-name,
  .video-carousel .video-submission-name,
  .video-submission-item .video-submission-name {
    font-size: 1.45rem !important;
    line-height: 1.25 !important;
  }
  .video-submissions-section--lead .video-submission-time,
  .video-carousel .video-submission-time,
  .video-submission-item .video-submission-time {
    font-size: 1.66rem !important;
    line-height: 1.15 !important;
    color: var(--gold) !important;
  }
  .video-submissions-section--lead .video-submission-hangtype,
  .video-carousel .video-submission-hangtype,
  .video-submission-item .video-submission-hangtype {
    font-size: 0.9rem !important;
    line-height: 1.3 !important;
  }
}

/* 20260914 hangmark-size-align Milo — pass2: mark ~1.2 of gold digit; aside must not crush */
@media (min-width: 901px) {
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    padding-top: 0 !important;
    margin: 0 !important;
    /* inherit gold time font-size so em sizing tracks 1.3–2.25rem digits */
    font-size: inherit !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    width: 1.2em !important;
    height: 1.2em !important;
    min-width: 1.2em !important;
    min-height: 1.2em !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 0.48em !important; /* of time-sized aside → ~glyphs inside */
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    /* optical center vs gold digit line (mark taller than 1em line → nudge down into center) */
    transform: translateY(0.05em) !important;
    align-self: center !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack,
  .time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .time .lb-time-aside .hang-type-mark[data-type="towel_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="towel_weighted"] {
    width: auto !important;
    min-width: 1.25em !important;
    height: 1.2em !important;
    min-height: 1.2em !important;
    max-height: none !important;
    font-size: 0.42em !important;
    padding-left: 0.15em !important;
    padding-right: 0.15em !important;
  }
  .time .hang-type-mark__plus,
  .desktop-time .hang-type-mark__plus {
    width: 0.9em !important;
    height: 0.9em !important;
    transform: none !important;
  }
  .time .hang-type-mark__txt,
  .desktop-time .hang-type-mark__txt {
    font-size: 1em !important;
    line-height: 1 !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    padding-top: 0 !important;
    margin: 0 !important;
    font-size: inherit !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-card-right .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    width: 1.25em !important;
    height: 1.25em !important;
    min-width: 1.25em !important;
    min-height: 1.25em !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 0.55em !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transform: translateY(0.06em) !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 1.3em !important;
    height: 1.25em !important;
    min-height: 1.25em !important;
    max-height: none !important;
    font-size: 0.5em !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark__plus,
  .lb-card-time .hang-type-mark__plus {
    width: 0.9em !important;
    height: 0.9em !important;
    transform: none !important;
  }
}

/* Floor so em never collapses below readable on tiny time fonts */
@media (min-width: 901px) {
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    min-width: 24px !important;
    min-height: 24px !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark {
    min-width: 22px !important;
    min-height: 22px !important;
  }
}

/* 20260914 hangmark-size-align Milo — pass3: EXPLICIT px (em cascade shrank mobile) */
@media (min-width: 901px) {
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 15px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack,
  .time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .time .lb-time-aside .hang-type-mark[data-type="towel_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="towel_weighted"] {
    width: auto !important;
    min-width: 30px !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: none !important;
    font-size: 13px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  .time .hang-type-mark__plus,
  .desktop-time .hang-type-mark__plus,
  .time .lb-time-aside .hang-type-mark__plus,
  .desktop-time .lb-time-aside .hang-type-mark__plus {
    width: 14px !important;
    height: 14px !important;
    transform: none !important;
  }
  .time .hang-type-mark__txt,
  .desktop-time .hang-type-mark__txt {
    font-size: inherit !important;
    line-height: 1 !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row.lb-mobile-card .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    justify-content: center !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-card-right .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-main .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 13px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 26px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: none !important;
    font-size: 12px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark__plus,
  .lb-card-time .hang-type-mark__plus {
    width: 12px !important;
    height: 12px !important;
    transform: none !important;
  }
}

/* Mobile aside/mark: if time line ~20px, keep mark 24px and let aside grow to mark */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
  }
}

/* LOCK 20260914 past-winners-grip Milo */
/* Restore desktop-grip-age-expand: Grip Age calc description fills black space
   RIGHT of Past Winners, flush to CTA top — no vertical shift of challenges/CTA.
   Also: larger Past Winners hero, larger Longest Hang/Most PRs labels, gold months,
   athlete names share one left edge. Do not touch hang-mark, marquee 68, filters, weighted stack. */

.home-pw-grip-band {
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

@media (min-width: 901px) {
  .home-pw-grip-band {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, 1fr) !important;
    column-gap: 18px !important;
    row-gap: 10px !important;
    align-items: start !important;
    margin-top: 6px !important;
  }

  /* When Past Winners hidden, blurb still occupies the band without leaving a hole */
  .home-pw-grip-band:has(#home-challenges-winners[hidden]) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .home-pw-grip-band:has(#home-challenges-winners[hidden]) > .grip-age-blurb {
    grid-column: 1 !important;
  }

  .home-pw-grip-band > .home-challenges-winners {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: start !important;
  }

  .home-pw-grip-band > .grip-age-blurb {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 14px 16px 12px !important;
    border: 1px solid rgba(212, 175, 55, 0.22) !important;
    border-radius: 14px !important;
    background:
      radial-gradient(ellipse 80% 120% at 0% 0%, rgba(212, 175, 55, 0.08), transparent 55%),
      rgba(10, 10, 12, 0.94) !important;
  }

  .home-pw-grip-band > .grip-age-blurb > summary {
    flex: 0 0 auto !important;
  }

  .home-pw-grip-band > .grip-age-blurb > .grip-age-blurb-body {
    flex: 1 1 auto !important;
    display: block !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
  }

  /* Keep challenges + CTA from shifting vertically */
  .home-challenges-block > .home-lower-challenges,
  .home-challenges-block > .home-challenges-hero,
  .home-challenges-block > .home-challenges-actions {
    flex: 0 0 auto !important;
  }
  .home-challenges-block {
    align-items: stretch !important;
  }
  .content-grid > .cta-section--full-grid,
  .content-grid > .cta-section--under-submissions {
    /* do not bump margin — fill existing void only */
    margin-top: 12px !important;
  }
}

/* 2) Past Winners hero LARGER */
.home-challenges-winners-title {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.2 !important;
  color: #f0d070 !important;
  -webkit-text-fill-color: #f0d070 !important;
  margin: 0 0 12px !important;
}

/* 5) Month text GOLD — breaks the white wall */
.home-challenges-winners-month {
  color: var(--gold, #D4AF37) !important;
  -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  font-size: 1.12rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}

/* 4) Longest Hang + Most PRs labels LARGER */
.home-challenges-winners-type {
  font-size: 0.92rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  color: #e8d9a0 !important;
  -webkit-text-fill-color: #e8d9a0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  max-width: none !important;
}

/* 3) Athlete names share one left edge (fixed type column) */
.home-challenges-winners-item {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: baseline !important;
  column-gap: 12px !important;
  row-gap: 2px !important;
}
.home-challenges-winners-type {
  grid-column: 1 / -1 !important;
}
.home-challenges-winners-name {
  justify-self: start !important;
  text-align: left !important;
  min-width: 0 !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Blurb typography: readable fill next to winners */
.home-pw-grip-band .grip-age-blurb-lead {
  font-size: 0.98rem !important;
  line-height: 1.45 !important;
  color: #d8d0c0 !important;
  margin: 0 0 8px !important;
}
.home-pw-grip-band .grip-age-blurb-more {
  font-size: 0.82rem !important;
  letter-spacing: 0.12em !important;
  color: var(--gold, #D4AF37) !important;
  -webkit-text-fill-color: var(--gold, #D4AF37) !important;
}
.home-pw-grip-band .grip-age-blurb-body {
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
  color: #c8c0b0 !important;
}

@media (max-width: 900px) {
  .home-pw-grip-band {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 8px !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    margin-top: 0 !important;
  }
  .home-challenges-winners-item {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .home-challenges-winners-type {
    grid-column: 1 / -1 !important;
    white-space: normal !important;
    font-size: 0.88rem !important;
  }
  .home-challenges-winners-title {
    font-size: 1.05rem !important;
  }
}

/* ============================================================
   20260914grokp0v HARD LOCK — board P0 visual (Grok Build)
   Must stay LAST. Do not insert rules after this block.
   1) Tier pill left heads + glow unclipped
   2) Hang-type mark optically centered DOWN with gold digits
   3) Past Winners / Grip Age band fill + type/gold/align
   4) Enter September centered under challenge boards
   ============================================================ */

/* --- 1) TIER PILL HEADS: overflow visible on COLUMN, pad-left for glow --- */
.lb-row > .tier-col,
.lb-row .tier-col,
.leaderboard .lb-row > .tier-col,
.leaderboard .tier-col,
.lb-card-tier-row,
.lb-row.lb-mobile-card .lb-card-tier-row {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  padding-left: 12px !important;
  box-sizing: border-box !important;
}

/* Badge keeps overflow:hidden so the left rail clips to the pill shape.
   Parent column overflow:visible is what un-clips the rounded head + outer glow. */
.lb-row > .tier-col .tier-badge,
.leaderboard .lb-row .tier-badge,
.leaderboard .tier-col .tier-badge {
  overflow: hidden !important;
  clip-path: none !important;
  contain: none !important;
  box-sizing: border-box !important;
}

.lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row,
.lb-card-head,
.lb-card-name-block,
.lb-row.lb-mobile-card .lb-card-head,
.lb-row.lb-mobile-card .lb-card-name-block {
  overflow: visible !important;
}

/* Widen ONLY the tier track so 118px pill + pad + glow fit. Keep other tracks. */
@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 136px minmax(136px, 1.3fr) minmax(96px, 0.85fr) minmax(112px, 0.95fr) minmax(112px, 132px) minmax(52px, 70px) minmax(64px, 0.5fr) !important;
  }
  .lb-row > .tier-col,
  .leaderboard .tier-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: center !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 146px minmax(188px, 1.45fr) minmax(104px, 0.9fr) minmax(128px, 0.95fr) minmax(112px, 128px) minmax(60px, 80px) minmax(76px, 0.55fr) !important;
  }
  .lb-row > .tier-col,
  .leaderboard .tier-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: center !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-tier-under-name,
  .lb-row.lb-mobile-card .tier-badge.lb-card-tier-under-name,
  .lb-card-tier-under-name.tier-badge {
    overflow: hidden !important;
    clip-path: none !important;
    padding-left: 16px !important;
    padding-right: 10px !important;
    margin-left: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block,
  .lb-row.lb-mobile-card .lb-card-head {
    overflow: visible !important;
  }
}

.lb-row .tier-badge::before,
.lb-row.lb-mobile-card .tier-badge::before,
.lb-card-tier-under-name.tier-badge::before,
.leaderboard .tier-col .tier-badge::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  border-radius: 999px 0 0 999px !important;
}

/* --- 2) HANG TYPE MARK: move DOWN to optical center of gold digits ---
   Mark stays RIGHT of time. White title under. Weight under title.
   Size ~28 desktop / ~24 mobile. Aside must not clip the nudge. */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    align-self: flex-start !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: none !important;
    max-height: none !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    align-self: flex-start !important;
    /* Optical: Oswald digits sit lower in the em box than a 28px badge */
    transform: translateY(7px) !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack,
  .time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .time .lb-time-aside .hang-type-mark[data-type="towel_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="towel_weighted"] {
    width: auto !important;
    min-width: 30px !important;
    height: 28px !important;
    min-height: 28px !important;
    transform: translateY(7px) !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row.lb-mobile-card .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: flex-start !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-card-right .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-main .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: none !important;
    max-height: none !important;
    align-self: flex-start !important;
    transform: translateY(4px) !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 26px !important;
    height: 24px !important;
    min-height: 24px !important;
    transform: translateY(4px) !important;
  }
}

/* --- 3) PAST WINNERS / GRIP AGE BAND --- */
@media (min-width: 901px) {
  .home-challenges-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
  }
  .home-pw-grip-band {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 1fr) !important;
    column-gap: 16px !important;
    align-items: stretch !important;
    width: 100% !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
  }
  .home-pw-grip-band:has(#home-challenges-winners[hidden]) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .home-pw-grip-band:has(#home-challenges-winners[hidden]) > .grip-age-blurb {
    grid-column: 1 !important;
  }
  .home-pw-grip-band > .home-challenges-winners {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 20px 20px 16px !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    height: auto !important;
    min-height: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 18px 18px 16px !important;
  }
  .home-pw-grip-band > .grip-age-blurb > summary {
    flex: 0 0 auto !important;
  }
  .home-pw-grip-band > .grip-age-blurb > .grip-age-blurb-body {
    flex: 1 1 auto !important;
  }
  .home-challenges-winners-list {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .content-grid > .cta-section--full-grid,
  .content-grid > .cta-section--under-submissions {
    margin-top: 8px !important;
  }
}

.home-challenges-winners-title {
  font-size: 1.42rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  color: #f0d070 !important;
  -webkit-text-fill-color: #f0d070 !important;
  margin: 0 0 16px !important;
}
.home-challenges-winners-month {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.28rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-align: center !important;
}
.home-challenges-winners-item {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas: "type type" "name metric" !important;
  align-items: baseline !important;
  column-gap: 10px !important;
  row-gap: 3px !important;
}
.home-challenges-winners-type {
  grid-area: type !important;
  grid-column: 1 / -1 !important;
  display: block !important;
  font-size: 1.02rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  max-width: none !important;
}
.home-challenges-winners-name {
  grid-area: name !important;
  justify-self: start !important;
  text-align: left !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: 1.08rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.home-challenges-winners-metric {
  grid-area: metric !important;
  justify-self: end !important;
  white-space: nowrap !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.08rem !important;
  font-weight: 700 !important;
}

@media (max-width: 900px) {
  .home-pw-grip-band {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .home-pw-grip-band > .home-challenges-winners,
  .home-pw-grip-band > .grip-age-blurb {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    align-self: stretch !important;
  }
  .home-challenges-winners-list {
    grid-template-columns: 1fr !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
  }
  .home-challenges-winners,
  .home-challenges-winners-list,
  .home-challenges-winners-month-block,
  .home-challenges-block,
  .home-lower-band,
  .main-column .home-lower-band {
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .home-challenges-winners {
    padding: 14px 14px 12px !important;
  }
  .home-challenges-winners-title {
    font-size: 1.18rem !important;
    margin: 0 0 10px !important;
  }
  .content-grid > .cta-section--under-submissions,
  .content-grid > .cta-section--full-grid {
    margin-top: 8px !important;
  }
}

/* --- 4) Enter September centered under challenge boards (desktop) --- */
@media (min-width: 901px) {
  .home-challenges-actions,
  .home-challenges-enter-wrap,
  .challenges-enter-wrap,
  .challenge-enter-wrap {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  a#home-challenges-enter,
  .home-challenges-enter {
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* ============================================================
   20260914grokp0v END REINFORCE — last rules in this file
   Do not append after this. overflow:hidden stays on the BADGE so the
   left rail clips to the round pill. overflow:visible on the COLUMN
   plus padding-left is what un-clips the rounded head + glow.
   ============================================================ */
.lb-row > .tier-col .tier-badge,
.leaderboard .lb-row .tier-badge,
.leaderboard .tier-col .tier-badge,
.lb-row .tier-col .tier-badge {
  overflow: hidden !important;
}
.lb-row > .tier-col,
.lb-row .tier-col,
.leaderboard .lb-row > .tier-col,
.leaderboard .tier-col {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  padding-left: 0 !important;
}

.home-challenges-winners-title {
  font-size: 1.42rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  color: #f0d070 !important;
  -webkit-text-fill-color: #f0d070 !important;
}
.home-challenges-winners-month,
.home-pw-grip-band .home-challenges-winners-month {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.28rem !important;
  font-weight: 700 !important;
}
.home-challenges-winners-type {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.02rem !important;
  font-weight: 800 !important;
}
.home-challenges-winners-name {
  justify-self: start !important;
  text-align: left !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-width: 0 !important;
}
@media (min-width: 901px) {
  .home-pw-grip-band > .home-challenges-winners {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    align-self: stretch !important;
    min-height: 100% !important;
  }
}

/* LOCK 20260914 index-audit-p0 */
/* FINAL P0 pack (index FULL AUDIT). After grokp0v. Do not strip.
   1) Enter center under boards  2) mobile Past Winners/boards phantom gap=0
   3) PW LARGER hero + type>name + gold months + name column align
   4) marks enlarge + v-center with gold time (Tw/4F/1-90)
   Keep: Pro note, icon legend ASCII -, Milo no partner gym, marquee 68, metric, autoplay. */

@media (min-width: 901px) {
  .home-challenges-block > .home-challenges-actions,
  .home-challenges-actions,
  .home-challenges-enter-wrap,
  .home-challenges-cta-row,
  .challenges-enter-row,
  .challenges-enter-wrap,
  .challenge-enter-wrap {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
  a#home-challenges-enter,
  .home-challenges-enter {
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 900px) {
  .post-video-challenge-boards.ch-live-grid--home,
  .ch-live-grid--home,
  .home-lower-band > .home-challenges-block > .home-lower-challenges,
  .home-challenges-block > .home-lower-challenges {
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .home-challenges-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
    height: auto !important;
    gap: 8px !important;
  }
  .home-pw-grip-band,
  .home-challenges-winners,
  .home-challenges-winners-list,
  .home-challenges-winners-month-block,
  .home-challenges-actions {
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
  }
  #home-challenges-winners[hidden],
  .home-challenges-winners[hidden] {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    flex: 0 0 0 !important;
  }
  .home-pw-grip-band {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 8px !important;
    padding-bottom: 0 !important;
  }
}

.home-challenges-winners {
  padding: 14px 14px 12px !important;
  border: 1px solid rgba(212, 175, 55, 0.28) !important;
  border-radius: 16px !important;
  background:
    radial-gradient(ellipse 90% 80% at 0% 0%, rgba(212, 175, 55, 0.1), transparent 55%),
    rgba(12, 12, 14, 0.96) !important;
}
.home-challenges-winners-title {
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  color: #f0d070 !important;
  -webkit-text-fill-color: #f0d070 !important;
  margin: 0 0 14px !important;
}
.home-challenges-winners-month,
.home-pw-grip-band .home-challenges-winners-month {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin: 0 0 10px !important;
}
.home-challenges-winners-type {
  grid-column: auto !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  line-height: 1.2 !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  max-width: none !important;
}
.home-challenges-winners-item {
  display: grid !important;
  grid-template-columns: 9.5rem minmax(0, 1fr) auto !important;
  align-items: baseline !important;
  column-gap: 12px !important;
}
.home-challenges-winners-name {
  justify-self: start !important;
  text-align: left !important;
  min-width: 0 !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
@media (max-width: 900px) {
  .home-challenges-winners-title { font-size: 1.2rem !important; }
  .home-challenges-winners-month { font-size: 1.12rem !important; }
  .home-challenges-winners-item {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .home-challenges-winners-type {
    grid-column: 1 / -1 !important;
    white-space: normal !important;
    font-size: 1rem !important;
  }
}

@media (min-width: 901px) {
  .home-pw-grip-band {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, 1fr) !important;
    column-gap: 18px !important;
    align-items: stretch !important;
    margin-top: 8px !important;
  }
  .home-pw-grip-band > .home-challenges-winners {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    margin: 0 !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    min-height: 100% !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .home-pw-grip-band > .grip-age-blurb > .grip-age-blurb-body {
    flex: 1 1 auto !important;
    display: block !important;
  }
  .home-challenges-block > .home-lower-challenges,
  .home-challenges-block > .home-challenges-hero,
  .home-challenges-block > .home-challenges-actions {
    flex: 0 0 auto !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 6px !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    height: 24.8px !important;
    min-height: 24.8px !important;
    max-height: 24.8px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
    line-height: 1 !important;
    overflow: visible !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 13px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 28px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: none !important;
    font-size: 12px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
}

/* ============================================================
   20260915p0fix1 HARD LOCK — LAST. Revert squeezed tier heads.
   Padding-left / overflow hacks from 20260914grokp0v squashed the
   left capsule. Restore full-round 118px pills. Gold times share
   one baseline via reserved under-title (DEAD HANG on open rows).
   ============================================================ */

.lb-row > .tier-col,
.lb-row .tier-col,
.leaderboard .lb-row > .tier-col,
.leaderboard .tier-col,
.lb-card-tier-row,
.lb-row.lb-mobile-card .lb-card-tier-row,
.tier-legend-row,
.tier-legend-list,
.sidebar-card--tiers .tier-legend-row {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  padding-left: 0 !important;
}

.lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row,
.lb-card-head,
.lb-card-name-block {
  overflow: visible !important;
}

.lb-row > .tier-col .tier-badge,
.leaderboard .lb-row .tier-badge,
.leaderboard .tier-col .tier-badge,
.lb-row .tier-col .tier-badge,
.tier-legend-row .tier-badge,
.tier-legend-list .tier-badge,
.sidebar-card--tiers .tier-legend-row .tier-badge,
.sidebar-pro-brand .tier-badge {
  overflow: hidden !important;
  clip-path: none !important;
  contain: none !important;
  border-radius: 999px !important;
  box-sizing: border-box !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  flex-shrink: 0 !important;
  padding: 0 10px 0 16px !important;
}

.lb-row .tier-badge::before,
.leaderboard .tier-col .tier-badge::before,
.tier-legend-row .tier-badge::before,
.lb-card-tier-under-name.tier-badge::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 7px !important;
  border-radius: 999px 0 0 999px !important;
}

@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 134px minmax(136px, 1.3fr) minmax(96px, 0.85fr) minmax(112px, 0.95fr) minmax(112px, 132px) minmax(52px, 70px) minmax(64px, 0.5fr) !important;
  }
  .lb-row > .tier-col,
  .leaderboard .tier-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: center !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 142px minmax(188px, 1.45fr) minmax(104px, 0.9fr) minmax(128px, 0.95fr) minmax(112px, 128px) minmax(60px, 80px) minmax(76px, 0.55fr) !important;
  }
  .lb-row > .tier-col,
  .leaderboard .tier-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    justify-content: center !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-tier-under-name,
  .lb-row.lb-mobile-card .tier-badge.lb-card-tier-under-name,
  .lb-card-tier-under-name.tier-badge {
    overflow: hidden !important;
    clip-path: none !important;
    border-radius: 999px !important;
    padding: 0 10px 0 16px !important;
    margin-left: 0 !important;
  }
}

@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: auto auto !important;
    grid-template-rows: auto auto auto !important;
    grid-template-areas: none !important;
    align-items: start !important;
    justify-content: center !important;
    column-gap: 6px !important;
    row-gap: 2px !important;
    flex-direction: unset !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / -1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    line-height: 1 !important;
    display: block !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    min-height: 0.86em !important;
    line-height: 1.15 !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    visibility: visible !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 12em !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
    overflow: visible !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    align-self: center !important;
    margin: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 28px !important;
    height: 24px !important;
    min-height: 24px !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    height: 20.2px !important;
    min-height: 20.2px !important;
    max-height: 20.2px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-height: none !important;
    font-size: 11px !important;
    margin: 0 !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 24px !important;
    height: 20px !important;
    min-height: 20px !important;
    font-size: 11px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
  }
}

/* LOCK 20260915 time-baseline
   Gold hang-time digits share ONE horizontal baseline on every row.
   Cause: specialty/weighted title (and +lb) grew the stack; standard had no under-slot
   so grid align-items:center lifted specialty digits. Fix: top-align the time cell +
   reserved title-line slot on every row (empty spacer OK). Mark stays RIGHT of time,
   optically centered on the digits. Title under time (white). Weight under title. */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    align-self: start !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-top: 0 !important;
    overflow: visible !important;
  }
  .time .lb-time-inner,
  .desktop-time .lb-time-inner,
  .leaderboard .time .lb-time-inner,
  .leaderboard .desktop-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: max-content !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .leaderboard .time .lb-time-stack,
  .leaderboard .desktop-time .lb-time-stack {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto 16px auto !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 2px 0 !important;
    min-height: 0 !important;
    width: max-content !important;
    max-width: 100% !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .time .lb-best-time,
  .leaderboard .desktop-time .lb-best-time {
    grid-row: 1 !important;
    grid-column: 1 !important;
    display: block !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--gold, #D4AF37) !important;
    -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title,
  .leaderboard .time .lb-hang-title,
  .leaderboard .desktop-time .lb-hang-title {
    grid-row: 2 !important;
    grid-column: 1 !important;
    display: block !important;
    box-sizing: border-box !important;
    min-height: 16px !important;
    height: 16px !important;
    max-height: 16px !important;
    line-height: 16px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    max-width: 12em !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .time .lb-hang-title--empty,
  .desktop-time .lb-hang-title--empty {
    visibility: hidden !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    pointer-events: none !important;
  }
  .time .lb-time-stack .lb-pr-hold,
  .desktop-time .lb-time-stack .lb-pr-hold,
  .leaderboard .time .lb-time-stack .lb-pr-hold,
  .leaderboard .desktop-time .lb-time-stack .lb-pr-hold {
    grid-row: 3 !important;
    grid-column: 1 !important;
    display: block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    height: 1em !important;
    min-height: 1em !important;
    max-height: 1em !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    overflow: visible !important;
    transform: none !important;
  }
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark,
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-width: none !important;
    max-height: none !important;
    font-size: 14px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 3px !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    /* Oswald digits sit slightly low in the em box vs a 28px badge */
    transform: translateY(4px) !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack,
  .time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted"],
  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_30s"],
  .time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .time .lb-time-aside .hang-type-mark[data-type="towel_weighted"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_upright_side_pinch"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_lock_off_90"],  .desktop-time .lb-time-aside .hang-type-mark[data-type="one_arm_weighted_lock_off_90"], .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="towel_weighted"] {
    width: auto !important;
    min-width: 30px !important;
    height: 28px !important;
    min-height: 28px !important;
    transform: translateY(4px) !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-card-right {
    align-self: start !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-card-time {
    align-self: start !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-card-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto 13px auto !important;
    align-items: end !important;
    justify-items: end !important;
    gap: 1px 0 !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    grid-row: 1 !important;
    grid-column: 1 !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--gold, #D4AF37) !important;
    -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title {
    grid-row: 2 !important;
    grid-column: 1 !important;
    display: block !important;
    box-sizing: border-box !important;
    min-height: 13px !important;
    height: 13px !important;
    max-height: 13px !important;
    line-height: 13px !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: right !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 11em !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title--empty,
  .lb-card-time .lb-hang-title--empty {
    visibility: hidden !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    pointer-events: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    grid-row: 3 !important;
    grid-column: 1 !important;
    display: block !important;
    text-align: right !important;
    margin: 0 !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    height: 1em !important;
    min-height: 1em !important;
    max-height: 1em !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-height: none !important;
    font-size: 12px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform: translateY(3px) !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark.is-long,
  .lb-card-time .hang-type-mark.is-long,
  .lb-row.lb-mobile-card .hang-type-mark.is-stack,
  .lb-card-time .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 26px !important;
    height: 24px !important;
    min-height: 24px !important;
    transform: translateY(3px) !important;
  }
}

/* === GROKP0V TRUE LAST 20260914grokp0v === */
/* This block must be the last CSS in this file. */

.lb-row > .tier-col .tier-badge,
.leaderboard .lb-row .tier-badge,
.leaderboard .tier-col .tier-badge {
  overflow: hidden !important;
}
.lb-row > .tier-col,
.lb-row .tier-col,
.leaderboard .lb-row > .tier-col,
.leaderboard .tier-col {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  padding-left: 0 !important;
}

@media (min-width: 901px) {
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-items: flex-start !important;
    align-self: flex-start !important;
    overflow: visible !important;
    transform: none !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .time .lb-time-aside .hang-type-mark,
  .leaderboard .desktop-time .lb-time-aside .hang-type-mark,
  .time .lb-time-main .hang-type-mark,
  .desktop-time .lb-time-main .hang-type-mark {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    max-height: none !important;
    transform: translateY(7px) !important;
    align-self: flex-start !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 30px !important;
    height: 28px !important;
    min-height: 28px !important;
    transform: translateY(7px) !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    max-height: none !important;
    transform: translateY(4px) !important;
  }
}

@media (min-width: 901px) {
  .home-pw-grip-band {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 1fr) !important;
    align-items: stretch !important;
  }
  .home-pw-grip-band > .home-challenges-winners {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    align-self: stretch !important;
    min-height: 100% !important;
  }
  .home-challenges-actions,
  .home-challenges-block > .home-challenges-actions {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  a#home-challenges-enter,
  .home-challenges-enter {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.home-challenges-winners-title {
  font-size: 1.42rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  color: #f0d070 !important;
  -webkit-text-fill-color: #f0d070 !important;
}
.home-challenges-winners-month {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.28rem !important;
  font-weight: 700 !important;
}
.home-challenges-winners-item {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas: "type type" "name metric" !important;
  column-gap: 10px !important;
  row-gap: 3px !important;
}
.home-challenges-winners-type {
  grid-area: type !important;
  grid-column: 1 / -1 !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  font-size: 1.02rem !important;
  font-weight: 800 !important;
}
.home-challenges-winners-name {
  grid-area: name !important;
  justify-self: start !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.home-challenges-winners-metric {
  grid-area: metric !important;
  justify-self: end !important;
  color: #D4AF37 !important;
  white-space: nowrap !important;
}

/* ============================================================
   20260915p0fix1 LAST. Revert squeezed tier heads. Align gold times.
   Do not append after this. padding-left on .tier-col is FORBIDDEN.
   ============================================================ */

.lb-row > .tier-col,
.lb-row .tier-col,
.leaderboard .lb-row > .tier-col,
.leaderboard .tier-col,
.lb-card-tier-row,
.tier-legend-row,
.tier-legend-list,
.sidebar-card--tiers .tier-legend-row {
  overflow: visible !important;
  clip-path: none !important;
  contain: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row,
.lb-card-head,
.lb-card-name-block {
  overflow: visible !important;
}

.lb-row > .tier-col .tier-badge,
.leaderboard .lb-row .tier-badge,
.leaderboard .tier-col .tier-badge,
.lb-row .tier-col .tier-badge,
.tier-legend-row .tier-badge,
.tier-legend-list .tier-badge,
.sidebar-card--tiers .tier-legend-row .tier-badge,
.sidebar-pro-brand .tier-badge {
  overflow: hidden !important;
  clip-path: none !important;
  contain: none !important;
  border-radius: 999px !important;
  box-sizing: border-box !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  flex-shrink: 0 !important;
  padding: 0 10px 0 16px !important;
}

.lb-row .tier-badge::before,
.leaderboard .tier-col .tier-badge::before,
.tier-legend-row .tier-badge::before,
.lb-card-tier-under-name.tier-badge::before {
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 7px !important;
  border-radius: 999px 0 0 999px !important;
}

@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 134px minmax(136px, 1.3fr) minmax(96px, 0.85fr) minmax(112px, 0.95fr) minmax(112px, 132px) minmax(52px, 70px) minmax(64px, 0.5fr) !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 142px minmax(188px, 1.45fr) minmax(104px, 0.9fr) minmax(128px, 0.95fr) minmax(112px, 128px) minmax(60px, 80px) minmax(76px, 0.55fr) !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-tier-under-name,
  .lb-card-tier-under-name.tier-badge {
    overflow: hidden !important;
    border-radius: 999px !important;
    padding: 0 10px 0 16px !important;
    margin-left: 0 !important;
  }
}

@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    align-self: start !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    line-height: 1 !important;
    display: block !important;
    color: var(--gold, #D4AF37) !important;
    -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    min-height: 16px !important;
    line-height: 1.15 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    height: 1em !important;
    min-height: 1em !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    transform: none !important;
    align-self: center !important;
    margin: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark.is-long,
  .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .time .lb-time-aside .hang-type-mark.is-stack,
  .desktop-time .lb-time-aside .hang-type-mark.is-stack {
    width: auto !important;
    min-width: 28px !important;
    height: 24px !important;
    min-height: 24px !important;
    transform: none !important;
  }
}

/* END 20260915p0fix1 */

/* ============================================================
   LOCK 20260915 timealign1 LAST. Gold hang times share one desktop
   baseline. Standard DEAD HANG title uses the same 16px slot as
   specialty titles. ui-locks must load after gripright-restore.
   Do not append after this.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row,
  .lb-row {
    align-items: start !important;
  }
  .leaderboard .lb-row > .time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    align-self: start !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    align-items: center !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .lb-row .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 2px !important;
    min-height: 0 !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    display: block !important;
    line-height: 1 !important;
    height: auto !important;
    color: var(--gold, #D4AF37) !important;
    -webkit-text-fill-color: var(--gold, #D4AF37) !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title,
  .time .lb-hang-title--empty,
  .desktop-time .lb-hang-title--empty,
  .lb-row .lb-hang-title {
    display: block !important;
    visibility: visible !important;
    min-height: 16px !important;
    height: 16px !important;
    line-height: 16px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }
}
/* END 20260915 timealign1 */

/* LOCK 20260915 chtitle1: mobile Longest Hang / Heaviest Weight titles slightly larger */
@media (max-width: 900px) {
  #post-video-challenge-label-longest,
  #post-video-challenge-label-rotating,
  .home-lower-challenges .ch-card__title,
  .post-video-challenge-card .ch-card__title {
    font-size: 1.48rem !important;
    line-height: 1.12 !important;
    letter-spacing: 0.02em !important;
  }
}
/* END 20260915 chtitle1 */

/* LOCK 20260915 mobstack1
   Mobile only: Leaderboard, then Tier classifications, then the rest.
   Flatten wrappers with display:contents so sidebar tiers can sit under the board.
   Kill leftover black voids under sections. Desktop grid unchanged. */
@media (max-width: 900px) {
  .content-grid {
    display: flex !important;
    flex-direction: column !important;
    row-gap: 8px !important;
    gap: 8px !important;
    min-height: 0 !important;
    height: auto !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  .content-grid > .main-column,
  .content-grid > .main-column > .main-column-stack,
  .content-grid > .sidebar-column,
  .content-grid > .sidebar-column > .sidebar-upper {
    display: contents !important;
  }
  .content-grid .video-submissions-section,
  .content-grid .video-submissions-section--lead { order: 1 !important; }
  .content-grid .controls { order: 2 !important; }
  .content-grid .leaderboard { order: 3 !important; }
  .content-grid .sidebar-card--tiers { order: 4 !important; }
  .content-grid .home-lower-band { order: 5 !important; }
  .content-grid .sidebar-card--leaders { order: 6 !important; }
  .content-grid .icon-legend-card { order: 7 !important; }
  .content-grid .grip-calc-card,
  .content-grid .home-lower-band__calc { order: 8 !important; }
  .content-grid > .cta-section,
  .content-grid > .cta-section--full-grid { order: 9 !important; }
  .content-grid > .wdhc-friend-share { order: 10 !important; }

  .leaderboard,
  .controls,
  .sidebar-card--tiers,
  .home-lower-band,
  .sidebar-card--leaders,
  .icon-legend-card,
  .grip-calc-card,
  .video-submissions-section {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
    flex: 0 0 auto !important;
  }
  .leaderboard {
    padding-bottom: 4px !important;
  }
  .sidebar-card--tiers {
    margin-top: 4px !important;
    padding-bottom: 8px !important;
  }
  .home-lower-band,
  .home-challenges-block,
  .home-challenges-winners,
  .home-pw-grip-band {
    min-height: 0 !important;
    height: auto !important;
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    flex-grow: 0 !important;
  }
  .home-challenges-block::before {
    margin: 10px auto 8px !important;
    height: 1px !important;
  }
  .ch-live-grid--home,
  .post-video-challenge-boards {
    flex-grow: 0 !important;
    min-height: 0 !important;
  }
  #lb-status:empty,
  #current-cat-display {
    display: none !important;
    margin: 0 !important;
    height: 0 !important;
    padding: 0 !important;
  }
  #leaderboard-footer-cta[hidden] {
    display: none !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  main.main-content,
  .main-content,
  .container {
    padding-bottom: 8px !important;
    min-height: 0 !important;
  }
}
/* END 20260915 mobstack1 */

/* LOCK 20260915 markslot1
   Gold hang times share one x-column. Hang-type mark lives in a reserved
   36px slot to the RIGHT. Empty slot on standard dead hang so 1:29 does
   not slide into the mark column. Tabular nums. Desktop + mobile cards. */
.hang-type-mark--empty {
  visibility: hidden !important;
  pointer-events: none !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    width: 100% !important;
  }
  .time .lb-time-inner,
  .desktop-time .lb-time-inner {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content 36px !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: max-content !important;
    max-width: 12em !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    font-variant-numeric: tabular-nums !important;
    text-align: center !important;
    width: auto !important;
    min-width: 4.6ch !important;
    line-height: 1 !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    text-align: center !important;
    width: max-content !important;
    max-width: 12em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 2.25rem !important;
    max-height: 2.25rem !important;
    align-self: start !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    align-self: center !important;
    margin: 0 !important;
    transform: none !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px !important;
    column-gap: 4px !important;
    align-items: center !important;
    justify-content: stretch !important;
    width: 100% !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    justify-content: flex-end !important;
    align-items: baseline !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    font-variant-numeric: tabular-nums !important;
    text-align: right !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: flex !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 36px !important;
    min-width: 36px !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark {
    grid-column: auto !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-card-time .lb-pr-hold {
    grid-column: 1 !important;
  }
}
/* END 20260915 markslot1 */

/* LOCK 20260915 nostatus1: no "Showing N of N athletes" / "Most recent" line */
#lb-status,
.lb-status {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
/* END 20260915 nostatus1 */

/* ============================================================
   LOCK 20260915 loadunder1
   Milo: +lb belongs UNDER the hang-type title, not on the gold time line.
   Shape: time, white title, gold +lb. Mark in a 36px slot to the RIGHT of the time.
   Empty mark slot on standard dead hang so times share one x-column.
   ============================================================ */
@media (min-width: 901px) {
  .time .lb-time-inner,
  .desktop-time .lb-time-inner {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content 36px !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: max-content !important;
    max-width: 12em !important;
    min-height: 0 !important;
    gap: 2px !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time {
    font-variant-numeric: tabular-nums !important;
    text-align: center !important;
    min-width: 4.6ch !important;
    line-height: 1 !important;
    color: #D4AF37 !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    width: max-content !important;
    max-width: 12em !important;
    margin-left: auto !important;
    margin-right: auto !important;
    line-height: 1.15 !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 2.25rem !important;
    max-height: 2.25rem !important;
    align-self: start !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
  .time .lb-time-stack .lb-pr-hold,
  .desktop-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.15 !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark {
    align-self: center !important;
    margin: 0 !important;
    transform: none !important;
    flex-shrink: 0 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-align: right !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px !important;
    column-gap: 4px !important;
    align-items: start !important;
    justify-content: stretch !important;
    width: 100% !important;
    margin-left: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: 100% !important;
    min-height: 0 !important;
    gap: 2px !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: flex !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 1.6rem !important;
    max-height: 1.6rem !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    text-align: right !important;
    margin: 0 !important;
    line-height: 1.15 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark {
    flex-shrink: 0 !important;
    margin: 0 !important;
  }
  /* Expanded mobile card: keep mark to the RIGHT of the gold time. Do not stack it under. */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-inner,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px !important;
    flex-direction: unset !important;
    align-items: start !important;
    column-gap: 4px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    align-items: flex-end !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 1.6rem !important;
    max-height: 1.6rem !important;
    justify-content: center !important;
    align-items: center !important;
    align-self: start !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-card-time .hang-type-mark {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}
/* END 20260915loadunder1 */

/* ============================================================
   LOCK 20260915 space1
   Mobile: Grip Age how-it-works sits UNDER the calculator, not under Past Winners.
   Collapsed World Leaders / Icon Legend must not carry sticky-CTA padding (that
   was painting a black void under the heading). Pull sections up. Desktop unchanged.
   ============================================================ */
@media (max-width: 900px) {
  .content-grid {
    gap: 6px !important;
    row-gap: 6px !important;
    padding-bottom: 0 !important;
  }
  .home-lower-band,
  .home-challenges-block,
  .home-pw-grip-band {
    display: contents !important;
  }
  .home-challenges-hero,
  .home-lower-challenges,
  .post-video-challenge-boards,
  .home-challenges-actions {
    order: 5 !important;
    width: 100% !important;
    margin-bottom: 0 !important;
  }
  .home-challenges-winners {
    order: 6 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding-bottom: 8px !important;
    min-height: 0 !important;
  }
  .content-grid .sidebar-card--leaders { order: 7 !important; }
  .content-grid .icon-legend-card { order: 8 !important; }
  .content-grid .grip-calc-card,
  .content-grid .home-lower-band__calc { order: 9 !important; }
  .content-grid .grip-age-blurb {
    order: 10 !important;
    display: block !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding: 12px 14px 10px !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .content-grid > .cta-section,
  .content-grid > .cta-section--full-grid { order: 11 !important; }
  .content-grid > .wdhc-friend-share { order: 12 !important; }

  /* Do not hang sticky-CTA clearance on every sidebar card. */
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-card--leaders,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .icon-legend-card,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-card--tiers,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .home-lower-band,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .sidebar-column {
    padding-bottom: 8px !important;
  }
  .sidebar-card--collapsible:not([open]),
  .icon-legend-card:not([open]),
  .sidebar-card--leaders:not([open]) {
    padding-bottom: 4px !important;
    padding-top: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
  }
  .sidebar-card--collapsible:not([open]) .icon-legend-list,
  .icon-legend-card:not([open]) .icon-legend-list,
  .sidebar-card--leaders:not([open]) #top-10-list,
  .sidebar-card--leaders:not([open]) .mini-list {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .sidebar-card--collapsible > .sidebar-card__summary {
    min-height: 44px !important;
    padding: 10px 10px !important;
    margin: 0 !important;
  }
  .sidebar-card--tiers {
    padding-bottom: 8px !important;
    margin-bottom: 0 !important;
  }
  .grip-calc-card {
    padding-bottom: 8px !important;
    margin-bottom: 0 !important;
  }
}
/* END 20260915 space1 */

/* ============================================================
   LOCK 20260915 calcunder1
   Desktop: Grip Age how-it-works sits in the RIGHT column under the calculator.
   Past winners fills the full challenges width (no split with the blurb).
   ============================================================ */
@media (min-width: 901px) {
  .sidebar-column > .grip-age-blurb,
  .sidebar-grip-age-blurb {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 12px 14px 12px !important;
  }
  .home-challenges-winners {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 12px !important;
    padding: 16px 18px 14px !important;
    box-sizing: border-box !important;
  }
  .home-challenges-winners-list {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 12px 16px !important;
  }
  .home-pw-grip-band {
    display: block !important;
    width: 100% !important;
  }
}
/* END 20260915 calcunder1 */

/* ============================================================
   LOCK 20260915 gripcta1
   Mobile cards: Grip Age number must not collide with DETAILS/CLOSE.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-main {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
  .lb-row.lb-mobile-card .lb-card-head {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 6.6rem) !important;
    column-gap: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-right {
    max-width: 6.6rem !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .lb-row.lb-mobile-card .lb-card-right .lb-card-grip {
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    flex: 0 0 72px !important;
    width: 72px !important;
    position: relative !important;
    z-index: 5 !important;
    margin-left: 4px !important;
  }
}
/* END 20260915 gripcta1 */

/* ============================================================
   LOCK 20260915 deskmid1
   Desktop board: every column (Background, Location, name, time,
   Grip Age, Watch) is vertically centered in the row. Cells stretch
   so short values do not sit at the top of a tall row.
   Grip Age calculator grows to eat the leftover gap above the blurb.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row,
  .lb-row {
    align-items: stretch !important;
  }
  .lb-row > .rank,
  .lb-row > .tier-col,
  .lb-row > .name-cell,
  .lb-row > .lb-col-occupation,
  .lb-row > .location-col,
  .lb-row > .time,
  .lb-row > .desktop-time,
  .lb-row > .grip-age-col,
  .lb-row > .watch-col {
    display: flex !important;
    align-items: center !important;
    align-self: stretch !important;
    min-height: 0 !important;
  }
  .lb-row > .rank,
  .lb-row > .tier-col,
  .lb-row > .grip-age-col,
  .lb-row > .watch-col {
    justify-content: center !important;
  }
  .lb-row > .name-cell {
    justify-content: flex-start !important;
  }
  .lb-row > .name-cell .name-wrapper {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
    width: 100% !important;
  }
  .lb-row > .lb-col-occupation {
    justify-content: flex-start !important;
    text-align: left !important;
    -webkit-box-pack: center !important;
    overflow: hidden !important;
  }
  .lb-row > .location-col {
    justify-content: center !important;
  }
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    align-self: stretch !important;
  }
  .time .lb-time-inner,
  .desktop-time .lb-time-inner {
    justify-content: center !important;
  }

  .content-grid > .sidebar-column {
    gap: 0 !important;
  }
  .content-grid > .sidebar-column > .sidebar-upper {
    margin-bottom: 8px !important;
  }
  .sidebar-column .grip-calc-card {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .sidebar-column .grip-calc-card .grip-calc-widget {
    padding: 20px 16px 26px !important;
  }
  .sidebar-column .grip-calc-grid {
    gap: 14px 12px !important;
  }
  .sidebar-column .grip-calc-field input,
  .sidebar-column .grip-calc-field select {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    min-height: 44px !important;
    line-height: 1.2 !important;
  }
  .sidebar-column .grip-calc-result-wrap {
    margin-top: 18px !important;
    padding-bottom: 10px !important;
  }
  .sidebar-column .grip-calc-explainer,
  .home-lower-band .grip-calc-explainer {
    margin: 4px 16px 0 !important;
  }
  .sidebar-column > .grip-age-blurb,
  .sidebar-column .sidebar-grip-age-blurb {
    margin-top: 0 !important;
  }
}
/* END 20260915 deskmid1 */

/* ============================================================
   LOCK 20260915 pwleft1
   Past Winners: Longest Hang / Most PRs titles left-aligned over
   the athlete names (not centered in the month card).
   ============================================================ */
.home-challenges-winners-type {
  grid-area: auto !important;
  grid-column: 1 / 2 !important;
  grid-row: 1 !important;
  text-align: left !important;
  justify-self: start !important;
}
.home-challenges-winners-item {
  justify-items: start !important;
}
.home-challenges-winners-metric {
  justify-self: end !important;
}
@media (max-width: 900px) {
  .home-challenges-winners-type {
    text-align: left !important;
    justify-self: start !important;
    grid-column: 1 / -1 !important;
  }
}
/* END 20260915 pwleft1 */

/* ============================================================
   LOCK 20260915 hbmm1
   Hangboard mark is the hold size (20mm), not HB4.
   Weighted: 20mm +. 1-3F: 20mm 3F. Aside grows right so times stay lined up.
   ============================================================ */
@media (min-width: 901px) {
  .time .lb-time-aside:has(.hang-type-mark[data-type="fingerboard"]),
  .desktop-time .lb-time-aside:has(.hang-type-mark[data-type="fingerboard"]),
  .time .lb-time-aside:has(.hang-type-mark.is-long),
  .desktop-time .lb-time-aside:has(.hang-type-mark.is-long) {
    width: auto !important;
    min-width: 36px !important;
    max-width: 4.6rem !important;
  }
  .time .lb-time-aside .hang-type-mark[data-type="fingerboard"],
  .desktop-time .lb-time-aside .hang-type-mark[data-type="fingerboard"] {
    width: auto !important;
    min-width: 0 !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark[data-type="fingerboard"],
  .lb-card-time .lb-time-aside .hang-type-mark[data-type="fingerboard"] {
    width: auto !important;
    min-width: 0 !important;
    font-size: 0.62rem !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
  }
}
/* END 20260915 hbmm1 */

/* ============================================================
   LOCK 20260915 markmid1
   Every hang-type mark (20mm, 4F, 1, +, L, 1-90, Tw) shares the
   vertical midpoint of the gold hang time. Aside sits in the time
   row via subgrid. No per-mark translateY.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content auto !important;
    grid-template-rows: auto auto auto !important;
    align-items: start !important;
    column-gap: 6px !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: grid !important;
    grid-template-rows: subgrid !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    align-items: center !important;
    gap: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    grid-row: 1 !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    grid-row: 2 !important;
  }
  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold,
  .lb-row > .time .lb-pr-hold,
  .lb-row > .desktop-time .lb-pr-hold {
    grid-row: 3 !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark.is-long,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .lb-row > .time .lb-time-aside .hang-type-mark.is-long,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark.is-long {
    transform: none !important;
    align-self: center !important;
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    align-items: center !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-card-time .lb-time-aside .hang-type-mark {
    transform: none !important;
    align-self: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}
/* END 20260915 markmid1 */

/* ============================================================
   LOCK 20260915 navgold1
   Nav tabs: hover orange, current page gold. Never stay white.
   ============================================================ */
.nav-center a:hover,
.nav-center a:focus-visible {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
  background: rgba(232, 120, 32, 0.1) !important;
}
.nav-center a.active,
.nav-center a:active {
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
}
.nav-center a.active {
  background: linear-gradient(180deg, rgba(212, 175, 55, 0.14) 0%, rgba(212, 175, 55, 0.05) 100%) !important;
}
.nav-center a.nav-mobile-submit-link,
.nav-center a.nav-mobile-submit-link:hover,
.nav-center a.nav-mobile-submit-link:focus-visible,
.nav-center a.nav-mobile-submit-link:active,
.nav-center a.nav-mobile-submit-link.active {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}
/* END 20260915 navgold1 */

/* ============================================================
   LOCK 20260916 calcgap1
   Fill leftover black under Grip Age how-it-works so the blurb
   hugs the bottom of Past Winners on desktop.
   ============================================================ */
@media (min-width: 901px) {
  .content-grid {
    align-items: stretch !important;
  }
  .content-grid > .sidebar-column,
  .sidebar-column {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .sidebar-column > .sidebar-upper,
  .sidebar-column > .grip-calc-card,
  .sidebar-column > .home-lower-band__calc {
    flex: 0 0 auto !important;
  }
  .sidebar-column > .grip-age-blurb,
  .sidebar-column .sidebar-grip-age-blurb {
    flex: 1 1 auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
    padding: 16px 16px 18px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-lead {
    font-size: 1.12rem !important;
    line-height: 1.45 !important;
    margin: 0 0 12px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-more {
    font-size: 0.92rem !important;
    letter-spacing: 0.1em !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body {
    font-size: 1.08rem !important;
    line-height: 1.55 !important;
    color: #e6dece !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p {
    margin: 0 0 12px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p:last-child {
    margin-bottom: 0 !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body strong {
    color: #D4AF37 !important;
    font-weight: 800 !important;
  }
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-lead {
  font-size: 1.08rem !important;
  line-height: 1.45 !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body {
  font-size: 1.02rem !important;
  line-height: 1.5 !important;
  color: #e6dece !important;
}

/* LOCK 20260916 gablurb1: lay-person input weights, not a made-up story */
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p {
  margin: 0 0 10px !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p:last-child {
  margin-bottom: 0 !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p {
  margin: 0 0 10px !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body strong {
  color: #D4AF37 !important;
}
/* END 20260916 calcgap1 */

/* ============================================================
   LOCK 20260916 markfix1
   Hang-type marks: no 26px squash. Natural width, nowrap.
   Mark shares the gold-time row and is vertically centered on it.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content minmax(2.7rem, auto) !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 8px !important;
    align-items: center !important;
    justify-items: start !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: contents !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    line-height: 1 !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    grid-column: 1 / 2 !important;
    grid-row: 2 !important;
    justify-self: start !important;
  }
  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold,
  .lb-row > .time .lb-pr-hold,
  .lb-row > .desktop-time .lb-pr-hold {
    grid-column: 1 / 2 !important;
    grid-row: 3 !important;
    justify-self: start !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 2.7rem !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark.is-long,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .lb-row > .time .lb-time-aside .hang-type-mark.is-long,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark.is-long,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark[data-type="fingerboard"],
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark[data-type="fingerboard"] {
    width: auto !important;
    min-width: 1.45rem !important;
    max-width: none !important;
    height: auto !important;
    min-height: 1.4rem !important;
    max-height: none !important;
    padding: 0.18em 0.42em !important;
    font-size: 0.8rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    transform: none !important;
    margin: 0 !important;
    align-self: center !important;
    flex-shrink: 0 !important;
  }
  .leaderboard .lb-row > .time .hang-type-mark__txt,
  .leaderboard .lb-row > .desktop-time .hang-type-mark__txt,
  .lb-row > .time .hang-type-mark__txt,
  .lb-row > .desktop-time .hang-type-mark__txt {
    font-size: inherit !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .leaderboard .lb-row > .time .hang-type-mark__plus,
  .leaderboard .lb-row > .desktop-time .hang-type-mark__plus,
  .lb-row > .time .hang-type-mark__plus,
  .lb-row > .desktop-time .hang-type-mark__plus {
    width: 11px !important;
    height: 11px !important;
    transform: none !important;
  }
  .leaderboard .lb-row > .time .hang-type-mark.is-stack,
  .leaderboard .lb-row > .desktop-time .hang-type-mark.is-stack {
    flex-direction: column !important;
    gap: 2px !important;
    min-height: 1.55rem !important;
    padding: 0.12em 0.28em !important;
  }
}
/* END 20260916 markfix1 */

/* ============================================================
   LOCK 20260916 sortunder1 — SUPERSEDED 20260921sortfirst1
   Was Hang / Division / Sort. Live lock is Sort / Hang / Division.
   ============================================================ */
@media (max-width: 900px) {
  .lb-toolbar-filters--row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
  }
  .lb-toolbar-filters--row .lb-filter-group--sort { order: 1 !important; width: 100% !important; }
  .lb-toolbar-filters--row .lb-filter-group--hang { order: 2 !important; width: 100% !important; display: flex !important; }
  .lb-toolbar-filters--row .lb-filter-group--hangboard { order: 3 !important; width: 100% !important; }
  .lb-toolbar-filters--row .lb-filter-group--division { order: 4 !important; width: 100% !important; }
  .lb-toolbar-filters--row .lb-filter-group--gym { order: 5 !important; display: none !important; }
  .lb-toolbar-filters--row .lb-toolbar-search { order: 6 !important; width: 100% !important; }
}
/* END 20260916 sortunder1 */

/* ============================================================
   LOCK 20260916 mobtime1
   Mobile: hang time sits on the right, next to Watch. Mark stays
   on the time line with room so it cannot cover Watch.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-main {
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .lb-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    column-gap: 8px !important;
    align-items: start !important;
  }
  .lb-row.lb-mobile-card .lb-card-right {
    max-width: none !important;
    width: auto !important;
    min-width: 0 !important;
    overflow: visible !important;
    justify-self: end !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-card-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: auto !important;
    max-width: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-card-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    position: relative !important;
    z-index: 1 !important;
    flex-shrink: 0 !important;
    width: auto !important;
    min-width: 1.2rem !important;
    max-width: none !important;
    height: auto !important;
    min-height: 1.15rem !important;
    padding: 0.1em 0.3em !important;
    font-size: 0.62rem !important;
    white-space: nowrap !important;
    overflow: visible !important;
    grid-column: auto !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    position: relative !important;
    z-index: 8 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 68px !important;
    margin-left: 10px !important;
    overflow: visible !important;
  }
}
/* END 20260916 mobtime1 */

/* ============================================================
   LOCK 20260916 desktxt1
   Desktop: hang-type title and +lb centered under the gold time.
   Mark sits just to the right of the time (small gap, not on it).
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content auto !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 4px !important;
    align-items: start !important;
    justify-items: center !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    gap: 2px !important;
    width: max-content !important;
    max-width: 12em !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    grid-column: auto !important;
    grid-row: auto !important;
    text-align: center !important;
    width: 100% !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 12em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold,
  .lb-row > .time .lb-pr-hold,
  .lb-row > .desktop-time .lb-pr-hold {
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 0 0 2px !important;
    transform: none !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark.is-long,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark.is-long {
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark--empty,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark--empty,
  .lb-row > .time .lb-time-aside .hang-type-mark--empty,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark--empty {
    width: 14px !important;
    min-width: 14px !important;
    height: 1px !important;
    min-height: 0 !important;
  }
}
/* END 20260916 desktxt1 */

/* ============================================================
   LOCK 20260916 wttight1
   Desktop: Weighted + 165 pounds stacked under the gold time.
   Mark sits immediately right of the time. Cluster is max-content
   so nothing flies to the page edge.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .time .lb-time-inner,
  .desktop-time .lb-time-inner {
    display: flex !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-content: start !important;
    justify-items: start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    width: max-content !important;
    gap: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    text-align: center !important;
    width: auto !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
  .lb-row > .time .lb-time-stack .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 0 0 0 2px !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
}
/* END 20260916 wttight1 */

/* ============================================================
   LOCK 20260916 gahug1
   Past Winners (left) and Grip Age how-it-works (right) share
   one row and the same height. Calculation copy stays short.
   ============================================================ */
@media (min-width: 901px) {
  .home-pw-grip-band {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) !important;
    column-gap: 16px !important;
    align-items: stretch !important;
    width: 100% !important;
    margin-top: 10px !important;
  }
  .home-pw-grip-band > .home-challenges-winners,
  .home-pw-grip-band > .grip-age-blurb {
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
  }
  .home-pw-grip-band > .grip-age-blurb {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 auto !important;
    padding: 10px 12px 10px !important;
    overflow: hidden !important;
  }
  .home-pw-grip-band > .grip-age-blurb > summary {
    flex: 0 0 auto !important;
  }
  .home-pw-grip-band .grip-age-blurb-lead {
    font-size: 0.95rem !important;
    line-height: 1.3 !important;
    margin: 0 0 4px !important;
  }
  .home-pw-grip-band .grip-age-blurb-more {
    font-size: 0.72rem !important;
    letter-spacing: 0.08em !important;
  }
  .home-pw-grip-band .grip-age-blurb-body {
    flex: 1 1 auto !important;
    overflow: auto !important;
    margin-top: 6px !important;
    padding-top: 6px !important;
    font-size: 0.84rem !important;
    line-height: 1.32 !important;
  }
  .home-pw-grip-band .grip-age-blurb-body p {
    margin: 0 0 6px !important;
  }
  .home-pw-grip-band .grip-age-blurb-body p:last-child {
    margin-bottom: 0 !important;
  }
  .sidebar-column > .grip-age-blurb,
  .sidebar-column .sidebar-grip-age-blurb {
    flex: 0 0 auto !important;
  }
}
/* END 20260916 gahug1 */

/* ============================================================
   LOCK 20260916sweep2  (night sweep: Joseph +200 LB on the time line)
   Gold time and +lb share one line. Hang-type title UNDER the time, white.
   Mark sits to the RIGHT of time (and load). Mobile: time + load + mark
   on one line. Hide mobile under-titles so they do not crowd Watch.
   Undoes loadunder1 / desktxt1 stacking +lb under WEIGHTED.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-items: start !important;
    width: max-content !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 2px !important;
    width: max-content !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    text-align: center !important;
    min-width: 4.6ch !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    width: 100% !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
  .lb-row > .time .lb-time-stack .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack .lb-pr-hold {
    display: none !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
    flex-shrink: 0 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    flex-shrink: 0 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-card-head {
    column-gap: 10px !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    padding-right: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-row.lb-mobile-card .lb-card-time {
    flex-shrink: 0 !important;
    min-width: 7.2rem !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 2 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    font-size: 0.58rem !important;
    max-width: 5.6em !important;
  }
}
/* END 20260916sweep2 */

/* ============================================================
   LOCK 20260916 visfix1
   Night sweep hid +lb under WEIGHTED and put it on the time line.
   Restore: WEIGHTED then +165 pounds under the gold time.
   Mark stays immediately right of the time. Cluster is max-content.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner,
  .lb-row > .time .lb-time-inner,
  .lb-row > .desktop-time .lb-time-inner {
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    column-gap: 6px !important;
    width: max-content !important;
    margin: 0 auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    width: max-content !important;
    gap: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
  .lb-row > .time .lb-time-stack .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    visibility: visible !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: max-content !important;
    justify-content: flex-start !important;
    padding-left: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
}
/* END 20260916 visfix1 */

/* ============================================================
   LOCK 20260916 pwfill1
   How-it-works stays under the calculator in the right column.
   Past Winners fills leftover height on the left so there is
   no dead space under it.
   ============================================================ */
@media (min-width: 901px) {
  .home-pw-grip-band {
    display: contents !important;
  }
  .content-grid {
    align-items: stretch !important;
  }
  .home-challenges-block {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
  }
  .home-challenges-winners {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    margin-top: 10px !important;
  }
  .home-challenges-winners-list {
    flex: 1 1 auto !important;
  }
  .sidebar-column {
    display: flex !important;
    flex-direction: column !important;
  }
  .sidebar-column > .grip-calc,
  .sidebar-column .grip-calc-card,
  .sidebar-column .sidebar-card.grip-calc {
    flex: 0 0 auto !important;
  }
  .sidebar-column > .grip-age-blurb,
  .sidebar-column .sidebar-grip-age-blurb {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 auto !important;
    margin-top: 12px !important;
    padding: 10px 12px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body {
    font-size: 0.84rem !important;
    line-height: 1.32 !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p {
    margin: 0 0 6px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p:last-child {
    margin-bottom: 0 !important;
  }
}
/* END 20260916 pwfill1 */

/* ============================================================
   LOCK 20260916 mobunder1
   Mobile: hang-type title and +lb sit under the gold time, same
   as desktop. Mark stays beside the time. Grip Age drops below
   so it does not cover the title.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-right {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    max-width: none !important;
    min-width: 6.8rem !important;
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-card-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-card-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: max-content !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 5px !important;
    align-items: start !important;
    justify-content: end !important;
    width: max-content !important;
    max-width: 100% !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    text-align: right !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    gap: 1px !important;
    width: max-content !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: block !important;
    visibility: visible !important;
    text-align: right !important;
    width: 100% !important;
    margin: 0 !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    visibility: visible !important;
    text-align: right !important;
    width: 100% !important;
    margin: 0 !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.55rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: max-content !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-card-grip,
  .lb-row.lb-mobile-card .lb-card-right .lb-card-grip {
    margin-top: 12px !important;
    order: 5 !important;
    align-self: flex-end !important;
  }
}
/* END 20260916 mobunder1 */

/* ============================================================
   LOCK 20260916 marknudge1
   Desktop: hang-type mark sits a tad closer to the gold time.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    column-gap: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }
}
/* END 20260916 marknudge1 */

/* ============================================================
   LOCK 20260917 markleft1
   Desktop: mark sits on the TIME line (not out past the title).
   Vertically centered on the gold digits. Closer to the number.
   DOM: .lb-time-line > .lb-best-time + .lb-time-aside
   ============================================================ */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: max-content !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .leaderboard .time .lb-time-stack,
  .leaderboard .desktop-time .lb-time-stack,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    width: max-content !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .time .lb-time-line,
  .desktop-time .lb-time-line,
  .leaderboard .time .lb-time-line,
  .leaderboard .desktop-time .lb-time-line,
  .leaderboard .lb-row > .time .lb-time-line,
  .leaderboard .lb-row > .desktop-time .lb-time-line,
  .lb-row > .time .lb-time-line,
  .lb-row > .desktop-time .lb-time-line {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    width: max-content !important;
    position: relative !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .time .lb-best-time,
  .leaderboard .desktop-time .lb-best-time,
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    line-height: 1 !important;
    grid-row: auto !important;
    grid-column: auto !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside,
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-self: center !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
    transform: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-main .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-main .hang-type-mark,
  .lb-row > .time .lb-time-main .hang-type-mark,
  .lb-row > .desktop-time .lb-time-main .hang-type-mark {
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
  .lb-row > .time .lb-time-stack .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack .lb-pr-hold {
    display: block !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-line,
  .lb-card-time .lb-time-line {
    display: contents !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    order: 1 !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: inline-block !important;
    order: 2 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    order: 3 !important;
  }
}
/* END 20260917 markleft1 */

/* ============================================================
   LOCK 20260917sweep1b  (night sweep: Joseph +200 LB on the time line)
   visfix1 / mobunder1 parked +lb under WEIGHTED. Restore sweep2 GRID:
   Gold time and +lb share one line. Hang-type title UNDER the time, white.
   Mark sits to the RIGHT of time (and load), still inside the TIME cell.
   Do not let the mark jump past Grip Age. Mobile: time + load + mark
   on one line. Hide mobile under-titles so they do not crowd Watch.
   DOM: .lb-time-main > .lb-time-stack (time, title) + .lb-time-aside (load, mark)
   ============================================================ */
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .time .lb-time-main,
  .leaderboard .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-items: start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .leaderboard .time .lb-time-stack,
  .leaderboard .desktop-time .lb-time-stack,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    width: max-content !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
  }
  .time .lb-time-line,
  .desktop-time .lb-time-line,
  .leaderboard .time .lb-time-line,
  .leaderboard .desktop-time .lb-time-line,
  .leaderboard .lb-row > .time .lb-time-line,
  .leaderboard .lb-row > .desktop-time .lb-time-line,
  .lb-row > .time .lb-time-line,
  .lb-row > .desktop-time .lb-time-line {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: max-content !important;
    position: relative !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .time .lb-best-time,
  .leaderboard .desktop-time .lb-best-time,
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    line-height: 1 !important;
    text-align: center !important;
    min-width: 4.6ch !important;
    grid-row: auto !important;
    grid-column: auto !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title,
  .leaderboard .time .lb-hang-title,
  .leaderboard .desktop-time .lb-hang-title,
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    width: 100% !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
  }
  .time .lb-time-stack > .lb-pr-hold,
  .desktop-time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold,
  .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .time .lb-time-aside,
  .leaderboard .desktop-time .lb-time-aside,
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-self: center !important;
    gap: 6px !important;
    width: max-content !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    margin: 0 !important;
    transform: none !important;
    align-self: center !important;
    flex-shrink: 0 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-line,
  .lb-card-time .lb-time-line {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: max-content !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold,
  .lb-card-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    order: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    max-width: 5.6em !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    flex-shrink: 0 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    flex-shrink: 0 !important;
    order: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    padding-right: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-row.lb-mobile-card .lb-card-time {
    flex-shrink: 0 !important;
    min-width: 7.2rem !important;
  }
}
@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 136px minmax(120px, 1.2fr) minmax(88px, 0.75fr) minmax(100px, 0.85fr) minmax(200px, 230px) minmax(52px, 70px) minmax(64px, 0.5fr) !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row {
    grid-template-columns: 44px 146px minmax(168px, 1.35fr) minmax(96px, 0.85fr) minmax(120px, 0.9fr) minmax(210px, 240px) minmax(60px, 80px) minmax(76px, 0.55fr) !important;
  }
}
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    margin-left: 0 !important;
    margin-right: auto !important;
    justify-items: start !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    min-width: 5ch !important;
    text-align: center !important;
  }
}
/* END 20260917sweep1d */

/* ============================================================
   LOCK 20260917 mobunder2
   Mobile: hang time further right. Hang-type title under the time
   (white). Weighted +lb under the title (gold). The ONLY thing to
   the right of the time number is the hang-type mark.
   Desktop: same stack (time, title, +lb) with mark to the right.
   ============================================================ */
@media (min-width: 901px) {
  .time .lb-time-stack > .lb-pr-hold,
  .desktop-time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold,
  .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold {
    display: block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    text-align: center !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold {
    display: none !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-head {
    display: grid !important;
    grid-template-columns: minmax(5.8rem, 1fr) max-content !important;
    column-gap: 4px !important;
    align-items: start !important;
  }
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-row.lb-mobile-card .lb-card-time {
    max-width: none !important;
    min-width: 0 !important;
    width: max-content !important;
    overflow: visible !important;
    margin-left: auto !important;
    margin-right: -6px !important;
    flex-shrink: 1 !important;
  }
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-card-time {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content auto !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 3px !important;
    row-gap: 2px !important;
    justify-content: end !important;
    justify-items: end !important;
    align-items: center !important;
    width: max-content !important;
    max-width: none !important;
    margin-left: auto !important;
    gap: 2px 3px !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row.lb-mobile-card .lb-time-line,
  .lb-card-time .lb-time-line,
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside {
    display: contents !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    order: unset !important;
    flex-shrink: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    margin: 0 !important;
    transform: none !important;
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 6 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark--empty,
  .lb-card-time .hang-type-mark--empty {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-right .lb-hang-title {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    text-align: right !important;
    width: max-content !important;
    max-width: 9.5rem !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-card-time .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    display: block !important;
    visibility: visible !important;
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    justify-self: end !important;
    text-align: right !important;
    width: max-content !important;
    max-width: none !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.62rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold:not([data-load="1"]),
  .lb-card-time .lb-pr-hold:not([data-load="1"]) {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    position: relative !important;
    z-index: 4 !important;
    margin-left: -18px !important;
  }
}
/* END 20260917 mobunder2 */

/* ============================================================
   LOCK 20260917 mobclear1
   Mobile: time, hang-type title, +lb, mark, and Grip Age sit left
   of Watch / Details. No overlap. Not shoved to the name.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-head {
    column-gap: 8px !important;
  }
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-row.lb-mobile-card .lb-card-time {
    margin-right: 24px !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
  .lb-row.lb-mobile-card .lb-card-grip {
    margin-right: 0 !important;
    padding-right: 0 !important;
    align-self: flex-end !important;
    text-align: right !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    z-index: 1 !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    margin-left: 8px !important;
    padding-left: 2px !important;
    z-index: 5 !important;
    flex: 0 0 auto !important;
  }
}
/* END 20260917 mobclear1 */

/* ============================================================
   LOCK 20260917 mobclear2
   Title and +lb stay under the TIME digits only. Do not run left
   into the name. Last Watch/Details clear the sticky Submit bar.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-right .lb-hang-title {
    grid-column: 1 !important;
    max-width: 5.8rem !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    line-height: 1.12 !important;
  }
  .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-card-time .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
  .lb-card-time .lb-time-stack .lb-pr-hold {
    grid-column: 1 !important;
    max-width: 5.8rem !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    padding-right: 6px !important;
    min-width: 0 !important;
  }
  .lb-row-wrapper:last-child .lb-card-actions,
  .lb-row:last-child .lb-card-actions {
    margin-bottom: 12px !important;
  }
  #leaderboard-body,
  .leaderboard-body,
  .lb-list {
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 160px + env(safe-area-inset-bottom, 0px)) !important;
  }
}
/* END 20260917 mobclear2 */

/* ============================================================
   LOCK 20260917 mobclear6
   Reserve Watch/Details. Time stack cannot overflow into them.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card {
    gap: 12px !important;
  }
  .lb-row.lb-mobile-card .lb-card-main {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .lb-row.lb-mobile-card .lb-card-head {
    grid-template-columns: minmax(0, 1fr) max-content !important;
    column-gap: 8px !important;
  }
  .lb-row.lb-mobile-card .lb-card-right,
  .lb-row.lb-mobile-card .lb-card-time {
    margin-right: 0 !important;
    padding-right: 0 !important;
    max-width: 7.1rem !important;
    overflow: hidden !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    flex: 0 0 76px !important;
    width: 76px !important;
    min-width: 76px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
}
/* END 20260917 mobclear6 */

/* ============================================================
   LOCK 20260917 timealign2
   Desktop: gold hang TIMES share one center. Marks sit in a
   fixed slot to the right and cannot shove 47s / 20mm / 1-90
   off the column. Title and +lb stay under the time.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time,
  .lb-row > .time,
  .lb-row > .desktop-time {
    text-align: center !important;
  }
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 6ch !important;
    min-width: 6ch !important;
    max-width: 6ch !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    font-variant-numeric: tabular-nums !important;
    font-feature-settings: "tnum" 1 !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title,
  .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold,
  .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    white-space: normal !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    position: absolute !important;
    left: 50% !important;
    top: 0 !important;
    margin-left: 3.15ch !important;
    transform: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 1.05em !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
}
/* END 20260917 timealign2 */

/* ============================================================
   LOCK 20260917 timealign3
   Marks live in their own column, 10px to the right of the 6ch
   time slot. They cannot overlap the gold time.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: 1fr 6ch 1fr !important;
    grid-template-rows: auto !important;
    align-items: start !important;
    justify-items: stretch !important;
    column-gap: 0 !important;
    width: 100% !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 6ch !important;
    min-width: 6ch !important;
    max-width: 6ch !important;
    position: relative !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    position: static !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: start !important;
    left: auto !important;
    top: auto !important;
    margin: 0 0 0 10px !important;
    transform: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 1.2em !important;
    padding: 0 !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    margin: 0 !important;
    transform: none !important;
  }
}
/* END 20260917 timealign3 */

/* ============================================================
   LOCK 20260917 mobgrip1
   Mobile: gold time centered over Grip Age. Title and +lb under
   the time. Hang-type mark to the right of the time, above Watch,
   not overlapping Watch.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-right {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: none !important;
    min-width: 3.4rem !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-row.lb-mobile-card .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: relative !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-row.lb-mobile-card .lb-time-line {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: relative !important;
    width: auto !important;
    max-width: 5.6rem !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-best-time {
    grid-column: auto !important;
    grid-row: auto !important;
    text-align: center !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-row.lb-mobile-card .lb-pr-hold {
    grid-column: auto !important;
    grid-row: auto !important;
    text-align: center !important;
    justify-self: center !important;
    max-width: 5.6rem !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside {
    position: absolute !important;
    left: 100% !important;
    top: 0 !important;
    margin: 0 0 0 4px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    height: 1.2em !important;
    width: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    z-index: 6 !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark {
    z-index: 6 !important;
    align-self: center !important;
  }
  .lb-row.lb-mobile-card .lb-card-grip {
    align-self: center !important;
    text-align: center !important;
    margin-top: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    align-self: stretch !important;
    justify-content: flex-start !important;
    padding-top: 36px !important;
    margin-left: 4px !important;
    width: 76px !important;
    min-width: 76px !important;
    flex: 0 0 76px !important;
  }
}
/* END 20260917 mobgrip1 */

/* ============================================================
   LOCK 20260917 nomark1
   Hang-type TITLE under the time is enough. Hide hang-type marks
   on the board (desktop and mobile).
   ============================================================ */
.leaderboard .lb-row > .time .lb-time-aside,
.leaderboard .lb-row > .desktop-time .lb-time-aside,
.leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
.leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
.leaderboard .lb-row > .time .lb-time-main .hang-type-mark,
.leaderboard .lb-row > .desktop-time .lb-time-main .hang-type-mark,
.lb-row > .time .lb-time-aside,
.lb-row > .desktop-time .lb-time-aside,
.lb-row > .time .lb-time-aside .hang-type-mark,
.lb-row > .desktop-time .lb-time-aside .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside,
.lb-row.lb-mobile-card .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside .hang-type-mark.is-long,
.lb-card-time .lb-time-aside,
.lb-card-time .hang-type-mark,
.lb-card-time .lb-time-aside .hang-type-mark,
.lb-card-right .hang-type-mark {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-actions {
    padding-top: 8px !important;
  }
}
/* END 20260917 nomark1 */

/* ============================================================
   LOCK 20260917 watchdesk1
   Smaller desktop: Watch must stay. Time column is compact and
   sits left. Grip Age hugs the time column. Occupation/location
   give up width before Watch does.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    grid-template-columns: 1fr 7.6rem 1fr !important;
  }
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    width: 7.6rem !important;
    min-width: 7.6rem !important;
    max-width: 7.6rem !important;
  }
  .lb-row > .watch-col,
  .lb-header > .lb-h-watch,
  .leaderboard .lb-row > .watch-col,
  .leaderboard .lb-header > .lb-h-watch {
    display: flex !important;
    min-width: 80px !important;
    width: auto !important;
    overflow: visible !important;
    justify-content: center !important;
  }
  .lb-row > .grip-age-col,
  .lb-header > .lb-h-grip,
  .leaderboard .lb-row > .grip-age-col {
    min-width: 44px !important;
    padding-left: 0 !important;
    padding-right: 4px !important;
    justify-content: flex-start !important;
  }
  .lb-row > .time,
  .lb-row > .desktop-time,
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time {
    padding-right: 4px !important;
    overflow: visible !important;
  }
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    white-space: normal !important;
    overflow: visible !important;
  }
}
@media (min-width: 901px) and (max-width: 1199px) {
  .lb-header .lb-h-bg,
  .lb-col-occupation,
  .lb-header .lb-col-occupation,
  .lb-row > .lb-col-occupation {
    display: none !important;
  }
  .lb-header,
  .lb-row,
  .leaderboard .lb-header,
  .leaderboard .lb-row {
    grid-template-columns:
      40px
      104px
      minmax(120px, 1.5fr)
      minmax(88px, 0.85fr)
      132px
      44px
      88px !important;
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .lb-header,
  .lb-row,
  .leaderboard .lb-header,
  .leaderboard .lb-row {
    grid-template-columns:
      40px
      104px
      minmax(108px, 1.4fr)
      minmax(72px, 0.6fr)
      minmax(80px, 0.7fr)
      132px
      44px
      88px !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row,
  .leaderboard .lb-header,
  .leaderboard .lb-row {
    grid-template-columns:
      44px
      118px
      minmax(150px, 1.5fr)
      minmax(80px, 0.75fr)
      minmax(96px, 0.8fr)
      124px
      52px
      92px !important;
  }
}
/* END 20260917 watchdesk1 */

/* LOCK 20260918boardvid1 Milo: mobile full-body contain + no hang-time jump on dropdown + hide play while autoplay */
@media (max-width: 900px) {
  .video-submissions-section--lead .video-submission-frame video,
  .video-submissions-section--lead .video-submission-frame iframe.submission-video-embed,
  .video-submission-frame video.carousel-video,
  .video-submission-frame video.submission-video,
  .video-submission-frame iframe.submission-video-embed {
    object-fit: contain !important;
    object-position: center center !important;
  }
  .video-submissions-section--lead .video-submission-frame,
  .video-submissions-section--lead .video-submission-frame.is-portrait,
  .video-submissions-section--lead .video-submission-item.is-film-mode .video-submission-frame {
    aspect-ratio: 9 / 16 !important;
    max-height: min(72vh, 640px) !important;
    background: #000 !important;
  }
  .lb-toolbar-filters,
  .lb-toolbar-filters--row,
  #hang-type-filter,
  #division-filter,
  .lb-filter-group--division,
  .lb-filter-group:has(#hang-type-filter) {
    overflow-anchor: none !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-row.lb-mobile-card .lb-time-topline {
    overflow-anchor: none !important;
  }
}
.video-submission-frame.is-playing .video-play-btn,
.video-submission-frame[data-autoplay-ok="1"] .video-play-btn {
  display: none !important;
  pointer-events: none !important;
}

/* ============================================================
   LOCK 20260918sweep1  night sweep restore
   boardvid2 / nomark1 / timealign2 parked +lb under WEIGHTED and hid
   hang-type marks. Restore last-good Joseph lock:
   24s and +200 LB on the SAME LINE. Title WEIGHTED under, white.
   Mark to the RIGHT of the time, inside the TIME cell.
   Mobile 390: time + load + mark one line. Hide under-titles.
   Top 10 stays time-only. Do not restore visfix1 / totallabel1 / nomark1.
   DOM: .lb-time-main > .lb-time-stack (time, title) + .lb-time-aside (load, mark)
   ============================================================ */
#top-10-list .hang-type-mark,
#top-10-list .lb-hang-title,
#world-leaders .hang-type-mark,
#world-leaders .lb-hang-title {
  display: none !important;
}
@media (min-width: 901px) {
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-items: start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    width: max-content !important;
    min-width: 5ch !important;
    max-width: none !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    line-height: 1 !important;
    text-align: center !important;
    min-width: 5ch !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title,
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    width: 100% !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
  }
  .time .lb-time-stack > .lb-pr-hold,
  .desktop-time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold,
  .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    display: flex !important;
    visibility: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: max-content !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    display: flex !important;
    visibility: visible !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    align-self: center !important;
    flex-shrink: 0 !important;
  }
}
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold,
  .lb-card-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    visibility: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    grid-column: auto !important;
    grid-row: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
    transform: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    display: flex !important;
    visibility: visible !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    padding-right: 6px !important;
  }
  .lb-row.lb-mobile-card .lb-card-actions {
    padding-top: 8px !important;
  }
}
@media (min-width: 901px) and (max-width: 1399px) {
  .lb-header,
  .lb-row,
  .leaderboard .lb-header,
  .leaderboard .lb-row {
    grid-template-columns: 44px 136px minmax(120px, 1.2fr) minmax(88px, 0.75fr) minmax(100px, 0.85fr) minmax(200px, 230px) minmax(52px, 70px) minmax(64px, 0.5fr) !important;
  }
}
@media (min-width: 1400px) {
  .lb-header,
  .lb-row,
  .leaderboard .lb-header,
  .leaderboard .lb-row {
    grid-template-columns: 44px 146px minmax(168px, 1.35fr) minmax(96px, 0.85fr) minmax(120px, 0.9fr) minmax(210px, 240px) minmax(60px, 80px) minmax(76px, 0.55fr) !important;
  }
}
/* END 20260918sweep1 */

/* ============================================================
   LOCK 20260918 mobbody1
   Mobile dropdown film: full body in frame (contain, no crop).
   Details sits below Watch with a real gold pill, not tucked gray.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row-wrapper .details-film-room,
  .lb-row-wrapper .details-film-room--portrait,
  .lb-row-wrapper .details-film-room__media {
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }
  .lb-row-wrapper .details-film-room__media {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 0 !important;
    background: #000 !important;
  }
  .lb-row-wrapper .details-film-room__video,
  .lb-row-wrapper .details-film-room--portrait .details-film-room__video,
  .lb-row-wrapper.details-visible .details-film-room--portrait .details-film-room__video {
    object-fit: contain !important;
    object-position: center center !important;
    width: min(100%, 22rem) !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: min(82vh, 44rem) !important;
    aspect-ratio: 9 / 16 !important;
    margin: 0 auto !important;
  }

  .lb-row.lb-mobile-card .lb-card-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    padding-top: 4px !important;
    width: 88px !important;
    min-width: 88px !important;
    flex: 0 0 88px !important;
  }
  .lb-row.lb-mobile-card .lb-card-details-btn {
    margin-top: 4px !important;
    min-height: 36px !important;
    padding: 8px 8px !important;
    border: 1px solid rgba(212, 175, 55, 0.7) !important;
    border-radius: 999px !important;
    background: rgba(212, 175, 55, 0.16) !important;
    color: #f0e2b2 !important;
    gap: 5px !important;
  }
  .lb-row.lb-mobile-card .lb-card-details-label {
    display: inline !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #f0e2b2 !important;
  }
  .lb-row.lb-mobile-card .lb-card-chevron {
    color: #d4af37 !important;
    opacity: 1 !important;
  }
}
/* END 20260918 mobbody1 */

/* ============================================================
   LOCK 20260918 mobtime1
   Mobile: hang time a bit larger. Hang-type title visible UNDER
   the time, white, a bit larger. Not huge. Time + load + mark
   stay on the time line. Title does not crowd Watch.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-time,
  .lb-card-time {
    font-size: 1.88rem !important;
  }
  .lb-row.lb-mobile-card .lb-best-time,
  .lb-card-time .lb-best-time {
    font-size: 1.88rem !important;
    line-height: 1 !important;
    letter-spacing: 0.02em !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 3px !important;
    max-width: 7.2rem !important;
  }
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    line-height: 1.15 !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 7.2rem !important;
  }
}
/* END 20260918 mobtime1 */

/* ============================================================
   LOCK 20260918sweep1b  night sweep (after mobtime1)
   Mobile titles must not crowd Watch. Time + load + mark one line.
   Desktop: 24s and +200 LB same line. Title under, white. Mark right.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-card-right .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    max-width: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside {
    display: flex !important;
    visibility: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 4px !important;
    position: static !important;
  }
}
/* END 20260918sweep1b */

/* ============================================================
   LOCK 20260918mobtitlestack1 (Milo HARD — do not regress)
   Mobile board ONLY:
   Gold Hang Time
   then white hang-type TITLE under it
   then weight/load under the title (when weighted)
   NEVER title or weight to the right of Hang Time.
   Hang-type SYMBOLS stay hidden on mobile.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-row.lb-mobile-card .lb-card-time .lb-time-inner,
  .lb-row.lb-mobile-card .lb-card-time .lb-time-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 0.1rem !important;
  }

  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-row.lb-mobile-card .lb-time-main > .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: 100% !important;
    gap: 0.05rem !important;
  }

  .lb-row.lb-mobile-card .lb-best-time,
  .lb-row.lb-mobile-card .lb-time-stack > .lb-best-time {
    display: block !important;
    order: 1 !important;
  }

  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-row.lb-mobile-card .lb-time-stack > .lb-hang-title,
  .lb-row.lb-mobile-card .hang-type-title {
    display: block !important;
    order: 2 !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    color: #fff !important;
    line-height: 1.15 !important;
  }

  /* Aside under the stack (holds weight). Keep marks dead. */
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row.lb-mobile-card .lb-time-main > .lb-time-aside,
  .lb-row.lb-mobile-card .lb-card-time .lb-time-aside {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
    order: 3 !important;
    gap: 0.05rem !important;
  }

  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark--empty {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-row.lb-mobile-card .lb-pr-hold[data-load],
  .lb-row.lb-mobile-card .lb-added-weight,
  .lb-row.lb-mobile-card .lb-hang-weight {
    display: block !important;
    position: static !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  /* Kill any grid that places title/mark beside time on mobile */
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-row.lb-mobile-card .lb-card-time {
    grid-template-columns: none !important;
    grid-template-rows: none !important;
  }
}

/* ============================================================
   LOCK 20260918deskweight1 (Milo HARD)
   Desktop board TIME column:
   1) Gold hang times share SAME left edge + tabular nums (no mismatch).
   2) White hang-type TITLE under gold time.
   3) Weighted load UNDER the title (never beside time / never in mark row).
   4) Hang-type mark stays RIGHT of gold time (row 1 only).
   Mobile stack lock (mobtitlestack1) stays separate.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner {
    display: grid !important;
    grid-template-columns: minmax(5.75rem, max-content) auto !important;
    grid-template-rows: auto auto auto !important;
    align-items: start !important;
    column-gap: 0.45rem !important;
    row-gap: 0.05rem !important;
    width: max-content !important;
    max-width: 100% !important;
  }

  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main {
    display: contents !important;
  }

  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack {
    display: contents !important;
  }

  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside {
    display: contents !important;
  }

  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    min-width: 4.25rem !important;
    width: auto !important;
    max-width: none !important;
    text-align: left !important;
    font-variant-numeric: tabular-nums !important;
    font-feature-settings: "tnum" 1 !important;
    line-height: 1.05 !important;
  }

  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    display: block !important;
    color: #fff !important;
    white-space: normal !important;
    max-width: 11rem !important;
    line-height: 1.15 !important;
  }

  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-pr-hold[data-load],
  .leaderboard .lb-row > .desktop-time .lb-pr-hold[data-load] {
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-self: start !important;
    display: block !important;
    position: static !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  .leaderboard .lb-row > .time .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: start !important;
    display: none !important; /* overridden by nomarks-all — was inline-flex */
    position: static !important;
    margin: 0 !important;
    transform: none !important;
  }

  /* empty marks take no width so dead-hang times stay aligned */
  .leaderboard .lb-row > .time .hang-type-mark--empty,
  .leaderboard .lb-row > .desktop-time .hang-type-mark--empty {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

/* ============================================================
   LOCK 20260918deskweight2 — left-align TIME column contents
   so gold hang times share one vertical baseline (col was text-align:center).
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time.desktop-time,
  .leaderboard .lb-row > .time {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .leaderboard .lb-row > .time .lb-time-inner {
    margin-left: 0 !important;
    margin-right: auto !important;
    align-self: flex-start !important;
    justify-self: start !important;
  }

  .leaderboard .lb-head .time,
  .leaderboard thead .time,
  .leaderboard .lb-header .time,
  .lb-col-head.time,
  [data-col="time"].lb-head-cell {
    text-align: left !important;
  }
}

/* ============================================================
   LOCK 20260918mobsweep1 (Milo HARD — full sweep FAILs)
   Mobile filters: Sort TOP, then Hang type, then Division; Gym hidden.
   Sticky .mobile-submit-bar must NOT cover bottom board rows —
   add bottom padding / scroll-padding for board + page.
   ============================================================ */
@media (max-width: 900px) {
  .lb-filters,
  .lb-filter-bar,
  .leaderboard-filters,
  .lb-filter-row,
  .lb-board-filters {
    display: flex !important;
    flex-direction: column !important;
  }

  .lb-filter-group--sort {
    order: 0 !important;
  }
  .lb-filter-group--hang {
    order: 1 !important;
  }
  .lb-filter-group--hangboard {
    order: 2 !important;
  }
  .lb-filter-group--division {
    order: 3 !important;
  }
  .lb-filter-group--gym,
  .lb-gym-filter {
    display: none !important;
    order: 99 !important;
  }

  /* sticky Submit clearance */
  .mobile-submit-bar {
    z-index: 40 !important;
  }
  body {
    padding-bottom: calc(4.75rem + env(safe-area-inset-bottom, 0px)) !important;
  }
  .leaderboard,
  #leaderboard,
  .lb-board,
  .lb-board-wrap,
  .lb-rows,
  .lb-list {
    padding-bottom: calc(5.25rem + env(safe-area-inset-bottom, 0px)) !important;
    scroll-padding-bottom: calc(5.25rem + env(safe-area-inset-bottom, 0px)) !important;
  }
  .lb-row:last-child,
  .lb-card:last-child {
    margin-bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ============================================================
   LOCK 20260918nomarksall1 (Milo HARD — ALL viewports)
   Hang-type SYMBOLS/marks GONE everywhere (desktop/tablet/mobile).
   Keep: gold Hang Time → white hang-type TITLE under → weight under title.
   Overrides prior "desktop mark right of time" lock.
   ============================================================ */
.leaderboard .hang-type-mark,
.leaderboard .hang-type-mark *,
.leaderboard [class*="hang-type-mark"],
.leaderboard .lb-hang-mark,
.leaderboard .lb-time-aside .hang-type-mark,
.leaderboard .lb-time-main .hang-type-mark,
.leaderboard .lb-time-inner .hang-type-mark,
.leaderboard .desktop-time .hang-type-mark,
.leaderboard .mobile-time .hang-type-mark,
.lb-row .hang-type-mark,
.lb-card .hang-type-mark,
.lb-card-time .hang-type-mark,
.lb-time-aside > .hang-type-mark,
.lb-time-aside img.hang-type-mark,
.lb-time-aside svg,
.hang-type-mark--weighted,
.hang-type-mark--one-arm,
.hang-type-mark--lockoff,
.hang-type-mark--edge,
.hang-type-mark--towel,
.hang-type-mark--empty {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
}

/* Desktop/tablet/mobile: keep title+weight stack under gold time (no mark column) */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    grid-template-columns: none !important;
  }
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside {
    display: block !important;
    order: 3 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time {
    order: 1 !important;
    min-width: 4.5rem !important;
    text-align: left !important;
    font-variant-numeric: tabular-nums !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title {
    order: 2 !important;
    display: block !important;
    color: #fff !important;
  }
  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold {
    order: 3 !important;
    display: block !important;
  }
}

/* ============================================================
   LOCK 20260918timecol2 (Milo HARD)
   Desktop TIME: narrow + stack CENTERED under TIME header.
   Header uses .lb-header (not only .lb-head) — keep same grid.
   Watch/VIDEO visible on small desktop. Marks stay hidden.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .lb-row,
  .leaderboard .lb-head,
  .leaderboard .lb-header,
  .leaderboard .lb-header-row,
  .leaderboard .lb-cols,
  .leaderboard > .lb-header,
  #leaderboard .lb-header,
  #leaderboard .lb-row {
    grid-template-columns: 40px 120px minmax(110px, 1.1fr) minmax(70px, 0.7fr) minmax(90px, 0.85fr) 118px 56px 72px !important;
  }

  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .time.desktop-time,
  .leaderboard .lb-head .time,
  .leaderboard .lb-head > .time,
  .leaderboard .lb-header .time,
  .leaderboard .lb-header > .time,
  .leaderboard .lb-header .lb-h-time,
  .leaderboard .lb-h-time,
  .leaderboard .lb-header-row .time,
  .leaderboard [class*="lb-h-time"] {
    width: 118px !important;
    max-width: 118px !important;
    min-width: 118px !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-self: center !important;
  }

  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: max-content !important;
    max-width: 100% !important;
    grid-template-columns: none !important;
  }

  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }

  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time {
    text-align: center !important;
    min-width: 0 !important;
    width: auto !important;
    font-variant-numeric: tabular-nums !important;
  }

  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    text-align: center !important;
    color: #fff !important;
    max-width: 110px !important;
  }

  .leaderboard .lb-row > .time .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-pr-hold {
    display: block !important;
    text-align: center !important;
  }

  .leaderboard .lb-row > .watch,
  .leaderboard .lb-row > .video,
  .leaderboard .lb-row > .lb-watch,
  .leaderboard .lb-row > .lb-video,
  .leaderboard .lb-header .watch,
  .leaderboard .lb-header .video,
  .leaderboard .lb-header .lb-h-watch,
  .leaderboard .lb-h-watch,
  .leaderboard .lb-head .watch,
  .leaderboard .lb-head .video {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-width: 64px !important;
    overflow: visible !important;
  }

  .leaderboard .lb-row .watch-btn,
  .leaderboard .lb-row a.watch,
  .leaderboard .lb-row .lb-watch-btn,
  .leaderboard .lb-row .btn-watch {
    display: inline-flex !important;
    visibility: visible !important;
  }
}

.leaderboard .hang-type-mark,
.leaderboard [class*="hang-type-mark"],
.lb-row .hang-type-mark {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* First paint: hold board + recent clips until JS has real rows/items. */
html.wdhc-home-booting .leaderboard,
html.wdhc-home-booting .video-submissions-section,
html.wdhc-home-booting .sidebar-upper,
html.wdhc-home-booting .post-video-strip,
html.wdhc-home-booting .home-challenges-block,
html.wdhc-home-booting .home-lower-band {
  visibility: hidden !important;
}

/* ============================================================
   LOCK 20260919sweep1  night sweep restore
   nomarksall1 / timecol2 / mobtitlestack1 hid hang-type marks
   and stacked +lb under WEIGHTED. Restore the visual lock:
   mark RIGHT of the gold time, title UNDER (white), +200 LB
   on the SAME LINE as the time. Mobile 390: time + load + mark
   one line, titles hidden so they do not crowd Watch.
   Top 10 stays time-only. Empty mark slot on standard dead hang.
   Do not restore visfix1 / totallabel1 / nomark1 / timealign2.
   ============================================================ */
#top-10-list .hang-type-mark,
#top-10-list .lb-hang-title,
#world-leaders .hang-type-mark,
#world-leaders .lb-hang-title {
  display: none !important;
  visibility: hidden !important;
}

.leaderboard .lb-row .hang-type-mark,
.leaderboard .lb-row > .time .hang-type-mark,
.leaderboard .lb-row > .desktop-time .hang-type-mark,
.leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
.leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
.lb-row .hang-type-mark,
.lb-card-time .hang-type-mark,
.lb-time-aside > .hang-type-mark,
.hang-type-mark--weighted,
.hang-type-mark--one-arm,
.hang-type-mark--lockoff,
.hang-type-mark--edge,
.hang-type-mark--towel {
  display: flex !important;
  visibility: visible !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  overflow: visible !important;
  pointer-events: none !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
}

.leaderboard .lb-row .hang-type-mark svg,
.leaderboard .lb-row .hang-type-mark img,
.leaderboard .lb-time-aside .hang-type-mark svg,
.leaderboard .lb-time-aside .hang-type-mark img,
.lb-row .hang-type-mark svg,
.lb-row .hang-type-mark img {
  display: block !important;
  visibility: visible !important;
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  opacity: 1 !important;
  position: static !important;
  left: auto !important;
}

.leaderboard .lb-row .hang-type-mark--empty,
.leaderboard .lb-row > .time .hang-type-mark--empty,
.leaderboard .lb-row > .desktop-time .hang-type-mark--empty {
  display: block !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

@media (min-width: 901px) {
  .time .lb-time-inner,
  .desktop-time .lb-time-inner,
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner,
  .lb-row > .time .lb-time-inner,
  .lb-row > .desktop-time .lb-time-inner {
    display: block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  .time .lb-time-main,
  .desktop-time .lb-time-main,
  .leaderboard .lb-row > .time .lb-time-main,
  .leaderboard .lb-row > .desktop-time .lb-time-main,
  .lb-row > .time .lb-time-main,
  .lb-row > .desktop-time .lb-time-main {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: start !important;
    justify-items: start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  .time .lb-time-stack,
  .desktop-time .lb-time-stack,
  .leaderboard .lb-row > .time .lb-time-stack,
  .leaderboard .lb-row > .desktop-time .lb-time-stack,
  .lb-row > .time .lb-time-stack,
  .lb-row > .desktop-time .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    width: max-content !important;
    min-width: 5ch !important;
    max-width: none !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
  }
  .time .lb-best-time,
  .desktop-time .lb-best-time,
  .leaderboard .lb-row > .time .lb-best-time,
  .leaderboard .lb-row > .desktop-time .lb-best-time,
  .lb-row > .time .lb-best-time,
  .lb-row > .desktop-time .lb-best-time {
    line-height: 1 !important;
    text-align: center !important;
    min-width: 5ch !important;
    order: 0 !important;
  }
  .time .lb-hang-title,
  .desktop-time .lb-hang-title,
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    text-align: center !important;
    width: 100% !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    order: 0 !important;
  }
  .time .lb-time-stack > .lb-pr-hold,
  .desktop-time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold,
  .lb-row > .time .lb-time-stack > .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .time .lb-time-aside,
  .desktop-time .lb-time-aside,
  .leaderboard .lb-row > .time .lb-time-aside,
  .leaderboard .lb-row > .desktop-time .lb-time-aside,
  .lb-row > .time .lb-time-aside,
  .lb-row > .desktop-time .lb-time-aside {
    display: flex !important;
    visibility: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: max-content !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    order: 0 !important;
    position: static !important;
  }
  .time .lb-time-aside .lb-pr-hold,
  .desktop-time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .time .lb-time-aside .lb-pr-hold,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .lb-pr-hold,
  .lb-row > .time .lb-time-aside .lb-pr-hold,
  .lb-row > .desktop-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-family: Oswald, Rajdhani, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    order: 0 !important;
  }
  .time .lb-time-aside .hang-type-mark,
  .desktop-time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .time .lb-time-aside .hang-type-mark,
  .leaderboard .lb-row > .desktop-time .lb-time-aside .hang-type-mark,
  .lb-row > .time .lb-time-aside .hang-type-mark,
  .lb-row > .desktop-time .lb-time-aside .hang-type-mark {
    display: flex !important;
    visibility: visible !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    align-self: center !important;
    flex-shrink: 0 !important;
    position: static !important;
    left: auto !important;
    opacity: 1 !important;
  }
}

@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-hang-title,
  .lb-card-time .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-inner,
  .lb-card-time .lb-time-inner,
  .lb-row.lb-mobile-card .lb-time-main,
  .lb-card-time .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack,
  .lb-card-time .lb-time-stack,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold,
  .lb-card-time .lb-time-stack > .lb-pr-hold {
    display: none !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside,
  .lb-card-time .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-aside,
  .lb-row-wrapper.details-visible .lb-card-time .lb-time-aside {
    display: flex !important;
    visibility: visible !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    grid-column: auto !important;
    grid-row: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
    transform: none !important;
    order: 0 !important;
  }
  .lb-row.lb-mobile-card .lb-time-aside .lb-pr-hold,
  .lb-card-time .lb-time-aside .lb-pr-hold {
    display: inline-block !important;
    visibility: visible !important;
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    margin: 0 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark,
  .lb-card-time .hang-type-mark,
  .lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark {
    display: flex !important;
    visibility: visible !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    overflow: visible !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    position: static !important;
    left: auto !important;
    opacity: 1 !important;
  }
  .lb-row.lb-mobile-card .hang-type-mark svg,
  .lb-card-time .hang-type-mark svg,
  .lb-row.lb-mobile-card .hang-type-mark img,
  .lb-card-time .hang-type-mark img {
    display: block !important;
    visibility: visible !important;
    width: 24px !important;
    height: 24px !important;
    position: static !important;
    left: auto !important;
    opacity: 1 !important;
  }
  .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    padding-right: 6px !important;
  }
}
/* END 20260919sweep1 */




/* ============================================================
   LOCK 20260919nomarks2 (Milo HARD 2026-09-19 AM)
   OVERRIDES 20260919sweep1 which wrongly restored hang-type marks
   and put weight beside gold time.
   ALL viewports: marks GONE. Gold time → white title under → weight under title.
   ============================================================ */
.leaderboard .hang-type-mark,
.leaderboard .hang-type-mark *,
.leaderboard [class*="hang-type-mark"],
.leaderboard .lb-hang-mark,
.leaderboard .lb-time-aside .hang-type-mark,
.leaderboard .lb-time-main .hang-type-mark,
.leaderboard .lb-time-inner .hang-type-mark,
.leaderboard .desktop-time .hang-type-mark,
.leaderboard .mobile-time .hang-type-mark,
.lb-row .hang-type-mark,
.lb-card .hang-type-mark,
.lb-card-time .hang-type-mark,
.lb-time-aside > .hang-type-mark,
.lb-time-aside img.hang-type-mark,
.lb-time-aside svg.hang-type-mark,
.hang-type-mark--weighted,
.hang-type-mark--one-arm,
.hang-type-mark--lockoff,
.hang-type-mark--edge,
.hang-type-mark--towel,
.hang-type-mark--empty,
.lb-row.lb-mobile-card .hang-type-mark,
.lb-row.lb-mobile-card .lb-time-aside .hang-type-mark,
.lb-row-wrapper.details-visible .lb-row.lb-mobile-card .hang-type-mark,
.time .lb-time-aside .hang-type-mark,
.desktop-time .lb-time-aside .hang-type-mark {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
}

.leaderboard .lb-row .hang-type-mark svg,
.leaderboard .lb-row .hang-type-mark img,
.lb-row.lb-mobile-card .hang-type-mark svg,
.lb-row.lb-mobile-card .hang-type-mark img,
.lb-card-time .hang-type-mark svg,
.lb-card-time .hang-type-mark img {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
}

/* Weighted / specialty stack under gold time — all viewports */
.leaderboard .lb-row > .time .lb-time-inner,
.leaderboard .lb-row > .desktop-time .lb-time-inner,
.lb-row.lb-mobile-card .lb-time-inner,
.lb-card-time .lb-time-inner,
.lb-row.lb-mobile-card .lb-time-main,
.lb-card-time .lb-time-main {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  grid-template-columns: none !important;
  gap: 2px !important;
}

.leaderboard .lb-hang-title,
.lb-row.lb-mobile-card .lb-hang-title,
.lb-card-time .lb-hang-title,
.lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
  display: block !important;
  visibility: visible !important;
  color: #f4f4f4 !important;
  -webkit-text-fill-color: #f4f4f4 !important;
  white-space: normal !important;
  order: 2 !important;
}

.leaderboard .lb-added-weight,
.leaderboard .lb-hang-weight,
.lb-row .lb-added-weight,
.lb-row.lb-mobile-card .lb-added-weight,
.lb-card-time .lb-added-weight {
  display: block !important;
  order: 3 !important;
  white-space: nowrap !important;
}

.leaderboard .lb-best-time,
.lb-row.lb-mobile-card .lb-best-time {
  order: 1 !important;
  display: block !important;
}

/* ============================================================
   LOCK 20260920nomarks3 (Milo HARD)
   Grok-bot chip1 deploys restored hang-type SYMBOLS and broke Time.
   No marks anywhere on the board. Gold time, white title under,
   +lb under the title. Tabular nums so the Time column lines up.
   Past Winners stays visible. Icon-legend hang-type glyphs gone.
   ============================================================ */
.leaderboard .hang-type-mark,
.leaderboard .hang-type-mark *,
.lb-row .hang-type-mark,
.lb-card-time .hang-type-mark,
.lb-time-aside .hang-type-mark,
.ch-podium__mark-slot,
.ch-podium__metric-row .hang-type-mark,
.icon-legend-hangtypes,
.icon-legend-ht-list,
.icon-legend .hang-type-mark {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.leaderboard .lb-time-inner,
.lb-row.lb-mobile-card .lb-time-inner,
.lb-card-time .lb-time-inner,
.leaderboard .lb-time-stack,
.lb-row.lb-mobile-card .lb-time-stack,
.lb-card-time .lb-time-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important; text-align: center !important;
  justify-content: flex-start !important;
  gap: 2px !important;
}

.leaderboard .lb-best-time,
.lb-row.lb-mobile-card .lb-best-time,
.lb-card-time .lb-best-time {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" 1 !important;
  font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  white-space: nowrap !important;
  order: 1 !important;
}

.leaderboard .lb-hang-title,
.lb-row.lb-mobile-card .lb-hang-title,
.lb-card-time .lb-hang-title {
  display: block !important;
  visibility: visible !important;
  color: #f4f4f4 !important;
  -webkit-text-fill-color: #f4f4f4 !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  order: 2 !important;
}

.leaderboard .lb-pr-hold,
.lb-row .lb-pr-hold,
.lb-row.lb-mobile-card .lb-pr-hold,
.lb-card-time .lb-pr-hold,
.leaderboard .lb-row > .time .lb-time-stack .lb-pr-hold,
.leaderboard .lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
.lb-row > .time .lb-time-stack .lb-pr-hold,
.lb-row > .desktop-time .lb-time-stack .lb-pr-hold,
.time .lb-time-stack .lb-pr-hold,
.desktop-time .lb-time-stack .lb-pr-hold,
.lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
.lb-card-time .lb-time-stack .lb-pr-hold {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  width: 100% !important; max-width: 100% !important; text-align: center !important; margin-left: auto !important; margin-right: auto !important; align-self: center !important;
  max-height: none !important;
  opacity: 1 !important;
  position: static !important;
  order: 3 !important;
  color: #D4AF37 !important;
  -webkit-text-fill-color: #D4AF37 !important;
  white-space: nowrap !important;
}

.leaderboard .lb-time-aside,
.lb-row.lb-mobile-card .lb-time-aside,
.lb-card-time .lb-time-aside {
  display: none !important;
}

@media (min-width: 901px) {
  .lb-header > .lb-h-time,
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .desktop-time {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .time .lb-time-stack {
    margin-left: 0 !important;
    margin-right: auto !important;
  }
}

#home-challenges-winners:not([hidden]),
.home-challenges-winners:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* ============================================================
   LOCK 20260920nonewrank1
   Rank column is the number only. Do not put NEW next to rank.
   NEW / PR already sit next to the checkmark or PR badge.
   ============================================================ */
.rank .lb-rank-delta.is-new,
.lb-card-rank .lb-rank-delta.is-new {
  display: none !important;
}

/* ============================================================
   LOCK 20260920bgcenter1
   Background column centered (header + cells). Do not left-align.
   ============================================================ */
@media (min-width: 901px) {
  .lb-header > .lb-h-bg,
  .lb-header > .lb-h-background,
  .leaderboard .lb-header > .lb-h-bg,
  .leaderboard .lb-row > .lb-col-occupation,
  .lb-row > .lb-col-occupation,
  .lb-col-occupation {
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
  }
}

/* ============================================================
   LOCK 20260921sortfirst1 (Milo HARD — Otis 12h sweep P0)
   True mobile: Sort on top, then Hang type, then Division. Gym hidden.
   Sticky SUBMIT A HANG must not cover last board cards.
   Beats 20260916 sortunder1 (Hang-first) via equal-or-higher specificity
   loaded last. Keep nomarks + weighted stack (gold / white title / +lb).
   ============================================================ */
@media (max-width: 900px) {
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row,
  html[data-wdhc-mobile-filters="chips"] body:has(#wdhc-season-strip) .lb-toolbar-filters--row,
  .lb-toolbar-filters.lb-toolbar-filters--row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
  }

  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-group--sort,
  .lb-toolbar-filters--row .lb-filter-group--sort {
    order: 1 !important;
    width: 100% !important;
    grid-column: 1 / -1 !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-group--hang,
  .lb-toolbar-filters--row .lb-filter-group--hang {
    order: 2 !important;
    width: 100% !important;
    display: flex !important;
    grid-column: 1 / -1 !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-group--hangboard,
  .lb-toolbar-filters--row .lb-filter-group--hangboard {
    order: 3 !important;
    width: 100% !important;
    grid-column: 1 / -1 !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-group--division,
  .lb-toolbar-filters--row .lb-filter-group--division {
    order: 4 !important;
    width: 100% !important;
    grid-column: 1 / -1 !important;
  }
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-toolbar-search,
  .lb-toolbar-filters--row .lb-toolbar-search {
    order: 6 !important;
    width: 100% !important;
    grid-column: 1 / -1 !important;
  }

  html[data-wdhc-mobile-filters="chips"] body:not(.full-leaderboard-page) .lb-filter-group--gym,
  html[data-wdhc-mobile-filters="chips"] .lb-toolbar-filters--row .lb-filter-group--gym,
  body:not(.full-leaderboard-page) .lb-toolbar-filters--row .lb-filter-group--gym,
  body:not(.full-leaderboard-page) .lb-toolbar-filters--row .lb-gym-filter {
    display: none !important;
    order: 99 !important;
  }

  /* Sticky Submit clearance: pad the board box, not the later sidebar cards.
     ::after survives teaser/last-child tricks. Bar sits ~10px above the
     viewport bottom, so extra 36px keeps a visible gap above SUBMIT. */
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) {
    --wdhc-mobile-cta-h: 58px;
  }
  html:has(.mobile-submit-bar),
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) {
    scroll-padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 36px) !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) .leaderboard,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) #leaderboard-body {
    padding-bottom: 0 !important;
    scroll-padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 36px) !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) #leaderboard-body::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 36px) !important;
    pointer-events: none !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) .lb-row-wrapper,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) .lb-row,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) .lb-row.lb-mobile-card {
    scroll-margin-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 36px) !important;
  }
}

/* Milo 2026-09-21: restore previous Hang Time font (Oswald), not Rajdhani */
.leaderboard .lb-best-time,
.lb-row.lb-mobile-card .lb-best-time,
.lb-card-time .lb-best-time,
.lb-card-right .lb-best-time,
.time .lb-best-time,
.desktop-time .lb-best-time {
  font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
}

/* LOCK 20260922 gablurb2: larger how-calculated body to fill gap; no training line */
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body {
  font-size: 1.14rem !important;
  line-height: 1.55 !important;
  color: #e6dece !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p {
  margin: 0 0 12px !important;
}
.sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body p:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 901px) {
  .home-pw-grip-band .grip-age-blurb-body,
  .home-pw-grip-band > .grip-age-blurb .grip-age-blurb-body {
    font-size: 1.08rem !important;
    line-height: 1.55 !important;
  }
}
/* END 20260922 gablurb2 */

/* LOCK 20260923 pwline1
   Desktop: short Grip Age note, bottoms flush with Past Winners.
   Mobile: the whole note is a closed dropdown. */
@media (min-width: 901px) {
  .sidebar-column > .grip-age-blurb,
  .sidebar-column .sidebar-grip-age-blurb {
    flex: 0 0 auto !important;
    margin-top: 12px !important;
    padding: 14px 16px 14px !important;
  }
  .sidebar-column .sidebar-grip-age-blurb > summary {
    pointer-events: none !important;
    cursor: default !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-more::after {
    content: none !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-body {
    display: block !important;
    font-size: 0.98rem !important;
    line-height: 1.45 !important;
    margin-top: 8px !important;
    padding-top: 8px !important;
  }
  .home-challenges-winners {
    flex: 0 0 auto !important;
  }
}
@media (max-width: 900px) {
  .sidebar-column .sidebar-grip-age-blurb > summary {
    pointer-events: auto !important;
    cursor: pointer !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }
  .sidebar-column .sidebar-grip-age-blurb:not([open]) .grip-age-blurb-body {
    display: none !important;
  }
  .sidebar-column .sidebar-grip-age-blurb .grip-age-blurb-more::after {
    content: ' +' !important;
  }
  .sidebar-column .sidebar-grip-age-blurb[open] .grip-age-blurb-more::after {
    content: ' -' !important;
  }
}
/* END 20260923 pwline1 */


/* 20260922carov1: desktop Recent — no stacked/overlapping videos before JS layout */
#video-carousel-track {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
}
#video-carousel-track:not(.is-laid-out),
#video-carousel-track:not(.is-laid-out) * {
  visibility: hidden !important;
}
#video-carousel-track.is-laid-out {
  visibility: visible !important;
}
.video-carousel-slide {
  flex-shrink: 0 !important;
  position: relative !important;
  overflow: hidden !important;
  min-width: 0 !important;
}
/* Recent cards: tier pills must shrink to the slide. The 118px board badge
   spills across neighbors while the rail is still measuring. */
.video-carousel .video-submission-meta-row .tier-badge {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 26px !important;
  font-size: 0.62rem !important;
  padding: 2px 8px 2px 12px !important;
}
.video-submission-frame {
  position: relative !important;
}

/* ============================================================
   LOCK 20260922stickyclear1
   Phone scrollport ends above fixed SUBMIT A HANG so board cards
   and filters are never painted under the bar (mid-list or last row).
   ============================================================ */
@media (max-width: 900px) {
  html.wdhc-phone-scroll-on,
  html.wdhc-phone-scroll-on body.wdhc-phone-scroll-on {
    height: 100% !important;
    overflow: hidden !important;
    background: #050505 !important;
  }
  html.wdhc-phone-scroll-on body.wdhc-phone-scroll-on {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  html.wdhc-phone-scroll-on #wdhc-phone-scroll {
    position: fixed !important;
    z-index: 1 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 24px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    box-sizing: border-box !important;
    padding-top: calc(var(--wdhc-nav-h, 64px) + env(safe-area-inset-top, 0px)) !important;
    padding-bottom: 12px !important;
    scroll-padding-top: calc(var(--wdhc-nav-h, 64px) + env(safe-area-inset-top, 0px)) !important;
    scroll-padding-bottom: 16px !important;
    background: #050505 !important;
  }
  html.wdhc-phone-scroll-on body.wdhc-keyboard-open #wdhc-phone-scroll {
    bottom: 0 !important;
  }
  html.wdhc-phone-scroll-on body.wdhc-phone-scroll-on footer.wdhc-site-footer {
    padding-bottom: 28px !important;
  }
  html.wdhc-phone-scroll-on body.wdhc-phone-scroll-on:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) #leaderboard-body::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
  }
}

/* LOCK 20260922stack1 metallic header: no gold silhouette filter */
.nav-logo img[src*="wdhc-logo-header-web"],
img[src*="wdhc-logo-header-web.webp?v=20260922stack1"] {
  -webkit-filter: none !important;
  filter: none !important;
}
/* LOCK 20260922mono5 metallic monogram header: no gold silhouette filter */
.nav-logo img[src*="wdhc-logo-header-web"],
img[src*="wdhc-logo-header-web.webp?v=20260922mono5"] {
  -webkit-filter: none !important;
  filter: none !important;
}
.nav-logo img[src*="wdhc-logo-header-web"] {
  width: 72px !important;
  height: 23px !important;
  max-height: 23px !important;
  object-fit: contain !important;
}

/* LOCK 20260922mono5 nav monogram SMALLER than bar pills */
.nav-logo img[src*="wdhc-logo-header-web"],
.nav-logo img[src*="wdhc-logo-header-web.webp"],
nav .nav-logo img[src*="wdhc-logo-header-web"],
header .nav-logo img[src*="wdhc-logo-header-web"],
img[src*="wdhc-logo-header-web.webp?v=20260922mono5"] {
  -webkit-filter: none !important;
  filter: none !important;
  width: 72px !important;
  height: 23px !important;
  max-width: 72px !important;
  max-height: 23px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
}
@media (max-width: 900px) {
  .nav-logo img[src*="wdhc-logo-header-web"],
  nav .nav-logo img[src*="wdhc-logo-header-web"],
  img[src*="wdhc-logo-header-web.webp?v=20260922mono5"] {
    width: 64px !important;
    height: 21px !important;
    max-width: 64px !important;
    max-height: 21px !important;
  }
}
/* LOCK 20260922mono5 FORCE under pill */
html body nav .nav-logo > a > img[src*="wdhc-logo-header-web"],
html body nav .nav-logo img[src*="wdhc-logo-header-web"],
html body .nav-logo img[src*="wdhc-logo-header-web.webp"] {
  width: 72px !important;
  height: 23px !important;
  max-width: 72px !important;
  max-height: 23px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  -webkit-filter: none !important;
  filter: none !important;
}

/* ============================================================
   LOCK 20260924wtcenter1 (Milo HARD)
   Main board Hang Time stack: time / hang-type title / +lb|kg
   must be HORIZONTALLY CENTERED (US + METRIC). Beats earlier
   ui-locks flex-start + width:auto that left-shifted +weight
   under longer titles (e.g. 1-ARM WEIGHTED). Mobile + desktop.
   Do NOT touch challenges Heaviest (.ch-podium) stack.
   ============================================================ */
.leaderboard .lb-time-inner,
.leaderboard .lb-time-stack,
.time .lb-time-inner,
.time .lb-time-stack,
.desktop-time .lb-time-inner,
.desktop-time .lb-time-stack,
.mobile-time .lb-time-inner,
.mobile-time .lb-time-stack,
.lb-card-time .lb-time-inner,
.lb-card-time .lb-time-stack,
.lb-row.lb-mobile-card .lb-time-inner,
.lb-row.lb-mobile-card .lb-time-stack,
.lb-card-right .lb-time-inner,
.lb-card-right .lb-time-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.leaderboard .lb-time-stack .lb-best-time,
.leaderboard .lb-time-stack .lb-hang-title,
.leaderboard .lb-time-stack .lb-pr-hold,
.time .lb-time-stack .lb-best-time,
.time .lb-time-stack .lb-hang-title,
.time .lb-time-stack .lb-pr-hold,
.desktop-time .lb-time-stack .lb-best-time,
.desktop-time .lb-time-stack .lb-hang-title,
.desktop-time .lb-time-stack .lb-pr-hold,
.mobile-time .lb-time-stack .lb-best-time,
.mobile-time .lb-time-stack .lb-hang-title,
.mobile-time .lb-time-stack .lb-pr-hold,
.lb-card-time .lb-time-stack .lb-best-time,
.lb-card-time .lb-time-stack .lb-hang-title,
.lb-card-time .lb-time-stack .lb-pr-hold,
.lb-row.lb-mobile-card .lb-time-stack .lb-best-time,
.lb-row.lb-mobile-card .lb-time-stack .lb-hang-title,
.lb-row.lb-mobile-card .lb-time-stack .lb-pr-hold,
.lb-card-right .lb-time-stack .lb-best-time,
.lb-card-right .lb-time-stack .lb-hang-title,
.lb-card-right .lb-time-stack .lb-pr-hold,
.lb-row.lb-mobile-card .lb-pr-hold,
.lb-card-time .lb-pr-hold,
.lb-row.lb-mobile-card .lb-hang-title,
.lb-card-time .lb-hang-title {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  box-sizing: border-box !important;
}
/* Keep weight visible under title (do not re-hide into aside). */
.leaderboard .lb-time-stack > .lb-pr-hold,
.time .lb-time-stack > .lb-pr-hold,
.desktop-time .lb-time-stack > .lb-pr-hold,
.lb-card-time .lb-time-stack > .lb-pr-hold,
.lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  position: static !important;
}

/* ============================================================
   LOCK 20260925stickyclear2 (P0)
   Phone SUBMIT A HANG must never cover board text/controls
   (WATCH, DETAILS, Grip Age, hang title, name), mid-list or last row.
   Bar sits 12px above the viewport bottom at 58px tall (y=732-790
   on 430x800). Scrollport + a solid mask fill that band so even
   unclipped layout boxes cannot paint through. Keep 20260924wtcenter1
   weight centering. Do not hide hang-type titles or +lb.
   ============================================================ */
@media (max-width: 900px) {
  html:has(.mobile-submit-bar) {
    --wdhc-sticky-reserve: calc(var(--wdhc-mobile-cta-h, 58px) + 12px + 24px + env(safe-area-inset-bottom, 0px));
  }

  html.wdhc-phone-scroll-on #wdhc-phone-scroll {
    bottom: var(--wdhc-sticky-reserve, 94px) !important;
    contain: paint !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    clip-path: none !important;
  }

  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit)::before {
    content: "" !important;
    display: block !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: var(--wdhc-sticky-reserve, 94px) !important;
    background: #050505 !important;
    z-index: 39 !important;
    pointer-events: none !important;
  }

  a.mobile-submit-bar,
  .mobile-submit-bar {
    z-index: 200 !important;
  }

  html:has(.mobile-submit-bar),
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) {
    scroll-padding-bottom: var(--wdhc-sticky-reserve, 94px) !important;
  }

  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.full-leaderboard-page) #leaderboard-body::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 24px !important;
    pointer-events: none !important;
  }

  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .lb-row.lb-mobile-card,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit) .lb-row-wrapper {
    scroll-margin-bottom: var(--wdhc-sticky-reserve, 94px) !important;
  }
}
/* ============================================================
   LOCK 20260926flagdesk1 (Milo HARD)
   Desktop board location: flag vertically centered across BOTH
   city + state/region lines. Mobile keeps LOC_CENTER_SUBLINE
   (flag+region as one unit under city) — do NOT revert.
   Markup stays stacked (flag inside .location-subline); desktop
   uses grid + display:contents so the flag spans both rows.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .location-cluster.location-cluster--stacked,
  .lb-row > .location-col .location-cluster.location-cluster--stacked,
  .location-col .location-cluster.location-cluster--stacked {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
  }
  .leaderboard .location-cluster--stacked .location-stack,
  .lb-row > .location-col .location-cluster--stacked .location-stack,
  .location-col .location-cluster--stacked .location-stack {
    display: grid !important;
    grid-template-columns: auto max-content !important;
    grid-template-rows: auto auto !important;
    column-gap: 5px !important;
    row-gap: 2px !important;
    align-items: center !important;
    justify-items: start !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .leaderboard .location-cluster--stacked .location-city,
  .lb-row > .location-col .location-cluster--stacked .location-city,
  .location-col .location-cluster--stacked .location-city {
    grid-column: 2 !important;
    grid-row: 1 !important;
    text-align: left !important;
    justify-self: start !important;
  }
  .leaderboard .location-cluster--stacked .location-subline,
  .lb-row > .location-col .location-cluster--stacked .location-subline,
  .location-col .location-cluster--stacked .location-subline {
    display: contents !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .flag,
  .lb-row > .location-col .location-cluster--stacked .location-subline .flag,
  .location-col .location-cluster--stacked .location-subline .flag,
  .leaderboard .location-cluster--stacked .flag,
  .lb-row > .location-col .location-cluster--stacked .flag,
  .location-col .location-cluster--stacked .flag {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: center !important;
    margin: 0 !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .location-state,
  .lb-row > .location-col .location-cluster--stacked .location-subline .location-state,
  .location-col .location-cluster--stacked .location-subline .location-state,
  .leaderboard .location-cluster--stacked .location-state,
  .lb-row > .location-col .location-cluster--stacked .location-state,
  .location-col .location-cluster--stacked .location-state {
    grid-column: 2 !important;
    grid-row: 2 !important;
    text-align: left !important;
    justify-self: start !important;
  }
}

/* ============================================================
   LOCK 20260926griphead1 (Milo HARD)
   Desktop board: Grip Age column TITLE horizontally centered
   over Grip Age values. Beats watchdesk1 flex-start on
   .lb-h-grip / .grip-age-col so header "Grip Age™" shares the
   same center axis as the age numbers.
   ============================================================ */
@media (min-width: 901px) {
  .lb-header > .lb-h-grip,
  .leaderboard .lb-header > .lb-h-grip,
  .lb-row > .grip-age-col,
  .leaderboard .lb-row > .grip-age-col {
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .lb-header > .lb-h-grip .lb-tm,
  .leaderboard .lb-header > .lb-h-grip .lb-tm {
    vertical-align: super !important;
  }
}


/* ============================================================
   LOCK 20260926recentpolish1 (Milo HARD) — Recent + desktop board polish
   1) Recent: hang-type ALWAYS under time (Dead hang for open) —
      reserved min-height so card bottoms align.
   2) Recent: NAME centered in column; verified checkmark sits
      beside (absolute right of name) without shifting name.
   3) Recent mobile: location pill/row truly centered.
   4) Recent mobile: tier badge nudged down slightly.
   5) Desktop board: hang-type/TIME column nudged LEFT vs Grip Age
      (more gap before GA). Keep weighted stack + nomarks locks.
   ============================================================ */

/* --- Recent hang-type always present (space reserved) --- */
.video-submissions-section--lead .video-submission-hangtype,
.video-carousel .video-submission-hangtype,
.video-submission-item .video-submission-hangtype {
  display: block !important;
  min-height: 1.3em !important;
  visibility: visible !important;
}

/* --- Recent name center; checkmark beside without shift --- */
.video-submissions-section--lead .video-submission-name-row,
.video-carousel .video-submission-name-row,
.video-submission-item .video-submission-name-row {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  position: relative !important;
  width: 100% !important;
}
.video-submissions-section--lead .video-submission-name-block,
.video-carousel .video-submission-name-block,
.video-submission-item .video-submission-name-block {
  position: relative !important;
  display: inline-block !important;
  max-width: calc(100% - 1.6rem) !important;
  text-align: center !important;
}
.video-submissions-section--lead .video-submission-name,
.video-carousel .video-submission-name,
.video-submission-item .video-submission-name {
  display: inline !important;
}
.video-submissions-section--lead .video-submission-verified,
.video-carousel .video-submission-verified,
.video-submission-item .video-submission-verified {
  position: absolute !important;
  left: 100% !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin-left: 6px !important;
  flex-shrink: 0 !important;
  pointer-events: none !important;
}

/* --- Recent mobile: location centered + tier badge down --- */
@media (max-width: 900px) {
  .video-submissions-section--lead .video-submission-foot,
  .video-carousel .video-submission-foot,
  .video-submission-item .video-submission-foot {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  .video-submissions-section--lead .video-submission-foot .video-submission-loc-row,
  .video-carousel .video-submission-foot .video-submission-loc-row,
  .video-submission-item .video-submission-foot .video-submission-loc-row,
  .video-submissions-section--lead .video-submission-loc-row,
  .video-carousel .video-submission-loc-row,
  .video-submission-item .video-submission-loc-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  .video-submissions-section--lead .video-submission-loc,
  .video-carousel .video-submission-loc,
  .video-submission-item .video-submission-loc {
    text-align: center !important;
  }
  .video-submissions-section--lead .video-submission-meta-row,
  .video-carousel .video-submission-meta-row,
  .video-submission-item .video-submission-meta-row {
    margin-top: 4px !important;
  }
  .video-submissions-section--lead .video-submission-meta-row .tier-badge,
  .video-carousel .video-submission-meta-row .tier-badge,
  .video-submission-item .video-submission-meta-row .tier-badge {
    position: relative !important;
    top: 3px !important;
  }
}

/* --- Desktop board: TIME/hang-type column nudged left vs Grip Age --- */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time,
  .leaderboard .lb-row > .time.desktop-time,
  .leaderboard .lb-row > .desktop-time,
  .lb-row > .time,
  .lb-row > .desktop-time,
  .leaderboard .lb-header > .lb-h-time,
  .lb-header > .lb-h-time {
    padding-right: 10px !important;
    margin-right: 2px !important;
  }
  .leaderboard .lb-row > .grip-age-col,
  .lb-row > .grip-age-col,
  .leaderboard .lb-header > .lb-h-grip,
  .lb-header > .lb-h-grip {
    padding-left: 10px !important;
    margin-left: 2px !important;
  }
  .leaderboard .lb-row > .time .lb-time-inner,
  .leaderboard .lb-row > .desktop-time .lb-time-inner,
  .lb-row > .time .lb-time-inner,
  .lb-row > .desktop-time .lb-time-inner {
    margin-right: auto !important;
    margin-left: 0 !important;
    justify-self: start !important;
  }
  .leaderboard .lb-row > .time .lb-hang-title,
  .leaderboard .lb-row > .desktop-time .lb-hang-title,
  .lb-row > .time .lb-hang-title,
  .lb-row > .desktop-time .lb-hang-title {
    max-width: 9.5rem !important;
  }
}


/* ============================================================
   LOCK 20260926mobexpand1 (Milo HARD) — fold into recent polish
   Mobile open athlete card:
   1) Hide card Grip Age + location (dead space between header and
      video). Open straight to FINAL 20s film.
   2) Grip Age stays in details-rail under video; Location added in
      Athlete side-meta (stacks under film on phone).
   3) Tier Progress helper (.details-hang-path__pro-via / __pro-note)
      wraps fully — kill nowrap overflow off the right edge.
   ============================================================ */
@media (max-width: 900px) {
  /* Card chrome only: name / time / actions. No mid-card dead zone. */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-grip,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-right .lb-card-grip,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-meta,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-loc-row {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card {
    padding-bottom: 10px !important;
    min-height: 0 !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-main {
    gap: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-panel {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
  /* Film first, then all info (rail + Athlete meta with Location) */
  .lb-row-wrapper.details-visible .details-film-stage--split {
    display: flex !important;
    flex-direction: column !important;
  }
  .lb-row-wrapper.details-visible .details-film-stage--split .details-film-room {
    order: 1 !important;
  }
  .lb-row-wrapper.details-visible .details-film-stage--split .details-film-side {
    order: 2 !important;
  }
  .details-side-meta__flag {
    display: inline-block;
    margin-right: 4px;
    vertical-align: -2px;
  }

  /* Tier Progress pro helper: wrap inside card, no horizontal clip */
  .details-hang-path__need,
  .details-hang-path__pro-via,
  .details-hang-path__pro-note,
  .lb-row-wrapper.details-visible .details-hang-path__need,
  .lb-row-wrapper.details-visible .details-hang-path__pro-via,
  .lb-row-wrapper.details-visible .details-hang-path__pro-note {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }
  .details-hang-path,
  .lb-row-wrapper.details-visible .details-hang-path {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }
}


/* ============================================================
   LOCK 20260926mobexpand2 (Milo HARD)
   Mobile expanded board row: COLLAPSE empty band above FINAL 20s.
   Root cause (measured): .lb-row.lb-mobile-card align-items:stretch
   matched ~134px WATCH/CLOSE stack; .lb-hang-title flex-grew to
   132px → ~48px blank under LEGEND before the film. Hiding grip/loc
   was not enough.
   Fix: flex-start + content-sized time stack; tight row→film gap.
   Desktop unchanged. Keep mobexpand1 hide of card grip/loc.
   ============================================================ */
@media (max-width: 900px) {
  /* Do NOT stretch summary columns to the actions stack height */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card {
    align-items: flex-start !important;
    padding-top: 12px !important;
    padding-bottom: 6px !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-rank,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions {
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-head,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-right,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-time,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-inner,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    align-self: flex-start !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-pr-hold,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-best-time {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
  }
  /* Hang-type title under time on the card is redundant once details
     open (rail shows type under film). Drop it so summary stays short. */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-pr-hold {
    display: none !important;
  }
  /* Tight film under summary — kill reserved padding/margins */
  .lb-row-wrapper.details-visible .details-panel {
    margin-top: 0 !important;
    padding-top: 4px !important;
    padding-bottom: 12px !important;
  }
  .lb-row-wrapper.details-visible .details-panel__inner {
    gap: 8px !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-section--film,
  .lb-row-wrapper.details-visible .details-film-stage,
  .lb-row-wrapper.details-visible .details-film-stage--split {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-film-room {
    margin-top: 0 !important;
  }
  /* Absolute close chip must not invent flow gap */
  .lb-row-wrapper.details-visible .details-panel {
    position: relative !important;
  }

  /* Actions stack was still ~126px (WATCH+CLOSE) and set the row height,
     leaving a dark empty band under LEGEND beside the buttons. On expand,
     lay actions in one compact row so summary height hugs name+time. */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: flex-start !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .video-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .watch-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .lb-card-details-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions a.video-btn {
    margin: 0 !important;
    flex: 0 0 auto !important;
  }

  .lb-row-wrapper.details-visible .details-panel__close {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    margin: 0 !important;
    float: none !important;
    z-index: 6 !important;
  }
}


/* ============================================================
   LOCK 20260926thisHang1 (Milo HARD)
   1) THIS HANG weighted caption includes +N (JS; see index-home).
   2) Mobile details: WATCH FULL HANG stays in normal footer flow —
      never absolute/fixed/transform over .details-rail__best-time.
      Clear stack: video → date → WATCH FULL HANG → THIS HANG time.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row-wrapper.details-visible .details-film-room,
  .details-film-stage--split .details-film-room {
    position: relative !important;
    height: auto !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
    transform: none !important;
  }
  .lb-row-wrapper.details-visible .details-film-room__media,
  .details-film-stage--split .details-film-room__media {
    flex: 0 0 auto !important;
    min-height: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-film-room__footer,
  .details-film-room__footer {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 8px 10px 10px !important;
    transform: none !important;
    z-index: auto !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
  }
  .lb-row-wrapper.details-visible .details-film-room__open,
  .details-film-room__open,
  a.details-film-room__open {
    position: static !important;
    display: inline-flex !important;
    margin: 0 !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    z-index: auto !important;
    float: none !important;
  }
  .lb-row-wrapper.details-visible .details-film-stage--split {
    gap: 12px !important;
  }
  .lb-row-wrapper.details-visible .details-film-side,
  .lb-row-wrapper.details-visible .details-film-rail,
  .lb-row-wrapper.details-visible .details-rail__best,
  .lb-row-wrapper.details-visible .details-rail__best-time,
  .lb-row-wrapper.details-visible .details-rail__hang-type {
    position: relative !important;
    z-index: 1 !important;
    transform: none !important;
  }
  /* Allow weighted +N to wrap under time on narrow phones */
  .lb-row-wrapper.details-visible .details-rail__best-topline {
    flex-wrap: wrap !important;
    white-space: normal !important;
    max-width: 100% !important;
  }
  .lb-row-wrapper.details-visible .details-rail__best-topline .details-rail__hang-type {
    white-space: normal !important;
    max-width: 100% !important;
  }
}


/* ============================================================
   LOCK 20260926detailsAudit1 (Milo HARD) — DETAILS audit punch list
   P0: sticky SUBMIT padding; hide row WATCH when expanded; single close
   P1: demote WATCH FULL to text link; hide native video chrome; custom play
   P2: tighten film footer; under-film GA·loc; dial badge glow; Pro note wrap
   ============================================================ */
@media (max-width: 900px) {
  .lb-row-wrapper.details-visible .details-panel {
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 36px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .lb-row-wrapper.details-visible .details-panel__inner {
    padding-bottom: 12px !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .video-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .watch-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions .watch-link,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions a.video-btn,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-actions a.watch-link {
    display: none !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-details-btn {
    display: none !important;
  }
  .lb-row-wrapper.details-visible .details-film-room__open,
  .details-film-room__open,
  a.details-film-room__open,
  a.details-film-room__open--link {
    display: inline !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: rgba(212, 175, 55, 0.85) !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    min-height: 0 !important;
    line-height: 1.3 !important;
  }
  .details-film-room__video::-webkit-media-controls,
  .details-film-room__video::-webkit-media-controls-enclosure,
  .details-film-room__video::-webkit-media-controls-panel {
    display: none !important;
    -webkit-appearance: none !important;
    opacity: 0 !important;
  }
  .details-film-room__play {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 5 !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 999px !important;
    border: 1.5px solid rgba(212, 175, 55, 0.85) !important;
    background: rgba(8, 8, 10, 0.55) !important;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.35), 0 8px 24px rgba(0,0,0,0.45) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
  }
  .details-film-room__play-icon {
    width: 0 !important;
    height: 0 !important;
    border-style: solid !important;
    border-width: 8px 0 8px 14px !important;
    border-color: transparent transparent transparent #D4AF37 !important;
    margin-left: 3px !important;
    display: block !important;
  }
  .details-film-room.is-playing .details-film-room__play {
    display: none !important;
  }
  .details-film-room__media {
    position: relative !important;
  }
  .lb-row-wrapper.details-visible .details-film-room__footer,
  .details-film-room__footer {
    gap: 4px !important;
    padding: 6px 10px 8px !important;
    align-items: center !important;
  }
  .details-film-room__under {
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(220, 220, 220, 0.72) !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.02em !important;
    text-align: center !important;
    line-height: 1.35 !important;
  }
  .details-film-room__date[hidden] {
    display: none !important;
  }
  .lb-row-wrapper.details-visible .details-rail__badges .tier-badge,
  .lb-row-wrapper.details-visible .details-hang-path .tier-badge {
    box-shadow: 0 0 8px rgba(212, 175, 55, 0.18) !important;
    filter: none !important;
  }
  .lb-row-wrapper.details-visible .details-rail__badges .tier-badge.tier-elite,
  .lb-row-wrapper.details-visible .details-hang-path .tier-badge.tier-elite {
    box-shadow: 0 0 6px rgba(255, 255, 255, 0.12) !important;
  }
}

.details-film-room__open,
a.details-film-room__open,
a.details-film-room__open--link {
  display: inline !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(212, 175, 55, 0.9) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}
.details-hang-path__pro-via,
.details-hang-path__pro-note {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  max-width: 100% !important;
}
.details-film-room__video::-webkit-media-controls-enclosure {
  display: none !important;
}
.details-film-room__play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  width: 56px;
  height: 56px;
  border-radius: 999px;
  border: 1.5px solid rgba(212, 175, 55, 0.85);
  background: rgba(8, 8, 10, 0.55);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.details-film-room__play-icon {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #D4AF37;
  margin-left: 3px;
  display: block;
}
.details-film-room.is-playing .details-film-room__play { display: none; }
.details-film-room__under {
  margin: 0;
  color: rgba(220, 220, 220, 0.72);
  font-size: 0.72rem;
  text-align: center;
  line-height: 1.35;
}

/* ============================================================
   LOCK 20260926mobscroll1 (Milo HARD)
   Phone vertical pan was sticking ("touching"):
   - JS wrote scrollTop whenever a card crossed SUBMIT
   - the scrollport stopped 94px short, so the black band was a dead zone
   - overflow:hidden / video / touch-action:manipulation ate the gesture
   94px clearance stays: --wdhc-sticky-reserve padding inside the
   full-height scroller, plus the pointer-events:none mask.
   SUBMIT itself is the only control that keeps the tap.
   Film carousel keeps horizontal swipe in JS. Vertical pans scroll.
   ============================================================ */
@media (max-width: 900px) {
  html.wdhc-phone-scroll-on #wdhc-phone-scroll {
    bottom: 0 !important;
    padding-bottom: var(--wdhc-sticky-reserve, 94px) !important;
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
    overscroll-behavior-x: none !important;
    -webkit-overflow-scrolling: touch;
  }

  html.wdhc-phone-scroll-on #wdhc-phone-scroll,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll * {
    touch-action: pan-y !important;
  }

  html.wdhc-phone-scroll-on #wdhc-phone-scroll input,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll textarea,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll select,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll .lb-tab-strip,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll .sort-tabs,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll .division-tabs,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll .lb-filter-group--hang,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll .lb-filter-group--division {
    touch-action: pan-x pan-y !important;
  }

  /* Nested overflow:hidden becomes a scrollport on iOS and eats the first pan. */
  html.wdhc-phone-scroll-on .leaderboard,
  html.wdhc-phone-scroll-on .lb-row-wrapper,
  html.wdhc-phone-scroll-on .lb-row.lb-mobile-card,
  html.wdhc-phone-scroll-on .details-panel,
  html.wdhc-phone-scroll-on .details-panel__inner,
  html.wdhc-phone-scroll-on .details-hang-path,
  html.wdhc-phone-scroll-on .details-film-stage,
  html.wdhc-phone-scroll-on .details-film-room,
  html.wdhc-phone-scroll-on .details-film-room__media,
  html.wdhc-phone-scroll-on .video-carousel,
  html.wdhc-phone-scroll-on .video-carousel-stage,
  html.wdhc-phone-scroll-on .video-carousel-viewport,
  html.wdhc-phone-scroll-on .video-carousel-track {
    overflow: clip !important;
    touch-action: pan-y !important;
  }

  html.wdhc-phone-scroll-on .lb-tab-strip,
  html.wdhc-phone-scroll-on .sort-tabs,
  html.wdhc-phone-scroll-on .division-tabs {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    touch-action: pan-x pan-y !important;
    overscroll-behavior-x: contain !important;
  }

  /* Scrollport already pads 94px. Do not stack another 94px blank inside DETAILS. */
  html.wdhc-phone-scroll-on .lb-row-wrapper.details-visible .details-panel {
    padding-bottom: 16px !important;
  }

  html.wdhc-phone-scroll-on .details-film-room__video,
  html.wdhc-phone-scroll-on .video-carousel video,
  html.wdhc-phone-scroll-on .video-submission-frame video,
  html.wdhc-phone-scroll-on video.carousel-video {
    pointer-events: none !important;
    touch-action: pan-y !important;
  }

  html.wdhc-phone-scroll-on .details-film-room__play,
  html.wdhc-phone-scroll-on .details-film-room__media,
  html.wdhc-phone-scroll-on a.mobile-submit-bar,
  .mobile-submit-bar {
    pointer-events: auto !important;
  }

  html.wdhc-phone-scroll-on body:has(.mobile-submit-bar)::before,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit)::before {
    pointer-events: none !important;
  }
}

/* ============================================================
   LOCK 20260926mobscroll2 (Milo HARD)
   Document scrolls with the finger. No nested #wdhc-phone-scroll.
   SUBMIT accepts a vertical pan (tap still follows the link).
   Recent + DETAILS film: horizontal only (JS). Vertical pan
   is the page. Video elements do not take the gesture.
   ============================================================ */
@media (max-width: 900px) {
  html,
  html.wdhc-phone-scroll-on,
  body,
  html.wdhc-phone-scroll-on body,
  html.wdhc-phone-scroll-on body.wdhc-phone-scroll-on {
    height: auto !important;
    min-height: 100% !important;
    max-height: none !important;
    overflow-x: clip !important;
    overflow-y: visible !important;
    position: static !important;
    touch-action: auto !important;
    overscroll-behavior-y: auto !important;
  }

  html body #wdhc-phone-scroll,
  html.wdhc-phone-scroll-on #wdhc-phone-scroll {
    position: static !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    contain: none !important;
    clip-path: none !important;
    transform: none !important;
    padding: 0 !important;
    touch-action: auto !important;
    -webkit-overflow-scrolling: auto !important;
  }

  a.mobile-submit-bar,
  .mobile-submit-bar {
    touch-action: pan-y !important;
  }

  html.wdhc-phone-scroll-on body:has(.mobile-submit-bar)::before,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit)::before {
    pointer-events: none !important;
  }

  /* Film is not a vertical scrollport. scrollLeft still moves Recent. */
  html body .video-carousel-viewport,
  html.wdhc-phone-scroll-on body .video-carousel-viewport,
  html.wdhc-phone-scroll-on .video-carousel-viewport {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    touch-action: pan-y !important;
    overscroll-behavior-x: contain !important;
    overscroll-behavior-y: auto !important;
  }

  html body .details-film-room,
  html body .details-film-room__media,
  html body .details-film-stage,
  html body [data-hang-film],
  html.wdhc-phone-scroll-on .details-film-room,
  html.wdhc-phone-scroll-on .details-film-stage,
  html.wdhc-phone-scroll-on .details-film-room__media {
    overflow: visible !important;
    touch-action: pan-y !important;
    overscroll-behavior: auto !important;
    max-height: none !important;
  }

  html body .details-panel,
  html body .details-panel__inner,
  html body .lb-row-wrapper,
  html.wdhc-phone-scroll-on .details-panel,
  html.wdhc-phone-scroll-on .lb-row-wrapper,
  html.wdhc-phone-scroll-on .leaderboard {
    overflow: visible !important;
    overscroll-behavior: auto !important;
    touch-action: pan-y !important;
    max-height: none !important;
  }

  html body .lb-row-wrapper.details-visible .details-panel,
  html.wdhc-phone-scroll-on .lb-row-wrapper.details-visible .details-panel {
    padding-bottom: 16px !important;
  }

  html body .details-film-room__video,
  html body .video-carousel video,
  html body .video-submission-frame video,
  html body video.carousel-video,
  html.wdhc-phone-scroll-on .details-film-room__video,
  html.wdhc-phone-scroll-on video.carousel-video {
    pointer-events: none !important;
    touch-action: pan-y !important;
  }

  html body .details-film-room__play,
  html body .video-carousel-btn,
  html body [data-hang-prev],
  html body [data-hang-next],
  html body [data-video-play] {
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }

  html body .lb-tab-strip,
  html body .sort-tabs,
  html body .division-tabs,
  html body .nav-center {
    touch-action: pan-x pan-y !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
}

/* LOCK 20260926logophone1
   Phone header monogram ~22% larger than the 72x23 force above
   (88x28). Desktop stays 72x23. Bar stays 64px so Get App,
   US/METRIC, and the hamburger keep their places. */
@media (max-width: 900px) {
  html body nav .nav-logo img[src*="wdhc-logo-header"],
  html body nav .nav-logo > a > img[src*="wdhc-logo-header"],
  html body .nav-logo img[src*="wdhc-logo-header-web"],
  html body .mobile-logo img[src*="wdhc-logo-header"] {
    width: 88px !important;
    height: 28px !important;
    max-width: 88px !important;
    max-height: 28px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
  }
}
/* ============================================================
   LOCK 20260926detailsblank1 (Milo HARD)
   Mobile DETAILS open: kill black void above/around the card.
   Measured: void is ABOVE .lb-row-wrapper.details-visible (nav->card),
   not between card and .details-panel. Oversized scroll-margin + stuck
   wdhc-phone-scroll-on + any center-scroll of the ~1700px wrapper.
   CSS: tighten scroll-margin (overrides wdhc-mobile.css +96px).
   JS (nav-mobile + index-home): clear phone-scroll class; pin card under nav.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row-wrapper.details-visible {
    scroll-margin-top: calc(var(--wdhc-nav-h, 64px) + 8px) !important;
    scroll-margin-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + env(safe-area-inset-bottom, 0px) + 16px) !important;
  }
}

/* ============================================================
   LOCK 20260926detailsblank2 (Milo HARD)
   mobscroll2 set max-height:none on ALL .details-panel, which
   broke closed collapse (max-height:0). Closed panels must not
   reserve layout height. Open panels keep max-height:none so
   tall film content is not clipped.
   ============================================================ */
@media (max-width: 900px) {
  html body .lb-row-wrapper:not(.details-visible) > .details-panel,
  html body .lb-row-wrapper:not(.details-visible) .details-panel,
  html.wdhc-phone-scroll-on .lb-row-wrapper:not(.details-visible) .details-panel {
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    border-left-color: transparent !important;
    pointer-events: none !important;
  }
  html body .lb-row-wrapper:not(.details-visible) .details-panel__inner,
  html.wdhc-phone-scroll-on .lb-row-wrapper:not(.details-visible) .details-panel__inner {
    max-height: 0 !important;
    overflow: hidden !important;
  }
  /* Open: keep mobscroll2 intent — do not clip tall DETAILS */
  html body .lb-row-wrapper.details-visible > .details-panel,
  html body .lb-row-wrapper.details-visible .details-panel,
  html.wdhc-phone-scroll-on .lb-row-wrapper.details-visible .details-panel {
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* 20260926tierbadge1: mobile name to tier gap */
@media (max-width: 900px) {
  .lb-row.lb-mobile-card .lb-card-name-block .lb-card-tier-under-name.tier-badge,
  .lb-row.lb-mobile-card .tier-badge.lb-card-tier-under-name,
  .lb-card-name-block .lb-card-tier-under-name.tier-badge {
    margin-top: 8px !important;
  }
}

/* ============================================================
   LOCK 20260926privloc1
   1) Recent card "Private" is a dim caption (~63% of the 1.08rem
      number size). Numeric Grip Age is unchanged. Desktop unchanged.
   2) Home mobile board: location is a full-width line under the
      whole card (name, time, and Watch/Details), centered, wrapping.
      Full leaderboard page keeps its own location lock.
   ============================================================ */
@media (max-width: 900px) {
  .video-submission-meta-row .video-submission-grip-inline .video-submission-grip-na,
  .video-carousel .video-submission-meta-row .video-submission-grip-na,
  .video-submission-item .video-submission-meta-row .video-submission-grip-na {
    font-size: 0.68rem !important;
    font-weight: 400 !important;
    font-family: 'Rajdhani', 'Source Sans 3', sans-serif !important;
    color: rgba(255, 255, 255, 0.38) !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    line-height: 1 !important;
    vertical-align: baseline !important;
  }

  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card {
    flex-wrap: wrap !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta {
    flex: 1 0 100% !important;
    order: 4 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta > .lb-card-loc-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-group,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-cluster,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-cluster--stacked {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-city,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-state,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-subline,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-stack {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
    flex: 0 1 auto !important;
    max-width: 100% !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-stack,
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-subline {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }
  body:not(.full-leaderboard-page) .lb-row.lb-mobile-card > .lb-card-meta .location-subline {
    flex-direction: row !important;
    gap: 5px !important;
  }
}

/* ============================================================
   LOCK 20260926mobhead1
   Mobile open row: the gold time was recentering (align-items:center
   on a wide stack) so it jumped left and left a hole beside the name.
   Keep the time on the right edge, hang type under it, and tighten
   the dropdown so the film and athlete facts sit closer.
   Desktop unchanged.
   ============================================================ */
@media (max-width: 900px) {
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    column-gap: 12px !important;
    align-items: start !important;
    justify-items: stretch !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    align-self: start !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-right,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-time,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-inner,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main,
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    justify-self: end !important;
    align-self: start !important;
    text-align: right !important;
    width: max-content !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    height: auto !important;
    flex: 0 0 auto !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-time-main {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-best-time {
    text-align: right !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* White hang type under the time fills the spot Grip Age leaves when open. */
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-hang-title {
    display: block !important;
    color: #f4f4f4 !important;
    -webkit-text-fill-color: #f4f4f4 !important;
    font-size: 0.58rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    text-align: right !important;
    white-space: nowrap !important;
    margin: 3px 0 0 !important;
    height: auto !important;
    max-height: none !important;
    flex-grow: 0 !important;
  }
  .lb-row-wrapper.details-visible .lb-row.lb-mobile-card {
    border-bottom: 1px solid rgba(212, 175, 55, 0.16) !important;
  }

  .lb-row-wrapper.details-visible .details-panel {
    padding-top: 10px !important;
  }
  .lb-row-wrapper.details-visible .details-film-side {
    gap: 8px !important;
  }
  .lb-row-wrapper.details-visible .details-side-meta {
    padding: 8px 10px 10px !important;
  }
  .lb-row-wrapper.details-visible .details-side-meta__grid {
    gap: 6px 10px !important;
  }
  .lb-row-wrapper.details-visible .details-rail__facts {
    row-gap: 8px !important;
  }
  .lb-row-wrapper.details-visible .details-rail__best-time {
    text-align: left !important;
  }
}

/* ============================================================
   LOCK 20260927flagfix1
   Athlete DETAILS location: flag sits inline LEFT of the city,
   vertically centered, 7px gap. Long cities wrap beside the flag.
   Globe / unknown uses the same row. Leaderboard row location
   (under the tier pill) is unchanged.
   ============================================================ */
.details-side-meta__loc {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: 100% !important;
}
.details-side-meta__flag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  vertical-align: middle !important;
}
.details-side-meta__flag img,
.details-side-meta__flag .emoji-flag,
.details-side-meta__flag svg {
  display: block !important;
  width: 20px !important;
  height: 14px !important;
  max-width: 20px !important;
  max-height: 14px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}
.details-side-meta__loc-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

/* ============================================================
   LOCK 20260927tierfix1
   Recent carousel tier pills were forced to height 26px / width auto /
   0.62rem (ui-locks carov shrink). Restore the pre-privloc capsule:
   desktop 118x36 at 0.61rem, mobile 6.75rem x 30px at 0.7rem
   (same box as the mobile board pill). Grip Age numbers and the
   dim Private caption stay as privloc left them. If the capsule
   cannot sit beside Grip Age, the row wraps so the pill stays
   above that line. Board row pills are not retargeted.
   ============================================================ */
.video-submissions-section--lead .video-submission-meta-row .tier-badge,
.video-carousel .video-submission-meta-row .tier-badge,
.video-submission-item .video-submission-meta-row .tier-badge {
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  height: 36px !important;
  min-height: 36px !important;
  font-size: 0.61rem !important;
  padding: 3px 8px 2px !important;
  letter-spacing: 0.06em !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  transform: none !important;
}
.video-submissions-section--lead .video-submission-meta-row,
.video-carousel .video-submission-meta-row,
.video-submission-item .video-submission-meta-row {
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
}
@media (max-width: 900px) {
  .video-submissions-section--lead .video-submission-meta-row .tier-badge,
  .video-carousel .video-submission-meta-row .tier-badge,
  .video-submission-item .video-submission-meta-row .tier-badge {
    width: 6.75rem !important;
    min-width: 6.75rem !important;
    max-width: 6.75rem !important;
    height: 30px !important;
    min-height: 30px !important;
    font-size: 0.7rem !important;
    padding: 0 8px 0 12px !important;
    letter-spacing: 0.35px !important;
    line-height: 1 !important;
  }
}

/* ============================================================
   LOCK 20260927stickyclear3 (P0)
   Phone document was scrolling under the fixed SUBMIT A HANG
   (mobscroll2 undid the short port). Body is the scrollport and
   ends 24px above the bar, so WATCH, DETAILS, Grip Age, hang
   title, weight, and the name cannot paint in the bar. Finger
   scroll stays on the body. The bar keeps pan-y. Flag-left,
   weight centering, and hidden hang-type marks stay as earlier
   locks left them.
   ============================================================ */
@media (max-width: 900px) {
  html:has(body:not(.wdhc-form-page):not(.page-submit):not(.page-film):not(.wdhc-keyboard-open) .mobile-submit-bar) {
    height: 100% !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    background: #050505 !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.page-film):not(.wdhc-keyboard-open) {
    --wdhc-sticky-clear: calc(var(--wdhc-mobile-cta-h, 58px) + 12px + 24px + env(safe-area-inset-bottom, 0px));
    height: calc(100dvh - var(--wdhc-sticky-clear, 94px)) !important;
    max-height: calc(100dvh - var(--wdhc-sticky-clear, 94px)) !important;
    min-height: 0 !important;
    overflow-x: clip !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    padding-bottom: 36px !important;
    scroll-padding-bottom: 24px !important;
    position: relative !important;
    background: #050505 !important;
    touch-action: pan-y !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.page-film) #leaderboard-body::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    pointer-events: none !important;
  }
  a.mobile-submit-bar,
  .mobile-submit-bar {
    touch-action: pan-y !important;
    z-index: 200 !important;
  }
}

/* ============================================================
   LOCK 20260927mainflex1
   Phone body is a fixed-height flex column (sticky submit bar).
   main.container was flex-grow 1 and min-height 0, so it shrank
   to its 8px padding and the footer painted on the standings
   under the hero. Keep main at content height so the body scrolls.
   ============================================================ */
@media (max-width: 900px) {
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.page-film) main#main,
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.page-film) main.container {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    flex-basis: auto !important;
    height: auto !important;
    min-height: min-content !important;
  }
}

/* Phone Recent clips: the rail was shrink-wrapping to empty slides,
   so the viewport stayed under 160px and the layout never ran.
   Full width, then the existing slide math can size the videos. */
@media (max-width: 900px) {
  .video-submissions-section--lead .video-carousel,
  .video-submissions-section--lead .video-carousel-stage,
  .video-submissions-section--lead .video-carousel-viewport,
  .video-submissions-section--lead .video-carousel-track {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
  }
  .video-submissions-section--lead .video-carousel-slide {
    flex: 0 0 82% !important;
    width: 82% !important;
    min-width: 82% !important;
    max-width: 82% !important;
  }
}

/* LOCK 20260928smooth1
   Recent submissions and the athlete hang film follow the finger
   in one continuous glide. No one-card snap stop. */
.video-carousel-viewport {
  scroll-snap-type: none !important;
}
.video-carousel-slide {
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
  min-width: 0 !important;
}
.details-film-room__scroller {
  display: flex !important;
  width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  touch-action: pan-y !important;
  overscroll-behavior-x: contain !important;
}
.details-film-room__slide {
  position: relative !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
}
.details-film-room.is-playing .details-film-room__scroller .details-film-room__play {
  display: inline-flex !important;
}

/* LOCK 20260928touch1
   Desktop Recent clips fill the slot and meet left to right.
   Noah's wide hang stays the full frame (black bars, no zoom)
   on Recent and in the athlete dropdown. Phone rail unchanged. */
@media (min-width: 901px) {
  :root {
    --wdhc-clip-gap: 0px;
  }
  .home-lower-band .video-carousel-slide,
  .video-submissions-section--lead .video-carousel-slide,
  .video-carousel-slide {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .home-lower-band .video-submission-frame,
  .home-lower-band .video-submission-frame.is-portrait,
  .home-lower-band .video-submission-frame.is-landscape,
  .home-lower-band .video-submission-item.is-film-mode .video-submission-frame,
  .video-submissions-section--lead .video-submission-frame.is-portrait,
  .video-submissions-section--lead .video-submission-item.is-film-mode .video-submission-frame {
    width: 100% !important;
    max-width: 100% !important;
  }
  .video-submission-frame.is-full-frame video,
  .video-submission-frame.is-full-frame .carousel-poster,
  .video-submission-frame.is-full-frame video.carousel-video,
  .details-film-room__video.is-full-frame,
  .details-film-room--landscape .details-film-room__video.is-full-frame,
  .details-film-room--portrait .details-film-room__video.is-full-frame {
    object-fit: contain !important;
    object-position: center center !important;
    background-color: #000 !important;
    background-size: contain !important;
    background-position: center center !important;
  }
}
.details-film-room__slide.is-playing .details-film-room__play {
  display: none !important;
}

/* 20260929fresh1: World Leaders shows the alternating arrows beside that time only. */
#top-10-list .mini-time .hang-type-mark[data-type="alternating_one_arm"],
#world-leaders .mini-time .hang-type-mark[data-type="alternating_one_arm"] {
  display: inline-flex !important;
  flex-direction: column !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  overflow: visible !important;
}

/* LOCK 20260929sweep1
   World Leaders (#top-10-list) is time-only. Clemens 20:02 has no alternating arrows.
   This wins over fresh1. */
#top-10-list .mini-time .hang-type-mark[data-type],
#world-leaders .mini-time .hang-type-mark[data-type] {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

/* LOCK 20261001sweep1
   dhfilter1 parked the alternating arrows outside .mini-time as .mini-alt-mark,
   so the sweep1 hide missed them. World Leaders stays time-only. */
#top-10-list .mini-alt-mark,
#top-10-list .hang-type-mark,
#top-10-list .hang-type-mark__arr,
#world-leaders .mini-alt-mark,
#world-leaders .hang-type-mark,
#world-leaders .hang-type-mark__arr {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}


/* 20260929 sticky-submit-hide: hide the phone SUBMIT bar while scrolling down */
@media (max-width: 900px) {
  .mobile-submit-bar { transition: transform 0.22s ease, opacity 0.18s ease; will-change: transform; }
  body.wdhc-submit-bar-away .mobile-submit-bar {
    transform: translateY(calc(100% + 28px + env(safe-area-inset-bottom, 0px))) !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 900px) {
  /* 20260930 barbg1: only the SUBMIT button slides. No black strip behind it.
     Body scrolls full height; the old reserve strip (body::before) and the
     shortened body are gone. Trailing padding lives INSIDE the scroller so the
     last content can still scroll clear of the button when it is shown. */
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit)::before {
    content: none !important;
    display: none !important;
    background: transparent !important;
    height: 0 !important;
  }
  body:has(.mobile-submit-bar):not(.wdhc-form-page):not(.page-submit):not(.page-film):not(.wdhc-keyboard-open) {
    height: 100dvh !important;
    max-height: 100dvh !important;
    padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 12px + 24px + env(safe-area-inset-bottom, 0px)) !important;
    scroll-padding-bottom: calc(var(--wdhc-mobile-cta-h, 58px) + 12px + 24px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ============================================================
   LOCK 20260930regioncenter1 (Milo HARD)
   Alignment only: the state/region line (flag + region) sits as ONE
   unit CENTERED directly under the city, for every athlete
   (US state, international region, flag + state). Desktop + mobile.
   Rows with no region line are untouched.
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .location-cluster--stacked .location-stack,
  .lb-row > .location-col .location-cluster--stacked .location-stack,
  .location-col .location-cluster--stacked .location-stack {
    grid-template-columns: max-content !important;
    justify-items: center !important;
    column-gap: 0 !important;
  }
  .leaderboard .location-cluster--stacked .location-city,
  .lb-row > .location-col .location-cluster--stacked .location-city,
  .location-col .location-cluster--stacked .location-city {
    grid-column: 1 !important;
    grid-row: 1 !important;
    text-align: center !important;
    justify-self: center !important;
  }
  .leaderboard .location-cluster--stacked .location-subline,
  .lb-row > .location-col .location-cluster--stacked .location-subline,
  .location-col .location-cluster--stacked .location-subline {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    text-align: center !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .flag,
  .lb-row > .location-col .location-cluster--stacked .location-subline .flag,
  .location-col .location-cluster--stacked .location-subline .flag {
    grid-column: auto !important;
    grid-row: auto !important;
    align-self: center !important;
    justify-self: auto !important;
    margin: 0 !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .location-state,
  .lb-row > .location-col .location-cluster--stacked .location-subline .location-state,
  .location-col .location-cluster--stacked .location-subline .location-state {
    grid-column: auto !important;
    grid-row: auto !important;
    text-align: center !important;
    justify-self: auto !important;
  }
}
@media (max-width: 900px) {
  /* the group started at x=39 under the rank and was clipped by .lb-card-main (overflow hidden);
     nudge ONLY the group into the visible name column. Row + grip positions unchanged. */
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group {
    margin-left: 32px !important;
  }
  /* full leaderboard cards: group was collapsing to 0 width (grip forced 100% wide) */
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-grip {
    width: auto !important;
    max-width: 5.6rem !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group {
    flex: 0 1 auto !important;
    width: max-content !important;
    min-width: 0 !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-stack,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-city,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-state {
    text-align: center !important;
    width: auto !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-loc-group .location-stack {
    align-items: center !important;
  }
  /* rows that have a region line: city on top, flag+region as one centered unit below */
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) {
    display: grid !important;
    grid-template-columns: 1fr auto auto 1fr !important;
    column-gap: 0 !important;
    row-gap: 1px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-stack {
    display: contents !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-city {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    text-align: center !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .flag {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin: 0 5px 0 0 !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-state {
    grid-column: 3 !important;
    grid-row: 2 !important;
    text-align: left !important;
  }
}


/* ============================================================
   LOCK 20260930rowheight1 (Milo WDHC request)
   Desktop leaderboard (home board + leaderboard-full), >= 901px only.
   Every row has ONE fixed height; a long Background title or extra badges
   can never make a row taller. Height = the standard row (62.5px Time/name
   block + 10px top/bottom padding = 82.53px; 89.23px at >=1400px where
   the Time block is larger). Scoped off .lb-mobile-card and the teaser row.
   - Background title: clamped to 2 lines with ellipsis (full text = title attr).
   - Badges (verified / PR / NEW / FOUNDING PRO): nowrap, sit BESIDE the name
     block (no more stacking under it); long names ellipsize; Founding Pro
     chip is compact (and 2-line only below 1300px where the cell is ~100px).
   Mobile (<= 900px / .lb-mobile-card) untouched.
   ============================================================ */
@media (min-width: 901px) {
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    box-sizing: border-box !important;
    height: 82.53px !important;
    min-height: 82.53px !important;
    max-height: 82.53px !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    align-self: center !important;
    min-width: 0 !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack {
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .verified-badge,
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .pr-badge,
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .recent-hang-mark {
    flex: 0 0 auto !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-badge-row {
    flex: 0 100 auto !important;
    min-width: min-content !important;
    margin-top: 0 !important;
    align-self: center !important;
    flex-wrap: wrap !important;
    align-content: center !important;
    max-height: 100% !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > * {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .founding-badge {
    box-sizing: border-box !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 1px 4px !important;
    letter-spacing: 0.2px !important;
    font-size: 8px !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }
}
@media (min-width: 901px) and (max-width: 1299px) {
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .founding-badge {
    white-space: normal !important;
    padding: 1px 2px !important;
    letter-spacing: 0 !important;
    font-size: 7px !important;
    overflow: hidden !important;
  }
}
@media (min-width: 1400px) {
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: 89.23px !important;
    min-height: 89.23px !important;
    max-height: 89.23px !important;
  }
}
/* END 20260930rowheight1 */

/* LOCK 20260930pwalign1
   Desktop only (>=901px): PAST WINNERS box bottom edge == HOW GRIP AGE IS CALCULATED box bottom edge.
   Root cause: .main-column had align-self:start so it only grew to its own content while the sidebar
   (same grid row) was taller. Fix: main column stretches to the grid row, and the stretch is passed
   down the flex chain to the Past Winners section, which fills the remaining height. Cards stay at top.
   Mobile (<=900px) untouched. */
@media (min-width: 901px) {
  .content-grid > .main-column { align-self: stretch !important; }
  .content-grid > .main-column > .main-column-stack { flex: 1 1 auto !important; min-height: 0 !important; }
  .main-column-stack > .home-lower-band {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
  }
  .main-column-stack > .home-lower-band > .home-challenges-block { flex: 1 1 auto !important; min-height: 0 !important; }
  .main-column-stack > .home-lower-band > .home-challenges-block > .home-challenges-winners:not([hidden]) {
    flex: 1 1 auto !important;
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
  }
  .main-column-stack > .home-lower-band > .home-challenges-block > .home-challenges-winners:not([hidden]) > .home-challenges-winners-list {
    flex: 0 0 auto !important;
  }
}
/* END 20260930pwalign1 */

/* LOCK 20261003pwalign2b
   Desktop two-column (>=901px): the GRIP AGE blurb (last card in the sidebar rail) absorbs any leftover
   rail height so its BOTTOM edge == PAST WINNERS BOTTOM edge at every width (no dead gap under it).
   Spacing/stretch only: blurb text, calculator, Past Winners content, sticky Submit bar, row heights and
   location cell are untouched. Text stays vertically centered in the stretched box. Mobile untouched. */
@media (min-width: 901px) {
  .content-grid > .sidebar-column > .grip-age-blurb,
  .content-grid > .sidebar-column > .sidebar-grip-age-blurb {
    flex: 1 0 auto !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    margin-bottom: 0 !important;
  }
}
/* END 20261003pwalign2b */

/* ============================================================
   LOCK 20261003locflagleft1 (Milo HARD, 12:28 AM ET Sat 10/3)
   Board Location cell: the FLAG sits at the LEFT of the whole
   location block, vertically centered beside BOTH lines; CITY on top
   and STATE/REGION below, both centered in the space to the right of
   the flag:   [flag] | City
                      | State
   Country-only athletes (no city/state): flag left, label centered.
   Supersedes 20260930regioncenter1 (flag+state under city). Only the
   location cell is touched: row height, tier badges, WATCH/DETAILS,
   sticky Submit bar, Grip Age sidebar are untouched.
   Desktop board rows (home + leaderboard-full) and the
   leaderboard-full phone cards (the only other flag+city/state stack).
   ============================================================ */
@media (min-width: 901px) {
  .leaderboard .location-cluster--stacked .location-stack,
  .lb-row > .location-col .location-cluster--stacked .location-stack,
  .location-col .location-cluster--stacked .location-stack {
    display: grid !important;
    grid-template-columns: auto minmax(0, max-content) !important;
    grid-template-rows: auto auto !important;
    column-gap: 3px !important;
    row-gap: 1px !important;
    align-items: center !important;
    justify-items: center !important;
    width: max-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  .leaderboard .location-cluster--stacked .location-city,
  .lb-row > .location-col .location-cluster--stacked .location-city,
  .location-col .location-cluster--stacked .location-city {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    min-width: 0 !important;
    max-width: 100% !important;
    line-height: 1.12 !important;
  }
  .leaderboard .location-cluster--stacked .location-subline,
  .lb-row > .location-col .location-cluster--stacked .location-subline,
  .location-col .location-cluster--stacked .location-subline {
    display: contents !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .flag,
  .lb-row > .location-col .location-cluster--stacked .location-subline .flag,
  .location-col .location-cluster--stacked .location-subline .flag {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: center !important;
    margin: 0 !important;
  }
  .leaderboard .location-cluster--stacked .location-subline .location-state,
  .lb-row > .location-col .location-cluster--stacked .location-subline .location-state,
  .location-col .location-cluster--stacked .location-subline .location-state {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    min-width: 0 !important;
    max-width: 100% !important;
    line-height: 1.12 !important;
  }
  /* country-only / no-region athletes: flag left, label centered beside it */
  .lb-row > .location-col .location-cluster:not(.location-cluster--stacked) {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .lb-row > .location-col .location-cluster:not(.location-cluster--stacked) .location-stack {
    text-align: center !important;
    min-width: 0 !important;
  }
  .lb-row > .location-col .location-cluster:not(.location-cluster--stacked) .location-city {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
    line-height: 1.12 !important;
  }
  .lb-row > .location-col .location-cluster .flag {
    flex: 0 0 auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
  }
}
/* narrow desktop (location column is a fixed 90px up to ~1200px viewport):
   compact flag + type so flag + two centered lines fit with no overlap */
@media (min-width: 901px) and (max-width: 1279px) {
  .lb-row > .location-col .location-cluster .flag img { width: 17px !important; height: auto !important; }
  .lb-row > .location-col .location-cluster .flag svg { width: 13px !important; height: 13px !important; }
  .lb-row > .location-col .location-cluster .location-city { font-size: 12.5px !important; }
  .lb-row > .location-col .location-cluster .location-state { font-size: 11.5px !important; }
}
@media (min-width: 1280px) and (max-width: 1399px) {
  .lb-row > .location-col .location-cluster .location-city { font-size: 15px !important; }
  .lb-row > .location-col .location-cluster .location-state { font-size: 13.8px !important; }
}

/* teaser row has a 70px location cell: one notch smaller so flag + label stay inside */
@media (min-width: 901px) and (max-width: 1279px) {
  .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster { gap: 2px !important; }
  .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster .flag img { width: 14px !important; }
  .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster .flag svg { width: 12px !important; height: 12px !important; }
  .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster .location-city { font-size: 11px !important; }
}

@media (max-width: 900px) {
  /* leaderboard-full phone cards: flag LEFT of the 2-line city/state block */
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) {
    display: grid !important;
    grid-template-columns: auto auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 3px !important;
    row-gap: 1px !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-stack {
    display: contents !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .flag {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    justify-self: center !important;
    margin: 0 !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-city {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    text-align: center !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group:has(.location-state) .location-state {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    text-align: center !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .location-city,
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .location-state {
    white-space: nowrap !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .flag {
    width: auto !important;
    height: auto !important;
  }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .flag img { width: 17px !important; height: auto !important; }
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .flag svg { width: 13px !important; height: 13px !important; }
}

/* END 20261003locflagleft1 */
/* 20261003locflagleft1 follow-up: compact flags no longer keep the 22px min-width box (tight flag-to-text gap) */
@media (min-width: 901px) and (max-width: 1279px) {
  .lb-row > .location-col .location-cluster .flag { min-width: 0 !important; }
}
@media (max-width: 900px) {
  .full-leaderboard-page .lb-row.lb-mobile-card .lb-card-meta > .lb-card-loc-row .lb-card-loc-group .flag { min-width: 0 !important; }
}
/* END 20261003locflagleft1b */

/* LOCK 20261003wtdalign1 (Milo 2026-10-03): weighted rows say "Weighted Hang" (short) and the +N lb line hangs UNDER the title
   OUT OF FLOW, so every board row has the same two-line time stack (gold time + white title) and the gold time sits on the same
   line as the Dead Hang / One-Arm / Two-Finger rows. Desktop row height stays locked at 89px. The word "Dead" never stands alone. */
.leaderboard .lb-row > .time .lb-time-stack:has(> .lb-pr-hold[data-load]),
.leaderboard .lb-row > .desktop-time .lb-time-stack:has(> .lb-pr-hold[data-load]),
.lb-row > .time .lb-time-stack:has(> .lb-pr-hold[data-load]),
.lb-row > .desktop-time .lb-time-stack:has(> .lb-pr-hold[data-load]),
.lb-row.lb-mobile-card .lb-time-stack:has(> .lb-pr-hold[data-load]),
.lb-card-time .lb-time-stack:has(> .lb-pr-hold[data-load]) { position: relative !important; }
.leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
.leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load],
.lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
.lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load],
.lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold[data-load],
.lb-card-time .lb-time-stack > .lb-pr-hold[data-load] {
  position: absolute !important; left: 0 !important; right: 0 !important; top: 100% !important;
  margin: 1px 0 0 !important; width: auto !important; max-width: none !important; text-align: center !important;
}
/* END 20261003wtdalign1 */

/* LOCK 20261003centerfix1 (Milo 2026-10-03): centering pass on the leaderboard Time column and Grip Age.
   1) "+N lbs" under a weighted hang title is centered EXACTLY under the title (it was shrink-wrapped and hugging the left edge of the stack),
      desktop and mobile. 2) Desktop: the gold time + title stack is centered in the Time column at every width (it was left-hugging below 1440,
      so DEAD HANG rows sat ~17px left of Weighted rows). 3) Mobile: every card's Time block shares one fixed 86px width so the gold times share one
      center x down the board (the cell used to shrink-wrap to its label, so centers drifted ~19px). 4) Desktop Grip Age value sits 4px lower.
   Row heights (82.53 / 89.2) are untouched. Two-line stack and wtdalign1 out-of-flow weight line are unchanged. */
@media (min-width: 901px) {
  html body .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
  html body .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load] {
    left: 0 !important; right: 0 !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important;
    box-sizing: border-box !important; padding: 0 !important; text-align: center !important;
  }
  html body .leaderboard .lb-row > .time .lb-time-inner,
  html body .leaderboard .lb-row > .desktop-time .lb-time-inner,
  html body .lb-row > .time .lb-time-inner,
  html body .lb-row > .desktop-time .lb-time-inner,
  html body .leaderboard .lb-row > .time .lb-time-stack,
  html body .leaderboard .lb-row > .desktop-time .lb-time-stack,
  html body .lb-row > .time .lb-time-stack,
  html body .lb-row > .desktop-time .lb-time-stack { margin-left: auto !important; margin-right: auto !important; }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .grip-age-col .grip-age-val { position: relative !important; top: 4px !important; }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-card-time .lb-time-stack > .lb-pr-hold[data-load] {
    left: 0 !important; right: 0 !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important;
    box-sizing: border-box !important; padding: 0 !important; text-align: center !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time { width: 86px !important; min-width: 86px !important; max-width: none !important; box-sizing: border-box !important; display: flex !important; justify-content: center !important; }
  html body .lb-row.lb-mobile-card .lb-card-time .lb-time-stack { margin-left: auto !important; margin-right: auto !important; }
}
/* END 20261003centerfix1 */

/* LOCK 20261003namefit1 (Milo 2026-10-03): desktop names and backgrounds are never cut off.
   Names: a sub-pixel overshoot just clips (no "..."); js/wdhc-name-fit.js shrinks the font of any line that really needs more room.
   Background (occupation) column: it used to be line-clamped to 2 lines (1440) or forced to ONE nowrap line with an ellipsis (1280), so
   "Retired Truck Driver, Calisthenics" and "Union Pipe Welder / Owner Of Posson Welding Llc" were chopped. It now wraps, and the same script
   shrinks the font only as far as needed to fit inside the row. Row height stays locked. */
@media (min-width: 901px) {
  .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line {
    text-overflow: clip !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation {
    display: block !important; -webkit-line-clamp: unset !important; line-clamp: unset !important;
    white-space: normal !important; overflow-wrap: break-word !important; word-break: normal !important;
    text-overflow: clip !important; line-height: 1.25 !important; height: auto !important; max-height: none !important;
    overflow: hidden !important;
  }
}
/* END 20261003namefit1 */
/* LOCK 20261003gripdd1 (Milo 2026-10-03): Past Winners spans the full content width (left edge to right edge, under the sidebar column too);
   "How Grip Age is calculated" is a compact OPTIONAL dropdown (closed by default) under the Grip Age calculator, same wording when opened.
   Past Winners is now a direct child of .content-grid (row 3, right after .main-column), not inside .main-column.
   This replaces the old .home-pw-grip-band two-column band: that wrapper is not in the markup any more, so do not restore it.
   Mobile (<=900px) keeps its existing flex/order stack (Past Winners still follows the challenge cards). */
@media (min-width: 901px) {
  html body .content-grid > #home-challenges-winners {
    grid-column: 1 / -1 !important; grid-row: 3 !important;
    width: 100% !important; max-width: none !important; min-width: 0 !important;
    margin: 18px 0 0 !important; box-sizing: border-box !important; align-self: start !important;
  }
  html body .content-grid > #home-challenges-winners[hidden] { display: none !important; }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb {
    display: block !important; flex: 0 0 auto !important; align-self: stretch !important;
    height: auto !important; min-height: 0 !important; margin: 10px 0 0 !important; padding: 0 !important;
    border: 1px solid rgba(212, 175, 55, 0.6) !important; border-radius: 12px !important;
    background: rgba(10, 10, 12, 0.94) !important; box-sizing: border-box !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb > summary {
    display: block !important; margin: 0 !important; padding: 14px 16px !important; min-height: 0 !important; cursor: pointer !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb .grip-age-blurb-more {
    display: flex !important; width: 100% !important; align-items: center !important; justify-content: space-between !important;
    font-size: 0.92rem !important; line-height: 1.2 !important; letter-spacing: 0.12em !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb .grip-age-blurb-more::after {
    content: '' !important; display: inline-block !important; flex: 0 0 auto !important; width: 7px !important; height: 7px !important; margin: 0 2px 0 10px !important;
    border-right: 2px solid #D4AF37 !important; border-bottom: 2px solid #D4AF37 !important;
    transform: rotate(45deg) translate(-2px, -2px) !important; transition: transform 0.15s ease !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb[open] .grip-age-blurb-more::after {
    transform: rotate(225deg) translate(-1px, -1px) !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb > .grip-age-blurb-body {
    margin: 0 !important; padding: 11px 14px 14px !important; border-top: 1px solid rgba(212, 175, 55, 0.22) !important;
    font-size: 0.88rem !important; line-height: 1.5 !important;
  }
  html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb > .grip-age-blurb-body p { margin: 0 !important; }
}
/* 20261004sidebar1: the sidebar is back beside the board at 901-1099px (grid-row 2, column 2); see the sidebar1 block after boardfix1. */
/* END 20261003gripdd1 */

/* LOCK 20261004audit1 names (Milo 10/4): at 901-1366px the name column has priority over the badges.
   The verified tick / PR count / Founding Pro badges used to take 45-50px of a 100px name box, so Brandon, Crafton, Lawrence, Nguyen,
   Theodore, Schaeffer, Roszkowski, Pullsmastr, Instagram were clipped. Badges now wrap UNDER the name when they do not fit; the name keeps its width.
   Row height stays locked (82.53px). */
@media (min-width: 901px) and (max-width: 1500px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row { flex-wrap: wrap !important; row-gap: 0 !important; align-content: center !important; }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack { flex: 0 0 auto !important; max-width: 100% !important; min-width: 0 !important; }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line { max-width: 100% !important; }
}
@media (min-width: 901px) and (max-width: 1500px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last { white-space: normal !important; overflow-wrap: anywhere !important; line-height: 1.05 !important; }
}
/* END 20261004audit1 names */

/* LOCK 20261004audit1 priv (Milo 10/4): phone/tablet card meta row was 12px wider than the card body (calc(100% + 60px) with a -48px left shift),
   so the right end of "GRIP AGE(TM) PRIVATE" was clipped to "PRIV". It now ends flush with the card body; nothing else moves. */
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-main .lb-card-meta { width: calc(100% + 45px) !important; max-width: none !important; }
}
/* END 20261004audit1 priv */

/* LOCK 20261004boardfix1 (Milo 10/4/2026): board fit pass.
   1) Desktop 901-1099px: the gripdd1 rule moved the sidebar to grid row 4 but left the 2-column grid (722px + 300px) in place, so the board stayed
      722px wide with an empty 300px band on its right and the Watch button (column sum 766px > 720px row) overshot the row by 36px ("WA").
      The grid is now ONE column in that range: board + sidebar span the full content width. 1100px+ is untouched (board beside the sidebar).
   2) Desktop >=901px: rows may GROW, and the name cell is no longer a clipping box (horizontal overflow is still clipped), so names that wrap to
      2-3 lines, the bolt/PR count and the NEW chip are never cut off at the top. Normal rows keep their natural 82.53 / 89.2px height.
   3) Phones <=399px: the Legend/tier pill is limited to the name column (it used to be a fixed 108px and covered "GRIP AGE" and the hang title).
      <=389px: the rank, time/Grip Age and button columns are slimmer so the name column keeps 90-130px (320: the 86px time column left the
      name 17px, so the time sat on top of "Milo"). Time stays centered over Grip Age (one width for every row). <=339px: slimmer still.
      js/wdhc-name-fit.js (fitMobileCards) shrinks/wraps a name that is still too wide ("Cynthia Parrington", "Theodore" + check).
   4) Recent caption: "+100 lbs" keeps number + unit together (.vs-nobr) so "lbs" is never alone on a line. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) { height: auto !important; max-height: none !important; }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line { overflow-x: clip !important; overflow-y: visible !important; max-height: none !important; height: auto !important; }
}

@media (max-width: 399px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block .lb-card-tier-under-name.tier-badge { width: 100% !important; min-width: 0 !important; max-width: 108px !important; padding-left: 12px !important; padding-right: 6px !important; font-size: 10px !important; letter-spacing: 0.2px !important; box-sizing: border-box !important; }
}
@media (max-width: 389px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card { padding-left: 12px !important; padding-right: 10px !important; column-gap: 8px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-rank { flex: 0 0 26px !important; width: 26px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head { grid-template-columns: minmax(0, 1fr) 78px !important; column-gap: 4px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip { width: 78px !important; min-width: 78px !important; max-width: 78px !important; flex-basis: auto !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions { flex: 0 0 80px !important; width: 80px !important; min-width: 80px !important; margin-left: 0 !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions .watch-link,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions .lb-card-details-btn { width: 80px !important; max-width: 100% !important; }
}
@media (max-width: 339px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card { padding-left: 10px !important; padding-right: 8px !important; column-gap: 6px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-rank { flex: 0 0 22px !important; width: 22px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head { grid-template-columns: minmax(0, 1fr) 72px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip { width: 72px !important; min-width: 72px !important; max-width: 72px !important; flex-basis: auto !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions { flex: 0 0 72px !important; width: 72px !important; min-width: 72px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions .watch-link,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-actions .lb-card-details-btn { width: 72px !important; }
}

html body .video-submission-hangtype .vs-nobr { white-space: nowrap !important; }
/* 701-900px tablet cards: the 86px time column was 11px too narrow for the one-line "Four-Finger L-Sit" label (the nobreak script only fits phones, <=700px), so it bled past the column and sat 5px off center. Same column, 106px wide, for every row. */
@media (min-width: 701px) and (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head { grid-template-columns: minmax(0, 1fr) 106px !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip { width: 106px !important; min-width: 106px !important; max-width: 106px !important; flex-basis: auto !important; }
}
/* END 20261004boardfix1 */

/* LOCK 20261004sidebar1 (Milo 10/4/2026): sidebar (Top 10 Leaders, tier classifications, Grip Age calculator) stays to the RIGHT of the board at 901-1099px.
   boardfix1 had stacked it under the board in that range. Past Winners (row 3) stays full width below both. The board is made to FIT beside the sidebar:
   - sidebar is clamp(270px, 27vw, 300px) wide (300px from 1100px, as before);
   - the Athlete/Background (occupation) column is hidden below 1200px (its header was already hidden there, so the header was one column off);
   - the Location column is hidden below 1000px;
   - the Watch cell is exactly its grid track wide (it was 80px in a 72px track: the 8px "WA" overshoot), tier column + gaps tighten below 1100px.
   Time stays 118px centered; weighted stack, Grip Age and name rules are untouched. */
@media (min-width: 901px) and (max-width: 1099px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .content-grid { grid-template-columns: minmax(0, 1fr) clamp(270px, 27vw, 300px) !important; column-gap: 16px !important; }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .content-grid > .main-column { grid-column: 1 !important; grid-row: 2 !important; width: auto !important; max-width: none !important; min-width: 0 !important; }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .content-grid > .sidebar-column { grid-column: 2 !important; grid-row: 2 !important; width: auto !important; max-width: none !important; min-width: 0 !important; align-self: stretch !important; }
}
@media (min-width: 901px) and (max-width: 1199px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .lb-col-occupation,
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-bg { display: none !important; }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .watch-col { width: 72px !important; min-width: 72px !important; max-width: 72px !important; justify-self: end !important; }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-watch { width: 72px !important; min-width: 0 !important; }
}
@media (min-width: 901px) and (max-width: 1099px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header, html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-header {
    grid-template-columns: 40px 104px minmax(110px, 1fr) minmax(80px, 0.7fr) 118px 56px 72px !important; column-gap: 8px !important;
  }
}
@media (min-width: 901px) and (max-width: 999px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .location-col,
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-loc { display: none !important; }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header, html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-header {
    grid-template-columns: 40px 104px minmax(110px, 1fr) 118px 56px 72px !important;
  }
}
@media (min-width: 1100px) and (max-width: 1199px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header, html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) #leaderboard .lb-header {
    grid-template-columns: 40px 120px minmax(110px, 1.1fr) minmax(90px, 0.85fr) 118px 56px 72px !important;
  }
}
@media (min-width: 901px) and (max-width: 1099px) {
  /* home.css gives .sidebar-upper height:100%, which at 901-1099 resolved to the whole (stretched) grid row and pushed the Grip Age calculator 1000px below the sidebar, over Past Winners. Natural height, like 1100px+. */
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .content-grid > .sidebar-column > .sidebar-upper { height: auto !important; }
}
/* END 20261004sidebar1 */

/* LOCK 20261004mobfix2 (Milo 10/4/2026): phone cards. boardfix1 gave the time/Grip Age cells a fixed flex-basis (78/72/106px) that, in the column-direction
   right cell, became a HEIGHT: Grip Age sat ~50px under the time and the rows grew by 65px. flex-basis is back to auto (natural height); the location line
   (flag + city) is again directly under the block. Weighted rows (a weight line under the hang label) get +9px between the weight line and GRIP AGE. */
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right:has(.lb-pr-hold) > .lb-card-grip { margin-top: 21px !important; }
}
/* END 20261004mobfix2 */

/* LOCK 20261005occ1 (Milo 2026-10-05): John Posson row jitter.
   namefit1 let Background wrap without a line clamp, and wdhc-name-fit.js cleared then re-shrank the font on every pass.
   Occupation is now a stable 2-line clamp at the home font size, with ellipsis. Full text stays on the title attribute.
   Row height is locked again (82.53px, 89.23px from 1400px) so a long background cannot grow or shrink the row.
   This does not restore .home-pw-grip-band. Past Winners stays full width (gripdd1). Sidebar stays beside the board at 901-1099 (sidebar1).
   Home Grip Age: one always-visible snippet under the calculator, one "More about Grip Age" dropdown. The old "How it works" explainer is gone. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: 82.53px !important;
    min-height: 82.53px !important;
    max-height: 82.53px !important;
  }
}
@media (min-width: 1400px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: 89.23px !important;
    min-height: 89.23px !important;
    max-height: 89.23px !important;
  }
}
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    font-size: 1.02rem !important;
    line-height: 1.25 !important;
    height: auto !important;
    max-height: 2.6em !important;
    align-self: center !important;
  }
}
@media (min-width: 901px) and (max-width: 1199px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .lb-col-occupation,
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-bg {
    display: none !important;
  }
}
html body .sidebar-column details.grip-calc-explainer,
html body .grip-calc-card > details.grip-calc-explainer {
  display: none !important;
}
html body .sidebar-column > .grip-age-snippet {
  display: block !important;
  flex: 1 1 auto !important;
  margin: 10px 0 0 !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(212, 175, 55, 0.45) !important;
  border-radius: 12px !important;
  background: rgba(10, 10, 12, 0.94) !important;
  color: rgba(245, 237, 216, 0.9) !important;
  font-size: 0.92rem !important;
  line-height: 1.45 !important;
  box-sizing: border-box !important;
}
html body .sidebar-column > .grip-age-snippet p {
  margin: 0 0 8px !important;
}
html body .sidebar-column > .grip-age-snippet p:last-child {
  margin: 0 !important;
}
html body .sidebar-column > details.sidebar-grip-age-blurb,
html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb {
  flex: 0 0 auto !important;
  margin-top: 10px !important;
}
html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb > summary,
html body .sidebar-column .sidebar-grip-age-blurb > summary {
  pointer-events: auto !important;
  cursor: pointer !important;
}
html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb:not([open]) > .grip-age-blurb-body,
html body .sidebar-column .sidebar-grip-age-blurb:not([open]) > .grip-age-blurb-body {
  display: none !important;
}
html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb[open] > .grip-age-blurb-body,
html body .sidebar-column .sidebar-grip-age-blurb[open] > .grip-age-blurb-body {
  display: block !important;
}
@media (min-width: 901px) {
  html body .content-grid > .sidebar-column {
    align-self: stretch !important;
    height: auto !important;
  }
  html body .content-grid > .sidebar-column > .sidebar-upper,
  html body .content-grid > .sidebar-column > .grip-calc-card {
    flex: 0 0 auto !important;
    height: auto !important;
  }
  html body .content-grid > .sidebar-column > .grip-age-snippet {
    flex: 1 1 auto !important;
  }
  html body .content-grid > #home-challenges-winners {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    max-width: none !important;
  }
}
/* END 20261005occ1 */

/* LOCK 20261005regress1 (Milo 2026-10-05): occupation word boundaries + name chips inside the locked row.
   Appended after 20261005occ1. Does not change the 2-line occupation clamp, the fixed occupation font size,
   row heights (82.53px / 89.23px from 1400), Grip Age snippet, phone Submit bar, or weighted hang stack.
   A) Background must not split a word (Chiropractor, Competitive, Calisthenics). Clamp ellipsis stays.
      A token longer than the column ellipsizes whole. overflow-wrap stays normal, not break-word.
   B) Founding / pro / partner chips sit on .name-badge-row under the name, one line, and never cover glyphs.
      Streak bolt and recent marks stay inside the row: tighter name line-height, smaller chip, no extra margin. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    -ms-hyphens: none !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell {
    overflow: hidden !important;
    justify-content: center !important;
    max-height: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    max-height: 100% !important;
    row-gap: 0 !important;
    align-content: center !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack {
    gap: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-line.name-last {
    line-height: 0.98 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-badge-row {
    flex: 1 0 100% !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    align-self: flex-start !important;
    position: static !important;
    line-height: 1 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .verified-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .pr-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .pr-badge-inline,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .recent-hang-mark {
    flex: 0 0 auto !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .founding-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .pro-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .partner-gym-badge {
    position: static !important;
    white-space: nowrap !important;
    font-size: 6.5px !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    padding: 0 3px !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .verified-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge-inline,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .recent-hang-mark,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .founding-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pro-badge {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge .pr-val,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge-inline .pr-val {
    font-size: 0.72rem !important;
    line-height: 1 !important;
    padding: 0 3px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge .svg-icon,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .pr-badge-inline .svg-icon {
    width: 12px !important;
    height: 12px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .recent-hang-mark {
    font-size: 0.55rem !important;
    line-height: 1.1 !important;
    padding: 0 5px !important;
  }
}
/* END 20261005regress1 */

/* LOCK 20261005tier1 (Milo 2026-10-05): Youth Pro / long tier pills must not spill into the name column
   (Jude P. YOUTH PRO was covering the J). Cap badge width inside the tier column; ellipsis if needed.
   Name cell keeps a clear left edge. Row height locks unchanged. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col {
    overflow: hidden !important;
    min-width: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-pro-gold,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-youth-pro,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-pro {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.04em !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell {
    overflow: hidden !important;
    min-width: 0 !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .tier-badge,
  html body .lb-row.lb-mobile-card .lb-card-tier,
  html body .lb-row.lb-mobile-card .lb-card-right .tier-badge {
    max-width: 88px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 0.62rem !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  /* Mobile: Youth Pro pill must not cover the first-name glyphs */
  html body .lb-row.lb-mobile-card .lb-card-name-block {
    position: relative !important;
    z-index: 2 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time .tier-badge,
  html body .lb-row.lb-mobile-card .lb-card-right .tier-badge {
    position: relative !important;
    z-index: 1 !important;
  }
}
/* END 20261005tier1 */

/* LOCK 20261005tier1b: clear soft glow of Youth Pro / Pro pills off the name glyphs (15px box gap was not enough for box-shadow). */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge {
    box-shadow: 0 0 6px rgba(232, 120, 32, 0.35) !important;
    filter: none !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell {
    padding-left: 12px !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-time .tier-badge,
  html body .lb-row.lb-mobile-card .lb-card-right .tier-badge {
    box-shadow: 0 0 6px rgba(232, 120, 32, 0.35) !important;
  }
}
/* END 20261005tier1b */

/* LOCK 20261005names1 (Milo 2026-10-05): two name lines inside the locked row.
   Occupation fit is canvas measureText in wdhc-name-fit.js (a block probe kept the cell's 1.02rem size).
   FOUNDING PRO chip stays fully readable. Does not change row height, weighted stack, hang mark, or sidebar. */
@media (min-width: 901px) {
  /* Beat 20261004audit1, which set .name-last to white-space:normal and overflow-wrap:anywhere
     (higher specificity). That wrapped "C. Parrington" onto a third line and the row clipped it. */
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    align-items: stretch !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-last {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    text-overflow: clip !important;
    width: 100% !important;
    max-width: 100% !important;
    align-self: stretch !important;
    max-height: 1.2em !important;
    overflow: hidden !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-badge-row,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row {
    flex-wrap: wrap !important;
    overflow: visible !important;
    max-height: none !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row > .founding-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .founding-badge {
    flex: 0 0 auto !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: 8px !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;
    padding: 1px 4px 2px !important;
    max-width: 100% !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .founding-badge {
    font-size: 7px !important;
    letter-spacing: 0 !important;
    padding: 1px 3px !important;
    line-height: 1.15 !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}
/* END 20261005names1 */

/* LOCK 20261005nosnippet1 (Milo 2026-10-05 15:15 ET): remove Grip Age snippet + "More about Grip Age"
   under the calculator / stacked under the hero. Calculator in the sidebar stays. No empty flex gap. */
html body .sidebar-column > .grip-age-snippet,
html body .content-grid > .sidebar-column > .grip-age-snippet,
html body #grip-age-snippet,
html body .sidebar-column > details.sidebar-grip-age-blurb,
html body .content-grid > .sidebar-column > details.sidebar-grip-age-blurb,
html body details.grip-age-blurb.sidebar-grip-age-blurb {
  display: none !important;
  flex: 0 0 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
}
@media (min-width: 901px) {
  html body .content-grid > .sidebar-column > .grip-calc-card {
    flex: 0 0 auto !important;
    margin-bottom: 0 !important;
  }
}
/* END 20261005nosnippet1 */

/* LOCK 20261005center1 (Milo 2026-10-05 15:19 ET): center selected text in Recent Submissions
   hang-type sort pill; chevron stays right. Equal L/R padding so label is optically centered
   under the centered section headings. */
html body .recent-hang-sort,
html body .video-submissions-section .recent-hang-sort,
html body .video-submissions-section--lead .recent-hang-sort {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
html body .recent-hang-sort select,
html body .video-submissions-section .recent-hang-sort select,
html body .video-submissions-section--lead .recent-hang-sort select,
html body #recent-hang-sort {
  width: 100% !important;
  max-width: 22rem !important;
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
  padding-left: 34px !important;
  padding-right: 34px !important;
  background-position: right 12px center !important;
}
/* END 20261005center1 */

/* LOCK 20261005polish1 (Milo 2026-10-05 15:19–15:30 ET): site polish after Grip Age explainer removal.
   - Keep recent-hang-sort selected text centered (reinforce center1).
   - Hero secondary CTAs stay outline pills (not demoted to underline links on mobile).
   - Gyms section heading accent bar matches title width language (longer gold rule).
   - Collapse any leftover snippet flex gap. */
html body .recent-hang-sort select,
html body #recent-hang-sort {
  text-align: center !important;
  text-align-last: center !important;
  padding-left: 34px !important;
  padding-right: 34px !important;
}
html body .wdhc-cine-hero__actions > a.wdhc-cine-hero__secondary,
html body .full-leaderboard-page .wdhc-cine-hero__actions > a.wdhc-cine-hero__secondary,
html body .chm-page .wdhc-cine-hero__actions > a.wdhc-cine-hero__secondary,
html body .full-leaderboard-page .wdhc-cine-hero__secondary:nth-of-type(n+3),
html body .chm-page .wdhc-cine-hero__secondary:last-of-type {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 12px 22px !important;
  font-family: var(--wdhc-font-ui, 'Rajdhani', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 999px !important;
  border: 1px solid rgba(212, 175, 55, 0.45) !important;
  background: rgba(12, 8, 4, 0.45) !important;
  color: #f5edd8 !important;
  box-shadow: none !important;
}
html body .gyms-heading::after {
  width: 72px !important;
  height: 2px !important;
}
html body .grip-age-snippet,
html body #grip-age-snippet,
html body details.sidebar-grip-age-blurb {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
}
/* END 20261005polish1 */

/* LOCK 20261006mob1 (Milo 2026-10-06): phone only.
   1) Verified check sits off the first name (Brandon was flush against it).
   2) "Clips play the last 20 seconds of the hang." drops into the gap above the video and sits centered there.
   3) Monthly challenge cards and the home challenge strip read a little larger. */
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary {
    gap: 10px !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .verified-badge {
    margin-left: 2px !important;
    margin-top: 0 !important;
    margin-right: 2px !important;
  }
  html body .video-submission-item .video-submission-verified,
  html body .video-carousel .video-submission-verified {
    margin-left: 12px !important;
  }

  html body .video-submissions-section--lead .video-submissions-head__titles {
    display: contents !important;
  }
  html body .video-submissions-section--lead .video-submissions-eyebrow,
  html body .video-submissions-section--lead .video-submissions-title-row {
    order: 1 !important;
    width: 100%;
  }
  html body .video-submissions-section--lead .video-submissions-lead {
    order: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 3.4rem !important;
    margin: 16px 0 12px !important;
    padding: 8px 16px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: 1rem !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
  }
  html body .video-submissions-section--lead .video-carousel {
    order: 3 !important;
  }
  html body .video-submissions-section--lead .wdhc-season-strip--hero {
    order: 4 !important;
  }

  html body .wdhc-season-strip__inner--bar {
    padding: 16px 14px 18px !important;
    gap: 14px !important;
  }
  html body .wdhc-season-strip__title {
    font-size: 1.48rem !important;
  }
  html body .wdhc-season-clock--inline .wdhc-season-clock__unit {
    min-height: 4.7rem !important;
    padding: 14px 4px 12px !important;
  }
  html body .wdhc-season-clock--inline .wdhc-season-clock__value {
    font-size: 1.9rem !important;
  }
  html body .wdhc-season-strip__winner {
    padding: 12px 14px !important;
    font-size: 1.02rem !important;
  }
  html body .wdhc-season-strip__winner-name,
  html body .wdhc-season-strip__winner-metric {
    font-size: 1.08rem !important;
  }
  html body .home-lower-challenges.ch-live-grid--home,
  html body .post-video-challenge-boards.ch-live-grid--home {
    gap: 14px !important;
  }
  html body .post-video-challenge-card .ch-card,
  html body .post-video-challenge-board.ch-card {
    padding: 16px 14px 14px !important;
  }
  html body .post-video-challenge-card .ch-card__title {
    font-size: 1.52rem !important;
  }
  html body .post-video-challenge-card .ch-card__rule {
    font-size: 1.16rem !important;
  }
  html body .post-video-challenge-card .ch-podium__row {
    padding: 9px 10px !important;
    font-size: 1.2rem !important;
  }
  html body .post-video-challenge-card .ch-podium__name {
    font-size: 1.28rem !important;
  }
  html body .post-video-challenge-card .ch-podium__val {
    font-size: 1.4rem !important;
  }
}
/* END 20261006mob1 */

/* LOCK 20261006lb1: recent-clip weight is its own second line.
   "+10 lbs" stays together under the hang type, centered, on desktop and mobile.
   Long titles no longer leave the load on the bottom left or split the unit. */
.video-submissions-section--lead .video-submission-hangtype:has(.vs-nobr),
.video-carousel .video-submission-hangtype:has(.vs-nobr),
.video-submission-item .video-submission-hangtype:has(.vs-nobr) {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  overflow: visible !important;
}
.video-submissions-section--lead .video-submission-hangtype .vs-nobr,
.video-carousel .video-submission-hangtype .vs-nobr,
.video-submission-item .video-submission-hangtype .vs-nobr {
  display: block !important;
  width: 100% !important;
  margin-top: 1px !important;
  white-space: nowrap !important;
  text-align: center !important;
}
/* END 20261006lb1 */

/* LOCK 20261006pulse1: Leaderboard pulse fields under Total submissions are centered. */
.post-video-pulse-card .post-video-stat-grid,
.post-video-pulse-card .post-video-stat,
.post-video-pulse-card .post-video-stat-value,
.post-video-pulse-card .post-video-stat-val,
.post-video-pulse-card .post-video-stat-label,
.post-video-pulse-card .post-video-stat-note {
  text-align: center !important;
}
/* END 20261006pulse1 */

/* LOCK 20261006name1: desktop check + PR sit beside the name, including 13-inch (1280).
   The name stack was width 100%, so those badges wrapped under it. Founding / partner stay on the line under. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    width: 100% !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    column-gap: 4px !important;
    row-gap: 1px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack {
    order: 0 !important;
    flex: 0 1 auto !important;
    width: max-content !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .verified-badge, > .pr-badge, > .pr-badge-inline) > .name-stack {
    max-width: calc(100% - 72px) !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-last {
    width: 100% !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .verified-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .pr-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .pr-badge-inline {
    order: 1 !important;
    flex: 0 0 auto !important;
    align-self: center !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-badge-row {
    order: 2 !important;
    flex: 1 0 100% !important;
  }
}
/* END 20261006name1 */

/* LOCK 20261006name4 (night sweep 2026-10-06): verified names were crushed to 1-2 letters.
   name1 set the stack to width:max-content, min-width:0, flex-shrink 1, and max-width:calc(100% - 72px)
   while each line is width:100% + nowrap + overflow clip. The stack's max-content collapsed, then flex
   gave the leftover to the check and PR. Aiden read "Ai"/"Sc", Joseph "Jo"/"G", and some verified
   rows showed only the check. The name now takes the cell width that remains after the check and PR.
   Short names (Milo) still sit beside the check. Do not restore the 72px reservation. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .verified-badge, > .pr-badge, > .pr-badge-inline) > .name-stack {
    order: 0 !important;
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-last {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}
/* END 20261006name4 */

/* LOCK 20261006name5: check and PR hug the name. NEW sits below the last name.
   Background shows the full text. No ellipsis. Rows may grow so nothing is clipped. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: auto !important;
    max-height: none !important;
    min-height: 82.53px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation {
    display: block !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    max-height: none !important;
    height: auto !important;
    font-size: 0.92rem !important;
    line-height: 1.25 !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .verified-badge, > .pr-badge, > .pr-badge-inline) > .name-stack {
    flex: 0 1 auto !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .verified-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .pr-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .pr-badge-inline) > .name-stack {
    max-width: calc(100% - 30px) !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:has(> .verified-badge):has(> .pr-badge, > .pr-badge-inline) > .name-stack {
    max-width: calc(100% - 62px) !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-last {
    width: max-content !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-badge-row,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-badge-row {
    margin-top: 5px !important;
  }
}
@media (min-width: 1400px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: auto !important;
    max-height: none !important;
    min-height: 89.23px !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary {
    flex-wrap: wrap !important;
    column-gap: 4px !important;
    row-gap: 2px !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .verified-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge-inline {
    margin-left: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-first,
  html body .lb-row.lb-mobile-card .lb-card-last-text {
    flex: 0 0 auto !important;
    min-width: min-content !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }
}
/* END 20261006name5 */
/* 20261006revert1 (Milo 10/6): phone (<=900px) lbname1/lbname3 name-layout rules removed; phone cards back to pre-lbname layout. Desktop-only (>=901px) block kept. */
/* LOCK 20261006lbname1b (desktop board 901px+): Brandon's first name was shrunk to 11.8-13px at 901-1099px (21.9px at 1280)
   and Aiden's to 17.6px with "Schaeffer" clipped, because the check + PR bolt were kept BESIDE the name and the
   name-fit script shrank the name to make room. Now the row may wrap: when name + check + PR don't fit side by side,
   the check + PR drop under the full name (same rule as phone cards), and the name keeps the normal size. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr) {
    flex-wrap: wrap !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr) {
    row-gap: 3px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge-inline) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge):has(> .pr-badge, > .pr-badge-inline) > .name-stack {
    flex: 0 0 auto !important;
    max-width: 100% !important;
  }
  /* Grip Age cell had background:inherit, so on even (zebra) rows and on hover it painted a second tint = a stray grey box. */
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .grip-age-col { background: transparent !important; }
}
@media (min-width: 901px) and (max-width: 1399px) {
  /* Narrow desktop: check + PR always sit together on the line under the full name. Founding Pro rows (stacked-pr: Bob) keep check + PR beside the name and the chip under it. */
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge-inline) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge):has(> .pr-badge, > .pr-badge-inline) > .name-stack {
    flex-basis: 100% !important;
  }
}
/* END 20261006lbname1b */

/* LOCK 20261007fullrow1 (Milo 2026-10-07: "fix the full board so it looks like the board on the index page").
   Phone full-board rows use the HOME row markup (js/leaderboard-full.js buildMobileLeaderboardRowHTML) and these rules undo the
   old full-board card layout (leaderboard-v3.css / wdhc-page-leaderboard-full.css) so the row matches the home row:
   tier badge under the name, time + hang type + load + Grip Age in the middle, Watch/Details right, location centered on its own line.
   Desktop (>=901px) untouched. */
@media (max-width: 900px) {
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card { flex-wrap: wrap !important; }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-line-last { white-space: normal !important; }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-first { max-width: none !important; }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta {
    flex: 1 0 100% !important; order: 4 !important; width: auto !important; max-width: 100% !important;
    margin: 8px 0 0 0 !important; padding: 0 4px !important; height: auto !important; box-sizing: border-box !important;
  }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-row {
    display: flex !important; column-gap: 6px !important; row-gap: 6px !important; justify-content: center !important;
    margin: 0 !important; padding: 0 !important; text-align: center !important; width: auto !important;
  }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-group {
    column-gap: 6px !important; row-gap: 6px !important; flex-wrap: wrap !important; justify-content: center !important;
    max-width: 100% !important; margin: 0 auto !important; text-align: center !important; height: auto !important;
  }
  html body.full-leaderboard-page #leaderboard-body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-group > .flag {
    display: inline-flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 22px !important;
    width: 22px !important; min-width: 22px !important; height: 16px !important; line-height: 22.528px !important; text-align: center !important;
  }
  html body.full-leaderboard-page #leaderboard-body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .flag img { width: 18px !important; height: auto !important; }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .flag {
    width: 22px !important; min-width: 22px !important; height: 16px !important; line-height: 22.528px !important; text-align: center !important;
  }
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc {
    max-width: 100% !important; text-align: center !important; height: auto !important;
  }
}
/* END 20261007fullrow1 */

/* LOCK 20261007bolt1 (Milo 2026-10-07): phone rows (home + full board). The PR bolt sits on the FIRST line beside the first name,
   never between first and last name, and never over the gold time. name5 let that line wrap (bolt dropped between the names).
   js/wdhc-name-fit.js (fitMobileCards, 20261007bolt1) shrinks the first name to make room, and if it still does not fit it moves
   the bolt to the end of the last-name line. Names stay on two lines. */
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary { flex-wrap: nowrap !important; }
  /* 20261007names20 (Milo 10/7 "names look too small"): bigger phone names on home + full board. name5 had 15px.
     js/wdhc-name-fit.js shrinks only a name that does not fit its column (floors 15px first / 14px last). */
  html body .lb-row.lb-mobile-card .lb-card-first { font-size: 20px !important; font-weight: 700 !important; line-height: 1.12 !important; }
  html body .lb-row.lb-mobile-card .lb-card-last-text { font-size: 19px !important; line-height: 1.12 !important; }
  html body .lb-row.lb-mobile-card .lb-card-name-line-last .pr-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-last .recent-hang-mark { margin-left: 4px !important; flex: 0 0 auto !important; }
  html body .lb-row.lb-mobile-card .lb-card-name-line-bolt { display: flex !important; align-items: center !important; flex-wrap: nowrap !important; margin-top: 2px !important; white-space: nowrap !important; }
  html body .lb-row.lb-mobile-card .lb-card-name-line-last:has(> .pr-badge) { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; white-space: nowrap !important; }
}
/* END 20261007bolt1 */
/* Oswald capital I is a bare stem, so Iúri reads as luri. Draw those names in a face with a barred I. */
.name-cap-i,
.mini-name-line .name-cap-i,
.ch-podium__name .name-cap-i {
  font-family: "Source Sans 3", "Segoe UI", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
/* LOCK 20261008iuri1: Oswald's capital I is a bare stem, so Iúri reads as luri. Draw only that letter in a serif face. Do not restyle the rest of the name, and do not change the two-line mobile name or the tier badge. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* 20261009altmark1: World Leaders marks alternating times only. */
#top-10-list .mini-time-stack,
#world-leaders .mini-time-stack {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 4px !important;
}
#top-10-list .mini-time .hang-type-mark[data-type="alternating_one_arm"],
#world-leaders .mini-time .hang-type-mark[data-type="alternating_one_arm"] {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 18px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  flex: 0 0 16px !important;
  color: #d4af37 !important;
  pointer-events: none !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  flex-direction: column !important;
  gap: 1px !important;
  height: auto !important;
  max-height: none !important;
}
#top-10-list .mini-time .hang-type-mark[data-type="alternating_one_arm"] .hang-type-mark__arr,
#world-leaders .mini-time .hang-type-mark[data-type="alternating_one_arm"] .hang-type-mark__arr {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 13px !important;
  height: 6px !important;
  min-width: 13px !important;
  min-height: 6px !important;
  max-width: none !important;
  max-height: none !important;
  overflow: visible !important;
  fill: currentColor !important;
}

/* LOCK 20261009sweep1
   World Leaders (#top-10-list) is time-only. Clemens 20:02 has no alternating arrows.
   Wins over 20261009altmark1, which put the arrows back. */
html body #top-10-list .hang-type-mark,
html body #top-10-list .hang-type-mark__arr,
html body #top-10-list .mini-alt-mark,
html body #top-10-list .lb-hang-title,
html body #world-leaders .hang-type-mark,
html body #world-leaders .hang-type-mark__arr,
html body #world-leaders .mini-alt-mark,
html body #world-leaders .lb-hang-title,
html body #top-10-list .mini-time .hang-type-mark[data-type="alternating_one_arm"],
html body #world-leaders .mini-time .hang-type-mark[data-type="alternating_one_arm"],
html body #top-10-list .mini-time .hang-type-mark[data-type="alternating_one_arm"] .hang-type-mark__arr,
html body #world-leaders .mini-time .hang-type-mark[data-type="alternating_one_arm"] .hang-type-mark__arr {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  flex: 0 0 0 !important;
}

/* 20261013board3: phone load shares the time line. Beats mobunder2 / mobclear2 (4 classes, grid-column 1).
   Small tablets: wider card time column, background visible from 901, rows may grow so the title is not clipped. */
.rank-board {
  display: block;
  margin-top: 2px;
  font-size: 10px;
  line-height: 1;
  letter-spacing: 0;
  color: #c8bba0;
  font-weight: 600;
}
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head {
    grid-template-columns: minmax(0, 1fr) max-content !important;
    column-gap: 8px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip {
    width: 8.5rem !important;
    min-width: 8.5rem !important;
    max-width: 8.5rem !important;
    overflow: visible !important;
    flex-basis: auto !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time .lb-time-inner,
  html body .lb-card-time .lb-time-inner,
  html body .lb-row.lb-mobile-card .lb-card-time .lb-time-stack,
  html body .lb-card-time .lb-time-stack {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    grid-template-rows: auto auto !important;
    justify-content: end !important;
    justify-items: end !important;
    align-items: baseline !important;
    column-gap: 4px !important;
    row-gap: 1px !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: right !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-best-time,
  html body .lb-card-time .lb-time-stack > .lb-best-time {
    display: block !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: none !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold,
  html body .lb-card-time .lb-time-stack > .lb-pr-hold,
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-card-time .lb-time-stack > .lb-pr-hold[data-load] {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: none !important;
    justify-self: start !important;
    align-self: baseline !important;
    text-align: left !important;
    white-space: nowrap !important;
    margin: 0 !important;
    font-size: 0.68rem !important;
    line-height: 1 !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-hang-title,
  html body .lb-card-time .lb-time-stack > .lb-hang-title {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: auto !important;
    max-width: 100% !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: normal !important;
    margin: 0 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right:has(.lb-pr-hold) > .lb-card-grip {
    margin-top: 4px !important;
  }
}
@media (max-width: 399px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip {
    width: 7.35rem !important;
    min-width: 7.35rem !important;
    max-width: 7.35rem !important;
  }
}
@media (min-width: 901px) and (max-width: 1199px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) {
    height: auto !important;
    min-height: 82.53px !important;
    max-height: none !important;
  }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .lb-col-occupation,
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-bg {
    display: -webkit-box !important;
  }
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header .lb-h-bg {
    display: flex !important;
  }
}
@media (min-width: 901px) and (max-width: 999px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header {
    grid-template-columns: 32px 68px minmax(88px, 1.15fr) minmax(76px, 0.8fr) 108px 44px 60px !important;
    column-gap: 6px !important;
  }
}
@media (min-width: 1000px) and (max-width: 1199px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header {
    grid-template-columns: 32px 64px minmax(84px, 1.1fr) minmax(72px, 0.7fr) minmax(68px, 0.55fr) 108px 42px 58px !important;
    column-gap: 5px !important;
  }
}
@media (min-width: 901px) and (max-width: 1099px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .content-grid {
    grid-template-columns: minmax(0, 1fr) clamp(210px, 23vw, 248px) !important;
    column-gap: 12px !important;
  }
}
@media (min-width: 901px) {
  .sidebar-column,
  body.full-leaderboard-page #hang-type-boards {
    padding-bottom: 84px;
  }
}
/* 20261013board5: small tablets (701-900) were a phone card stretched wide, with the city floating in the middle.
   Same pieces, one row: rank, name, time, buttons. Location sits under the name. Phones under 701 stay as they are. */
@media (min-width: 701px) and (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card,
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 9.2rem 96px !important;
    column-gap: 12px !important;
    row-gap: 2px !important;
    align-items: center !important;
    flex-wrap: unset !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-rank {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-main,
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-main > .lb-card-head {
    display: contents !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: auto !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip {
    width: 9.2rem !important;
    min-width: 9.2rem !important;
    max-width: 9.2rem !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right {
    grid-column: 3 !important;
    grid-row: 1 / span 2 !important;
    justify-self: end !important;
    align-self: center !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions {
    grid-column: 4 !important;
    grid-row: 1 / span 2 !important;
    width: 96px !important;
    min-width: 96px !important;
    align-self: center !important;
    margin: 0 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta,
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta {
    grid-column: 2 !important;
    grid-row: 2 !important;
    flex: none !important;
    order: unset !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: start !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta > .lb-card-loc-row,
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-row,
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-group,
  html body.full-leaderboard-page .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-meta .lb-card-loc-group {
    justify-content: flex-start !important;
    text-align: left !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
}

/* 20261013feed1: All boards is a recent feed. A picked board opens ranked. */
.controls-header__left:has(.lb-feed-mode) {
  flex-direction: column;
  align-items: flex-start;
}
.lb-feed-mode {
  margin: 2px 0 12px;
  max-width: 40rem;
  font-family: "Source Sans 3", "Source Sans Pro", sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.35;
  color: #f6f1e4;
}
.lb-feed-mode[data-mode="recent"] {
  color: #f0d78c;
}

/* 20261014row4: one rank number. Phone time column is only as wide as the digits
   plus the load, so the PR bolt fits beside the name. Grip Age is centered on
   the digits and does not widen that column. */
.rank-board {
  display: none !important;
}
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-main {
    overflow: visible !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    column-gap: 8px !important;
    align-items: start !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip {
    width: auto !important;
    min-width: 0 !important;
    max-width: 9.2rem !important;
    flex-basis: auto !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    justify-self: end !important;
    width: max-content !important;
    margin-left: auto !important;
    overflow: visible !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time {
    display: grid !important;
    position: relative !important;
    grid-template-columns: max-content max-content !important;
    justify-content: end !important;
    justify-items: end !important;
    width: max-content !important;
    max-width: 9.2rem !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time > .lb-time-inner,
  html body .lb-row.lb-mobile-card .lb-card-time .lb-time-stack {
    display: contents !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-best-time,
  html body .lb-card-time .lb-time-stack > .lb-best-time {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-pr-hold,
  html body .lb-card-time .lb-time-stack > .lb-pr-hold {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    margin-left: 4px !important;
    text-align: left !important;
    white-space: nowrap !important;
  }
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-hang-title,
  html body .lb-card-time .lb-time-stack > .lb-hang-title {
    position: absolute !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    align-self: start !important;
    width: max-content !important;
    max-width: 9.2rem !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time::before {
    content: "" !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    height: 1.15rem !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time::after {
    content: "" !important;
    grid-column: 1 !important;
    grid-row: 3 !important;
    height: 2.15rem !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-time > .lb-card-grip {
    position: absolute !important;
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-self: center !important;
    align-self: start !important;
    width: max-content !important;
    max-width: 8.2rem !important;
    margin: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-grip,
  html body .lb-row.lb-mobile-card .lb-card-grip-label,
  html body .lb-row.lb-mobile-card .lb-card-grip-val {
    text-align: center !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-block {
    min-width: 0 !important;
    overflow: visible !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    column-gap: 4px !important;
    max-width: 100% !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .verified-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge-inline {
    flex: 0 0 auto !important;
    order: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge-inline {
    font-size: 14px !important;
    line-height: 1 !important;
    padding: 0 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge .svg-icon,
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary .pr-badge-inline .svg-icon {
    width: 13px !important;
    height: 13px !important;
  }
}
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row {
    flex-wrap: wrap !important;
    align-items: center !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .pr-badge-inline) > .name-stack,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row:not(.name-primary-row--stacked-pr):has(> .verified-badge):has(> .pr-badge, > .pr-badge-inline) > .name-stack {
    flex: 0 1 auto !important;
    flex-basis: auto !important;
    width: max-content !important;
    max-width: calc(100% - 74px) !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .verified-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .pr-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .pr-badge-inline {
    order: 1 !important;
    flex: 0 0 auto !important;
    align-self: center !important;
  }
}

/* LOCK 20261014audit1/audit2 (Milo 12:35 AM "fix"): index audit.
   1. Phones: the load sits UNDER the hang-type title, centered (copy inside the title; the beside-the-time load keeps its space but is hidden).
   2. Phones: rows end above the sticky Submit bar (bar 58px + 10px gap + safe area).
   4/6. Two-line finger/edge titles: smaller second line; Grip Age drops one line on phones so nothing overlaps.
   7. Filter and sort dropdowns never overflow their box; text centered. */
@media (min-width: 901px) {
  html body .lb-row-wrapper .lb-time-stack .lb-hang-title > .lb-pr-hold.lb-pr-hold--under,
  html body .lb-time-stack .lb-hang-title > .lb-pr-hold.lb-pr-hold--under[data-load] { display: none !important; }
}
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-card-time:has(.lb-pr-hold--under) .lb-time-stack > .lb-pr-hold:not(.lb-pr-hold--under) { visibility: hidden !important; }
  html body .lb-row-wrapper .lb-card-time .lb-time-stack > .lb-hang-title > .lb-pr-hold.lb-pr-hold--under {
    display: block !important; position: static !important; text-align: center !important;
    white-space: nowrap !important; margin: 2px 0 0 !important; font-size: 0.68rem !important; line-height: 1.1 !important;
  }
  html body .lb-card-time:has(.lb-pr-hold--under) .lb-card-grip { translate: 0 12px; }
  html body .lb-card-time:has(.lb-hang-title--finger .lb-pr-hold--under) .lb-card-grip { translate: 0 24px; }
}
@media (max-width: 900px) {
  html body .lb-card-time:has(.lb-hang-title--finger) .lb-card-grip { translate: 0 12px; }
  html body:has(.mobile-submit-bar) {
    padding-bottom: max(94px, calc(58px + 10px + 16px + env(safe-area-inset-bottom, 0px))) !important;
  }
}
html body .lb-hang-title--finger .lb-hang-grip { font-size: .85em; opacity: .85; }
html body .lb-card-time .lb-hang-title { overflow-wrap: anywhere; }
html body select.lb-filter-select,
html body select.lb-adv-select,
html body select.lb-gym-select,
html body .recent-hang-sort select {
  max-width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
  text-align-last: center !important;
}

/* LOCK 20261014center1 (Milo 1:12 AM): phones: time, hang-type title, load line and Grip Age are ONE centered column. */
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time {
    display: flex !important; flex-direction: column !important; align-items: center !important;
    justify-content: flex-start !important; text-align: center !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-inner {
    display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack {
    display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack > .lb-best-time {
    justify-self: auto !important; align-self: center !important; text-align: center !important; margin: 0 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack > .lb-hang-title {
    position: static !important; inset: auto !important; transform: none !important; translate: none !important;
    align-self: center !important; justify-self: auto !important; width: auto !important; max-width: 100% !important;
    text-align: center !important; margin: 0 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack > .lb-pr-hold:not(.lb-pr-hold--under) { display: none !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack > .lb-pr-hold:not(.lb-pr-hold--under):only-of-type { display: block !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time > .lb-card-grip,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time:has(.lb-pr-hold--under) .lb-card-grip,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time:has(.lb-hang-title--finger) .lb-card-grip {
    transform: none !important; translate: none !important; position: static !important;
    align-self: center !important; text-align: center !important; margin: 4px 0 0 !important;
    display: flex !important; flex-direction: column !important; align-items: center !important;
    order: 2 !important; grid-row: auto !important; margin-top: 4px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time > .lb-time-inner { order: 1 !important; }
}

/* LOCK 20261014center2 (Milo 1:43 AM): phones: the big hang time sits level with the first name line (top of the card), the centered column hangs below it. */
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time::before,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time::after { display: none !important; content: none !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-inner,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack { justify-content: flex-start !important; margin-top: 0 !important; padding-top: 0 !important; }
}

/* LOCK 20261014gaspace1 (Milo 11:24 AM) + 20261015gagap1 (Milo 1:51 PM): phones: clear 18px gap between the hang title / load line and the Grip Age block (wrapped long titles no longer crowd it). Desktop unchanged. */
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time > .lb-card-grip,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time:has(.lb-pr-hold--under) .lb-card-grip,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time:has(.lb-hang-title--finger) .lb-card-grip {
    margin-top: 18px !important;
  }
}
/* Small desktop (901-1199): the 72px Watch button spilled ~14px into the Grip Age column (58/60px track). Give Watch a 72px track and Grip Age 46px; header matches. */
@media (min-width: 901px) and (max-width: 999px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header {
    grid-template-columns: 32px 68px minmax(88px, 1.15fr) minmax(76px, 0.8fr) 104px 46px 72px !important;
  }
}
@media (min-width: 1000px) and (max-width: 1199px) {
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-row-wrapper > .lb-row:not(.lb-mobile-card),
  html:not(.wdhc-tv-display) body:not(.full-leaderboard-page) .leaderboard .lb-header {
    grid-template-columns: 32px 64px minmax(84px, 1.1fr) minmax(72px, 0.7fr) minmax(68px, 0.55fr) 104px 46px 72px !important;
  }
}
/* LOCK 20261014vis1 (Milo 1:44 PM): phone name block. First names never shrink (20px, set by CSS; js/wdhc-name-fit.js no longer
   shrinks them). A check / bolt that does not fit beside the first name drops to a small icon line under the last name.
   The tier badge starts exactly at the name's left edge and hugs its label (no wide pill that reads as indented). */
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons {
    display: flex !important; align-items: center !important; flex-wrap: nowrap !important; gap: 6px !important;
    margin: 2px 0 0 !important; line-height: 1 !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons .verified-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons .pr-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons .pr-badge-inline { margin: 0 !important; transform: scale(.85); transform-origin: left center; }
  html body .lb-row.lb-mobile-card .lb-card-name-block > .tier-badge.lb-card-tier-under-name {
    align-self: flex-start !important; margin-left: 0 !important; translate: none !important; transform: none !important;
  }
}
/* Desktop rows (901px+): descender room so a last name ("Klicper", "Schaeffer") is never cut at the bottom (1024 clip). */
@media (min-width: 901px) {
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) .name-cell .name-stack > .name-line.name-last { line-height: 1.18 !important; padding-bottom: 2px !important; }
}
/* LOCK 20261014vis2 (Milo 1:44 PM): desktop rows. An older clamp reserved 74px beside every name stack (even with no icons), so
   /leaderboard-full at 1200-1365 squeezed every name to 11px and the home board shrank Harrison / Pullsmastr / Mohammed.
   The name stack may now use the whole name cell; the check / bolt wrap under the name instead of shrinking it. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper .name-primary-row.name-primary-row > .name-stack.name-stack:not(#wdhc-vis2) {
    max-width: 100% !important; flex: 0 1 auto !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-wrapper .name-primary-row.name-primary-row:not(#wdhc-vis2) { flex-wrap: wrap !important; }
}
/* LOCK 20261014tcol1 (Milo 3:47 PM): phones. The time / hang-type / Grip Age column has ONE fixed width and sits at a fixed spot
   (right against the Watch/Details column), so its center x is identical on every row of every board. Long hang-type labels wrap
   inside it instead of widening it. The name block takes the rest of the card. */
@media (max-width: 900px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right {
    flex: 0 0 clamp(72px, 22vw, 88px) !important; width: clamp(72px, 22vw, 88px) !important;
    min-width: clamp(72px, 22vw, 88px) !important; max-width: clamp(72px, 22vw, 88px) !important; margin-left: auto !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-name-block { flex: 1 1 0 !important; min-width: 0 !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right .lb-card-time { width: 100% !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-hang-title { overflow-wrap: normal !important; word-break: normal !important; max-width: 100% !important; }
}
/* LOCK 20261014tcol2: desktop. A two-line edge title ("4 Fingers per hand · 1 Hand") was nowrap and pushed the time 19px off the
   column center (Jaxin). The stack never grows past its column; the second line wraps. */
@media (min-width: 901px) {
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) .lb-time-stack { max-width: 100% !important; min-width: 0 !important; }
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) .lb-hang-title--finger,
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) .lb-hang-title--finger .lb-hang-grip { white-space: normal !important; }
}
/* LOCK 20261014tcol3: desktop. A two-line edge title ("4 Fingers per hand · 1 Hand") was nowrap and pushed the time ~19px off the
   column center (Jaxin). The stack never grows past its column; the second line wraps. */
@media (min-width: 901px) {
  html body .lb-row-wrapper .time .lb-time-inner > .lb-time-stack:not(#wdhc-tcol3) { max-width: 100% !important; min-width: 0 !important; }
  html body .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--finger:not(#wdhc-tcol3),
  html body .lb-row-wrapper .time .lb-hang-title--finger > .lb-hang-grip:not(#wdhc-tcol3) { white-space: normal !important; max-width: 100% !important; }
}
/* LOCK 20261014women1: Women pill under the board picker (home + /leaderboard-full). One control, big text, gold like the board chips. */
html body button.lb-women-toggle {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  margin: 0; min-height: 40px; padding: 0 20px; border-radius: 999px;
  border: 1px solid rgba(212, 175, 55, .55); background: rgba(212, 175, 55, .06);
  color: #E6C14F; font-family: inherit; font-weight: 800; font-size: .95rem; line-height: 1; letter-spacing: .06em; text-transform: uppercase; cursor: pointer;
}
html body button.lb-women-toggle[hidden] { display: none !important; }
html body button.lb-women-toggle.is-on { background: linear-gradient(135deg, #E6C14F 0%, #D4AF37 55%, #C9962B 100%); color: #0b0b0c; border-color: transparent; }

/* LOCK 20261015bgwrap1 (Milo 8:14 PM): board Background column + Details background value wrap at WORD boundaries only.
   Never split a word mid-word ("Strongwoma / n"). Slashes get a <wbr> in the renderer. Column width, time and Grip Age centers unchanged. */
html body .lb-row > .lb-col-occupation,
html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) > .lb-col-occupation,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation.lb-col-occupation,
html body .details-side-meta__value {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}
/* 20261015bgwrap3: /leaderboard-full desktop Background column is 90px; trim the font a touch so the longest single word (Strongwoman) fits without spilling toward Location. */
@media (min-width: 901px) and (max-width: 1439px) {
  html body.full-leaderboard-page .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .lb-col-occupation.lb-col-occupation {
    font-size: 0.86rem !important;
  }
}

/* LOCK 20261015detlines1 (Milo 8:37 PM): Details dropdown stats = one stat per line (Division, Weight class, Location, Gender,
   Age, Height, Bodyweight, Grip delta...). Label left, value right, thin divider, same type as the Division line.
   Dropdown panel only: board rows, time / Grip Age centers untouched. */
html body .details-side-meta .details-side-meta__grid {
  display: flex !important; flex-direction: column !important; gap: 0 !important; grid-template-columns: none !important;
}
html body .details-side-meta .details-side-meta__cell,
html body .details-bio-list .details-bio-strip__item {
  display: flex !important; flex-direction: row !important; align-items: baseline !important; justify-content: space-between !important;
  gap: 14px !important; padding: 8px 0 !important; margin: 0 !important; min-width: 0 !important;
  border-bottom: 1px solid rgba(212,175,55,0.12) !important;
}
html body .details-side-meta .details-side-meta__cell:last-child,
html body .details-bio-list .details-bio-strip__item:last-child { border-bottom: 0 !important; }
html body .details-side-meta .details-side-meta__label,
html body .details-bio-list .details-bio-strip__label { flex: 0 0 auto !important; margin: 0 !important; }
html body .details-side-meta .details-side-meta__value,
html body .details-bio-list .details-bio-strip__value { flex: 1 1 auto !important; text-align: right !important; justify-content: flex-end !important; min-width: 0 !important; }
html body .details-bio-list {
  display: flex !important; flex-direction: column !important; flex-wrap: nowrap !important; gap: 0 !important; align-items: stretch !important;
  padding: 12px 14px !important; border: 1px solid rgba(212,175,55,0.18) !important; border-radius: 12px !important; background: rgba(255,255,255,0.02) !important;
  white-space: normal !important;
}
html body .details-bio-list .details-side-meta__kicker { display: block !important; margin: 0 0 4px !important; }
html body .details-bio-list .details-bio-strip__item.is-private .details-bio-strip__value { font-style: italic !important; opacity: 0.75 !important; }

/* 20261015detlines1: desktop - keep the Stats card the same width as the Athlete card, not the full panel. */
@media (min-width: 901px) { html body .details-bio-list { max-width: 580px !important; width: 100% !important; } }


/* 20261016nofeed1: Milo removed the recent-feed line under Global Standings. Empty line takes no space. */
.lb-feed-mode:empty {
  display: none !important;
}

/* 20261016ctlrow1 (Milo 12:20 AM): controls row above the feed. No Women pill here (women via Filters > Division).
   Sort dropdown bigger, Filters smaller, everything on one centered line. */
#lb-women-toggle { display: none !important; }
html body #lb-toolbar-sticky.lb-toolbar { align-items: center !important; }
html body #lb-toolbar-sticky .lb-toolbar-filters--row { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; gap: 10px !important; }
html body #lb-toolbar-sticky .lb-filter-group--sort { display: flex !important; flex-direction: row !important; align-items: center !important; margin: 0 !important; padding: 0 !important; }
html body #lb-toolbar-sticky .lb-filter-group--sort > .lb-filter-label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; margin: 0 !important; padding: 0 !important; }
html body #lb-toolbar-sticky #sort-filter { display: block !important; height: 48px !important; min-height: 48px !important; min-width: 230px !important; font-size: 1.05rem !important; padding-left: 22px !important; padding-right: 46px !important; margin: 0 !important; background-position: right 18px center !important; }
html body #lb-toolbar-sticky #pickboard-filters-btn { height: 38px !important; min-height: 38px !important; width: auto !important; padding: 0 14px !important; font-size: 0.82rem !important; gap: 6px !important; margin: 0 !important; flex: 0 0 auto !important; }
html body #lb-toolbar-sticky #pickboard-filters-btn svg { width: 15px !important; height: 15px !important; }
html body #lb-toolbar-sticky .lb-toolbar-search { margin: 0 !important; align-self: center !important; }
html body #lb-toolbar-sticky .lb-toolbar-search .search-input { height: 48px !important; }
@media (max-width: 900px) {
  html body #lb-toolbar-sticky .lb-toolbar-filters--row { width: 100% !important; }
  html body #lb-toolbar-sticky .lb-filter-group--sort { flex: 1 1 auto !important; min-width: 0 !important; }
  html body #lb-toolbar-sticky #sort-filter { width: 100% !important; min-width: 0 !important; }
  html body #lb-toolbar-sticky #pickboard-filters-btn { order: 2 !important; }
  html body #lb-toolbar-sticky .lb-filter-chips#lb-sort-chips { display: none !important; }
}
@media (max-width: 900px) {
  html body #lb-toolbar-sticky.lb-toolbar { display: flex !important; flex-direction: column !important; gap: 10px !important; }
  html body #lb-toolbar-sticky #pickboard-filters-btn { width: auto !important; max-width: 40% !important; height: 44px !important; min-height: 44px !important; }
  html body #lb-toolbar-sticky #sort-filter { height: 52px !important; min-height: 52px !important; }
  html body #lb-toolbar-sticky .lb-toolbar-search { width: 100% !important; }
}
@media (max-width: 900px) {
  html body #lb-toolbar-sticky#lb-toolbar-sticky .lb-toolbar-filters.lb-toolbar-filters--row { flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; height: auto !important; }
  html body #lb-toolbar-sticky#lb-toolbar-sticky .lb-filter-group.lb-filter-group--sort { order: 1 !important; flex: 1 1 0 !important; height: auto !important; min-width: 0 !important; }
  html body #lb-toolbar-sticky#lb-toolbar-sticky select#sort-filter { position: static !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; clip: auto !important; }
  html body #lb-toolbar-sticky#lb-toolbar-sticky #pickboard-filters-btn.pickboard-filters__toggle { order: 2 !important; }
  html body #lb-toolbar-sticky#lb-toolbar-sticky .lb-toolbar-filters--row > .lb-filter-group:not(.lb-filter-group--sort) { order: 3 !important; }
}
@media (max-width: 900px) { html body #lb-toolbar-sticky#lb-toolbar-sticky select#sort-filter { border-radius: 999px !important; } }

/* 20261019wtorange1 (Milo): added-weight line uses Grip Age orange #E87820, not red.
   Was 20261016wtred1. Color only; size, centering and units stay as locked. Gold stays on the time. */
html:not(#wtred-a):not(#wtred-b) body .lb-row .lb-pr-hold[data-load="1"],
html:not(#wtred-a):not(#wtred-b) body .lb-card-time .lb-pr-hold[data-load="1"],
html:not(#wtred-a):not(#wtred-b) body .lb-time-stack .lb-pr-hold[data-load="1"],
html:not(#wtred-a):not(#wtred-b) body #top-10-list .lb-pr-hold[data-load="1"],
html:not(#wtred-a):not(#wtred-b) body #world-leaders .lb-pr-hold[data-load="1"] {
  color: #E87820 !important;
  -webkit-text-fill-color: #E87820 !important;
}

/* 20261016bolt2 (Milo 1:49 AM): phone rows keep the check + PR bolt inline on the first-name line. Tight rows use a compact badge. */
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-name-line-primary { flex-wrap: nowrap !important; overflow: visible !important; white-space: nowrap !important; }
  html body .lb-row.lb-mobile-card .lb-card-name, html body .lb-row.lb-mobile-card .lb-card-name-block { overflow: visible !important; }
  html body .lb-row.lb-mobile-card.lb-card--bolt-compact .lb-card-name-line-primary { gap: 2px !important; column-gap: 2px !important; }
  html body .lb-row.lb-mobile-card.lb-card--bolt-compact .lb-card-name-line-primary .pr-badge,
  html body .lb-row.lb-mobile-card.lb-card--bolt-compact .lb-card-name-line-primary .pr-badge-inline,
  html body .lb-row.lb-mobile-card.lb-card--bolt-compact .lb-card-name-line-primary .verified-badge { margin-left: 2px !important; margin-right: 0 !important; transform: scale(.82) !important; transform-origin: left center !important; }
}

/* LOCK 20261017altdh2 (Milo): desktop alternating row title wraps ALTERNATING / DEAD HANG inside the time column (one line bled into Grip Age). */
@media (min-width: 901px) {
  html body .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--alt:not(#wdhc-altdh2),
  html body .lb-row-wrapper > .lb-row:not(.lb-mobile-card) .lb-hang-title--alt:not(#wdhc-altdh2) { white-space: normal !important; max-width: 100% !important; height: auto !important; max-height: none !important; overflow: visible !important; text-overflow: clip !important; line-height: 1.15 !important; }
}

/* LOCK 20261017altdh3 (Milo): /leaderboard-full desktop Hang select is wide enough for the full ALTERNATING DEAD HANG (152px clipped it). Gym + search keep their row. */
@media (min-width: 901px) {
  html body .lb-hang-gym-pair > #hang-type-filter.lb-hang-select:not(#wdhc-altdh3) { width: 228px !important; max-width: 228px !important; }
}

/* LOCK 20261017tvfix1 desktop time stack (Milo 10/17): keeps LOCK 20261003wtdalign1 (weight hangs under the title out of flow,
   gold times stay aligned) but nothing may draw on the weight:
   1) two-line finger titles ("Edge" / "2 Finger"): the weight drops below the second line instead of over it;
   2) the "% of Guinness" chip starts below the weight instead of on it. */
@media (min-width: 901px) {
  .leaderboard .lb-row > .time .lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load],
  .leaderboard .lb-row > .desktop-time .lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load],
  .lb-row > .time .lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load],
  .lb-row > .desktop-time .lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load] { top: calc(100% + 13px) !important; }
  .lb-row > .time.has-gwr-chip:has(.lb-time-stack > .lb-pr-hold[data-load]) > .gwr-chip-row,
  .lb-row > .desktop-time.has-gwr-chip:has(.lb-time-stack > .lb-pr-hold[data-load]) > .gwr-chip-row { margin-top: 16px !important; }
  .lb-row > .time.has-gwr-chip:has(.lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load]) > .gwr-chip-row,
  .lb-row > .desktop-time.has-gwr-chip:has(.lb-time-stack:has(> .lb-hang-title .lb-hang-grip) > .lb-pr-hold[data-load]) > .gwr-chip-row { margin-top: 29px !important; }
}
/* END 20261017tvfix1 desktop time stack */

/* LOCK 20261017gwrband1: Guinness World Record holder chip wraps inside the time column (nowrap overflowed into Grip Age). */
@media (min-width: 901px) {
  .lb-row > .time.has-gwr-chip .gwr-chip-row:has(.gwr-chip__pct--holder),
  .lb-row > .desktop-time.has-gwr-chip .gwr-chip-row:has(.gwr-chip__pct--holder) { white-space: normal !important; max-width: 100% !important; overflow: visible !important; }
  .lb-row > .time.has-gwr-chip .gwr-chip__pct--holder,
  .lb-row > .desktop-time.has-gwr-chip .gwr-chip__pct--holder { white-space: normal !important; max-width: 108px !important; display: inline-block !important; line-height: 1.15 !important; text-align: center !important; border-radius: 8px !important; }
}
/* END 20261017gwrband1 */

/* LOCK 20261018dtl1: no-video DETAILS. .details-film-side { height:100% } sized the rail-only
   section to the athlete row, so the path card painted over Stats. Keep the path in flow. */
@media (min-width: 901px) {
  html body .details-panel .details-section--film-rail-only {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  html body .details-panel .details-section--film-rail-only > .details-film-side,
  html body .details-panel .details-section--film-rail-only .details-film-side--no-video {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  html body .details-panel .details-section--film-rail-only .details-film-rail,
  html body .details-panel .details-section--film-rail-only .details-side-meta {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body .details-panel .details-section--film-rail-only > .details-hang-path {
    position: static !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 12px !important;
    overflow: visible !important;
  }
}
@media (max-width: 900px) {
  html body .details-panel .details-section--film-rail-only,
  html body .details-panel .details-section--film-rail-only > .details-hang-path,
  html body .details-panel .details-hang-path,
  html body .details-panel .details-bio-list {
    position: static !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
/* END 20261018dtl1 */

/* LOCK 20261018jonlbl1: Global Standings description is removed on every board. No gap under the heading. */
html body p#lb-feed-mode.lb-feed-mode,
html body #lb-feed-mode {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
}
/* END 20261018jonlbl1 */

/* 20261025walt1: alternating arrow stack plus the load mark. Height auto so the plus is not clipped. */
html body .hang-type-mark[data-type="weighted_alternating"],
html body .time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
html body .desktop-time .lb-time-aside .hang-type-mark[data-type="weighted_alternating"],
html body .icon-legend-ht .hang-type-mark[data-type="weighted_alternating"] {
  flex-direction: column !important;
  width: auto !important;
  min-width: 26px !important;
  max-width: none !important;
  height: auto !important;
  min-height: 26px !important;
  max-height: none !important;
  padding: 2px !important;
  gap: 1px !important;
  overflow: visible !important;
}
html body .hang-type-mark[data-type="weighted_alternating"] .hang-type-mark__plus {
  width: 9px !important;
  height: 9px !important;
}

/* LOCK 20261008iuri2 stays last: Oswald capital I is a bare stem, so Iuri reads as luri. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ============================================================
   LOCK 20261020wtgap1 (Milo 10/20): desktop weighted rows.
   The +load line (absolute, under the hang-type title) ran into
   the row divider. Desktop only: grow those rows 16px at the
   bottom via the Time cell so the stack does not move and the
   load clears the line. Mobile (<=900px) untouched.
   ============================================================ */
@media (min-width: 901px) {
  .lb-row-wrapper > .lb-row:has(.lb-time-stack > .lb-pr-hold:not(.lb-pr-hold--under)) {
    padding-bottom: 26px !important;
  }
  .lb-row-wrapper > .lb-row:has(.lb-time-stack > .lb-pr-hold:not(.lb-pr-hold--under)) > .time {
    padding-bottom: 16px !important;
    margin-bottom: -16px !important;
  }
}

/* ============================================================
   LOCK 20261021tierpill1 (Milo 10/21): leaderboard row tier pills
   use the same text as the Tier Classifications legend pills.
   Mobile (<=900px) under-name pill = legend: 14.4px / 0.72px, 40px
   tall, padding 0 10 0 16. Desktop = legend: 10.56px / 0.35px,
   28px tall, padding 0 10 0 16. Weight stays per tier.
   ============================================================ */
@media (max-width: 900px) {
  html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge {
    font-size: 14.4px !important;
    line-height: 14.4px !important;
    letter-spacing: 0.72px !important;
    padding: 0 10px 0 16px !important;
    height: 40px !important;
    min-height: 40px !important;
    white-space: nowrap !important;
  }
}
@media (min-width: 901px) {
  html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge {
    font-size: 10.56px !important;
    line-height: 10.56px !important;
    letter-spacing: 0.35px !important;
    padding: 0 10px 0 16px !important;
    height: 28px !important;
    white-space: nowrap !important;
  }
}

/* ============================================================
   LOCK 20261021wlalt1 (Milo 10/21, supersedes 20261009sweep1 for
   the arrow only): World Leaders rows whose time is an alternating
   hang show the gold ⇄ after the name (same as challenge tables).
   Times stay unchanged; no hang-type marks or captions.
   ============================================================ */
html body #top-10-list .mini-name .ch-alt-mark {
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #D4AF37 !important;
  font-weight: 700 !important;
  margin-left: 6px !important;
  white-space: nowrap !important;
  width: auto !important;
  height: auto !important;
}

/* ============================================================
   LOCK 20261021tierpill2 (Milo 10/21): row tier pills are a clone of
   the Tier Classifications legend pill: 118px wide (108px on phone, the name-column cap), legend height and
   text per breakpoint (<=900: 40px/14.4px; 901-1399: 28px/10.56px;
   >=1400: 38px/13.76px), and the legend's per-tier glow.
   Supersedes 20261021tierpill1.
   ============================================================ */
@media (max-width: 900px) {
  /* phone: legend width, but never wider than the name column (108px cap from 20261005tier1 keeps it off the time) */
  html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge {
    width: 108px !important; min-width: 108px !important; max-width: 108px !important;
  }
}
@media (min-width: 901px) {
  html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge {
    width: 118px !important; min-width: 118px !important; max-width: 118px !important;
  }
}
@media (min-width: 1400px) {
  html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge {
    height: 38px !important; min-height: 38px !important;
    font-size: 13.76px !important; line-height: 13.76px !important; letter-spacing: 0.55px !important;
  }
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-freak,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-freak,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-freak,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-freak {
  box-shadow: 0 0 18px rgba(150,60,230,0.38) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-legend,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-legend,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-legend,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-legend {
  box-shadow: 0 0 16px rgba(220,150,50,0.36) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-elite,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-elite,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-elite,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-elite {
  box-shadow: 0 0 16px rgba(180,200,230,0.35), 0 0 8px rgba(180,200,230,0.2) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-expert,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-expert,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-expert,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-expert {
  box-shadow: 0 0 14px rgba(200,50,50,0.32) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-pro,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-pro,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-pro,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-pro {
  box-shadow: 0 0 14px rgba(200,50,50,0.32) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-contender,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-contender,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-contender,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-contender {
  box-shadow: 0 0 14px rgba(50,170,100,0.28) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-challenger,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-challenger,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-challenger,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-challenger {
  box-shadow: 0 1px 4px rgba(0,0,0,0.45) !important;
}
html body .leaderboard .lb-row-wrapper .lb-row .tier-col .tier-badge.tier-badge.tier-pro-gold,
html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .tier-col .tier-badge.tier-badge.tier-pro-gold,
html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-pro-gold,
html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-pro-gold {
  box-shadow: 0 2px 14px rgba(232,120,32,0.35), 0 0 12px rgba(212,175,55,0.4), inset 0 1px 0 rgba(255,255,200,0.45) !important;
}

/* ============================================================
   LOCK 20261021wlalt2 (Milo 10/21, supersedes wlalt1 placement):
   World Leaders alternating rows show the gold ⇄ immediately LEFT
   of the hang time, inside .mini-time-val, absolutely positioned
   so times stay aligned with non-alternating rows.
   ============================================================ */
html body #top-10-list .mini-time .mini-time-val { position: relative !important; }
html body #top-10-list .mini-time .mini-time-val > .ch-alt-mark {
  position: absolute !important;
  right: 100% !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 5px 0 0 !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #D4AF37 !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  pointer-events: none;
}

/* LOCK 20261021wlalt3 (Milo 10/21): the time value hugs its text so the ⇄ sits right next to the time at every width; times stay right-aligned. */
html body #top-10-list .mini-time .mini-time-val { width: max-content !important; max-width: none !important; min-width: 0 !important; margin-left: auto !important; align-self: flex-end !important; justify-self: end !important; }

/* LOCK 20261022mobw1 (Milo 2026-10-22): no wasted width + challenges cleanup.
   A) Phone DETAILS: rail (Best Hang / tiles / Path to Next Tier) and Athlete card span the full
      content width, same edges as the video card above. Parent was align-items:start, so the side
      column shrank to content (up to ~80px dead gap on iPhone). Desktop untouched (<=767px only).
   B) Home: the extra Longest Hang (alternating) challenge card is REMOVED (markup gone; assert
      requires it absent). Enter button sits closer under the boards.
   C) Past Winners: a touch bigger and clearly separated from challenges by a divider. Stays full width. */
@media (max-width: 767px) {
  html body .details-panel .details-film-stage--split > .details-film-side,
  html body .details-panel.rv .rv-bal > .details-film-side,
  html body .details-panel.rv .rv-bal.rv-measure > .details-film-side {
    align-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
  html body .details-panel .details-film-side > .details-film-rail,
  html body .details-panel .details-film-side > .rv-profile,
  html body .details-panel .details-film-side > .details-side-meta {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
}
html body #home-challenge-card-alternating { display: none !important; }
html body .home-challenges-actions { margin-top: 2px !important; padding-top: 0 !important; }
html body .content-grid > #home-challenges-winners {
  position: relative !important;
  margin-top: 44px !important;
  padding: 22px 22px 20px !important;
}
html body .content-grid > #home-challenges-winners::before {
  content: "" !important;
  position: absolute !important;
  left: 8% !important;
  right: 8% !important;
  top: -24px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.55), transparent) !important;
  pointer-events: none !important;
}
html body #home-challenges-winners .home-challenges-winners-title { font-size: 1.02rem !important; margin: 0 0 16px !important; }
html body #home-challenges-winners .home-challenges-winners-month { font-size: 1.22rem !important; margin: 0 0 12px !important; }
html body #home-challenges-winners .home-challenges-winners-month-block { padding: 18px 20px 16px !important; }
html body #home-challenges-winners .home-challenges-winners-item { font-size: 1.08rem !important; }
html body #home-challenges-winners .home-challenges-winners-type { font-size: 0.76rem !important; }
@media (max-width: 900px) {
  html body .content-grid > #home-challenges-winners {
    margin-top: 34px !important;
    padding: 16px 14px 14px !important;
  }
  html body .content-grid > #home-challenges-winners::before { top: -18px !important; left: 4% !important; right: 4% !important; }
  html body #home-challenges-winners .home-challenges-winners-title { font-size: 0.98rem !important; margin: 0 0 12px !important; }
  html body #home-challenges-winners .home-challenges-winners-month { font-size: 1.15rem !important; }
  html body #home-challenges-winners .home-challenges-winners-month-block { padding: 14px 14px 12px !important; }
}
/* END 20261022mobw1 */

/* LOCK 20261023visbelow1: ensure sections around and underneath Submission Rules and Leaderboard Pulse render immediately without content-visibility blanking */
.post-video-strip,
.portal-promo-section,
.gyms-promo-section,
.gym-promo-section,
.portal-promo-section--athlete,
.cta-section,
.wdhc-home-cta-band {
  content-visibility: visible !important;
  contain: none !important;
}

/* ============================================================
   LOCK 20261024feedgap1 (Milo 10/24): mobile breathing room above the
   hero LIVE HANG FEED pill (was ~11px under the ticker), and row tier
   pill can never overflow the name column into the centered time /
   hang-type label (Pullsmastr THREE-FINGER HANG vs ELITE at 390px).
   ============================================================ */
@media (max-width: 768px) {
  html body #wdhc-hero-feed-pill.wdhc-hero-feed-pill { margin-top: 10px !important; }
}
@media (max-width: 900px) {
  html body .leaderboard .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge {
    width: min(108px, 100%) !important; min-width: 0 !important; max-width: min(108px, 100%) !important;
    padding-left: 6px !important; padding-right: 6px !important; box-sizing: border-box !important;
    overflow: hidden !important; text-overflow: clip !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block { min-width: 0 !important; overflow: visible !important; }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-hang-title { overflow-wrap: anywhere !important; max-width: 100% !important; }
  /* long tier words shrink to fit the capped pill instead of clipping */
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-challenger,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-contender,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge[class*="youth"] {
    font-size: 11px !important; letter-spacing: 0.1px !important;
  }
  /* name line (first name + PR chip) never spills into the centered time column: chip wraps under */
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block .lb-card-name-line { max-width: 100% !important; flex-wrap: wrap !important; white-space: normal !important; overflow-wrap: anywhere !important; }
}
@media (max-width: 360px) {
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-challenger,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge.tier-contender,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.tier-badge[class*="youth"] {
    font-size: 9.5px !important; letter-spacing: 0 !important;
  }
}
/* END 20261024feedgap1 */

/* LOCK 20261024glow1: mobile/tablet glows fade softly (no hard box edge). Text-shadow was clipped by overflow:hidden on the glowing element/its cell. Desktop untouched. */
@media (max-width: 900px) {
  header h1.hero-title { overflow: visible !important; overflow-x: clip !important; overflow-y: visible !important; }
  header h1.hero-title .hero-gold,
  header h1.hero-title .dead-hang-text { overflow: visible !important; }
  html body .lb-row-wrapper .lb-row .lb-card-right { overflow: visible !important; }
}
/* END 20261024glow1 */

/* LOCK 20261024glow2: open-row (details-visible) mobile glow was boxed by overflow:hidden on the time column + its text lines. */
@media (max-width: 900px) {
  html body .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-hang-title,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-pr-hold,
  html body .lb-row-wrapper.details-visible .lb-row.lb-mobile-card .lb-card-grip { overflow: visible !important; }
}
/* END 20261024glow2 */

/* ============================================================
   LOCK 20261024ssf1 + LOCK 20261024ssf2 (one ship, stamp v=20261024ssf2)
   Phone/tablet fixes stay under 1024. Location wrap applies at every width.
   Desktop hang-time stack, tier rail, and hero size at >=430 stay put.
   ============================================================ */

/* Items 2 and 6: the 7px ::before rail paints a dark crescent inside the
   rounded pill once overflow:hidden clips it. Hide that rail on phone and
   tablet, collapsed and opened rows. Desktop >=1024 keeps the rail. */
@media (max-width: 1023px) {
  html body .lb-row .tier-badge::before,
  html body .lb-row.lb-mobile-card .tier-badge::before,
  html body .lb-card-tier-under-name.tier-badge::before,
  html body .leaderboard .tier-col .tier-badge::before,
  html body .details-panel .tier-badge::before,
  html body .lb-row-wrapper.details-visible .tier-badge::before {
    content: none !important;
    display: none !important;
    width: 0 !important;
    background: none !important;
  }
  html body .lb-row .tier-badge.lb-card-tier-under-name,
  html body .lb-row.lb-mobile-card .tier-badge,
  html body .lb-card-tier-under-name.tier-badge {
    overflow: hidden !important;
    background-clip: padding-box !important;
  }
}

/* Item 3: CHAMPIONSHIP plus its glow fits at 320-360. >=430 keeps the existing size.
   Must beat .marquee-container + header .hero-title (two classes) in wdhc-mobile.css. */
@media (max-width: 429px) {
  html body .marquee-container + header h1.hero-title,
  html body > header h1.hero-title {
    font-size: clamp(1.55rem, 8.35vw, 2.35rem) !important;
    letter-spacing: 0.01em !important;
    line-height: 0.98 !important;
    overflow: visible !important;
    max-width: 100% !important;
    padding-left: 0.04em !important;
    padding-right: 0.04em !important;
  }
  html body .marquee-container + header,
  html body > header:has(> h1.hero-title) {
    overflow-x: visible !important;
  }
  html body .marquee-container + header h1.hero-title span,
  html body > header h1.hero-title span,
  html body header h1.hero-title .hero-gold,
  html body header h1.hero-title .dead-hang-text {
    overflow: visible !important;
    max-width: 100% !important;
  }
}

/* Item 4: full leaderboard stats card stays at least 16px under the hero buttons through 768.
   display:block so a centered flex item cannot collapse the hero to 0 and cover the stats. */
@media (max-width: 768px) {
  html body.full-leaderboard-page header.wdhc-cine-hero.wdhc-cine-hero {
    min-height: min-content !important;
    height: auto !important;
    max-height: none !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
    contain: none !important;
    display: block !important;
  }
  html body.full-leaderboard-page header.wdhc-cine-hero .wdhc-cine-hero__inner {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    position: relative !important;
    padding-top: 28px !important;
    padding-bottom: 8px !important;
  }
  html body.full-leaderboard-page .lb-stats-strip.lb-stats-strip {
    position: static !important;
    top: auto !important;
    margin-top: 16px !important;
  }
}

/* Item 5: location cells wrap on spaces only. Never mid-word.
   A single word that is still wider than the cell shrinks, then ellipsizes.
   Selectors must beat the 20261003locflagleft1 anywhere rules (up to 5 classes). */
html body .lb-row > .location-col .location-cluster--stacked .location-city,
html body .lb-row > .location-col .location-cluster--stacked .location-state,
html body .lb-row > .location-col .location-cluster--stacked .location-subline .location-state,
html body .leaderboard .location-cluster--stacked .location-city,
html body .leaderboard .location-cluster--stacked .location-state,
html body .location-col .location-cluster--stacked .location-city,
html body .location-col .location-cluster--stacked .location-state,
html body .lb-row > .location-col .location-cluster:not(.location-cluster--stacked) .location-city,
html body .lb-row > .location-col .location-cluster:not(.location-cluster--stacked) .location-state,
html body .lb-card-loc,
html body .lb-card-loc .location-city,
html body .lb-card-loc .location-state,
html body .lb-card-loc-group .location-city,
html body .lb-card-loc-group .location-state {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  -ms-hyphens: none !important;
  white-space: normal !important;
}
@media (min-width: 1024px) and (max-width: 1279px) {
  html body .lb-row > .location-col .location-cluster .location-city,
  html body .lb-row > .location-col .location-cluster .location-state {
    font-size: 9.5px !important;
    line-height: 1.15 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}
@media (min-width: 1280px) and (max-width: 1440px) {
  html body .lb-row > .location-col .location-cluster .location-city,
  html body .lb-row > .location-col .location-cluster .location-state {
    font-size: 12.5px !important;
    line-height: 1.15 !important;
    max-width: 100% !important;
  }
}
html body .lb-row > .location-col .location-city,
html body .lb-row > .location-col .location-state,
html body .lb-card-loc-group .location-city,
html body .lb-card-loc-group .location-state {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}
/* END 20261024ssf2 */

/* LOCK 20261025reelc1 (Milo 2026-10-25): desktop only.
   Hang-type sort is centered under the full Recent Submissions hero.
   Watch Reels Feed is centered over the videos. */
@media (min-width: 901px) {
  html body .video-submissions-section--lead .video-submissions-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 48%) !important;
    align-items: center !important;
    justify-content: stretch !important;
    column-gap: 24px !important;
    row-gap: 6px !important;
  }
  html body .video-submissions-section--lead .video-submissions-head__titles,
  html body .video-submissions-section--lead .video-submissions-title-row {
    display: contents !important;
  }
  html body .video-submissions-section--lead .video-submissions-eyebrow {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
  }
  html body .video-submissions-section--lead .video-submissions-title {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
  }
  html body .video-submissions-section--lead .video-submissions-lead {
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-self: start !important;
    text-align: left !important;
  }
  html body .video-submissions-section--lead .wdhc-season-strip--hero {
    grid-column: 2 !important;
    grid-row: 1 / 4 !important;
    align-self: center !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
  html body .video-submissions-section--lead .recent-hang-sort {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    justify-content: center !important;
    margin: 8px 0 0 !important;
  }
  html body .video-submissions-section--lead .wdhc-open-reels-row {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin: 6px 0 14px !important;
  }
}
/* END 20261025reelc1 */

/* 20261025desc1: descenders (y, g, p, q, j) stay inside the line box on every board, every width.
   Earlier locks used line-height 0.98 plus max-height 1.2em and overflow hidden, which clipped "Stacey" to "Stacev". */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-first,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-primary,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line.name-last,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-last,
  html body.full-leaderboard-page .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-line {
    line-height: 1.35 !important;
    padding-top: 1px !important;
    padding-bottom: 2px !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-card-first,
  html body .lb-row.lb-mobile-card .lb-card-last-text {
    line-height: 1.35 !important;
    padding-bottom: 1px !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
  /* Verified check stays in the name column. A nowrap title must not paint over it, and a narrow 320px line must not clip it. */
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-main,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-line,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-line-primary {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-block {
    position: relative !important;
    z-index: 3 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right {
    position: relative !important;
    z-index: 1 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-name-line-primary {
    flex-wrap: wrap !important;
    white-space: normal !important;
  }
  html body .lb-row.lb-mobile-card .verified-badge,
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons .verified-badge {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 4 !important;
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    margin-top: 0 !important;
    overflow: visible !important;
  }
  html body .lb-row.lb-mobile-card .lb-card-name-line-icons {
    display: flex !important;
    position: relative !important;
    z-index: 4 !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 16px !important;
    max-height: none !important;
  }
  html body .lb-row.lb-mobile-card .lb-hang-title,
  html body .lb-row.lb-mobile-card .lb-hang-title span {
    white-space: normal !important;
    max-width: 100% !important;
  }
}
/* END 20261025desc1 */

/* LOCK 20261008iuri2 stays last: Oswald capital I is a bare stem, so Iuri reads as luri. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* LOCK 20261025left1
   1) Recent cards: hide "Loading clip" whenever the play button is on screen.
   2) TV >=1024: THREE-FINGER HANG and UPRIGHT SIDE PINCH wrap inside the time box. No ellipsis.
   3) /submit 320-1440: step dots sit below the fixed header (logo, Get App, unit toggle). */
.video-submission-frame .video-load-pending,
.video-submission-frame.is-video-pending .video-load-pending,
.video-submission-frame.is-playing .video-load-pending,
.video-submission-frame[data-autoplay-ok="1"] .video-load-pending {
  display: none !important;
  visibility: hidden !important;
}
@media (min-width: 1024px) {
  html body.wdhc-tv-home .lb-row-wrapper .time .lb-hang-title.lb-hang-title--3fh,
  html body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-hang-title.lb-hang-title--3fh,
  html body.wdhc-tv-home .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--3fh,
  html body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-time-stack > .lb-hang-title.lb-hang-title--3fh,
  html body.wdhc-tv-home .lb-row-wrapper .time .lb-hang-title.lb-hang-title--usp,
  html body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-hang-title.lb-hang-title--usp,
  html body.wdhc-tv-home .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--usp,
  html body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-time-stack > .lb-hang-title.lb-hang-title--usp,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .time .lb-hang-title.lb-hang-title--3fh,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-hang-title.lb-hang-title--3fh,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--3fh,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-time-stack > .lb-hang-title.lb-hang-title--3fh,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .time .lb-hang-title.lb-hang-title--usp,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-hang-title.lb-hang-title--usp,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--usp,
  html.wdhc-tv body.wdhc-tv-home .lb-row-wrapper .desktop-time .lb-time-stack > .lb-hang-title.lb-hang-title--usp {
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.05 !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.01em !important;
  }
}
@media (min-width: 320px) and (max-width: 1440px) {
  body.page-submit {
    padding-top: var(--wdhc-nav-h, 64px) !important;
  }
  body.page-submit .submit-mobile-steps,
  html.wdhc-submit-stepped body.page-submit .submit-mobile-steps,
  html.wdhc-submit-form-only body.page-submit .submit-mobile-steps {
    position: sticky !important;
    top: calc(var(--wdhc-nav-h, 64px) + 8px) !important;
    z-index: 30 !important;
    margin-top: 10px !important;
    clear: both !important;
  }
}
/* Capital I stays Georgia after this lock. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
/* END 20261025left1 */

/* LOCK 20261025left2
   /submit, 320-1023: sticky step dots stay under the nav.
   The panel is fully opaque so fields can pass under it without text showing through.
   scroll-padding and scroll-margin equal nav + 8px stick gap + dots height,
   so headings, inputs, and error focus land below the panel.
   Desktop >=1024 is not in this block. */
@media (max-width: 1023px) {
  html.wdhc-submit-mobile,
  html.wdhc-submit-stepped,
  html.wdhc-submit-form-only,
  body.page-submit {
    --wdhc-submit-dots-h: 120px;
    scroll-padding-top: calc(var(--wdhc-nav-h, 64px) + 8px + var(--wdhc-submit-dots-h, 120px)) !important;
  }
  body.page-submit .submit-mobile-steps,
  html.wdhc-submit-stepped body.page-submit .submit-mobile-steps,
  html.wdhc-submit-form-only body.page-submit .submit-mobile-steps {
    position: sticky !important;
    top: calc(var(--wdhc-nav-h, 64px) + 8px) !important;
    z-index: 40 !important;
    margin-top: 16px !important;
    margin-bottom: 20px !important;
    background-color: #0c0c0e !important;
    background-image: linear-gradient(165deg, #16140f 0%, #0c0c0e 58%) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0 0 0 1px rgba(212, 175, 55, 0.28) !important;
    isolation: isolate !important;
  }
  body.page-submit .submit-mobile-steps::before,
  html.wdhc-submit-stepped body.page-submit .submit-mobile-steps::before,
  html.wdhc-submit-form-only body.page-submit .submit-mobile-steps::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    left: -20px !important;
    right: -20px !important;
    top: -20px !important;
    bottom: 0 !important;
    background: #0c0c0e !important;
    pointer-events: none !important;
  }
  body.page-submit #section-hang .form-section-head,
  body.page-submit #section-you .form-section-head,
  body.page-submit #section-consent .form-section-head,
  body.page-submit .form-accordion-title,
  body.page-submit .form-group,
  body.page-submit .form-group > label,
  body.page-submit input,
  body.page-submit select,
  body.page-submit textarea,
  body.page-submit .help-text,
  body.page-submit #message {
    scroll-margin-top: calc(var(--wdhc-nav-h, 64px) + 8px + var(--wdhc-submit-dots-h, 120px)) !important;
  }
}
/* Capital I stays Georgia after this lock. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
/* END 20261025left2 */

/* LOCK 20261025hdr1
   Shared header at <=359.98px only. The 88px mark + Get App + US/Metric
   + 44px hamburger pack past the right edge (measured right 325 at 320).
   Shrink those controls just enough to keep ~12px past the hamburger.
   Nothing here applies at >=360. */
@media (max-width: 359.98px) {
  html body nav:has(.nav-center),
  html body nav.wdhc-site-nav {
    padding-left: 10px !important;
    padding-right: 12px !important;
    gap: 6px !important;
  }
  html body nav .nav-logo img[src*="wdhc-logo-header"],
  html body nav .nav-logo > a > img[src*="wdhc-logo-header"],
  html body .nav-logo img[src*="wdhc-logo-header-web"],
  html body .mobile-logo img[src*="wdhc-logo-header"] {
    width: 74px !important;
    height: 24px !important;
    max-width: 74px !important;
    max-height: 24px !important;
  }
  html body .nav-mobile-tools {
    gap: 4px !important;
  }
  html body .nav-mobile-tools .wdhc-get-app {
    min-height: 30px !important;
    padding: 4px 6px !important;
    font-size: 0.58rem !important;
    letter-spacing: 0.03em !important;
  }
  html body nav .wdhc-unit-toggle,
  html body .nav-mobile-tools .wdhc-unit-toggle {
    gap: 2px !important;
    padding: 2px !important;
  }
  html body nav .wdhc-unit-btn,
  html body .nav-mobile-tools .wdhc-unit-btn {
    font-size: 0.58rem !important;
    letter-spacing: 0.02em !important;
    padding: 4px 5px !important;
    min-height: 30px !important;
    min-width: 0 !important;
  }
  html body nav .nav-menu-toggle,
  html body .nav-mobile-tools .nav-menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }
}
/* END 20261025hdr1 */

/* LOCK 20261025tier2
   One pill for the Tier Classifications legend and the board rows.
   Measured from the live legend on 2026-10-25:
   <=900: 118 x 40, 14.4px / 0.72px, pad 0 10 0 16.
   901-1399: 118 x 28, 10.56px / 0.35px.
   >=1400: 118 x 38, 13.76px / 0.55px.
   Left rail is 7px. CHALLENGER uses the same size as the other tiers.
   Phone cards give the name column 118px so the pill fits under the names
   without covering the time, Grip Age, or Watch. Soft glow stays a shadow.
   No hard box edge. */
html body .tier-legend-row > .wdhc-tier-pill.tier-badge,
html body .lb-row .wdhc-tier-pill.tier-badge,
html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  padding: 0 10px 0 16px !important;
  border-radius: 999px !important;
  font-family: Rajdhani, "Source Sans 3", sans-serif !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-overflow: clip !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  position: relative !important;
  background-clip: padding-box !important;
}
@media (max-width: 900px) {
  html body .tier-legend-row > .wdhc-tier-pill.tier-badge,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.wdhc-tier-pill,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.wdhc-tier-pill.tier-challenger,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.wdhc-tier-pill.tier-contender,
  html body .lb-row-wrapper .lb-row .lb-card-name-block .tier-badge.lb-card-tier-under-name.wdhc-tier-pill[class*="youth"] {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    height: 40px !important;
    min-height: 40px !important;
    font-size: 14.4px !important;
    letter-spacing: 0.72px !important;
    padding: 0 10px 0 16px !important;
    text-overflow: clip !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head.lb-card-head {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: 118px minmax(0, 1fr) !important;
    column-gap: 6px !important;
    align-items: start !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-name-block.lb-card-name-block {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    flex: 0 0 118px !important;
    overflow: visible !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right.lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-grip {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
    flex-basis: auto !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right {
    overflow: visible !important;
  }
}
@media (min-width: 901px) and (max-width: 1399px) {
  html body .tier-legend-row > .wdhc-tier-pill.tier-badge,
  html body .lb-row-wrapper .lb-row .tier-col .wdhc-tier-pill.tier-badge {
    height: 28px !important;
    min-height: 28px !important;
    font-size: 10.56px !important;
    letter-spacing: 0.35px !important;
  }
}
@media (min-width: 1400px) {
  html body .tier-legend-row > .wdhc-tier-pill.tier-badge,
  html body .lb-row-wrapper .lb-row .tier-col .wdhc-tier-pill.tier-badge {
    height: 38px !important;
    min-height: 38px !important;
    font-size: 13.76px !important;
    letter-spacing: 0.55px !important;
  }
}
html body .tier-legend-row > .wdhc-tier-pill.tier-badge::before,
html body .lb-row .wdhc-tier-pill.tier-badge::before,
html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 7px !important;
  height: auto !important;
  border-radius: 999px 0 0 999px !important;
  z-index: 1 !important;
}
html body .wdhc-tier-pill.tier-freak::before { background: linear-gradient(180deg, #f0c8ff, #c060f0 45%, #8a28d0 100%) !important; }
html body .wdhc-tier-pill.tier-legend::before { background: linear-gradient(180deg, #ffd080, #e8a040 50%, #b06018 100%) !important; }
html body .wdhc-tier-pill.tier-elite::before { background: linear-gradient(180deg, #ffffff 0%, #d8e0f0 40%, #8a94a8 100%) !important; }
html body .wdhc-tier-pill.tier-pro::before,
html body .wdhc-tier-pill.tier-expert::before { background: linear-gradient(180deg, #ff9a9a, #f04040 48%, #a81818 100%) !important; }
html body .wdhc-tier-pill.tier-contender::before { background: linear-gradient(180deg, #7fe0a8, #35a864 52%, #1a7040 100%) !important; }
html body .wdhc-tier-pill.tier-challenger::before { background: linear-gradient(180deg, #6a6e76 0%, #4a4e56 50%, #2a2c30 100%) !important; }
html body .wdhc-tier-pill.tier-pro-gold::before { background: linear-gradient(180deg, #1a1a1a 0%, #000000 50%, #0a0a0a 100%) !important; }
/* END 20261025tier2 */

/* 20261025tier2 narrow phones: the 118px pill left the time column at 37px
   on a 320px row, and overflow-wrap:anywhere split WEIGHTED mid-word.
   WEIGHTED is 46px and ALTERNATING is 58px at the live title size.
   Reclaim rank, padding, and the Watch column only through 360px so the
   title wraps on spaces. 390px and up keep the wider Watch button.
   Soft glow stays on the card. No outline, no hard edge. */
@media (max-width: 360px) {
  html body .lb-row-wrapper .lb-row.lb-mobile-card.lb-mobile-card {
    padding-left: 6px !important;
    padding-right: 4px !important;
    column-gap: 4px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-rank.lb-card-rank {
    flex: 0 0 18px !important;
    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions.lb-card-actions {
    flex: 0 0 52px !important;
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions.lb-card-actions .watch-link,
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions.lb-card-actions .watch-btn,
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions.lb-card-actions .lb-card-details-btn,
  html body .lb-row-wrapper .lb-row.lb-mobile-card > .lb-card-actions.lb-card-actions a {
    width: 52px !important;
    min-width: 0 !important;
    max-width: 52px !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
    box-sizing: border-box !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head.lb-card-head {
    grid-template-columns: 118px minmax(64px, 1fr) !important;
    column-gap: 4px !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-name-block.lb-card-name-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-head > .lb-card-right.lb-card-right,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-card-time.lb-card-time,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-card-grip.lb-card-grip {
    width: 100% !important;
    min-width: 64px !important;
    max-width: 100% !important;
  }
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-right .lb-hang-title.lb-hang-title,
  html body .lb-row-wrapper .lb-row.lb-mobile-card .lb-card-time .lb-time-stack > .lb-hang-title.lb-hang-title {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    max-width: 100% !important;
  }
}

/* Row rails through 1023px. ssf2 sets background:none on .lb-row .tier-badge::before.
   These selectors are more specific, so the same 7px gradient the legend uses paints on the rows. */
@media (max-width: 1023px) {
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-freak::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-freak::before {
    background-image: linear-gradient(180deg, #f0c8ff, #c060f0 45%, #8a28d0 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-legend::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-legend::before {
    background-image: linear-gradient(180deg, #ffd080, #e8a040 50%, #b06018 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-elite::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-elite::before {
    background-image: linear-gradient(180deg, #ffffff 0%, #d8e0f0 40%, #8a94a8 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-pro::before,
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-expert::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-pro::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-expert::before {
    background-image: linear-gradient(180deg, #ff9a9a, #f04040 48%, #a81818 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-contender::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-contender::before {
    background-image: linear-gradient(180deg, #7fe0a8, #35a864 52%, #1a7040 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-challenger::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-challenger::before {
    background-image: linear-gradient(180deg, #6a6e76 0%, #4a4e56 50%, #2a2c30 100%) !important;
    background-color: transparent !important;
  }
  html body .lb-row .wdhc-tier-pill.tier-badge.tier-pro-gold::before,
  html body .lb-card-tier-under-name.wdhc-tier-pill.tier-badge.tier-pro-gold::before {
    background-image: linear-gradient(180deg, #1a1a1a 0%, #000000 50%, #0a0a0a 100%) !important;
    background-color: transparent !important;
  }
}

/* ADD 20261025island1: mobile jump island clearance. Does not change locked row layout.
   Hides the homepage submit bar only while the island is in the DOM, at phone widths.
   Desktop rules are untouched. */
@media (max-width: 768px) {
  body:has(#wdhc-island):not(.wdhc-form-page):not(.page-submit) {
    padding-bottom: calc(var(--wdhc-island-h, 76px) + env(safe-area-inset-bottom, 0px)) !important;
    scroll-padding-bottom: calc(var(--wdhc-island-h, 76px) + env(safe-area-inset-bottom, 0px)) !important;
  }
  body:has(#wdhc-island) > a.mobile-submit-bar {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  #wdhc-island {
    position: fixed !important;
    z-index: 420 !important;
  }
  #wdhc-island.is-suppressed,
  body:has(.wdhc-reels-modal.is-open) #wdhc-island,
  body:has(dialog[open]) #wdhc-island {
    display: none !important;
  }
  .wdhc-fold:not(.is-open):not(.is-measuring) {
    max-height: 168px !important;
    overflow: hidden !important;
  }
  .wdhc-island__btn,
  .wdhc-fold__toggle {
    touch-action: manipulation !important;
  }
}
@media (min-width: 769px) {
  #wdhc-island,
  .wdhc-fold__toggle {
    display: none !important;
  }
  .wdhc-fold {
    max-height: none !important;
    overflow: visible !important;
  }
}

/* LOCK 20261027loc2
   Country is the large line (location-city). State stays the smaller line.
   Selectors match 20261024ssf2 (html body .lb-row > .location-col .location-cluster)
   so this size wins over the 12.5px / 9.5px locks that flattened both lines.
   Body face, bright country, no condensed board type. Hang times are untouched. */
html body .lb-row > .location-col .location-cluster .location-city,
html body .lb-card-loc-group .location-city,
html body .lb-card-meta .location-city {
  font-family: "Source Sans 3", "Segoe UI", system-ui, sans-serif !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #f4f4f4 !important;
  -webkit-text-fill-color: #f4f4f4 !important;
  line-height: 1.15 !important;
}
html body .lb-row > .location-col .location-cluster .location-state,
html body .lb-card-loc-group .location-state,
html body .lb-card-meta .location-state {
  font-family: "Source Sans 3", "Segoe UI", system-ui, sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #d5d5d5 !important;
  -webkit-text-fill-color: #d5d5d5 !important;
  line-height: 1.15 !important;
}
@media (min-width: 901px) {
  html body .lb-row > .location-col {
    overflow: hidden !important;
    min-width: 0 !important;
  }
  html body .lb-row > .location-col .location-cluster .location-city,
  html body .lb-row > .location-col .location-cluster .location-state {
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  /* Long country names wrap inside the cell. "United States" (about 5.8em) stays one line. */
  html body .lb-row > .location-col .location-cluster .location-city {
    display: block !important;
    max-width: 5.9em !important;
  }
  html body .lb-row > .location-col .location-cluster .location-state {
    max-width: 8em !important;
  }
}
@media (min-width: 1280px) {
  html body .lb-row > .location-col .location-cluster .location-city {
    font-size: 15px !important;
  }
  html body .lb-row > .location-col .location-cluster .location-state {
    font-size: 12px !important;
  }
}
@media (min-width: 901px) and (max-width: 1279px) {
  html body .lb-row > .location-col .location-cluster .location-city,
  html body .lb-row > .location-col .location-cluster .location-state {
    white-space: normal !important;
    text-overflow: clip !important;
  }
  html body .lb-row > .location-col .location-cluster .location-city {
    font-size: 13px !important;
  }
  html body .lb-row > .location-col .location-cluster .location-state {
    font-size: 11px !important;
  }
  html body .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster .location-city {
    font-size: 12px !important;
  }
  html body .lb-row-wrapper--teaser > .lb-row > .location-col .location-cluster .location-state {
    font-size: 10.5px !important;
  }
}
@media (max-width: 900px) {
  html body .lb-card-loc-group .location-city,
  html body .lb-card-meta .location-city {
    font-size: 15px !important;
  }
  html body .lb-card-loc-group .location-state,
  html body .lb-card-meta .location-state {
    font-size: 12.5px !important;
  }
}
/* END 20261027loc2 */


/* LOCK 20261028seasondesk1 (Milo-approved 10/28): desktop Monthly Challenges card = title on top, countdown centered, leader pills centered in a row beneath. Mobile untouched. */
@media (min-width: 900px) {
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__inner.wdhc-season-strip__inner--bar { padding: 20px 24px 26px !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 14px !important; text-align: center !important; min-height: 0 !important; height: auto !important; }
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__bar-left { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; width: 100% !important; margin: 0 !important; height: auto !important; min-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__bar-main { flex: 0 0 auto !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 12px !important; width: 100% !important; margin: 0 !important; height: auto !important; min-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__bar-clock { display: flex !important; justify-content: center !important; align-items: center !important; gap: 10px !important; width: auto !important; margin: 0 auto !important; }
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__winners.wdhc-season-strip__winners--bar { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; justify-content: center !important; align-items: center !important; gap: 12px !important; width: auto !important; margin: 0 auto !important; }
  html body #wdhc-recent #wdhc-season-strip a.wdhc-season-strip__hit .wdhc-season-strip__winners--bar .wdhc-season-strip__winner { margin: 0 !important; height: auto !important; min-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
}

/* LOCK 20261028rsbar1 (Milo 2026-10-28, approved redesign): DESKTOP only (901px+). Mobile untouched.
   Row 1: Monthly Challenges full-width gold bar (title, countdown, leader pills centered - internal order unchanged).
   Row 2: Recent Submissions titles left, hang-type dropdown + Watch Reels Feed right, one row.
   Bottom room so the floating island never sits on the clip row. Supersedes reelc1 grid placement. */
@media (min-width: 901px) {
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    column-gap: 24px !important;
    row-gap: 4px !important;
  }
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-head__titles,
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-title-row {
    display: contents !important;
  }
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .wdhc-season-strip--hero {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
    margin: 0 0 18px !important;
  }
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-eyebrow {
    grid-column: 1 !important; grid-row: 2 !important; justify-self: start !important; margin: 0 !important;
  }
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-title {
    grid-column: 1 !important; grid-row: 3 !important; justify-self: start !important; margin: 2px 0 0 !important;
  }
  html body #wdhc-recent#wdhc-recent.video-submissions-section--lead .video-submissions-lead {
    grid-column: 1 !important; grid-row: 4 !important; justify-self: start !important; text-align: left !important; margin: 2px 0 0 !important;
  }
  html body #wdhc-recent#wdhc-recent #wdhc-recent-tools.wdhc-recent-tools {
    grid-column: 2 !important;
    grid-row: 2 / 5 !important;
    align-self: end !important;
    justify-self: end !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    width: auto !important;
    margin: 0 !important;
  }
  html body #wdhc-recent#wdhc-recent #wdhc-recent-tools .recent-hang-sort {
    grid-column: auto !important; grid-row: auto !important;
    flex: 0 0 15rem !important; width: 15rem !important; max-width: 15rem !important;
    display: flex !important; margin: 0 !important;
  }
  html body #wdhc-recent#wdhc-recent #wdhc-recent-tools #recent-hang-sort { width: 100% !important; }
  html body #wdhc-recent#wdhc-recent #wdhc-recent-tools .wdhc-open-reels-row {
    display: flex !important; flex: 0 0 13.5rem !important; width: 13.5rem !important; margin: 0 !important;
  }
  html body #wdhc-recent#wdhc-recent #wdhc-recent-tools .wdhc-open-reels-btn { white-space: nowrap !important; }
  html body #wdhc-recent.video-submissions-section--lead {
    margin-bottom: 120px !important;
    scroll-margin-bottom: 120px !important;
  }
  html body #wdhc-recent .video-submission-frame:not(.is-playing) > video:not([poster]),
  html body #wdhc-recent .video-submission-frame:not(.is-playing) > video[poster=""] {
    background: radial-gradient(120% 80% at 50% 30%, #2a2008 0%, #0b0b0b 70%) !important;
  }
}
/* END 20261028rsbar1 */

/* overnight-1028 item1: ALTERNATING never breaks mid-word on phone cards */
@media (max-width: 760px) {
  html body .lb-row-wrapper .time .lb-time-stack > .lb-hang-title.lb-hang-title--alt:not(#wdhc-altnb1),
  html body .lb-row-wrapper .lb-hang-title--alt:not(#wdhc-altnb1) {
    overflow-wrap: normal !important; word-break: keep-all !important; hyphens: none !important;
    min-width: min-content !important; max-width: none !important; letter-spacing: .02em !important;
  }
}

/* overnight-1028 item4: one consistent 36px rhythm between mobile homepage sections */
@media (max-width: 760px) {
  html body .content-grid > section#hang-type-boards.home-pop-boards:not(#wdhc-gap1) { padding-top: 28px !important; }
  html body .controls > .controls-header, html body .controls-header { margin-top: 22px !important; }
  html body .sidebar-upper > .sidebar-card--leaders { margin-top: 36px !important; }
  html body .sidebar-upper > .icon-legend-card { margin-top: 36px !important; }
  html body #home-rules.post-video-strip:not(#wdhc-gap1) { padding-top: 0 !important; margin-top: 36px !important; row-gap: 36px !important; }
}

/* 20261028boardrow1: Top Boards cards = one compact row: rank | name+loc (centered) | time right. No gap under name. */
html body #hang-type-boards .ch-podium__row,
html body .home-pop-boards .ch-podium__row {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  grid-template-rows: auto !important;
  grid-template-areas: none !important;
  align-items: center !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  min-height: 0 !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
html body #hang-type-boards .ch-podium__row > .ch-podium__rank,
html body .home-pop-boards .ch-podium__row > .ch-podium__rank { grid-column: 1 !important; grid-row: 1 !important; align-self: center !important; }
html body #hang-type-boards .ch-podium__row > .ch-podium__main,
html body .home-pop-boards .ch-podium__row > .ch-podium__main { grid-column: 2 !important; grid-row: 1 !important; align-self: center !important; min-width: 0 !important; margin: 0 !important; }
html body #hang-type-boards .ch-podium__row > :not(.ch-podium__rank):not(.ch-podium__main):not(.ch-podium__chevron),
html body .home-pop-boards .ch-podium__row > :not(.ch-podium__rank):not(.ch-podium__main):not(.ch-podium__chevron) { grid-column: 3 !important; grid-row: 1 !important; align-self: center !important; justify-self: end !important; text-align: right !important; margin: 0 !important; width: auto !important; white-space: nowrap !important; }

/* 20261028boardrow2: cards hug content, equal header + row heights across cards */
html body #hang-type-boards .home-pop-boards__row { align-items: flex-start !important; }
html body #hang-type-boards .ch-card { height: auto !important; min-height: 0 !important; max-height: none !important; padding-bottom: 10px !important; justify-content: flex-start !important; }
html body #hang-type-boards .ch-card__head { height: 92px !important; min-height: 0 !important; box-sizing: border-box !important; display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; overflow: hidden !important; padding-top: 8px !important; padding-bottom: 8px !important; }
html body #hang-type-boards .ch-card__title { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
html body #hang-type-boards .ch-podium { flex: 0 0 auto !important; height: auto !important; min-height: 0 !important; }
html body #hang-type-boards .ch-podium__row { height: 58px !important; min-height: 58px !important; max-height: 58px !important; box-sizing: border-box !important; padding-top: 0 !important; padding-bottom: 0 !important; overflow: hidden !important; }
html body #hang-type-boards .ch-podium__main { display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 2px !important; overflow: hidden !important; }
html body #hang-type-boards .ch-podium__name,
html body #hang-type-boards .ch-podium__loc { display: block !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; max-width: 100% !important; line-height: 1.25 !important; }
html body #hang-type-boards .ch-podium__name a,
html body #hang-type-boards .ch-podium__name .wdhc-nc { white-space: nowrap !important; }
html body #hang-type-boards .ch-podium__flag { display: inline-block !important; vertical-align: middle !important; margin-right: 5px !important; }
html body #hang-type-boards .ch-podium__city { display: inline !important; }

/* 20261029namecol1 (Milo): /leaderboard-full desktop name column wide enough that no name is cut off; pills inline right of
   the name. Width taken from rank, gender, occupation, location, grip age, watch, row padding and column gaps.
   Names never shrink; only a long @handle may wrap to a second line. */
@media (min-width: 901px){
  html body.full-leaderboard-page:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-header,
  html body.full-leaderboard-page:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card){grid-template-columns:40px 116px minmax(206px,1.7fr) minmax(42px,.4fr) minmax(56px,.8fr) minmax(112px,.7fr) 118px 44px 60px !important;column-gap:6px !important;padding-left:8px !important;padding-right:8px !important}
  html body.full-leaderboard-page:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .name-cell .name-primary-row > .name-stack > .name-line{white-space:normal !important;overflow-wrap:normal !important;word-break:keep-all !important} /* 20261029namecol2: @handles never break mid-word */
  html body.full-leaderboard-page:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .name-cell .name-stack .name-line > :is(.recent-hang-mark,.pr-badge,.pr-badge-inline,.verified-badge){white-space:nowrap !important;overflow-wrap:normal !important}
}
@media (min-width: 901px){
  html body:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .location-col .location-cluster > .location-stack{flex:1 1 auto !important;min-width:0 !important}
  html body:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .location-col .location-city{min-width:0 !important;white-space:normal !important}
}
/* home desktop board: same rule, name column takes width from occupation/location so NEW HANG / PR pills fit inline */
@media (min-width: 901px){
  html body:not(.full-leaderboard-page):not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card),
  html body:not(.full-leaderboard-page):not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-header{grid-template-columns:40px 120px minmax(214px,1.6fr) minmax(76px,.55fr) minmax(108px,.75fr) 118px 56px 72px !important;column-gap:6px !important}
}
/* phones: a Founding Pro / PR badge that does not fit beside the last name wraps to its own line instead of running into the time */
@media (max-width: 900px){
  html body .lb-row.lb-mobile-card:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5):not(#wdhc-n6) .lb-card-name .lb-card-name-line.lb-card-name-line-last{flex-wrap:wrap !important;row-gap:2px !important}
}
/* 20261101film1: desktop dropdown film was stretching with the side panel and jumping between the rest size and the hover size. One fixed frame, a little larger than the old 384px column. */
@media (min-width: 901px) {
  html body .details-film-stage--split {
    grid-template-columns: 430px minmax(0, 1fr) !important;
    align-items: start !important;
  }
  html body .details-film-stage--split .details-film-room,
  html body .lb-row-wrapper:hover .details-film-room,
  html body .lb-row-wrapper.details-visible .details-film-room {
    width: 430px !important;
    max-width: 430px !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: start !important;
  }
  html body .details-film-stage--split .details-film-room__media,
  html body .lb-row-wrapper.details-visible .details-film-room__media {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
  }
  html body .details-film-room--portrait .details-film-room__video,
  html body .details-film-stage--split .details-film-room__video,
  html body .lb-row-wrapper:hover .details-film-room--portrait .details-film-room__video,
  html body .lb-row-wrapper.details-visible .details-film-room--portrait .details-film-room__video {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 9 / 16 !important;
    object-fit: contain !important;
  }
  html body .details-film-room--landscape .details-film-room__video,
  html body .details-film-stage--split .details-film-room--landscape .details-film-room__video {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: contain !important;
  }
}
/* 20261101pr3f1: PR bolt sits on the first name and uses the bright time gold, not the check gold. */
@media (min-width: 901px) {
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-first-row {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: 100% !important;
    gap: 4px !important;
  }
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-first-row > .verified-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-first-row > .pr-badge,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-first-row > .pr-badge-inline,
  html body .lb-row-wrapper:not(.lb-row-wrapper--teaser) > .lb-row:not(.lb-mobile-card) > .name-cell .name-stack > .name-line.name-first-row > .recent-hang-mark {
    flex: 0 0 auto !important;
    margin-top: 0 !important;
  }
}
html body .pr-badge,
html body .pr-badge-inline,
html body .pr-badge .pr-val,
html body .pr-badge .pr-lbl,
html body .pr-badge .svg-icon,
html body .pr-badge-inline .svg-icon {
  color: #FFE566 !important;
}
/* 20261101iwenflag1: country-only rows (Taiwan, and the same shape) were stretching the label, which pinned the flag to the left edge. Keep the flag beside the country and center that pair with the other flags. */
@media (min-width: 901px){
  html body:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .location-col .location-cluster:not(.location-cluster--stacked){
    width:max-content !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    justify-content:center !important;
  }
  html body:not(#wdhc-n1):not(#wdhc-n2):not(#wdhc-n3):not(#wdhc-n4):not(#wdhc-n5) .leaderboard .lb-row:not(.lb-mobile-card) > .location-col .location-cluster:not(.location-cluster--stacked) > .location-stack{
    flex:0 0 auto !important;
    width:max-content !important;
    min-width:0 !important;
  }
}

/* LOCK 20261102ropewt1
   A wrapped hang-type title must push the +load line down.
   timealign1 kept .lb-hang-title at height:16px. Later rules let the
   words wrap (Weighted Rope at ~1080 becomes WEIGHTED / ROPE) but the
   box stayed one line, so the second line painted on the out-of-flow
   +load (top:100% of that one-line box). Explicit two-line titles
   (--alt, Weighted Dead Hang) already set height:auto and clear.
   This does the same for every title. One line stays one line
   (min-height 16px). Gold times stay top-aligned. The load stays
   out of flow under the full title. */
@media (min-width: 901px) {
  html body .lb-row-wrapper .time .lb-time-stack > .lb-hang-title:not(#wdhc-ropewt1),
  html body .lb-row-wrapper .desktop-time .lb-time-stack > .lb-hang-title:not(#wdhc-ropewt1),
  html body .leaderboard .lb-row > .time .lb-hang-title:not(#wdhc-ropewt1),
  html body .leaderboard .lb-row > .desktop-time .lb-hang-title:not(#wdhc-ropewt1) {
    height: auto !important;
    min-height: 16px !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.15 !important;
  }
  html body .leaderboard .lb-row > .time .lb-time-stack:has(> .lb-pr-hold[data-load]),
  html body .leaderboard .lb-row > .desktop-time .lb-time-stack:has(> .lb-pr-hold[data-load]),
  html body .lb-row > .time .lb-time-stack:has(> .lb-pr-hold[data-load]),
  html body .lb-row > .desktop-time .lb-time-stack:has(> .lb-pr-hold[data-load]) {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  html body .leaderboard .lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
  html body .leaderboard .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-row > .time .lb-time-stack > .lb-pr-hold[data-load],
  html body .lb-row > .desktop-time .lb-time-stack > .lb-pr-hold[data-load] {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 100% !important;
    margin-top: 1px !important;
    width: 100% !important;
    text-align: center !important;
  }
}
@media (max-width: 900px) {
  html body .lb-row.lb-mobile-card .lb-time-stack > .lb-hang-title:not(#wdhc-ropewt1),
  html body .lb-card-time .lb-time-stack > .lb-hang-title:not(#wdhc-ropewt1) {
    position: static !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
  }
  html body .lb-row.lb-mobile-card .lb-hang-title > .lb-pr-hold.lb-pr-hold--under,
  html body .lb-card-time .lb-hang-title > .lb-pr-hold.lb-pr-hold--under {
    position: static !important;
    display: block !important;
    clear: both !important;
    margin-top: 2px !important;
  }
}
/* Capital I stays Georgia after this lock. */
html body span.name-cap-i,
html body .ch-podium__name span.name-cap-i,
html body .video-submission-name span.name-cap-i {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
/* END 20261102ropewt1 */

/* 20261103row1top1 (Milo): board card rows - name no longer hugs the row's top border. Chevron leaves the grid flow
   (absolute, centered under the rank) so the name/loc block centers in the full 64px row (~8px top breathing room). */
html body #hang-type-boards:not(#wdhc-r1):not(#wdhc-r2):not(#wdhc-r3) .ch-podium__row { position: relative !important; grid-template-rows: 1fr !important; }
html body #hang-type-boards:not(#wdhc-r1):not(#wdhc-r2):not(#wdhc-r3) .ch-podium__row > .ch-podium__chevron { position: absolute !important; bottom: 1px !important; left: 10px !important; width: 30px !important; margin: 0 !important; line-height: 1 !important; text-align: center !important; }
html body #hang-type-boards:not(#wdhc-r1):not(#wdhc-r2):not(#wdhc-r3) .ch-podium__row:not(.ch-podium__row--podium) > .ch-podium__chevron { left: -1px !important; }
