/* Theme-specific CSS overrides (served from /css/theme-overrides.css)
 *
 * Purpose:
 * - Prevent banner/logo cropping for red13/red16 without requiring a full rebuild.
 * - Keep other themes unaffected via scoped selectors where possible.
 * - When a new Sport.Id is introduced (e.g. Pingpong/Cricket), provide a safe fallback
 *   so older themes don't render blank icons.
 */

/* Main banner: always fit container (no crop) */
.home-content-red13 #main-banner-img,
.home-content-red16 #main-banner-img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}

/* Desktop header logo (red16): constrain width so the very-wide PNG never overflows/crops */
.bg-headernav-red16 img[alt="LOGO"] {
  height: auto !important;
  width: auto !important;
  max-height: 80px !important;
  max-width: 300px !important;
}

/* Sports (layout1) top category bar: missing icon mappings (red16) */
/* Pingpong (265917) */
.sports-type[class*='-265917'] {
  /* Global fallback (works even if a theme doesn't have Pingpong-over.png) */
  background-image: url("/image/Sports/Type/Pingpong.png") !important;
}
.sports-type[class*='-265917']:hover,
.sports-type[class*='-265917'].on {
  background-image: url("/image/Sports/Type/Pingpong.png") !important;
}

/* red16-specific hover/on uses theme asset */
.sports-type.sports-red16-265917:hover,
.sports-type.sports-red16-265917.on {
  background-image: url("/image/Sports/Type/red16/Pingpong-over.png") !important;
}

/* Cricket (452674) */
.sports-type[class*='-452674'] {
  background-image: url("/image/Sports/Type/Cricket.png") !important;
}
.sports-type[class*='-452674']:hover,
.sports-type[class*='-452674'].on {
  background-image: url("/image/Sports/Type/Cricket.png") !important;
}
.sports-type.sports-red16-452674:hover,
.sports-type.sports-red16-452674.on {
  background-image: url("/image/Sports/Type/red16/Cricket-over.png") !important;
}

/* Fighting (154919) — red16 label fix (avoid showing MMA) */
.sports-type[class*='-154919'] {
  background-image: url("/image/Sports/Type/Fighting.png") !important;
}
.sports-type[class*='-154919']:hover,
.sports-type[class*='-154919'].on {
  background-image: url("/image/Sports/Type/Fighting.png") !important;
}
.sports-type.sports-red16-154919 {
  background-image: url("/image/Sports/Type/Fighting.png") !important;
}
.sports-type.sports-red16-154919:hover,
.sports-type.sports-red16-154919.on {
  background-image: url("/image/Sports/Type/red16/Fighting-over.png") !important;
}

/* Legacy red16 selectors (kept for clarity; redundant with rules above) */
.sports-red16-265917 {
  background-image: url("/image/Sports/Type/Pingpong.png") !important;
}
.sports-red16-265917:hover,
.sports-red16-265917.on {
  background-image: url("/image/Sports/Type/red16/Pingpong-over.png") !important;
}

/* Cricket (452674) — keep legacy selector in sync */
.sports-red16-452674 {
  background-image: url("/image/Sports/Type/Cricket.png") !important;
}
.sports-red16-452674:hover,
.sports-red16-452674.on {
  background-image: url("/image/Sports/Type/red16/Cricket-over.png") !important;
}

/* Fighting (154919) — ensure override even without .sports-type class */
.sports-red16-154919 {
  background-image: url("/image/Sports/Type/Fighting.png") !important;
}
.sports-red16-154919:hover,
.sports-red16-154919.on {
  background-image: url("/image/Sports/Type/red16/Fighting-over.png") !important;
}

/* Sidebar (left menu) category list: remove unintended divider line (red16 only) */
li.has-sub > a.bg-category-red16,
a.bg-category-red16 {
  border-top: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* Ensure hover/on states don't reintroduce gradient seams between items (red16 only) */
a.bg-category-red16:hover,
a.bg-category-red16.on {
  background-image: none !important;
}

/* Sports league list chevron (red16): match text line-height for vertical alignment */
.fa.league-info-icon-red16 {
  line-height: inherit;
}

/* Sports rule header (RIGHT_TITLE): vertically align logo + title text */
#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
}

#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 > .float-left,
#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 > .float-right {
  float: none !important;
}

#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 > .float-right {
  margin-left: auto;
}

#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 .m-t-18,
#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 .m-t-8 {
  margin-top: 0 !important;
}

#RIGHT_TITLE.sports-right-panel-title.p-t-10.p-b-10 img[alt="LOGO"] {
  margin-top: 0 !important;
}

/* Sidebar (layout1) "최신 인기게임": shrink fallback/location flag icons to avoid crowding */
.favorite-red16 .item .name img[src*="/image/Sports/flags"] {
  width: 16px !important;
  height: 16px !important;
}

/* Sports (LeftPanel odds list): multiline team names should keep label + lock overlays aligned */
:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist ul.list-box-g.height-38 > li.width-60.height-40 {
  /* The row itself becomes auto-height when team names wrap; the label cell must stretch too. */
  height: auto !important;
  min-height: 40px;
  align-self: stretch;
}

:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-home-lock-"],
:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-vs-lock-"],
:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-away-lock-"] {
  /* Some theme CSS hard-codes 39px height; override to cover the whole (multiline) cell. */
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-home-lock-"] img,
:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-vs-lock-"] img,
:is([class*="sport-page-bg-"], [class*="inplay-page-bg-"]) .glist [class^="left-away-lock-"] img {
  /* Markup uses .m-t-* utilities; neutralize to keep the lock icon truly centered. */
  margin-top: 0 !important;
}

/* Sidebar sports/live tab: dynamic accent fallback (for themes without a dedicated right-bar-sports-tab-<theme>) */
.right-bar-sports-tab-theme {
  border-bottom: 2px solid var(--sports-tab-accent, #1f8fff);
  color: #fff !important;
  text-align: center;
  height: 100%;
  padding-top: 10px;
}

.right-bar-sports-tab-theme.on {
  border-top: 2px solid var(--sports-tab-accent, #1f8fff);
  border-left: 2px solid var(--sports-tab-accent, #1f8fff);
  border-right: 2px solid var(--sports-tab-accent, #1f8fff);
  border-bottom: 0px;
  color: var(--sports-tab-accent, #1f8fff) !important;
}

/* Casino live banner: keep sentence on one line (desktop) */
@media (min-width: 1024px) {
  .casino-live-banner-desc {
    white-space: nowrap !important;
  }
}
