
/* NEM BIEN TV BLUE NEON PREMIUM */
:root {
  --nb-bg:#071426;
  --nb-card:#0f1f3a;
  --nb-blue:#008cff;
  --nb-cyan:#00c8ff;
  --nb-text:#f8faff;
  --nb-muted:#a9b9cc;
}

/* PAGE BACKGROUND */
html:has(#site-main),
html:has(#site-main) body,
body:has(#site-main),
body:has(#site-main) .bgHome {
  background:#071426 !important;
  color:#f8faff;
}

body:has(#site-main) #site-main {
  color:#f8faff;
}

/* HEADER AND NAVIGATION */
body:has(#site-main) header,
body:has(#site-main) .mobile-menu {
  background:#0b1d35 !important;
  color:#f8faff !important;
  border-color:#17477b !important;
}

body:has(#site-main) header a,
body:has(#site-main) header nav a,
body:has(#site-main) .mobile-menu a {
  color:#eaf5ff !important;
}

body:has(#site-main) header a:hover,
body:has(#site-main) header nav a:hover {
  color:#00c8ff !important;
}

/* SPORTS FILTER */
#site-main .sport-tab {
  background:#122b4a !important;
  border:1px solid #24517c !important;
  color:#dcecff !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

#site-main .sport-tab:hover {
  background:#17477b !important;
  border-color:#00c8ff !important;
}

#site-main .sport-tab.active,
#site-main .sport-tab[data-sport="all"].active {
  background:linear-gradient(110deg,#006de0,#00a9ff) !important;
  color:white !important;
  border-color:#00c8ff !important;
  box-shadow:0 0 14px #008cff44 !important;
}

#site-main .sport-tab svg {
  color:inherit !important;
}

/* DATE FILTER */
#site-main .schedule-nav .nav-item {
  background:#102744 !important;
  color:#e7f3ff !important;
  border:1px solid #24517c !important;
  border-radius:9px !important;
}

#site-main .schedule-nav .nav-item span {
  color:inherit !important;
}

#site-main .schedule-nav .nav-item:hover {
  border-color:#00c8ff !important;
}

#site-main .schedule-nav .nav-item.active {
  background:linear-gradient(110deg,#0070e8,#00a8ff) !important;
  color:#fff !important;
  border-color:#00c8ff !important;
  box-shadow:0 0 14px #008cff44;
}

/* MATCH CARDS */
#site-main .ultra-match-card:not(.ultra-live) {
  background:
    radial-gradient(ellipse at 75% 0%,
      #008cff22,transparent 60%),
    linear-gradient(145deg,#0f1f3a,#09182d) !important;
  border:2px solid #17477b !important;
  border-radius:16px !important;
  box-shadow:0 7px 24px #0005;
}

#site-main .ultra-match-card:not(.ultra-live):hover {
  border-color:#00c8ff !important;
  box-shadow:0 0 22px #008cff55;
}

#site-main .ultra-match-card.ultra-live {
  border:3px solid transparent !important;
  border-radius:16px !important;
  background:
    linear-gradient(#0f1f3a,#09182d) padding-box,
    conic-gradient(
      from var(--kd-rainbow-angle,0deg),
      #ff1744,#ff9100,#ffee00,
      #00e676,#00b0ff,#651fff,
      #e040fb,#ff1744
    ) border-box !important;
  animation:kdRainbowGlow 4s linear infinite;
}

/* MATCH DETAILS */
#site-main .ultra-league {
  color:#a9b9cc !important;
}

#site-main .ultra-time {
  background:#102b4e !important;
  color:#e5f4ff !important;
}

#site-main .ultra-live-pill {
  background:linear-gradient(110deg,#0074ed,#00baff) !important;
  color:#fff !important;
}

#site-main .ultra-phase {
  background:linear-gradient(110deg,#006be6,#009dff) !important;
  color:white !important;
}

#site-main .ultra-score {
  background:linear-gradient(135deg,#103e76,#0074e8) !important;
  border-color:#008cff !important;
  color:white !important;
  box-shadow:0 0 15px #008cff44;
}

#site-main .ultra-score .ultra-leading {
  background:#008cff !important;
}

/* BLV SECTION */
#site-main .ultra-bottom {
  background:linear-gradient(100deg,#0b1930,#102744) !important;
  border-top:1px solid #00c8ff44;
}

#site-main .ultra-commentators img {
  border-color:#00c8ff !important;
}

#site-main .ultra-stats,
#site-main .ultra-odds {
  color:#a9b9cc !important;
}

#site-main .ultra-stats b,
#site-main .ultra-card-actions a,
#site-main .ultra-card-actions button {
  color:#00c8ff !important;
}

#site-main .ultra-card-actions a:hover {
  color:#fff !important;
}

/* MOBILE */
@media(max-width:900px) {
  #site-main .ultra-match-grid {
    grid-template-columns:1fr !important;
  }
}

@media(prefers-reduced-motion:reduce) {
  #site-main .ultra-match-card.ultra-live {
    animation:none !important;
  }
}


/* NEM BIEN TV - BLUE NEON V2 */

/* LOGIN */
.site-header .btn-login,
#side-header .btn-login {
  background:linear-gradient(110deg,#0070e8,#00baff) !important;
  color:white !important;
  border:1px solid #00c8ff !important;
  box-shadow:0 0 12px rgba(0,140,255,.22);
}

/* TOP BLV HOT */
#site-main .nb-blue-gradient:not(.bg-clip-text) {
  background:linear-gradient(100deg,#006be6,#00a9ff) !important;
  color:white !important;
}

/* CHU Y HEADING */
#site-main .nb-blue-gradient.bg-clip-text {
  background:linear-gradient(90deg,#008cff,#00c8ff) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}

/* ABOUT TITLE */
body:has(#site-main) .goto-head {
  color:#f8faff !important;
  text-shadow:0 0 12px rgba(0,140,255,.3);
}

/* NOTICE TEXT */
body:has(#site-main) .schedule-content ~ section,
body:has(#site-main) .schedule-content ~ div {
  border-color:#17477b;
}

/* ADVERTISING BAR - KNOWN COLOR UTILITIES */
body:has(#site-main) .bg-\\[\\#FF6601\\] {
  background-color:#008cff !important;
}


/* NEM BIEN TV - BLUE NEON V3 */

/* NOTICE HEADING */
#site-main .nb-blue-gradient.bg-clip-text {
  background:linear-gradient(90deg,#008cff,#00c8ff) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}

/* ABOUT HEADING */
body:has(#site-main) .goto-head {
  color:#f8faff !important;
}

/* HEADER LOGIN */
body:has(#site-main) .site-header .btn-login {
  background:linear-gradient(110deg,#0070e8,#00baff) !important;
  color:#fff !important;
  border-color:#00c8ff !important;
}

/* HEADER BLUE ACCENT */
body:has(#site-main) .site-header {
  border-bottom-color:#008cff !important;
}


/* NEM BIEN TV - BLUE NEON V4 */

/* TOP BLV + PROMOTION */
#site-main .nb-blue-gradient:not(.bg-clip-text) {
  background:linear-gradient(100deg,#006be6,#00baff) !important;
  color:#fff !important;
}

/* NOTICE PANEL */
#site-main .chuy > div {
  background:linear-gradient(120deg,#0d203a,#122c4b) !important;
  border:1px solid #245c94 !important;
  border-radius:14px !important;
  box-shadow:0 5px 20px rgba(0,0,0,.18);
}

#site-main .chuy ul,
#site-main .chuy li {
  color:#e7f2ff !important;
}

#site-main .chuy li {
  border-color:#008cff !important;
  line-height:1.65;
}

/* NOTICE TITLE */
#site-main .chuy .nb-blue-gradient {
  background:linear-gradient(90deg,#008cff,#00c8ff) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}

/* ABOUT */
#site-main .goto-head {
  color:#f8faff !important;
}

#site-main .content_goto,
#site-main .content_goto p,
#site-main .content_goto li {
  color:#dbe9f8 !important;
}

/* LOGIN */
#side-header .btn-login {
  background:linear-gradient(110deg,#0070e8,#00baff) !important;
  border:1px solid #00c8ff !important;
  color:#fff !important;
  box-shadow:0 0 12px rgba(0,140,255,.25);
}


/* NEM BIEN TV - BLUE NEON V5 */

/* ADVERTISING MARQUEE */
#site-main .nb-advert-marquee,
.nb-advert-marquee {
  background:linear-gradient(
    100deg,#006be6,#008cff,#00c8ff
  ) !important;
  border-bottom:1px solid #00c8ff !important;
  box-shadow:0 3px 15px rgba(0,140,255,.22);
  color:#fff !important;
}

.nb-advert-marquee marquee,
.nb-advert-marquee a,
.nb-advert-marquee span {
  color:#fff !important;
}


/* NEM BIEN TV - HOME DUAL THEME V10 */

/* LIGHT: PAGE BACKGROUND */
html.light:has(#site-main),
html.light body:has(#site-main),
html.light body:has(#site-main) .bgHome {
  background-color:#f4f9ff !important;
  background-image:none !important;
  color:#173454 !important;
}

/* LIGHT: HEADER */
html.light body:has(#site-main) .site-header {
  background:#ffffff !important;
  border-bottom:1px solid #d5e8fa !important;
}

html.light body:has(#site-main) .site-header a {
  color:#173454 !important;
}

html.light body:has(#site-main) .site-header .btn-login {
  color:#ffffff !important;
}

/* LIGHT: MAIN CONTENT */
html.light #site-main {
  color:#173454 !important;
}

/* LIGHT: SCHEDULE */
html.light #site-main .schedule-content,
html.light #site-main .ultra-match-card {
  background:#ffffff !important;
  color:#173454 !important;
  border-color:#d5e8fa !important;
}

/* LIGHT: SPORT TABS */
html.light #site-main .sport-tab,
html.light #site-main .schedule-nav .nav-item {
  background:#e8f4ff !important;
  color:#0756aa !important;
  border-color:#c7e2fa !important;
}

/* LIGHT: ACTIVE TABS */
html.light #site-main .sport-tab.active,
html.light #site-main .schedule-nav .nav-item.active {
  background:linear-gradient(100deg,#006be6,#00baff) !important;
  color:#ffffff !important;
  border-color:#008cff !important;
}

/* LIGHT: MATCH TEXT */
html.light #site-main .ultra-match-card
.ultra-team-name,
html.light #site-main .ultra-match-card
.ultra-phase,
html.light #site-main .ultra-match-card
.ultra-score {
  color:#173454 !important;
}

/* LIGHT: LIVE CARDS KEEP RAINBOW LED */
html.light #site-main .ultra-match-card.ultra-live {
  background:
    linear-gradient(#ffffff,#ffffff) padding-box,
    conic-gradient(
      from var(--kd-rainbow-angle,0deg),
      #ff1744,#ff9100,#ffee00,#00e676,
      #00b0ff,#651fff,#e040fb,#ff1744
    ) border-box !important;
  border:3px solid transparent !important;
}

/* LIGHT: ABOUT */
html.light body:has(#site-main) .goto-head {
  color:#173454 !important;
}

html.light body:has(#site-main) .content_goto,
html.light body:has(#site-main) .content_goto p,
html.light body:has(#site-main) .content_goto li {
  color:#385572 !important;
}

/* LIGHT: NOTICE */
html.light #site-main .chuy > div {
  background:#ffffff !important;
  color:#173454 !important;
  border-color:#d5e8fa !important;
}

html.light #site-main .chuy ul,
html.light #site-main .chuy li {
  color:#385572 !important;
}

/* LIGHT: THEME BUTTON */
html.light body:has(#site-main) #themeToggle {
  background:#e8f4ff !important;
  color:#0756aa !important;
  border:1px solid #a8d7ff !important;
}

/* Keep promotion and LIVE blue accents */


/* NEM BIEN TV - HOME LIGHT CONTRAST V11 */

/* MATCH CARD TEXT */
html.light #site-main .ultra-match-card {
  color:#173454 !important;
}

/* LEAGUE NAME */
html.light #site-main .ultra-match-card .ultra-league,
html.light #site-main .ultra-match-card .ultra-league-name {
  color:#315b87 !important;
  opacity:1 !important;
  font-weight:700 !important;
}

/* BLV BAR: DARK NAVY WITH READABLE WHITE TEXT */
html.light #site-main .ultra-match-card .ultra-bottom {
  background:linear-gradient(110deg,#0c203d,#12375c) !important;
  color:#eaf4ff !important;
}

html.light #site-main .ultra-match-card .ultra-bottom *,
html.light #site-main .ultra-match-card .ultra-bottom a,
html.light #site-main .ultra-match-card .ultra-bottom span {
  color:#eaf4ff !important;
  opacity:1 !important;
}

/* MATCH STATUS */
html.light #site-main .ultra-match-card .ultra-phase {
  background:#008cff !important;
  color:#ffffff !important;
  font-weight:600 !important;
}

/* TEAM NAMES */
html.light #site-main .ultra-match-card .ultra-team-name {
  color:#173454 !important;
  font-weight:700 !important;
}

/* VS */
html.light #site-main .ultra-match-card .ultra-vs {
  background:linear-gradient(100deg,#006be6,#00aaff) !important;
  color:#ffffff !important;
}

/* WATCH LINK */
html.light #site-main .ultra-match-card a {
  text-decoration-color:#008cff;
}

/* KEEP LIVE LED RAINBOW */

/* NEMBIENTV HOME SCOREBOARD V5 ULTRA COMPACT */

@media(min-width:901px){
 #site-main .ultra-match-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}

#site-main .ultra-match-card{
 padding:10px!important;
 min-height:0!important;
}

#site-main .ultra-match-top{
 margin-bottom:3px!important;
 padding:0!important;
}

#site-main .ultra-match-card .ultra-main{
 padding:3px 0 5px!important;
 margin:0!important;
 min-height:0!important;
}

#site-main .ultra-score{
 padding:5px 12px!important;
 min-width:75px!important;
}

#site-main .ultra-phase{
 margin-bottom:3px!important;
 padding:4px 7px!important;
}

#site-main .ultra-match-card .nb-match-bottom{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1.6fr)!important;
 gap:5px!important;
 padding:5px 7px!important;
 min-height:48px!important;
 margin:4px 0!important;
}

#site-main .nb-stats-area{
 grid-column:auto!important;
 min-width:0;
}

#site-main .nb-stats{
 display:flex;
 flex-wrap:wrap;
 align-items:center;
 justify-content:center;
 gap:4px;
 font-size:9px;
}

#site-main .nb-stat{
 display:inline-flex;
 align-items:center;
 gap:3px;
 white-space:nowrap;
}

#site-main .nb-stat:not(:last-child){
 padding-right:4px;
 border-right:1px solid #365579;
}

#site-main .nb-corner{
 color:#24e780;
 font-size:13px;
}

#site-main .nb-card-yellow,
#site-main .nb-card-red{
 display:inline-block;
 width:8px;
 height:11px;
 border-radius:2px;
}

#site-main .nb-card-yellow{background:#ffdf00}
#site-main .nb-card-red{background:#f43f4f}

#site-main .ultra-match-card .nb-blv{
 display:flex;
 align-items:center;
 justify-content:center;
 flex-wrap:wrap;
 gap:4px;
 min-width:0;
 min-height:40px!important;
 padding:2px 4px!important;
 border-left:1px solid #365579;
 border-right:1px solid #365579;
 text-align:center;
}

#site-main .ultra-match-card .nb-blv>span{
 display:flex;
 flex-direction:column;
 align-items:center;
 gap:2px;
 min-width:0;
 max-width:100%;
 font-size:9px;
 line-height:1.2;
 word-break:normal;
 overflow-wrap:normal;
}

#site-main .ultra-match-card .nb-blv img{
 width:24px!important;
 height:24px!important;
 border:1px solid #00c8ff;
 border-radius:50%;
 object-fit:cover;
}

#site-main .nb-right{
 display:flex;
 align-items:center;
 justify-content:flex-end;
 gap:4px;
 min-width:0;
}

#site-main .nb-odds{
 display:flex;
 flex:1;
 flex-direction:column;
 gap:3px;
 min-width:0;
}

#site-main .nb-market{
 display:grid;
 grid-template-columns:49px minmax(0,1fr);
 align-items:center;
 gap:3px;
}

#site-main .nb-market-title{
 font-size:8px;
 white-space:nowrap;
 text-align:right;
 color:#b7c9e5;
}

#site-main .nb-market-values{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:3px;
 min-width:0;
}

#site-main .nb-odd-cell{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:2px;
 min-width:0;
 padding:3px!important;
 border:1px solid #21629c;
 border-radius:4px;
 background:#102b4d;
 font-size:9px;
 white-space:nowrap;
}

#site-main .nb-odd-cell b{
 color:#ffdc48;
 font-size:9px;
}

#site-main .nb-brand{
 width:36px!important;
 height:30px!important;
 flex:0 0 36px;
 object-fit:contain;
}

#site-main .ultra-card-actions{
 margin-top:2px!important;
 padding:0!important;
 min-height:0!important;
}

/* Mobile: 2 hang thong tin, khong chia 3 tang */
@media(max-width:900px){
 #site-main .ultra-match-grid{
  grid-template-columns:1fr!important;
 }

 #site-main .ultra-match-card{
  padding:8px!important;
 }

 #site-main .ultra-match-card .nb-match-bottom{
  grid-template-columns:minmax(0,1fr) minmax(85px,.55fr)!important;
  gap:4px!important;
  padding:5px!important;
 }

 #site-main .nb-stats-area{
  grid-column:auto!important;
 }

 #site-main .nb-stats{
  justify-content:flex-start;
 }

 #site-main .ultra-match-card .nb-blv{
  border-left:1px solid #365579!important;
  border-right:0!important;
  border-top:0!important;
  border-bottom:0!important;
 }

 #site-main .nb-right{
  grid-column:1/-1;
  border-top:1px solid #365579;
  padding-top:4px;
 }

 #site-main .nb-brand{
  width:36px!important;
  flex-basis:36px;
 }
}

@media(max-width:390px){
 #site-main .nb-market{
  grid-template-columns:46px minmax(0,1fr);
 }
 #site-main .nb-odd-cell{
  font-size:8px;
 }
}


/* NEMBIENTV MOBILE V8 LEFT CORNER ODDS */
@media (max-width:600px) {

 #site-main .ultra-match-card {
  padding:7px !important;
 }

 #site-main .ultra-match-card .ultra-main {
  min-height:0 !important;
  padding:3px 0 5px !important;
 }

 #site-main .ultra-match-card .nb-match-bottom {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 100px !important;
  gap:3px 6px !important;
  padding:5px 7px !important;
  min-height:0 !important;
 }

 /* Thống kê góc trên trái */
 #site-main .nb-stats-area {
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0;
 }

 #site-main .nb-stats {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
  font-size:9px;
 }

 /* BLV góc phải */
 #site-main .ultra-match-card .nb-blv {
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  align-self:center;
  min-height:40px !important;
  padding:2px 3px !important;
  border-left:1px solid #365579 !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
 }

 #site-main .ultra-match-card .nb-blv > span {
  font-size:9px;
 }

 #site-main .ultra-match-card .nb-blv img {
  width:23px !important;
  height:23px !important;
 }

 /* Kèo nằm dưới thẻ đỏ, sát góc trái */
 #site-main .nb-right {
  grid-column:1 !important;
  grid-row:2 !important;
  justify-content:flex-start !important;
  align-items:center;
  width:100%;
  min-width:0;
  gap:3px !important;
  padding:2px 0 0 !important;
  border:0 !important;
 }

 #site-main .nb-odds {
  flex:1 1 auto;
  width:100%;
  min-width:0;
  gap:2px !important;
 }

 #site-main .nb-market {
  display:grid;
  grid-template-columns:46px minmax(0,1fr) !important;
  gap:3px !important;
  min-width:0;
 }

 #site-main .nb-market-title {
  font-size:8px !important;
  line-height:1.1;
  text-align:left;
 }

 #site-main .nb-market-values {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:3px !important;
 }

 #site-main .nb-odd-cell {
  height:21px !important;
  min-height:21px !important;
  padding:2px 3px !important;
  font-size:9px !important;
  line-height:1 !important;
 }

 #site-main .nb-odd-cell b {
  font-size:9px !important;
 }

 /* Ẩn logo phụ trong khối kèo trên mobile,
    logo chính ở đầu trang vẫn giữ nguyên */
 #site-main .nb-brand {
  display:none !important;
 }

 #site-main .ultra-card-actions {
  margin:0 !important;
  padding:0 !important;
 }

 #site-main .ultra-card-actions a {
  font-size:10px !important;
 }
}
