:root {
  --primary: #337ab7;
  --primary-dark: #286090;
  --text-dark: #334155;
  --text-secondary: #666;
  --border-color: #e5e7eb;
  --bg-light: #f8fafc;
  --white: #fff;
}

body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,input,select,textarea,div,table,td,th,tr,dt,dd,dl{margin:0;padding:0;}

ul,ol{list-style:none;}

em,i{font-style:normal;display: inline-block;}

table{border-spacing:0;border-collapse:collapse;}

img{border:0;vertical-align:middle;max-width:100%;height:auto;}

input,select{vertical-align:middle;outline: none;}

a:hover{color: var(--primary);text-decoration:none;}
a{color: var(--text-dark);text-decoration:none;}
a:focus{text-decoration: none;}

.wubt{margin-top: 20px;}
.xvf{margin-top: 30px;}
.dqh6{margin-top: 40px;}
.ntdp{margin-top: 50px;}
.tx7q{margin-bottom: 20px;}
.mvj{margin-bottom: 30px;}
.xyd{margin-bottom: 40px;}
.zsx2{margin-bottom: 50px;}

body{font-family:'Microsoft YaHei','Arial','Heiti SC';background:#f5f5f5;}

.g4ku{display:block;float:left;}
.j9rm{display:block;float:right;}
.z2iy{clear:both;}

.container{width: 1230px;margin: 0 auto;}

.hir6{margin-bottom: 15px;}

.p854 {
    background: var(--white);
    border-radius: 0px;
    box-shadow: 1px 1px 10px rgb(229 229 229);
    padding: 20px;
}

#page{text-align: center;padding: 20px 0 40px;}
#page .pagination{margin-top: 40px;}
#page .pagination li span{width: 35px;height: 35px;line-height: 35px;border-radius: 0px!important;margin-right: 15px;padding: 0px;background: var(--primary);color: var(--white);}
#page .pagination li a{width: 35px;height: 35px;line-height: 35px;border-radius: 0px!important;margin-right: 15px;padding: 0px;border: 1px solid #f5f5f5;color: var(--text-dark);}
#page .pagination li.disabled span{color: var(--text-secondary);border: 1px solid #f5f5f5;background: var(--white);}
#page .pagination li:last-child a{margin-right: 0px;}

.xhrh {width: 1200px;margin: 0 auto;}
.ndh7 {display: flex;justify-content: space-between;align-items: center;}

/* Search page */
.uv6h {background: var(--white);padding: 25px;margin-bottom: 20px;border-radius: 4px;box-shadow: 0 1px 4px rgba(0,0,0,0.06);}
.uv6h form {display: flex;}
.uv6h .gv6n {flex: 1;height: 42px;padding: 0 16px;border: 2px solid var(--primary);font-size: 14px;outline: none;border-radius: 2px 0 0 2px;transition: border-color 0.2s;}
.uv6h .gv6n:focus {border-color: var(--primary-dark);box-shadow: 0 0 0 3px rgba(51,122,183,0.15);}
.uv6h .v2gb {width: 100px;height: 42px;background: var(--primary);border: 2px solid var(--primary);color: var(--white);font-size: 14px;cursor: pointer;border-radius: 0 2px 2px 0;transition: background 0.2s;}
.uv6h .v2gb:hover {background: var(--primary-dark);}
.uv6h .re5m {margin-top: 12px;font-size: 14px;color: var(--text-secondary);}

/* Search highlighting */
.fwei {background: #fff3cd;padding: 2px 4px;border-radius: 2px;font-weight: 500;}

/* Header */
.vhfu .v3nz{height: 78px;}
.vhfu .v3nz img{height: 70px;margin-top: 0px;}
.khu .vhfu {padding: 12px 0;border-top: 1px solid #ededed;}
.khu .vhfu .zx2m {position: relative;}
.khu .vhfu .zx2m ul{overflow: hidden;height: 36px;display: block;}
.khu .vhfu .zx2m li {float: left;font-size: 14px;position: relative;height: 36px;line-height: 36px;padding-left: 20px;padding-right: 20px;cursor: pointer;border-radius: 4px 4px 0px 0px;}
.khu .vhfu .zx2m li.em7v {background: var(--primary);color: var(--white)!important;}
.khu .vhfu .zx2m .brvq {width: 460px;height: 40px;padding: 0 50px 0 20px;border: 2px solid var(--primary);background-color: var(--white);}
.khu .vhfu .zx2m .jfxj {position: absolute;bottom: 0;right: 0;width: 50px;height: 40px;background: var(--primary);cursor: pointer;border: 0;color: var(--white);font-size: 14px;display: flex;align-items: center;justify-content: center;transition: background 0.2s;}
.khu .vhfu .zx2m .jfxj:hover {background: var(--primary-dark);}
.khu .vhfu .zx2m .jfxj svg {width: 18px;height: 18px;}

.khu .dhm {width: 100%;background: var(--primary);box-shadow: 0 1px 3px rgba(27, 95, 160, 0.1);height: 45px;line-height: 45px;font-size: 18px;text-align: center;display: flex;}
.khu .dhm ul.xhrh {display: flex;width: 1200px;margin: 0 auto;}
.khu .dhm li {position: relative;flex: auto;cursor: pointer;transition: background 0.3s ease;}
.khu .dhm li a {display: block;color: var(--white);text-decoration: none;}
.khu .dhm li:hover {background: #ffffff;color: var(--primary);}
.khu .dhm li:hover a {color: var(--primary);}
.khu .dhm li.xzf {background-color: var(--white);}
.khu .dhm li.xzf a {color: var(--primary);}

.khu .dhm li .e9a {position: absolute;top: 100%;left: 0;z-index: 99999;width: 128px;background-color: #f9f9f9;line-height: 38px;border-radius: 3px;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);opacity: 0;transform: scale3d(0, 0, 0);transform-origin: 40px top;transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);}
.khu .dhm li:hover .e9a {opacity: 1;transform: scale3d(1, 1, 1);}
.khu .dhm li .e9a a {display: block;padding: 0 16px;font-size: 16px;color: var(--text-dark);text-decoration: none;transition: all 0.2s ease;}
.khu .dhm li .e9a a:hover {background-color: var(--primary);color: var(--white);padding-left: 18px;}

.rkns {height: 40px;line-height: 40px;background-color: var(--white);margin: 0 auto;position: relative;margin-bottom: 0;border-bottom: 1px solid #f0f0f0;}
.rkns ul {display: inline-block;margin: 0;padding: 0;}
.rkns li {display: inline-block;}
.rkns a, .rkns span {display: inline-block;padding: 0 12px;height: 32px;line-height: 32px;font-size: 14px;border-radius: 8px;transition: all 0.3s ease;}
.rkns a {color: var(--text-dark);background: #f5f7fa;text-decoration: none;}
.rkns a:hover {background-color: var(--primary);color: var(--white);transform: translateY(-1px);box-shadow: 0 2px 6px rgba(51, 122, 183, 0.3);}
.rkns span {background-color: var(--primary);color: var(--white);}

.vwr {float: left;font-family: "Inter", "SF Pro Display", "PingFang SC", "Microsoft YaHei", sans-serif;font-size: 34px;font-weight: 800;background: var(--primary);-webkit-background-clip: text;background-clip: text;color: transparent;letter-spacing: 2px;position: relative;cursor: pointer;}
.vwr::after {content: '';position: absolute;bottom: -6px;left: 50%;width: 100%;height: 3px;background: linear-gradient(90deg, transparent, var(--primary), #4facfe, #00c6fb, #4facfe, var(--primary), transparent);background-size: 100% 100%;border-radius: 13px;transform: translateX(-50%);}
@keyframes lineScan {0% {background-position: 100% 0;}100% {background-position: -100% 0;}}

/* Footer */
.chx6 {margin-bottom: 20px;min-height: 30px;background: var(--white);padding: 10px;overflow: hidden;margin-top: 10px;}
.chx6 a {float: left;font-size: 14px;line-height: 34px;color: var(--text-dark);margin-right: 16px;}
.chx6 a:hover {color: red;}

footer {width: 100%;color: var(--white);font-size: 12px;background-color: var(--primary);text-align: center;}
footer .xhrh {height: 115px;padding-top: 20px;}
footer p:nth-of-type(1) {color: var(--white);line-height: 42px;font-size: 13.5px;}
footer p a {color: var(--white);margin: 0 10px;font-weight: 400;}
footer p:nth-of-type(2) {color: var(--white);font-weight: 400;font-size: 13.5px;}
footer p:nth-of-type(2) a {margin: 0;}
footer p:nth-of-type(2) a:hover{color: red;}
footer p a:hover {color: #e8e8e8;text-decoration: underline;}

/* Breadcrumbs */
.fjgt {padding: 12px 15px;margin-bottom: 10px;background: #f9f9f9;border-radius: 4px;border-left: 3px solid var(--primary);}
.ha46 {font-size: 14px;color: #555;padding: 0;margin-bottom: 0;}
.ha46.i55g{border: 0;padding: 0;}
.ha46 a {color: var(--primary);display: inline-block;font-size: 14px;font-weight: 500;}
.ha46 a:not(:last-child)::after {padding: 0 8px;color: #ccc;content: '>';font-weight: normal;}
.ha46 a:hover{color: #dd0000;}
.ha46 a:last-child {color: var(--text-secondary);font-weight: normal;}

/* Index tabs */
.crhi{border-top: 2px solid var(--primary);background: var(--white);}
.crhi ul {overflow: hidden;height: 50px;background: #f7f9fa;box-shadow: 0 2px 3px #ddd;}
.crhi li {float: left;height: 48px;line-height: 48px;margin-right: 2px;padding: 0 16px;background: #f5f7fa;color: var(--text-dark);text-align: center;cursor: pointer;transition: all 0.2s ease;}
.crhi li:hover {background: var(--primary);color: var(--white);}
.crhi li.em7v {background: var(--primary);color: var(--white);}

/* News list */
.wyx3 {}
.wyx3 .cfzw {background: var(--white);position: relative;margin-top: 10px;padding: 20px;border-bottom: 1px solid #f0f0f0;transition: background 0.2s ease;}
.wyx3 .cfzw:last-child {border-bottom: none;}
.wyx3 .cfzw:hover {background: #fafbfc;}
.wyx3 .cfzw > a{display: block;}
.wyx3 .hfx4 {align-items: center;display: flex;margin-bottom: 10px;}
.wyx3 .cfzw .hfx4 .qqf {display: block;font-size: 16px;font-weight: bold;flex: 1;max-width: 100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.wyx3 .hfx4 span {margin-left: 20px!important;color: #909399;}
.wyx3 .pf4j {background: var(--white);align-items: center;display: flex;}
.wyx3 .ixb4 {width: 178px;height: 110px;overflow: hidden;position: relative;}
.wyx3 .ixb4 img{width: 100%;height: 100%;object-fit: cover;aspect-ratio: 16/9;}
.wyx3 .yqeg {margin: 0 15px;flex: 1;overflow: hidden;position: relative;}
.wyx3 .n5ra {height: 40px;line-height: 20px;color: var(--text-secondary);display: -webkit-box;overflow: hidden;-webkit-box-orient: vertical;text-overflow: ellipsis;-webkit-line-clamp: 2;margin-bottom: 5px;}
.wyx3 .jqkt {color: var(--primary) !important;font-size: 14px;line-height: 1.5;}

/* Layout */
.pkm2{width: 1200px;margin: 20px auto 0;}
.ezr {margin-bottom: 20px;display: flex;}
.ezr .ri2e{width: 830px;}
.ezr .m5gc {width: 350px;margin-left: 20px;}

.n2zx {margin-bottom: 20px;display: flex;margin-top: 20px!important;}
.n2zx .f987{width: 830px;flex: 1;}
.x3j {width: 350px;margin-left: 20px;}

/* Tags */
.p25i {width: 100%;margin-top: 20px;padding: 12px 8px;background: var(--white);display: flex;flex-wrap: wrap;gap: 8px;box-shadow: inset 0 1px 2px rgba(0,0,0,0.02), 0 1px 2px rgba(0,0,0,0.03);transition: all 0.3s ease;}
.f52 {position: relative;display: inline-block;padding: 0 14px;height: 32px;line-height: 32px;font-weight: 500;font-size: 14px;text-align: center;color: #1e293b;background: linear-gradient(135deg, #ffffff, var(--bg-light));border-radius: 6px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.02);transition: all 0.3s ease;cursor: pointer;}
.f52:hover {background: linear-gradient(135deg, var(--primary), #2a6da0);color: #ffffff;transform: translateY(-2px);box-shadow: 0 6px 14px rgba(51, 122, 183, 0.25), 0 2px 4px rgba(0, 0, 0, 0.1);}
.f52:active {transform: translateY(0);transition: 0.05s;}

.hkqf {overflow: hidden;}
.hkqf span {display: inline-block;font-size: 14px;height: 30px;line-height: 30px;float: left;}
.hkqf a {display: inline-block;font-size: 14px;height: 30px;line-height: 30px;color: var(--primary);overflow: hidden;margin-left: 5px;}

/* Title */
.bgjm {position: relative;display: flex;justify-content: space-between;align-items: center;}
.bgjm span,.bgjm h2,.bgjm h3 {margin-left: 10px;font-size: 20px;color: var(--primary);font-weight: bold;display: flex;align-items: center;}
.bgjm:after{content: "";position: absolute;top: 50%;left: 0;width: 5px;height: 20px;margin-top: -9px;background: linear-gradient(90deg, var(--primary), var(--primary));vertical-align: middle;}

/* Article detail */
.h8u {padding: 30px 0 20px 0;border-bottom: 1px dashed #eee;text-align: center!important;}
.h8u.channel{padding-bottom: 0!important;}
.h8u h1 {color:#222;font-size: 24px;display: block;line-height: 1.4;margin-bottom: 15px;font-weight: bold;text-align: left;}
.h8u .n5ra {font-size: 13px;line-height: 1.5;color: #999 !important;text-align: left;padding: 8px 0;border-top: 1px solid #f0f0f0;}
.h8u .n5ra span {margin-right: 15px;color: #999;}
.h8u .n5ra span:first-child {color: var(--primary);font-weight: 500;}

.z2b {padding: 30px 0;line-height: 28px;font-size: 16px;color: #606266;margin-bottom: 10px;}
.z2b p {line-height: 28px;font-size: 16px;color: var(--text-dark);margin-bottom: 10px;}
.z2b h3,.z2b h2{line-height: 36px;font-size: 18px;color: #000;font-weight: 600;margin-bottom: 20px;}
.z2b strong{font-size: 16px;font-weight: bold;}
.z2b p img {display: block;width: 80%;margin: 15px auto;height: auto !important;}
.z2b+p{margin-top: 20px;}

.bp5x {margin: 30px 0 40px 0;height: 80px;position: relative;padding-top: 20px;border-top: 1px solid #e5e5e5;}
.bp5x p {margin-bottom: 10px;}

/* Swiper */
.cqab {width: auto !important;height: 35px !important;position: absolute;top: 10px !important;left: 20px !important;z-index: 9;}
.cqab .swiper-pagination-bullet {width: 22px;height: 22px;background-color: transparent;border: 2px solid var(--white);color: var(--white);border-radius: 0;margin: 0 0 0 5px!important;opacity: 1;text-align: center;font-size: 13px;line-height: 18px;}
.cqab .swiper-pagination-bullet-active {background: var(--white);color: #333;}

/* Top section */
.bc9 {background: var(--white);padding: 20px;margin-top: 10px;display: flex;justify-content: space-between;border-radius: 4px;box-shadow: 0 1px 4px rgba(0,0,0,0.06);}
.m5gz {width: 460px;}
.m5gz .f36 {overflow: hidden;font-size: 20px;margin-bottom: 20px;}
.m5gz .hskv{position: relative;height: 236px;}
.m5gz .hskv li{position: relative;}
.m5gz .hskv li .ixb4 {display: block;height: 100%;width: 100%;}
.m5gz .hskv li img {height: 100%;width: 100%;}
.m5gz .hskv li p{position: absolute;bottom: 30px;left: 0px;text-align: center;color: var(--white);width: 100%;height: 20px;display: block;font-weight: bold;z-index: 99;line-height: 20px;padding-left: 10px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.m5gz .hskv li .w8rk{position: absolute;background: linear-gradient(to top, black 4%, transparent);left: 0px;bottom: 0px;width: 100%;height: 100%;}

.ryjx {width: 440px;}
.mk5 {margin-top: 30px;position: relative;}
.mk5 ul:first-child{margin-bottom: 40px;}
.mk5 ul li {display: flex;height: 20px;justify-content: space-between;align-items: center;position: relative;padding-left: 13px;margin-bottom: 15px;}
.mk5 ul li:last-child{margin-bottom: 15px;}
.mk5 ul li .y2sj {position: absolute;left: -3px;top: 6px;width: 7px;height: 7px;background-color: #ffffff;border: solid 1px #dcdbdc;border-radius: 50%;background: var(--white);z-index: 99;}
.mk5 ul li .b8qr {max-width: 320px;font-size: 15px;color: var(--text-dark);margin-right: 12px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.mk5 ul li:hover .y2sj{border-color: var(--primary);}
.mk5 ul li:hover .b8qr {color: var(--primary);}
.mk5 ul li .hjmx {margin-right: 25px;font-size: 14px;color: #999;}

.zb85 {width: 200px;}
.jf6q ul{margin-top: 20px;}
.jf6q ul li {width: 100%;overflow: hidden;}
.jf6q ul li .ixb4 {display: block;position: relative;width: 100%;}
.jf6q ul li .ixb4 img{width: 100%;height: 110px;}
.jf6q ul li p {width: 100%;height: 24px;line-height: 30px;font-size: 14px;}
.jf6q ul li p.aygk {color: #000;font-weight: bold;}

/* Hot teams/players */
.gedn {overflow: hidden;background: var(--white);padding: 0px 5px 10px 5px;}
.gedn a {display: block;float: left;width: 110px;margin-left: 10px;background: var(--white);box-shadow: 0 0 4px 0 #dfdfdf;margin-top: 10px;padding: 10px;}
.gedn a img {max-width: 100%;height: 40px;display: block;margin: 0 auto;}
.gedn a span {height: 30px;line-height: 30px;overflow: hidden;display: block;text-align: center;}

/* Sidebar detail lists */
.zkx2{background: var(--white);padding-bottom: 20px!important;}
.zkx2 ul {border-bottom: 1px dashed #e8e8e8;padding: 10px;margin-bottom: 20px;}
.zkx2 ul:last-child {margin-bottom: 0;border: 0;padding-bottom: 0;}
.zkx2 ul li {display: flex;align-items: center;font-size: 16px;line-height: 25px;border-bottom: 1px solid #f5f5f5;padding: 5px 0;}
.zkx2 ul li span{display: inline-block;width: 5px;height: 5px;line-height: 20px;margin: 5px 10px 0 0;text-align: center;font-size: 12px;color: var(--white);vertical-align: top;background: #cfcfcf;border-radius: 50%;}
.zkx2 ul li a {display: block;flex: 1;max-width: 100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}

/* Back to top */
#totop {position: fixed;right: 20px;bottom: 20px;width: 40px;height: 40px;z-index: 9999;border: none;border-radius: 4px;background: var(--primary);color: var(--white);font-size: 18px;line-height: 40px;text-align: center;cursor: pointer;display: none;transition: background 0.3s;}
#totop:hover {background: var(--primary-dark);}
#totop::after {content: '\2191';}

/* Hamburger menu toggle */
.h4dz {display: none;background: none;border: none;cursor: pointer;padding: 10px 15px;position: absolute;right: 10px;top: 50%;transform: translateY(-50%);z-index: 100;}
.h4dz span {display: block;width: 24px;height: 2px;background: var(--white);margin: 5px 0;transition: 0.3s ease;}
.h4dz.xzf span:nth-child(1) {transform: rotate(45deg) translate(5px, 5px);}
.h4dz.xzf span:nth-child(2) {opacity: 0;}
.h4dz.xzf span:nth-child(3) {transform: rotate(-45deg) translate(5px, -5px);}

/* Empty state */
.tfsu {text-align: center;padding: 60px 20px;color: #999;}
.tfsu img {width: 100px;}
.tfsu span {display: block;font-size: 16px;}

/* Responsive */
@media (max-width: 1240px) {
    .container, .xhrh, .pkm2 {width: 98%;margin-left: 1%;margin-right: 1%;}
    .ezr .ri2e, .n2zx .f987 {width: 65%;}
    .ezr .m5gc, .x3j {width: 32%;margin-left: 1.5%;}
    .bc9 {flex-wrap: wrap;}
    .m5gz {width: 100%;margin-bottom: 15px;}
    .ryjx {width: 60%;}
    .zb85 {width: 35%;}
}

@media (max-width: 768px) {
    .container, .xhrh, .pkm2 {width: 100%;margin-left: 0;margin-right: 0;padding: 0 10px;box-sizing: border-box;}
    .ezr, .n2zx {flex-direction: column;}
    .ezr .ri2e, .ezr .m5gc,
    .n2zx .f987, .x3j {width: 100%;margin-left: 0;}
    .khu .dhm {font-size: 14px;position: relative;}
    .khu .vhfu .zx2m {width: 100%;}
    .khu .vhfu .zx2m .brvq {width: 100%;}
    .bc9 {flex-direction: column;}
    .m5gz, .ryjx, .zb85 {width: 100%;}
    .rkns ul {white-space: nowrap;overflow-x: auto;-webkit-overflow-scrolling: touch;}
    .h4dz {display: block;}
    .khu .dhm ul.xhrh {display: none;position: absolute;top: 100%;left: 0;width: 100%;background: var(--primary);flex-direction: column;z-index: 999;box-shadow: 0 4px 10px rgba(0,0,0,0.15);}
    .khu .dhm ul.xhrh.nav-open {display: flex;}
    .khu .dhm ul.xhrh li {text-align: left;border-bottom: 1px solid rgba(255,255,255,0.1);}
    .khu .dhm ul.xhrh li a {padding: 0 20px;}
}

@media (max-width: 480px) {
    body {font-size: 14px;}
    .khu .dhm {font-size: 14px;height: 40px;line-height: 40px;}
    .khu .dhm li {padding: 0 4px;font-size: 13px;}
    .wyx3 .cfzw {padding: 12px;}
    .wyx3 .cfzw .hfx4 .qqf {font-size: 15px;}
    .wyx3 .pf4j {flex-direction: column;align-items: stretch;}
    .wyx3 .ixb4 {width: 100%;height: 180px;margin-bottom: 10px;}
    .wyx3 .yqeg {margin: 0;width: 100%;min-width: 0;}
    .z2b {padding: 15px 0;font-size: 15px;line-height: 26px;}
    .z2b p {font-size: 15px;line-height: 26px;}
    .z2b p img {width: 100%;}
    .h8u h1 {font-size: 20px;}
    .bgjm span, .bgjm h2, .bgjm h3 {font-size: 17px;}
    .crhi li {padding: 0 10px;font-size: 14px;}
    .p854 {padding: 12px;}
    .f52 {font-size: 13px;padding: 0 10px;height: 28px;line-height: 28px;}
    #totop {width: 36px;height: 36px;line-height: 36px;font-size: 16px;right: 12px;bottom: 12px;}
}

/* ===================================================================
   赛事直播页 — zhibo8 schedule list style
   =================================================================== */

/* Tabs */
.zb-tabs {display:flex;gap:0;margin-bottom:0;background:var(--white);border-bottom:2px solid var(--primary);}
.zb-tab {flex:1;padding:10px 0;text-align:center;font-size:14px;color:var(--text-secondary);cursor:pointer;background:var(--white);border:none;outline:none;transition:all .15s;font-weight:500;}
.zb-tab:hover {color:var(--primary);}
.zb-tab.xzf,.zb-tab[data-active="true"] {color:var(--white);background:var(--primary);font-weight:600;}

/* Date header */
.zb-date {background:#f5f5f5;padding:8px 15px;font-size:14px;font-weight:700;color:var(--text-dark);border-left:3px solid var(--primary);}

/* Match row */
.zb-row {display:flex;align-items:center;padding:10px 15px;border-bottom:1px solid #f0f0f0;background:var(--white);transition:background .12s;font-size:13px;}
.zb-row:last-child {border-bottom:none;}
.zb-row:hover {background:#fafbfc;}
.zb-row-live,
.zb-row[data-status="live"] {background:#fff8e1;}
.zb-row-live:hover,
.zb-row[data-status="live"]:hover {background:#fff3cd;}
.zb-row-done,
.zb-row[data-status="finished"] {color:#666;}

/* Time */
.zb-time {width:55px;flex-shrink:0;text-align:center;font-size:13px;color:var(--text-secondary);font-weight:500;}
.zb-row-live .zb-time,
.zb-row[data-status="live"] .zb-time {color:#dc2626;font-weight:700;}
.zb-live-dot {display:inline-block;width:6px;height:6px;border-radius:50%;background:#dc2626;animation:zbPulse 1.4s ease-in-out infinite;vertical-align:middle;margin-right:3px;}
@keyframes zbPulse {0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.6)}}

/* Home team */
.zb-home {width:120px;flex-shrink:0;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text-dark);}
.zb-row-live .zb-home,
.zb-row[data-status="live"] .zb-home {color:#1a1a1a;}

/* League label - center */
.zb-league-label {flex:1;text-align:center;font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px;min-width:0;}

/* Source / links */
.zb-source {flex-shrink:0;display:flex;gap:8px;align-items:center;}
.zb-link {font-size:12px;color:var(--primary);text-decoration:none;cursor:pointer;white-space:nowrap;}
a.zb-link:hover {text-decoration:underline;}

/* Away team */
.zb-away {width:120px;flex-shrink:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text-dark);}
.zb-row-live .zb-away,
.zb-row[data-status="live"] .zb-away {color:#1a1a1a;}

/* Score mini (right side) */
.zb-score-mini {width:42px;flex-shrink:0;text-align:center;font-size:12px;font-weight:600;color:var(--text-secondary);}
.zb-row-live .zb-score-mini,
.zb-row[data-status="live"] .zb-score-mini {color:#dc2626;font-weight:700;}
.zb-row-done .zb-score-mini,
.zb-row[data-status="finished"] .zb-score-mini {color:#999;}

/* Empty state */
.zb-empty {text-align:center;padding:50px 20px;color:#999;font-size:14px;}

/* Mobile responsive */
@media (max-width:768px) {
  .zb-row {padding:8px 10px;font-size:12px;}
  .zb-home {width:80px;}
  .zb-away {width:80px;}
  .zb-league-label {font-size:11px;padding:0 5px;}
  .zb-score-mini {width:36px;font-size:11px;}
  .zb-time {width:45px;font-size:12px;}
  .zb-source {gap:4px;}
  .zb-link {font-size:11px;}
}
@media (max-width:480px) {
  .zb-home {width:60px;font-size:12px;}
  .zb-away {width:60px;font-size:12px;}
  .zb-league-label {display:none;}
  .zb-source .zb-link:not(:first-child) {display:none;}
}

/* ---- Scoreboard (match detail) ---- */
.rbym {display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%); border-radius: 8px; padding: 30px 20px; margin-bottom: 20px; box-shadow: 0 4px 15px rgba(0,0,0,0.15);}
.ttk {flex: 1; text-align: center; min-width: 0;}
.ttk a {display: flex; flex-direction: column; align-items: center; gap: 8px; text-decoration: none; color: #fff;}
.ttk img {width: 72px; height: 72px; object-fit: contain; filter: drop-shadow(0 2px 6px rgba(0,0,0,0.3));}
.ttk strong {font-size: 16px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 140px;}
.wjn {padding: 0 20px; text-align: center;}
.ruc {display: flex; align-items: center; gap: 10px; justify-content: center;}
.ruc span {font-size: 42px; font-weight: 800; color: #fff; line-height: 1;}
.ruc .gwhh {font-size: 30px; color: rgba(255,255,255,0.4); font-weight: 300;}
.mewn {font-size: 13px; color: rgba(255,255,255,0.7); margin-top: 8px;}
.iye2 {color: #fbbf24 !important; font-weight: 600;}
.iye2::before {content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #fbbf24; margin-right: 6px; animation: livePulse 1.5s ease-in-out infinite;}

/* Event timeline */
.hfg7 {position: relative; padding: 15px 0;}
.r3kq {display: flex; align-items: flex-start; padding: 8px 15px; margin-bottom: 4px; border-radius: 4px; font-size: 14px; transition: background 0.2s;}
.r3kq:hover {background: var(--bg-light);}
.a8jt {width: 40px; font-weight: 600; color: var(--text-secondary); flex-shrink: 0; text-align: right; padding-right: 12px;}
.hass {width: 24px; text-align: center; flex-shrink: 0; font-size: 12px;}
.event-icon-goal {color: #16a34a;}
.event-icon-yellow_card {color: #eab308;}
.event-icon-red_card {color: #dc2626;}
.event-icon-substitution {color: #3b82f6;}
.event-icon-penalty {color: #8b5cf6;}
.event-icon-own_goal {color: #f97316;}
.nqk5 {flex: 1; min-width: 0;}
.nqk5 strong {font-size: 14px; color: var(--text-dark);}
.nqk5 small {display: block; font-size: 12px; color: var(--text-secondary); margin-top: 2px;}
.ahxp {text-align: center; padding: 40px; color: #999;}

/* ---- Team page ---- */
.irye {display: flex; align-items: center; gap: 20px; padding: 25px; background: var(--white); border-radius: 8px; margin-bottom: 20px; box-shadow: 0 1px 4px rgba(0,0,0,0.06);}
.irye img {width: 80px; height: 80px; object-fit: contain;}
.sw2d h1 {font-size: 24px; font-weight: 700; color: var(--text-dark); margin-bottom: 4px;}
.sw2d .cx2v {font-size: 13px; color: var(--text-secondary); display: flex; gap: 12px; flex-wrap: wrap;}
.sw2d .cx2v span {display: inline-flex; align-items: center; gap: 4px;}

/* Standing card */
.w243 {background: var(--white); border-radius: 8px; padding: 20px; margin-bottom: 20px; box-shadow: 0 1px 4px rgba(0,0,0,0.06); display: flex; align-items: center; gap: 20px; flex-wrap: wrap;}
.w243 .pyzs {display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--primary); color: #fff; font-size: 20px; font-weight: 700; flex-shrink: 0;}
.w243 .kg2w {display: flex; gap: 16px; flex-wrap: wrap; align-items: center;}
.kg2w {display: flex; gap: 16px; flex-wrap: wrap; flex: 1;}
.vyzj {text-align: center; min-width: 50px;}
.vyzj .yqiy {font-size: 18px; font-weight: 700; color: var(--text-dark); display: block;}
.vyzj .label {font-size: 11px; color: var(--text-secondary); display: block; margin-top: 2px;}
.standing-points {text-align: center; flex-shrink: 0; padding-left: 20px; border-left: 1px solid #eee;}
.standing-points .pts {font-size: 28px; font-weight: 700; color: var(--primary); display: block;}
.standing-points .label {font-size: 11px; color: var(--text-secondary);}

/* Team page header meta alias */
.team-header-meta, .cx2v {font-size: 13px; color: var(--text-secondary); display: flex; gap: 12px; flex-wrap: wrap;}
.team-header-meta span, .cx2v span {display: inline-flex; align-items: center; gap: 4px;}

/* Related news on team page */
.unh {background: var(--white); border-radius: 4px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); padding: 15px;}
.wzym {display: flex; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f5f5f5; text-decoration: none; color: var(--text-dark);}
.wzym:last-child {border-bottom: none;}
.wzym img {width: 120px; height: 80px; object-fit: cover; border-radius: 4px; flex-shrink: 0;}
.sp7k {flex: 1; min-width: 0;}
.sp7k h3 {margin: 0 0 6px 0; font-size: 14px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.sp7k h3:hover {color: var(--primary);}
.sp7k time {font-size: 12px; color: #999;}

/* Recent matches table */
.n3pe {width: 100%; border-collapse: collapse; font-size: 14px;}
.n3pe th {padding: 8px 10px; text-align: left; background: var(--bg-light); font-weight: 600; color: var(--text-secondary); border-bottom: 2px solid var(--border-color); font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px;}
.n3pe td {padding: 8px 10px; border-bottom: 1px solid #f0f0f0;}
.n3pe tr:hover td {background: var(--bg-light);}
.ubg7 {color: #16a34a; font-weight: 600;}
.kj7y {color: #eab308; font-weight: 600;}
.egyj {color: #dc2626; font-weight: 600;}

/* ---- League standings table ---- */
.pqme {width: 100%; border-collapse: collapse; font-size: 13px; background: var(--white); border-radius: 6px; overflow: hidden;}
.pqme th {padding: 10px 8px; text-align: center; background: var(--bg-light); font-weight: 600; color: var(--text-secondary); font-size: 11px; text-transform: uppercase; letter-spacing: 0.5px; border-bottom: 2px solid var(--border-color);}
.pqme th:nth-child(2) {text-align: left;}
.pqme td {padding: 8px; text-align: center; border-bottom: 1px solid #f0f0f0;}
.pqme td:nth-child(2) {text-align: left; font-weight: 500;}
.pqme tr:hover td {background: #f8fafc;}
.pqme .svzc {display: flex; align-items: center; gap: 6px;}
.pqme .svzc img {width: 18px; height: 18px; object-fit: contain;}
.pqme .svzc a {color: var(--text-dark); text-decoration: none;}
.pqme .svzc a:hover {color: var(--primary);}
.pqme tr.sb94 td:first-child::before {content: ''; display: inline-block; width: 3px; height: 16px; background: #3b82f6; border-radius: 2px; margin-right: 6px; vertical-align: middle;}
.pqme tr.ymk td:first-child::before {content: ''; display: inline-block; width: 3px; height: 16px; background: #ef4444; border-radius: 2px; margin-right: 6px; vertical-align: middle;}

/* ---- Homepage live widget ---- */
.home-live-section {background: var(--white); border-radius: 6px; margin-bottom: 16px; box-shadow: 0 1px 4px rgba(0,0,0,0.06); overflow: hidden;}
.home-live-header {display: flex; align-items: center; justify-content: space-between; padding: 10px 15px; background: linear-gradient(135deg, #1a1a2e, #16213e); color: #fff;}
.home-live-header h3 {font-size: 16px; font-weight: 600; color: #fff; margin: 0;}
.home-live-header a {font-size: 13px; color: rgba(255,255,255,0.7); text-decoration: none;}
.home-live-header a:hover {color: #fff;}
.home-live-matches {padding: 8px;}
.home-live-card {display: flex; align-items: center; padding: 8px 10px; border-radius: 4px; text-decoration: none; color: inherit; transition: background 0.2s; gap: 8px;}
.home-live-card:hover {background: var(--bg-light);}
.home-live-card.live {background: #fffbeb;}
.home-live-teams {flex: 1; display: flex; flex-direction: column; gap: 2px; font-size: 13px; min-width: 0;}
.home-live-teams span {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.home-live-score {font-weight: 700; font-size: 16px; color: var(--text-dark); width: 50px; text-align: center;}
.home-live-card.live .home-live-score {color: #dc2626;}
.home-live-status {font-size: 11px; width: 50px; text-align: center; color: var(--text-secondary);}
.home-live-card.live .home-live-status {color: #dc2626; font-weight: 600;}
.home-live-empty {text-align: center; padding: 20px; color: #999; font-size: 13px;}

/* ---- Mobile responsive for sports ---- */
@media (max-width: 768px) {
    .rbym {flex-direction: column; gap: 15px; padding: 20px 15px;}
    .ttk img {width: 56px; height: 56px;}
    .ruc span {font-size: 32px;}
    .ruc .gwhh {font-size: 24px;}
    .ttk strong {font-size: 14px; max-width: 120px;}
    .uvke {flex-wrap: wrap; gap: 6px;}
    .rqf8 {width: 100%; text-align: left; padding-bottom: 4px;}
    .s9j4 {flex-direction: row; width: auto; gap: 4px;}
    .s9j4 .jqkt {font-size: 16px;}
    .irye {flex-direction: column; text-align: center; gap: 12px;}
    .irye img {width: 64px; height: 64px;}
    .w243 {justify-content: center;}
    .kg2w {justify-content: center;}
    .pqme {font-size: 11px; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch;}
    .pqme th, .pqme td {padding: 6px 4px;}
    .n3pe {font-size: 12px;}
    .wzym {flex-direction: column;}
    .wzym img {width: 100%; height: auto;}
    .home-live-card {flex-wrap: wrap; gap: 4px;}
    .qqdv {flex-wrap: wrap; gap: 6px;}
}
@media (max-width: 480px) {
    .rbym {padding: 15px 10px;}
    .ruc span {font-size: 28px;}
    .r3kq {padding: 6px 8px; font-size: 13px;}
    .a8jt {width: 32px; font-size: 12px;}
}

/* Tennis surface badges — base first, specific variants override */
.f75q  {display: inline-block; padding: 2px 8px; border-radius: 10px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.6); border: 1px solid rgba(255,255,255,0.15);}
.pnm9   {background: #c0392b22; color: #c0392b; border-color: #c0392b55;}
.cst5  {background: #27ae6022; color: #27ae60; border-color: #27ae6055;}
.eptn   {background: #2980b922; color: #2980b9; border-color: #2980b955;}
.dntm {background: #8e44ad22; color: #8e44ad; border-color: #8e44ad55;}

/* Esports game badges — base first, specific variants override */
.auag                  {display: inline-block; padding: 3px 12px; border-radius: 12px; font-size: 12px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.7); border: 1px solid rgba(255,255,255,0.15);}
.ve3k {background: #1a78c222; color: #1a78c2; border-color: #1a78c255;}
.yybp              {background: #e8830022; color: #e88300; border-color: #e8830055;}
.fth7           {background: #c23b2222; color: #c23b22; border-color: #c23b2255;}
.pghn         {background: #ff4b5022; color: #ff4b50; border-color: #ff4b5055;}
