.wallet-channel {display:flex;align-items:center;gap:12px;padding:3px 0;color:#19324f}
body.v41.shelf-home #mainContent>#game-center {order:5}
body.v41.shelf-home #mainContent>#offers {order:6}
.wallet-channel img {width:38px;height:38px;object-fit:contain}
.wallet-channel strong,.wallet-channel small {display:block}
.wallet-channel strong {font-size:16px;font-weight:650}
.wallet-channel small {margin-top:3px;color:#60758a;font-size:12px}
body.v41 #memberCenterMask #memberCenterContent:has(.statement-view) {display:block!important}
.statement-view {padding:18px;background:white;border:1px solid #e1e8f1;border-radius:14px;color:#192f4d}
.statement-header,.statement-pages,.statement-filter-actions {display:flex;align-items:center;justify-content:space-between;gap:10px}
.statement-header h3 {margin:0;font-size:18px}
.statement-header p {margin:4px 0 0;color:#61738b;font-size:12px;overflow-wrap:anywhere}
#statementFilterBody[hidden] {display:none!important}
.statement-view #historyFilter {margin:14px 0;padding:12px;background:#f6f8fb}
.statement-view #historyRows {margin-top:12px}
.statement-row {width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border:0;border-top:1px solid #e6edf4;background:white;text-align:start;color:#1a3656}
.statement-row>span {min-width:0;display:grid;gap:3px}
.statement-row>span:last-child {text-align:end}
.statement-row b,.statement-row strong {font-size:15px;font-variant-numeric:tabular-nums}
.statement-row small {color:#5f738a;font-size:12px;overflow-wrap:anywhere}
.statement-row:focus-visible {outline:2px solid #4388dd;outline-offset:2px}
.statement-empty {margin:0;padding:26px 0;color:#64768c;font-size:14px}
.statement-pages {margin-top:12px;font-size:12px;color:#61738b}
.offer-registration {display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.offer-registration button {min-height:44px;border:0;background:transparent;color:#145fc8;font:inherit;font-weight:650;text-decoration:underline}
body.v41.shelf-home #gameTabs .venue-brand-plate .tw-brand-logo {display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}
body.v41.shelf-home #gameTabs .venue-brand-plate {box-sizing:border-box;padding:4px 6px}
@media (min-width:769px) {
  body.v41.shelf-home #heroSlider {height:clamp(260px,21vw,320px)!important}
}
@media (max-width:768px) {
  body.v41.shelf-home .mobile-account-strip:has(#mobileAccountAction[data-action="login"]) {display:none!important}
  body.v41.shelf-home #heroSlider .hero-dots {left:auto!important;right:12px!important;bottom:8px!important}
  /* One track per category. Labels keep their intrinsic width in mobile WebViews. */
  body.v41.shelf-home #gameTypeFilters {
    --category-columns: 8;
    display: grid !important; grid-auto-flow: column !important; grid-template-columns: none !important;
    grid-auto-columns: minmax(max-content, calc(100% / var(--category-columns))) !important;
    align-items: stretch; gap: 0 !important; overflow-x: auto !important; overflow-y: hidden !important;
    margin: 0 0 10px !important; padding: 2px !important;
    border: 1px solid #dce5ef !important; border-radius: 14px !important;
    background: #edf2f7 !important; box-shadow: none !important;
    scrollbar-width: thin; scrollbar-color: #b8cadc transparent;
    scroll-snap-type: x proximity; scroll-padding-inline: 2px; -webkit-overflow-scrolling: touch;
  }
  body.v41.shelf-home #gameTypeFilters button {
    display: inline-flex !important; flex-direction: column !important; gap: 3px !important;
    align-items: center; justify-content: center; align-self: stretch;
    width: auto !important; min-width: 44px !important; max-width: none !important;
    height: auto !important; min-height: 50px !important; padding: 4px 3px !important;
    margin: 0 !important; border: 0 !important; border-radius: 10px !important;
    background: transparent !important; box-shadow: none !important; color: #425a73 !important;
    white-space: nowrap; overflow: visible; scroll-snap-align: start;
  }
  body.v41.shelf-home #gameTypeFilters button[aria-selected="true"] {
    color: #fff !important; background: #193b64 !important; box-shadow: 0 2px 4px #17385f1a !important;
  }
  body.v41.shelf-home #gameTypeFilters button:focus-visible { outline: 2px solid #367fd4; outline-offset: -2px; }
  body.v41.shelf-home #gameTypeFilters .game-type-filter-icon {
    display: block; flex: none !important; width: 17px !important; height: 17px !important; margin: 0 !important; object-fit: contain;
  }
  body.v41.shelf-home #gameTypeFilters button[aria-selected="true"] .game-type-filter-icon { filter: brightness(0) invert(1) !important; }
  body.v41.shelf-home #gameTypeFilters .game-type-filter-copy,
  body.v41.shelf-home #gameTypeFilters .game-type-filter-copy b {
    display: block !important; flex: none !important; width: max-content !important;
    min-width: max-content !important; max-width: none !important; padding: 0;
    overflow: visible !important; text-overflow: clip !important; white-space: nowrap !important;
    color: inherit !important; font-size: 12px !important; font-weight: 650; line-height: 1.4 !important;
  }
  @media (max-width: 389px) {
    body.v41.shelf-home #gameTypeFilters { --category-columns: 7; }
  }
  @media (max-width: 354px) {
    body.v41.shelf-home #gameTypeFilters { --category-columns: 6; }
  }
  @media (min-width: 640px) {
    body.v41.shelf-home #gameTypeFilters button { flex-direction: row !important; gap: 6px !important; }
  }
  body.v41.shelf-home #heroSlider {height:clamp(142px,39vw,188px)!important;min-height:0!important}
  .statement-view {padding:16px}
}

/* Let the caption determine its height independently of the poster artwork. */
body.v41.shelf-home #gameTabs > button {
  --poster-space: 126px;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(var(--poster-space), 1fr) auto !important;
  grid-auto-flow: row;
  gap: 0 !important;
  align-items: stretch !important;
  align-content: stretch !important;
  height: auto !important;
  min-height: 0 !important;
}
body.v41.shelf-home #gameTabs > button::after { content: none !important; display: none !important; }
body.v41.shelf-home #gameTabs > button > .venue-tab-copy {
  grid-area: 2 / 1;
  position: relative !important;
  inset: auto !important;
  z-index: 3;
  display: flex !important;
  flex-flow: column nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: stretch !important;
  gap: 4px !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  box-sizing: border-box;
  border-top: 1px solid var(--venue-edge);
  background: var(--venue-paper) !important;
  overflow: visible !important;
  text-align: start;
}
body.v41.shelf-home #gameTabs .venue-tab-title {
  display: block !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  min-width: 0;
  max-width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: anywhere;
  word-break: normal;
  text-overflow: clip !important;
  -webkit-line-clamp: unset;
  line-height: 1.35 !important;
}
body.v41.shelf-home #gameTabs .venue-card-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  width: 100%;
  min-width: 0;
}
body.v41.shelf-home #gameTabs .venue-tab-status {
  position: static !important;
  flex: 0 1 auto;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100%;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
body.v41.shelf-home #gameTabs .venue-tab-status::before { content: none !important; display: none !important; }
body.v41.shelf-home #gameTabs > button.unavailable .venue-status-dot { background: #94a0b0 !important; }
body.v41.shelf-home #gameTabs .venue-status-text {
  display: block !important;
  min-width: 0;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere;
}
body.v41.shelf-home #gameTabs .venue-card-actions .venue-enter {
  position: static !important;
  flex: none;
  margin: 0 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100%;
  height: auto !important;
  min-height: 26px !important;
  padding: 4px 7px !important;
  gap: 3px;
  font-size: 12px !important;
  line-height: 1.2 !important;
  box-sizing: border-box;
  transform: none !important;
}
body.v41.shelf-home #gameTabs .venue-enter::after { width: 12px; height: 12px; flex: 0 0 12px; }
@media (max-width: 768px) {
  body.v41.shelf-home #gameTabs > button { --poster-space: 164px; }
}
