:root {
--bg: #000000;
--bg-soft: #0a0a0a;
--card: #1a1a1a;
--muted: #9aa7b2;
--text: #e6eef6;
--accent: #00c853;
--accent-2: #2bd2ff;
--danger: #ff5252;
--warning: #ffc400;
--chip: #0c1117;
--divider: rgba(255,255,255,.06);
--shadow: 0 6px 14px rgba(0,0,0,.35);
}
* { box-sizing: border-box; }
html, body { height: 100%; }
body {
margin: 0; color: var(--text); background: var(--bg); font: 14px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,\5FAE\8F6F\96C5\9ED1,\9ED1\4F53,sans-serif;
padding-top: 60px;
}
img { max-width: 100%; display: block; }
.container { max-width: 1330px; width: 100%; margin: 0 auto; padding: 0 12px; }
.button { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border-radius: 8px; background: #1a1a1a; color: var(--text); border: 1px solid var(--divider); cursor: pointer; }
.button.is-accent { background: linear-gradient(90deg,var(--accent),#19e07a); border-color: transparent; color: #06220f; font-weight: 700; }
.tag { padding:2px 8px; border-radius:6px; font-size:12px; background:#000000; border:1px solid var(--divider); color: var(--muted); }
.hr { height: 1px; background: var(--divider); border: none; margin: 16px 0; }
.icon { width: 16px; height: 16px; border-radius: 3px; display:inline-block; }

.content_post_box{
  -ms-flex-wrap: wrap;
  color: #fff;
  flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px #f7f7f7 solid;
  padding: 1rem;
  margin: 1.5rem 0;
}
.content{
  margin: 20px 0;
}
.content img{
  display: block;
  margin: 0 auto;
  width: 80%;
}

#page{
  padding: 20px 0 40px;
}
#page .pagination{
  padding: 0px;
  margin-top: 40px;
  list-style-type: none;
}
#page .pagination li span{
  display: block;
  width: 35px;
  height: 35px;
  line-height: 35px;
  border-radius: 0px!important;
  margin-right: 15px;
  padding: 0px;
  border: 1px solid #004284;
  background: #004284;
  color: #fff;
}
#page .pagination li{
  text-align: center;
  display: inline-block;
}
#page .pagination li a{
  display: block;
  width: 35px;
  height: 35px;
  line-height: 35px;
  border-radius: 0px!important;
  margin-right: 15px;
  padding: 0px;
  border: 1px solid #f5f5f5;
  color: #666;
}
#page .pagination li.disabled span{
  color: #666;
  border: 1px solid #f5f5f5;
  background: #fff;
}
#page .pagination li:last-child a{
    margin-right: 0px;
}

.topbar { 
background: #000000; 
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1000;
}
.topbar .row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding: 12px; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; color:#ffffff; letter-spacing:.5px; font-size:24px; }
.brand a{color: #fff;font-weight:800;text-decoration: none;}
.brand .z { display:none; }
.top-actions { display:flex; align-items:center; gap:12px; }
.top-nav { display:flex; align-items:center; gap:50px; }
.top-nav a { color: var(--text); text-decoration:none; font-size:14px; font-weight:500; padding:8px 0; transition:color 0.2s; }
.top-nav a:hover { color: var(--accent); }
.top-buttons { display:flex; align-items:center; gap:8px; }
.top-buttons .btn-red { background:#e44545; color:#fff; border:none; padding:8px 16px; border-radius:6px; font-weight:600; font-size:13px; cursor:pointer; transition:background 0.2s; }
.top-buttons .btn-red:hover { background:#d63a3a; }

.mobile-toggle { display:none; flex-direction:column; gap:3px; background:none; border:none; cursor:pointer; padding:8px; }
.mobile-toggle span { width:20px; height:2px; background:#fff; transition:all 0.3s ease; }
.mobile-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.mobile-toggle.active span:nth-child(2) { opacity:0; }
.mobile-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(7px,-6px); }
.mobile-nav { 
position:absolute; 
top:100%; 
left:0; 
right:0; 
background:#000000; 
border-bottom:1px solid var(--divider); 
z-index:1000; 
max-height:0; 
overflow:hidden; 
transition:max-height 0.3s ease-in-out, opacity 0.3s ease-in-out; 
opacity:0; 
}
.mobile-nav.active { 
max-height:500px; 
opacity:1; 
}
.mobile-nav .nav-links { padding:16px 0; }
.mobile-nav .nav-links a { 
display:block; 
padding:12px 20px; 
color:var(--text); 
text-decoration:none; 
border-bottom:1px solid rgba(255,255,255,0.1); 
transform:translateY(-10px); 
opacity:0; 
transition:transform 0.3s ease, opacity 0.3s ease; 
}
.mobile-nav.active .nav-links a { 
transform:translateY(0); 
opacity:1; 
}
.mobile-nav.active .nav-links a:nth-child(1) { transition-delay:0.1s; }
.mobile-nav.active .nav-links a:nth-child(2) { transition-delay:0.15s; }
.mobile-nav.active .nav-links a:nth-child(3) { transition-delay:0.2s; }
.mobile-nav.active .nav-links a:nth-child(4) { transition-delay:0.25s; }
.mobile-nav.active .nav-links a:nth-child(5) { transition-delay:0.3s; }
.mobile-nav.active .nav-links a:nth-child(6) { transition-delay:0.35s; }
.mobile-nav.active .nav-links a:nth-child(7) { transition-delay:0.4s; }
.mobile-nav.active .nav-links a:nth-child(8) { transition-delay:0.45s; }
.mobile-nav.active .nav-links a:nth-child(9) { transition-delay:0.5s; }
.mobile-nav .nav-links a:hover { background:rgba(255,255,255,0.05); color:var(--accent); }
.mobile-nav .nav-buttons { 
padding:16px 20px; 
display:flex; 
gap:12px; 
transform:translateY(-10px); 
opacity:0; 
transition:transform 0.3s ease, opacity 0.3s ease; 
transition-delay:0.6s; 
}
.mobile-nav.active .nav-buttons { 
transform:translateY(0); 
opacity:1; 
}
.mobile-nav .nav-buttons .btn-red { flex:1; text-align:center; }

.sponsor-banner img { width:100%; height:auto; display:block; }

.as-no-data {
    height: 300px;
    padding: 20px;
    text-align: center;
}
.as-no-data img{
    width: 80px;
    margin: 0 auto;
}

.main-banner { 
background: #000; 
padding: 10px 0; 
text-align: left; 
}
.banner-title { 
background: linear-gradient(135deg, #d2691e, #8b0000); 
color: #fff; 
font-size: 16px; 
font-weight: 600; 
text-transform: uppercase; 
padding: 8px 16px; 
border-radius: 6px; 
margin: 0; 
display: inline-block; 
letter-spacing: 0.3px; 
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3); 
}

.breadcrumb-nav {
  margin: 10px 0;
  padding: 0;
}

.breadcrumb-link {
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s;
}

.breadcrumb-link:hover {
  color: #00ff00;
}

.breadcrumb-separator {
  color: #ffffff;
  margin: 0 8px;
  font-size: 14px;
}

.breadcrumb-current {
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
}

.rankings-header {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  padding: 0;
}

.title-bar {
  width: 3px;
  height: 28px;
  background: #00ff00;
  margin-right: 8px;
  flex-shrink: 0;
}

.rankings-title {
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  margin: 0;
  line-height: 1.2;
}

.filter-section {
  background: #2a2a2a;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 20px;
}

.league-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.league-btn {
  background: #3a3a3a;
  color: #ffffff;
  color: #fff;
  border: none;
  padding: 8px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
  white-space: nowrap;
  flex-shrink: 0;
}

.league-btn:hover {
  background: #4a4a4a;
}

.league-btn.active {
  background: linear-gradient(2deg, #002a0c 19.71%, #3ed46a 119.12%);
}

.league-table-section {
  background: #2a2a2a;
  border-radius: 8px;
  margin-bottom: 20px;
  overflow: hidden;
}

.league-table-header {
  padding: 16px 20px;
  border-bottom: 1px solid #3a3a3a;
}

.league-info {
  display: flex;
  align-items: center;
  gap: 8px;
}

.league-icon {
  font-size: 16px;
}

.league-name {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
}



.table-container {
  overflow-x: auto;
  position: relative;
}

.league-table {
  width: 100%;
  border-collapse: collapse;
  background: #2a2a2a;
}

.league-table th {
  background: #3a3a3a;
  color: #ffffff;
  padding: 12px 8px;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  border-bottom: 1px solid #4a4a4a;
}

.league-table td {
  padding: 12px 8px;
  text-align: center;
  border-bottom: 1px solid #3a3a3a;
  color: #ffffff;
  font-size: 12px;
}

.league-table tbody tr:hover {
  background: #3a3a3a;
}

.rank-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  background: #4a4a4a;
}

.rank-badge.rank-1,
.rank-badge.rank-2,
.rank-badge.rank-3,
.rank-badge.rank-4 {
  background: #ff0000;
}

.rank-badge.rank-5 {
  background: #0066ff;
}

.team-info {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
}

.team-logo {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.team-name {
  color: #ffffff;
  font-size: 12px;
  font-weight: 500;
  text-align: left;
}

.win {
  color: #00ff00;
  font-weight: 600;
}

.draw {
  color: #0066ff;
  font-weight: 600;
}

.loss {
  color: #ff0000;
  font-weight: 600;
}

.positive {
  color: #00ff00;
  font-weight: 600;
}

.negative {
  color: #ff0000;
  font-weight: 600;
}

.points {
  color: #ffffff;
  font-weight: 600;
}

.form-indicators {
  display: flex;
  gap: 5px;
  justify-content: center;
}

.form-indicators span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

.form-win {
  background: #7fb17f;
  color: #000000;
}

.form-draw {
  background: #ffaa00;
  color: #000000;
}

.form-loss {
  background: #ff0000;
  color: #ffffff;
}

.site-bars {
    border-radius: 6px;
    background: #1C1E20;
    padding: 0px 10px;
    margin-bottom: 20px;
}
.site-bars .nav-tabs {
  list-style-type: none;
  border-bottom: 0;
  display: flex;
  padding: 10px 10px;
}
.site-bars .nav-tabs li .nav-link {
    display: flex;
    gap: 8px;
    margin-bottom: 0;
    background: none;
    border: none;
    color: #fff;
    padding: 5px 20px;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    text-transform: uppercase;
    font-weight: 700;
}
.site-bars .nav-tabs li .nav-link.active, .site-bars .nav-tabs li .nav-link:focus {
    border-radius: 6px;
    background: #00A942;
    border: none;
    color: #fff;
    outline: none;
    transition: .3s;
    text-decoration: underline;
}

/* 移动端适配 */
@media (max-width: 768px) {
  .site-bars .nav-tabs{
    justify-content: space-evenly;
  }
  .filter-section{
    padding: 10px;
  }
  .rankings-title {
    font-size: 16px;
  }
  
  .title-bar {
    height: 24px;
    width: 2px;
  }
  
  .league-buttons {
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */
    flex-wrap: nowrap; /* 强制不换行 */
    white-space: nowrap;
  }
  
  .league-buttons::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
  }
  
  .league-btn {
    padding: 6px 8px;
    font-size: 11px;
    flex-shrink: 0; /* 防止按钮被压缩 */
    white-space: nowrap;
  }
  
  /* 联赛表格移动端适配 */
  .league-table-header {
    padding: 12px 16px;
  }
  
  .league-name {
    font-size: 14px;
  }
  
  .league-table th,
  .league-table td {
    padding: 8px 4px;
    font-size: 10px;
  }
  
  .rank-badge {
    width: 20px;
    height: 20px;
    font-size: 10px;
  }
  
  .team-logo {
    width: 16px;
    height: 16px;
    font-size: 10px;
  }
  
  .team-name {
    font-size: 10px;
  }
  
  .form-indicators span {
    width: 14px;
    height: 14px;
    font-size: 8px;
  }
  
  .next-opponent {
    width: 16px;
    height: 16px;
    font-size: 10px;
  }
  
  /* 移动端固定前两列 */
  .league-table {
    min-width: 600px; /* 确保表格有足够宽度 */
  }
  
  .league-table th:nth-child(1),
  .league-table td:nth-child(1) {
    position: sticky;
    left: 0;
    background: #2a2a2a;
    z-index: 10;
    border-right: 1px solid #3a3a3a;
  }
  
  .league-table th:nth-child(2),
  .league-table td:nth-child(2) {
    position: sticky;
    left: 40px; /* 第一列宽度 */
    background: #2a2a2a;
    z-index: 10;
    border-right: 1px solid #3a3a3a;
  }
  
  /* 表头固定列背景色 */
  .league-table th:nth-child(1),
  .league-table th:nth-child(2) {
    background: #3a3a3a;
  }
  
  /* 悬停时固定列背景色 */
  .league-table tbody tr:hover th:nth-child(1),
  .league-table tbody tr:hover td:nth-child(1),
  .league-table tbody tr:hover th:nth-child(2),
  .league-table tbody tr:hover td:nth-child(2) {
    background: #3a3a3a;
  }
}

/* 一键置顶按钮 */
.scroll-to-top {
  position: fixed;
  bottom: 50px;
  right: 30px;
  width: 30px;
  height: 30px;
  background: #00ff00;
  border: none;
  border-radius: 50%;
  color: #ffffff;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  box-shadow: 0 4px 12px rgba(0, 255, 0, 0.3);
  transition: all 0.3s ease, opacity 0.5s ease, transform 0.5s ease;
  opacity: 0;
  transform: translateY(20px) scale(0.8);
  pointer-events: none;
}

.scroll-to-top.show {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.scroll-to-top:hover {
  background: #00cc00;
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 6px 16px rgba(0, 255, 0, 0.4);
}

.scroll-to-top:active {
  transform: translateY(0);
}

.scroll-to-top svg {
  width: 20px;
  height: 20px;
}

/* PC端显示 */
@media (min-width: 769px) {
  .scroll-to-top {
    display: flex;
  }
}

/* 移动端隐藏 */
@media (max-width: 768px) {
  .scroll-to-top {
    display: none !important;
  }
}

/* 加载动画 */
.loading-container {
position: relative;
display: none;
text-align: center;
color: #ffffff;
background: rgba(0, 0, 0, 0.9);
padding: 80px 20px;
border-radius: 8px;
min-width: 200px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
margin: 20px auto;
max-width: 300px;
}
.loading-bar {
width: 200px;
height: 4px;
background: rgba(255, 255, 255, 0.2);
border-radius: 2px;
overflow: hidden;
margin: 0 auto 16px;
position: relative;
}
.loading-progress {
width: 100%;
height: 100%;
background: linear-gradient(90deg, #1e40af, #3b82f6, #1e40af);
background-size: 200% 100%;
animation: loading-slide 1.5s ease-in-out infinite;
border-radius: 2px;
}
.loading-text {
font-size: 14px;
font-weight: 500;
color: #ffffff;
}
@keyframes loading-slide {
0% {
background-position: -200% 0;
}
100% {
background-position: 200% 0;
}
}

/* 加载更多按钮 */
.load-more-container { 
text-align: center; 
padding: 20px 0; 
}
.load-more-btn { 
background: #333; 
color: #fff; 
border: none; 
padding: 12px 24px; 
border-radius: 6px; 
font-size: 14px; 
font-weight: 600; 
text-transform: uppercase; 
cursor: pointer; 
display: inline-flex; 
align-items: center; 
gap: 8px; 
transition: background-color 0.2s ease; 
outline: none; 
-webkit-tap-highlight-color: transparent; 
user-select: none; 
}
.load-more-btn:hover { 
background: #444; 
}
.load-more-btn:active { 
background: #555; 
}
.arrow-icon { 
font-size: 12px; 
font-weight: bold; 
}
.navbar { 
background: var(--bg-soft); 
border-bottom: 1px solid var(--divider); 
width: 100%;
padding: 10px 0;
}

@media (min-width: 768px) {

.sports-filter-container {
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 20px;
}
.sports-categories {
overflow-x: visible;
margin-bottom: 0;
}
.filter-row {
overflow-x: visible;
margin-left: auto;
}
}
/* 体育分类和筛选按钮容器 */
.sports-filter-container {
display: flex;
flex-direction: row;
gap: 12px;
}

.sports-categories { 
display: flex; 
gap: 0; 
margin-bottom: 0; 
overflow-x: visible; 
flex-wrap: nowrap; 
padding-bottom: 0; 
background: #1a1a1a; 
border-radius: 12px; 
padding: 4px; 
border: 1px solid #333; 
}
@media (min-width: 768px) {
.sports-categories {
flex-wrap: wrap;
overflow-x: visible;
}
}
.sport-item { 
display: flex; 
align-items: center; 
gap: 8px; 
padding: 8px 25px; 
border-radius: 8px; 
cursor: pointer; 
transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease; 
border: 1px solid transparent;
color: #999; 
font-weight: 600; 
font-size: 12px; 
text-transform: uppercase; 
position: relative; 
background: transparent; 
flex-shrink: 0; 
white-space: nowrap; 
outline: none; 
-webkit-tap-highlight-color: transparent; 
user-select: none; 
}
.sport-item:not(:last-child)::after { 
content: ''; 
position: absolute; 
right: 0; 
top: 50%; 
transform: translateY(-50%); 
width: 1px; 
height: 20px; 
background: #333; 
}
.sport-item.active { 
background: linear-gradient(135deg, #1e40af, #3b82f6); 
color: #00ffff; 
border: 1px solid #00ffff; 
box-shadow: 0 0 10px rgba(0, 255, 255, 0.3); 
transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease; 
}
.sport-item:not(.active):hover { 
color: #fff; 
background: rgba(255, 255, 255, 0.1); 
transition: background-color 0.2s ease, color 0.2s ease; 
}
.sport-item .icon { 
  font-size: 16px;
width: 24px; 
height: 24px;
background: unset!important; 
display: flex; 
align-items: center; 
justify-content: center; 
border-radius: 50%; 
}
.sport-item.active .icon { 
color: #fff; 
}
.sport-item:not(.active) .icon { 
color: #999; 
}
.filter-row { 
display:flex; 
align-items:center; 
gap:8px; 
flex-wrap: wrap;
overflow-x: visible;
padding-bottom: 4px;
}
@media (min-width: 768px) {
.filter-row {
flex-wrap: wrap;
overflow-x: visible;
}
}
.filter-btn { 
display:flex; 
align-items:center; 
gap:6px; 
padding:6px 12px; 
border-radius:6px; 
background:#1a1a1a; 
border:1px solid var(--divider); 
color:var(--muted); 
cursor:pointer; 
font-size:13px; 
transition:all 0.2s; 
flex-shrink: 0;
white-space: nowrap;
}
@media (min-width: 768px) {
.filter-btn {
flex-shrink: 1;
white-space: normal;
}
}
.filter-btn.live { background:#16a34a; border-color:#16a34a; color:#fff; font-weight:600; }
.filter-btn.blue { background:#1e40af; border-color:#1e40af; color:#fff; }
.filter-btn .icon { width:14px; height:14px; }
.filter-btn .live-icon { background:#fff; border-radius:50%; }
.filter-btn .flame-icon { background:linear-gradient(45deg, #ff6b35, #f7931e); }
.filter-btn .mic-icon { background:#3b82f6; }
.filter-btn .calendar-icon { background:#6b7280; }
.filter-btn .globe-icon { background:#eab308; }
.livescore-toggle { 
margin-left: auto; 
display: flex; 
align-items: center; 
gap: 8px; 
background: #1a1a1a; 
border-radius: 18px; 
padding: 4px 8px; 
border: 1px solid #333; 
}
.toggle-switch { 
position: relative; 
width: 44px; 
height: 24px; 
background: #374151; 
border-radius: 12px; 
cursor: pointer; 
transition: background 0.2s; 
}
.toggle-switch.active { 
background: #1e40af; 
}
.toggle-switch .slider { 
position: absolute; 
top: 2px; 
left: 2px; 
width: 20px; 
height: 20px; 
background: #fff; 
border-radius: 50%; 
transition: transform 0.2s; 
}
.toggle-switch.active .slider { 
transform: translateX(20px); 
}
.toggle-label { 
color: #fff; 
font-size: 13px; 
font-weight: 600; 
text-transform: uppercase; 
}
.tournament-dropdown { display:flex; align-items:center; gap:6px; padding:6px 12px; border-radius:6px; background:#1a1a1a; border:1px solid var(--divider); color:var(--muted); cursor:pointer; font-size:13px; position:relative; }
.tournament-dropdown .chevron { width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:4px solid #16a34a; }
.tournament-dropdown img{
  width: 100%;
  height: 100%;
}
/* 联赛选择下拉菜单 */
.league-dropdown { 
position:absolute; 
top:100%; 
right:0; 
width:380px; 
background:#000000; 
border:1px solid var(--divider); 
border-radius:8px; 
box-shadow:0 8px 24px rgba(0,0,0,0.4); 
z-index:1000; 
max-height:400px; 
overflow:hidden; 
opacity:0; 
transform:translateY(-10px); 
transition:all 0.3s ease; 
pointer-events:none; 
}
.league-dropdown.active { 
opacity:1; 
transform:translateY(0); 
pointer-events:auto; 
}
.league-dropdown-header { 
display:flex; 
align-items:center; 
justify-content:space-between; 
padding:16px 20px; 
border-bottom:1px solid var(--divider); 
}
.league-dropdown-title { 
color:#16a34a; 
font-weight:700; 
font-size:16px; 
}
.league-dropdown-close { 
width:24px; 
height:24px; 
display:flex; 
align-items:center; 
justify-content:center; 
color:#fff; 
cursor:pointer; 
border-radius:4px; 
transition:background 0.2s; 
}
.league-dropdown-close:hover { 
background:rgba(255,255,255,0.1); 
}
.league-list { 
max-height:320px; 
overflow-y:auto; 
-webkit-overflow-scrolling: touch; 
scrollbar-width: thin; 
scrollbar-color: rgba(100,149,237,.7) transparent; 
}
/* WebKit 滚动条样式 */
.league-list::-webkit-scrollbar { width: 8px; height: 8px; }
.league-list::-webkit-scrollbar-track { background: transparent; }
.league-list::-webkit-scrollbar-thumb { 
background: linear-gradient(180deg, rgba(59,130,246,.8), rgba(16,185,129,.8)); 
border-radius: 999px; 
}
.league-list::-webkit-scrollbar-thumb:hover { 
background: linear-gradient(180deg, rgba(37,99,235,1), rgba(5,150,105,1)); 
}
.league-item { 
display:flex; 
align-items:center; 
justify-content:space-between; 
padding:12px 20px; 
cursor:pointer; 
transition:background 0.2s; 
border-bottom:1px solid rgba(255,255,255,0.05); 
}
.league-item:hover { 
background:rgba(255,255,255,0.05); 
}
.league-item.active { 
background:#1e3a8a; 
}
.league-item-left { 
display:flex; 
align-items:center; 
gap:12px; 
}
.league-logo { 
width:24px; 
height:24px; 
border-radius:4px; 
display:flex; 
align-items:center; 
justify-content:center; 
font-size:12px; 
font-weight:700; 
position: relative;
overflow: hidden;
}
.league-logo-img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 4px;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
.league-logo.globe { 
background:#eab308; 
color:#000; 
}
.league-logo.premier { 
background:#000; 
color:#fff; 
}
.league-logo.laliga { 
background:linear-gradient(45deg, #ff0000, #ffff00); 
color:#000; 
}
.league-logo.bundesliga { 
background:linear-gradient(45deg, #ff0000, #ffffff); 
color:#000; 
}
.league-logo.seriea { 
background:linear-gradient(45deg, #0066cc, #ffffff); 
color:#000; 
}
.league-logo.ligue1 { 
background:linear-gradient(45deg, #000000, #ffffff); 
color:#fff; 
}
.league-logo.champions { 
background:#000; 
color:#fff; 
}
.league-logo.europa { 
background:#ff8c00; 
color:#fff; 
}
.league-name { 
color:#fff; 
font-size:14px; 
font-weight:500; 
width: 200px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.league-item-right { 
display:flex; 
align-items:center; 
gap:8px; 
}
.league-count { 
color:#16a34a; 
font-weight:700; 
font-size:14px; 
}
.league-icon { 
width:16px; 
height:16px; 
background:#fff; 
border-radius:2px; 
display:flex; 
align-items:center; 
justify-content:center; 
font-size:10px; 
color:#000; 
}

/* 赛事卡片列表 */
.section-title { display:flex; align-items:center; justify-content:space-between; margin: 10px 0 12px; }
.cards { display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.card { 
background: #1a1a1a url('/template/index/images/bg-match.png') no-repeat center center; 
background-size: cover;
border:1px solid #333; 
border-radius: 8px; 
box-shadow: 0 2px 8px rgba(0,0,0,0.3); 
padding: 14px; 
}
#cardsWrap-basketball .card{
  background-image: url('/template/index/images/bg-match-basketball.png')!important;
  background-position: center;
  background-repeat: no-repeat;
}
.card:hover { border-color: #1fdf7b55; box-shadow: 0 6px 18px rgba(0,0,0,.45); }
.card-link { display: block; text-decoration: none; color: inherit; }
.card-link:hover { text-decoration: none; }
.card-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px;height: 20px; }
.league-info { display:flex; align-items:center; gap:8px; }
.league .flag { width: 24px; height: 24px; border-radius: 50%; object-fit:cover; }
.league small { color: #ccc; font-size: 11px; text-transform:uppercase; font-weight:500; }
.match-time { font-size: 11px; color: #999; }
.teams-section { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.teams-section .team:last-child span{
  text-align: right;
}
.team { 
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  justify-content: space-evenly; 
}
.team .logo { width: 24px; height: 24px; border-radius: 50%; object-fit:cover; }
.team span { font-size: 13px; font-weight: 500; color: #fff;width: 140px; overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;}
.score-section { display:flex; flex-direction:column; align-items:center; width: 100px; }
.current-score { 
  width: 40px;
  height: 40px;
  font-size: 16px; 
  text-align: center;
  line-height: 40px;
  font-weight: bold; 
  color: #fff; 
  margin-bottom: 4px; 
  background: linear-gradient(135deg, #1e40af, #3b82f6); 
  border-radius: 50%; 
  display: inline-block; 
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3); 
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); 
}
.current-score.bf{
  border-radius: 5px;
  width: 80px;
  padding: 0 10px;
}
.half-time { font-size: 10px; color: #999; }
/* 比赛统计信息模式 */
.match-stats { 
display: flex; 
align-items: center; 
margin-top: 10px; 
background: #2a2a2a; 
padding: 0 8px; 
border-radius: 10px; 
gap: 8px; 
width: fit-content; 
max-width: 300px; 
height: 20px; 
}
.match-stats.mode-1 { 
/* 统计信息模式：HT 1-0, 角球, 黄牌等 */
background: #2a2a2a; 
padding: 0 8px; 
border-radius: 10px; 
height: 20px; 
}
.match-stats-container {
display: flex;
gap: 8px;
flex-wrap: wrap;
height: 30px;
}
.match-stats.mode-2 { 
/* 比赛结果卡片模式：队徽 + 比分 + 队徽 */
background: #333; 
padding: 0 8px; 
border-radius: 10px; 
gap: 0px; 
height: 20px; 
}

/* 统计信息样式 */
.stats { 
display: flex; 
gap: 6px; 
font-size: 9px; 
color: #999; 
align-items: center; 
}
.stats-item { 
display: flex; 
align-items: center; 
gap: 2px; 
}
.stats-label { 
color: #1fdf7b; 
font-weight: 600; 
font-size: 12px; 
margin-right: 5px;
}
.stats-value { 
color: #fff; 
font-size: 9px; 
}
.stats-icon { 
width: 14px; 
height: 14px; 
display: inline-block; 
margin-right: 5px;
}
.stats-icon.corner { 
background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 8"><rect x="1" y="1" width="1" height="6" fill="%23ffd700"/><rect x="2" y="1" width="5" height="4" fill="%231fdf7b"/></svg>') no-repeat center; 
background-size: contain; 
}
.stats-icon.yellow-card { 
background: #ffd700; 
border-radius: 1px; 
width: 8px; 
height: 12px; 
}

/* 比赛结果卡片样式 */
.match-result-card { 
display: flex; 
align-items: center; 
gap: 6px; 
background: #333; 
padding: 0 8px; 
border-radius: 10px; 
min-width: 100px; 
height: 20px; 
}
.result-team { 
display: flex; 
align-items: center; 
gap: 3px; 
}
.result-team-logo { 
width: 14px; 
height: 14px; 
border-radius: 50%; 
object-fit: cover; 
display: block; 
}
.result-score { 
color: #fff; 
font-size: 10px; 
font-weight: 600; 
min-width: 25px; 
text-align: center; 
}
.icons { display:flex; align-items:center; gap:8px; }
.icon { width: 16px; height: 16px; cursor:pointer; }
.betting-logo { font-size: 10px; color: #4CAF50; font-weight: 600; }

/* 队伍logo样式 */
.team-logo { 
width: 40px; 
height: 40px; 
border-radius: 50%; 
position: relative;
overflow: hidden;
}
.team-logo-img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 50%;
}

/* 特色比赛横幅样式 - 使用特定命名空间避免冲突 */
.featured-match-banner {
  margin: 20px 0;
  position: relative;
  /* 确保不影响其他元素 */
  z-index: 1;
}

.featured-match-banner .match-banner-container {
  position: relative;
  background: #2a2a2a;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  border: 1px solid #444;
  /* 确保不影响其他容器 */
  isolation: isolate;
}

.featured-match-banner .match-banner-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2a2a2a;
  z-index: 1;
}

.featured-match-banner .trophy-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 150px;
  height: 150px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="45" fill="none" stroke="rgba(255,255,255,0.08)" stroke-width="1"/><path d="M25 25 L75 25 L70 45 L30 45 Z" fill="rgba(255,255,255,0.05)"/><path d="M35 45 L65 45 L60 65 L40 65 Z" fill="rgba(255,255,255,0.03)"/></svg>') no-repeat center center;
  background-size: contain;
  opacity: 0.4;
  z-index: 1;
}

.featured-match-banner .match-banner-content {
  position: relative;
  z-index: 2;
  padding: 20px;
  background: transparent;
}

.featured-match-banner .match-date-time {
  text-align: center;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 20px;
  letter-spacing: 0.5px;
}

.featured-match-banner .match-teams-section {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  gap: 20px;
}

.featured-match-banner .team-section {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  flex: none;
  min-width: 120px;
}

.featured-match-banner .team-section.left-team {
  align-items: center;
  flex-direction: row;
}

.featured-match-banner .team-section.right-team {
  align-items: center;
  flex-direction: row-reverse;
}

.featured-match-banner .team-name {
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  margin: 0;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  white-space: nowrap;
}

.featured-match-banner .team-logo {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #333;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #555;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.featured-match-banner .team-logo-img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
}

.featured-match-banner .match-score-section {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.featured-match-banner .score-display {
  display: flex;
  align-items: center;
  gap: 8px;
}

.featured-match-banner .score-left {
  background: linear-gradient(135deg, #3b82f6, #8b5cf6);
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 25px;
  font-size: 20px;
  font-weight: 700;
  min-width: 40px;
  text-align: center;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3);
}

.featured-match-banner .score-separator {
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  margin: 0 6px;
}

.featured-match-banner .score-right {
  background: #1e40af;
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 25px;
  font-size: 20px;
  font-weight: 700;
  min-width: 40px;
  text-align: center;
  box-shadow: 0 2px 8px rgba(30, 64, 175, 0.3);
}

.featured-match-banner .match-stats-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 12px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.featured-match-banner .stats-left {
  display: flex;
  gap: 16px;
}

.featured-match-banner .stat-item {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #3a3a3a;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #4a4a4a;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.featured-match-banner .stat-value {
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

.featured-match-banner .stat-icon {
  font-size: 16px;
}

.featured-match-banner .half-time-result {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #1e40af;
  padding: 8px 12px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(30, 64, 175, 0.3);
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.featured-match-banner .ht-icon {
  font-size: 16px;
}

.featured-match-banner .ht-text {
  color: #ffffff;
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
}

.featured-match-banner .ht-score {
  color: #ffd700;
  font-size: 12px;
  font-weight: 700;
  margin-left: 4px;
}

/* 响应式设计 - 使用特定命名空间 */
@media (max-width: 768px) {
  .featured-match-banner .match-banner-content {
    padding: 16px;
  }
  
  .featured-match-banner .match-teams-section {
    flex-direction: column;
    gap: 16px;
  }
  
  .featured-match-banner .team-section.left-team,
  .featured-match-banner .team-section.right-team {
    align-items: center;
    flex-direction: row;
  }
  
  .featured-match-banner .team-section.right-team {
    flex-direction: row-reverse;
  }
  
  .featured-match-banner .team-name {
    font-size: 14px;
  }
  
  .featured-match-banner .team-logo {
    width: 50px;
    height: 50px;
  }
  
  .featured-match-banner .team-logo-img {
    width: 46px;
    height: 46px;
  }
  
  .featured-match-banner .score-left,
  .featured-match-banner .score-right {
    padding: 8px 16px;
    font-size: 20px;
    min-width: 40px;
  }
  
  .featured-match-banner .match-stats-section {
    position: static;
    transform: none;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
  }
  
  .featured-match-banner .stats-left {
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
  }
  
  .featured-match-banner .stat-item {
    padding: 6px 10px;
  }
  
  .featured-match-banner .stat-value {
    font-size: 12px;
  }
  
  .featured-match-banner .stat-icon {
    font-size: 14px;
  }
  
  .featured-match-banner .half-time-result {
    position: static;
    transform: none;
    margin-top: 12px;
    padding: 8px 12px;
  }
  
  .featured-match-banner .ht-text {
    font-size: 10px;
  }
  
  .featured-match-banner .ht-score {
    font-size: 12px;
  }
}

/* 卡片布局优化 */
.card .league-name { 
color: #ccc; 
font-size: 11px; 
text-transform:uppercase; 
font-weight:500; 
display: flex;
align-items: center;
gap: 6px;
max-width: 200px;
overflow: hidden;
white-space: nowrap;
}
.card .league-name span {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.card .league-name .league-icon {
width: 12px;
height: 12px;
flex-shrink: 0;
}
.match-status { color: #1fdf7b; font-size: 12px; font-weight: 600; }
.match-time { color: #9ca3af; font-size: 12px; }
.half-time { font-size: 11px; color: #9ca3af; }
.stats { display:flex; gap:12px; font-size: 10px; color: #999; justify-content: center; }
.betting-logo { font-size: 10px; color: #1fdf7b; font-weight: 600; }


/* 显示/隐藏控制 */
.hidden { display: none !important; }

/* 比赛表格样式 */
.match-table { margin: 20px 0; }
.league-section { margin-bottom: 24px; }
.league-header { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
.league-header.rank{
  padding: 10px 0 0 20px;
}
.league-header h4 { margin: 0; font-size: 16px; font-weight: 600; color: var(--text); }
.league-icon { color: #e44545; font-size: 14px; }
.match-table-header { display: grid; grid-template-columns: 220px 1fr 80px 1fr 60px 100px 120px; gap: 12px; padding: 8px 12px; background: var(--card); border: 1px solid var(--divider); border-radius: 6px; margin-bottom: 8px; }
.match-table-header > div { font-size: 12px; font-weight: 600; color: var(--muted); text-transform: uppercase; }
.match-row { display: grid; grid-template-columns: 220px 1fr 80px 1fr 60px 100px 120px; gap: 12px; padding: 12px; background: var(--card); border: 1px solid var(--divider); border-radius: 6px; margin-bottom: 6px; align-items: center; }
.col-time { display: flex; flex-direction: column; gap: 2px; }
.col-time .time { font-size: 13px; color: var(--text); font-weight: 500; }
.col-time .status { font-size: 11px; color: #4CAF50; font-weight: 600; }
.col-home, .col-away { display: flex; align-items: center; gap: 8px; }
.col-home { justify-content: flex-end; text-align: right; }
.col-away { justify-content: flex-start; }
.col-home span, .col-away span { font-size: 13px; color: var(--text); }
.col-score { 
display: flex; 
justify-content: center; 
align-items: center; 
}
.col-score .score { background: #1e40af; color: #fff; padding: 4px 8px; border-radius: 4px; font-size: 13px; font-weight: 600; }
.col-score .vs { color: var(--muted); font-size: 12px; font-weight: 500; }
.col-ht, .col-pg { text-align: center; font-size: 12px; }
.col-pg{ color: red; }
.btn-live { background: #e44545; color: #fff; border: none; padding: 6px 12px; border-radius: 4px; font-size: 11px; font-weight: 600; cursor: pointer; transition: background 0.2s; }
.btn-live:hover { background: #d63a3a; }
.btn-live a{color: #fff;}

/* 视频网格 */
.video-grid { display:grid; grid-template-columns: repeat(4,1fr); gap:10px; }
.video-card { background: var(--card); border:1px solid var(--divider); border-radius:12px; overflow:hidden; box-shadow: var(--shadow); display:flex; flex-direction:column; }
.video-link { 
display: flex; 
flex-direction: column; 
text-decoration: none; 
color: inherit; 
width: 100%; 
height: 100%; 
}
.video-link:hover { 
text-decoration: none; 
color: inherit; 
}
.video-thumb { 
aspect-ratio: 16/9; 
position: relative; 
overflow: hidden; 
cursor: pointer; 
}
.video-thumb img { 
width: 100%; 
height: 100%; 
object-fit: cover; 
transition: transform 0.3s ease; 
}
.video-overlay { 
position: absolute; 
top: 0; 
left: 0; 
right: 0; 
bottom: 0; 
background: linear-gradient(135deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.1) 100%); 
display: flex; 
align-items: flex-end; 
justify-content: flex-start; 
transition: background 0.3s ease; 
padding: 12px; 
}
.play-icon { 
width: 40px; 
height: 40px; 
background: rgba(255, 255, 255, 0.9); 
border-radius: 50%; 
display: flex; 
align-items: center; 
justify-content: center; 
color: #333; 
font-size: 16px; 
font-weight: bold; 
box-shadow: 0 2px 8px rgba(0,0,0,0.3); 
transition: all 0.3s ease; 
}
.video-thumb:hover .play-icon { 
background: rgba(255, 255, 255, 1); 
transform: scale(1.1); 
}
.video-thumb:hover .video-overlay { 
background: linear-gradient(135deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 50%, rgba(0,0,0,0.05) 100%); 
}
.video-thumb:hover img { 
transform: scale(1.05); 
}
.video-meta { 
  min-height: 82px;
  padding:10px; 
  display:flex; 
  align-items:center; 
}

/* 简介与侧图 */
.about { display:grid; grid-template-columns: 1fr 2fr; gap: 30px; }
.about-right { 
background: var(--card); 
border:1px solid var(--divider); 
border-radius: 12px; 
padding: 20px; 
box-shadow: var(--shadow); 
height: 500px; 
overflow-y: auto; 
scrollbar-width: thin; 
scrollbar-color: rgba(255, 255, 255, 0.3) transparent; 
}
.about-right::-webkit-scrollbar { 
width: 6px; 
}
.about-right::-webkit-scrollbar-track { 
background: transparent; 
}
.about-right::-webkit-scrollbar-thumb { 
background: rgba(255, 255, 255, 0.3); 
border-radius: 3px; 
}
.about-right::-webkit-scrollbar-thumb:hover { 
background: rgba(255, 255, 255, 0.5); 
}

.about-nav { 
list-style: none; 
padding: 0; 
margin: 0; 
}
.nav-item { 
padding: 12px 0; 
cursor: pointer; 
transition: color 0.2s ease; 
color: var(--muted); 
border-bottom: 1px solid var(--divider); 
font-size: 15px; 
}
.nav-item:last-child { 
border-bottom: none; 
}
.nav-item:hover { 
color: var(--text); 
}
.nav-item.active { 
color: #e74c3c; 
font-weight: 600; 
}

.content-panel { display: none; }
.content-panel.active { display: block; }
.content-panel h3 { margin: 0 0 16px; color: var(--text); font-size: 20px; font-weight: 600; }
.content-panel p { margin: 0 0 16px; color: var(--muted); line-height: 1.6; }
.content-panel ul { margin: 0; padding-left: 20px; color: var(--muted); }
.content-panel li { margin-bottom: 8px; line-height: 1.5; }
.content-image { 
margin: 16px 0; 
border-radius: 8px; 
overflow: hidden; 
}
.content-image img { 
width: 100%; 
height: auto; 
display: block; 
}
.highlight { 
color: #ffc400; 
font-weight: 600; 
}
.side-ill { background: radial-gradient(80% 80% at 60% 20%, #2c3e29 0 40%, transparent 41%), radial-gradient(60% 60% at 30% 70%, #27304a 0 45%, transparent 46%), #10161c; border:1px solid var(--divider); border-radius:16px; display:flex; align-items:center; justify-content:center; }
.side-ill .ball { width: 180px; height: 180px; border-radius: 32px; background: radial-gradient(circle at 65% 35%, #befa7b 0 38%, #7ecb4f 39% 50%, #2a3b22 51% 100%); box-shadow: inset 0 0 0 6px rgba(255,255,255,.08), 0 24px 40px rgba(0,0,0,.4); display:grid; place-items:center; font-weight:900; color:#163d25; font-size:64px; }

/* 页脚 */
.footer { 
margin-top: 22px; 
background: #000000; 
border-top: 1px solid var(--divider); 
padding: 40px 0 30px; 
color: #fff; 
}

/* 主要描述文字 */
.footer-description { 
text-align: center; 
margin-bottom: 30px; 
}
.footer-description p { 
margin: 0; 
color: #fff; 
font-size: 14px; 
line-height: 1.6; 
}

/* 导航链接 */
.footer-nav { 
text-align: center; 
margin-bottom: 30px; 
}
.footer-nav a { 
color: #fff; 
text-decoration: none; 
margin: 0 15px; 
font-size: 14px; 
transition: color 0.2s; 
}
.footer-nav a:hover { 
color: #ffc400; 
}

/* 联系信息 */
.footer-contact { 
text-align: center; 
margin-bottom: 30px; 
}
.footer-contact p { 
margin: 0 0 8px 0; 
color: #fff; 
font-size: 14px; 
}
.footer-contact strong { 
color: #ffc400; 
}

/* 版权信息 */
.footer-copyright { 
text-align: center; 
}
.footer-copyright p { 
margin: 0; 
color: #999; 
font-size: 12px; 
}

/* 响应式 */
@media (max-width: 1280px){ .container{ width: 100%; } }
@media (max-width: 1024px){
.cards{ grid-template-columns:1fr; }
.video-grid{ grid-template-columns:repeat(2,1fr); }
.about{ grid-template-columns:1fr; gap: 20px; }
.about-left { padding: 0; }
.about-right { padding: 16px; height: 400px; }
.nav-item { padding: 10px 0; font-size: 14px; }
.content-panel h3 { font-size: 18px; }
}
@media (max-width: 640px){ .video-grid{ grid-template-columns:1fr; } }
@media (min-width: 769px){
.mobile-bottom-nav { 
display: none !important; /* 确保PC端不显示 */
}
}
@media (max-width: 768px){
.container{ padding: 0 10px; max-width: 100vw; overflow-x: hidden; }
.topbar{ position: fixed; }
body { padding-top: 50px; padding-bottom: 60px; }
.mobile-bottom-nav { 
display: flex !important; /* 强制在移动端显示 */
}
.topbar .row{ padding: 8px; justify-content:space-between; }
.brand{ font-size:16px; }
.top-nav{ display:none; }
.top-buttons{ display:none; }
.mobile-toggle{ display:flex; }
.navbar .container{ padding: 8px 10px; max-width: 100vw; overflow-x: hidden; }
.sports-filter-container {
  background: #1a1a1a;
flex-direction: row;
gap: 8px;
align-items: center;
}
.sports-categories{ 
gap: 0; 
margin-bottom: 0; 
overflow-x: auto; 
flex-wrap: nowrap; 
padding-bottom: 0; 
margin-left: -10px; 
margin-right: -10px; 
padding: 0px;
flex: 1;
scrollbar-width: none; /* Firefox */
-ms-overflow-style: none; /* IE and Edge */
}
.sports-categories::-webkit-scrollbar {
display: none; /* Chrome, Safari and Opera */
}
.sport-item{ 
padding:6px 10px; 
font-size:12px; 
white-space:nowrap; 
flex-shrink: 1;
}
.sport-item .icon{ width:14px; height:14px; }
.filter-row{ 
gap:6px; 
overflow-x: visible;
flex-wrap: wrap;
padding: 0 10px;
margin-left: -10px;
margin-right: -10px;
}
.filter-btn{ 
padding:4px 8px; 
font-size:11px; 
white-space:nowrap; 
flex-shrink: 1;
}
.filter-btn .icon{ width:12px; height:12px; }
.livescore-toggle{ 
margin-left:12px; 
flex-shrink: 0;
}
.toggle-switch{ width:36px; height:20px; }
.toggle-switch .slider{ width:16px; height:16px; }
.toggle-switch.active .slider{ transform:translateX(16px); }
.toggle-label{ font-size:11px; }
.tournament-dropdown{ 
padding:4px 8px; 
font-size:11px; 
flex-shrink: 0;
max-width: 50vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.tournament-dropdown span {
max-width: 30vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
}
/* 移动端下拉菜单优化 */
.league-dropdown{ 
position: fixed; 
top: 50%; 
left: 50%; 
transform: translate(-50%, -50%); 
width: 90vw; 
max-width: 400px; 
max-height: 70vh; 
z-index: 10000; 
}
.league-dropdown.active { 
opacity: 1; 
transform: translate(-50%, -50%); 
pointer-events: auto; 
}
.league-dropdown-overlay { 
position: fixed; 
top: 0; 
left: 0; 
right: 0; 
bottom: 0; 
background: rgba(0, 0, 0, 0.5); 
z-index: 9999; 
opacity: 0; 
pointer-events: none; 
transition: opacity 0.3s ease; 
}
.league-dropdown-overlay.active { 
opacity: 1; 
pointer-events: auto; 
}
.section-title{ margin: 14px 0 8px; }
.cards{ gap: 6px; grid-template-columns: 1fr; }
.cards { 
  opacity: 1; 
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out; 
}
.cards.fade-out { 
  opacity: 0; 
  transform: translateY(30px) scale(0.95); 
}
.cards.fade-in { 
  opacity: 1; 
  transform: translateY(0) scale(1); 
}
.card{ padding: 12px; }
.card-header{ margin-bottom:8px; }
.league .flag{ width:20px; height:20px; }
.league small{ font-size:10px; }
.match-status{ font-size:10px; }
.match-time{ font-size:10px; margin-bottom:8px; }
.teams-section{ 
margin-bottom:8px; 
display: flex;
justify-content: space-between;
align-items: center;
}
.score-section {
flex-shrink: 0;
display: flex;
justify-content: center;
align-items: center;
}
.teams-section .team {
display: flex;
align-items: center;
gap: 6px;
flex: 1;
}
.teams-section .team:first-child {
justify-content: flex-start;
}
.teams-section .team:last-child {
justify-content: flex-end;
}
.teams-section .team:last-child span {
text-align: left;
max-width: 120px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
}
.team .logo{ width:20px; height:20px; }
.team span{ font-size:12px; width: 60px;}
.current-score{ font-size: 16px;}
.half-time{ font-size:9px; }
.match-stats{ margin-bottom:8px; padding: 0 6px; max-width: 250px;}
.match-stats.mode-1{ padding: 0 6px;}
.match-stats.mode-2{ padding: 0 6px; gap: 4px;}
.stats{ font-size:8px; gap:4px; }
.stats-item{ gap: 1px; }
.stats-label, .stats-value{ font-size: 8px; }
.stats-icon{ width: 14px; height: 14px; }
.stats-icon.yellow-card{ width: 3px; height: 6px; }
.result-team-logo{ width: 12px; height: 12px; }
.result-score{ font-size: 9px; min-width: 20px; }
.icon{ width:14px; height:14px; }

/* 移动端表格样式 */
.match-table-header, .match-row { 
grid-template-columns: 80px 1fr 60px 1fr 40px 40px 80px; 
gap: 6px; 
padding: 8px; 
}
.match-table-header > div, .col-time .time, .col-home span, .col-away span { 
font-size: 10px; 
}
.col-time .status { font-size: 9px; }
.col-score .score { padding: 2px 4px; font-size: 10px; }
.btn-live { padding: 4px 6px; font-size: 9px; }
.league-header h4 { font-size: 14px; }
.betting-logo{ font-size:9px; }



/* 移动端底部导航栏 */
.mobile-bottom-nav {
display: none; /* 默认隐藏，只在移动端显示 */
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: #07090C;
border-top: 1px solid var(--divider);
z-index: 1000;
padding: 0px 0;
background: #224b31;
}
.mobile-bottom-nav .nav-item {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
flex: 1;
text-decoration: none;
color: #ffffff;
padding: 10px 2px;
transition: color 0.2s;
}
.mobile-bottom-nav .nav-item:after {
    content: "";
    height: 110%;
    width: 1px;
    background: #E8E8E8;
    position: absolute;
    transform: rotate(30deg);
    top: 0;
    right: 0;
    display: block;
}
.mobile-bottom-nav .nav-item:last-child:after{
  content: unset;
}
.mobile-bottom-nav .nav-item:hover {
color: #16a34a;
text-decoration: none;
}
.mobile-bottom-nav .nav-item span {
font-size: 12px;
line-height: 1.5;
font-weight: 500;
text-align: center;
white-space: nowrap;
}
}
@media (max-width: 480px){
.container{ padding: 0 8px; max-width: 100vw; overflow-x: hidden; }
.navbar .container{ padding: 6px 8px; max-width: 100vw; overflow-x: hidden; }
.sports-categories{ 
margin-left: -8px;
margin-right: -8px;
padding-left: 8px;
padding-right: 8px;
overflow-x: visible;
flex-wrap: wrap;
}
.filter-row{ 
margin-left: -8px;
margin-right: -8px;
padding: 0 8px;
overflow-x: visible;
flex-wrap: wrap;
}
.cards{ gap: 6px; grid-template-columns: 1fr; }
.cards { 
  opacity: 1; 
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out; 
}
.cards.fade-out { 
  opacity: 0; 
  transform: translateY(30px) scale(0.95); 
}
.cards.fade-in { 
  opacity: 1; 
  transform: translateY(0) scale(1); 
}
.card{ padding: 10px; }
.card-header{ margin-bottom:6px; }
.league .flag{ width:18px; height:18px; }
.league small{ font-size:9px; }
.match-status{ font-size:9px; }
.match-time{ font-size:9px; margin-bottom:6px; }
.teams-section{ margin-bottom:6px; }
.team .logo{ width:18px; height:18px; }
.team span{ font-size:11px; }
.current-score{ font-size: 14px; }
.half-time{ font-size:8px; }
.stats{ font-size:7px; gap:3px; }
.stats-item{ gap: 1px; }
.stats-icon{ width: 8px; height: 8px; }
.stats-icon.yellow-card{ width: 2px; height: 5px; }
.result-team-logo{ width: 10px; height: 10px; }
.result-score{ font-size: 8px; min-width: 18px; }
.icon{ width:12px; height:12px; }
.betting-logo{ font-size:8px; }
.load-more-container{ padding: 15px 0; }
.load-more-btn{ font-size: 12px; padding: 10px 20px; gap: 6px; }
.arrow-icon{ font-size: 10px; }
}

/* 新闻页面样式 - 100%还原设计 */
.news-layout {
  display: grid;
  grid-template-columns: 3fr 1fr;
  gap: 30px;
  margin: 20px 0;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}

/* 新闻链接样式 */
.main-news-link,
.bottom-news-link,
.sidebar-news-link {
  text-decoration: none;
  color: inherit;
  display: block;
  transition: opacity 0.3s ease;
}

.main-news-link:hover,
.bottom-news-link:hover,
.sidebar-news-link:hover {
  opacity: 0.8;
}

.main-news-link:hover .main-news-headline,
.bottom-news-link:hover .bottom-news-headline,
.sidebar-news-link:hover .sidebar-news-title {
  color: #007bff;
}

/* 左侧主新闻区域 */
.news-main {
  background: #000;
  color: #fff;
}

.main-news-header {
  margin-bottom: 20px;
}
.news-main p.time {
  color: #999;
  display: inline-block;
}
.news-main .content{
  font-size: 16px!important;
  line-height: 1.5!important;、
}

.main-news-title {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.main-news-article {
  margin-bottom: 30px;
}

.main-news-image {
  position: relative;
  width: 100%;
  height: 500px;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 20px;
}

.main-news-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main-news-content {
  color: #fff;
}

.main-news-headline {
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 15px 0;
}

.main-news-excerpt {
  color: #ccc;
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}

/* 底部新闻区域 */
.bottom-news-section {
  margin-top: 40px;
}

.bottom-news-title {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 20px 0;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.bottom-news-item {
  display: block;
  margin-bottom: 20px;
}
.bottom-news-item a{
  display: flex;
  gap: 15px;
}
.bottom-news-image {
  flex-shrink: 0;
  width: 280px;
  height: 220px;
  border-radius: 6px;
  overflow: hidden;
}

.bottom-news-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bottom-news-content {
  flex: 1;
  color: #fff;
}

.bottom-news-headline {
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 10px 0;
}

.bottom-news-excerpt {
  color: #ccc;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 10px 0;
}

.bottom-news-date {
  color: #888;
  font-size: 12px;
}

/* 右侧边栏 */
.news-sidebar {
  background: #000;
  color: #fff;
}

.sidebar-news-card {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.sidebar-news-card a{
  display: flex;
  gap: 15px;
  flex-direction: column;
}

.sidebar-news-card:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.sidebar-news-image {
  flex-shrink: 0;
  width: 100%;
  height: 180px;
  border-radius: 6px;
  overflow: hidden;
}

.sidebar-news-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-news-content {
  flex: 1;
  color: #fff;
}

.sidebar-news-title {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 8px 0;
}

.sidebar-news-date {
  color: #888;
  font-size: 12px;
}

.embed-responsive{
    position: relative;
    display: block;
    width: 100%;
    height: 600px;
    padding: 0;
    overflow: hidden;
}
.jw-video {
    width: 100%;
    height: 100%;
    font-size: 16px;
    position: relative;
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    background-color: #000;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .news-layout {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 0 15px;
  }
  
  .main-news-title {
    font-size: 20px;
  }
  
  .main-news-headline {
    font-size: 24px;
  }
  
  .main-news-excerpt {
    font-size: 14px;
  }
  
  .bottom-news-item a{
    flex-direction: column;
    gap: 10px;
  }
  
  .bottom-news-image {
    width: 100%;
    height: 150px;
  }
  
  .sidebar-news-card a{
    flex-direction: column;
    gap: 10px;
  }
  
  .sidebar-news-image {
    width: 100%;
    height: 120px;
  }
  
  .sidebar-news-title {
    font-size: 13px;
  }

  .embed-responsive{
    height: 350px;
  }
}
/* 足球比赛界面样式 */
.live-match-container {
    margin: 20px 0 0;
    display: flex;
    justify-content: center;
}
.live-match-card {
    background: #1a1a1a url(/template/index/images/bg-match-header.png) no-repeat center center;;
    border-radius: 15px;
    padding: 10px;
    width: 100%;
    position: relative;
    overflow: hidden;
    min-height: 120px;
}
.live-match-card > * {
    position: relative;
    z-index: 1;
}
/* 比赛状态 */
.live-match-status {
    height: 25px;
    text-align: center;
    margin-bottom: 10px;
}
.live-status-text {
    color: #00ff00;
    font-size: 16px;
    font-weight: bold;
}
/* 主要比赛信息 - 仿照图片设计 */
.live-match-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    position: relative;
    border-radius: 12px;
    padding: 0px;
}
.live-team-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    flex: 1;
}
.live-team-info.left-team {
    justify-content: flex-end;
}
.live-team-info.left-team .live-team-name{
    text-align: right;
}
.live-team-info.right-team .live-team-name {
    margin: 0 8px 0 0;
}
.live-team-name {
    width: 170px;
    color: white;
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 0 8px;
    text-align: left;
    overflow: hidden;
    text-wrap: nowrap;
    white-space: nowrap;
    text-overflow: ellipsis;
}
/* 队徽样式 */
.live-team-logo {
    margin: 0;
}
.live-logo-shield {
    width: 50px;
    height: 50px;
    border-radius: 8px;
    object-fit: cover;
    display: block;
}
.live-score-display {
    margin: 0 20px;
    width: 100px;
    height: 50px;
    line-height: 50px;
    text-align: center;
}
.live-score {
    display: block;
    background: linear-gradient(135deg, #1e3a8a, #3b82f6);
    border-radius: 50%;
    margin: 0 20px;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
    width: 50px;
    height: 50px;
    line-height: 50px;
    color: white;
    font-size: 18px;
    font-weight: bold;
    margin: 0 auto;
}
.live-score.bf{
  border-radius: 5px;
  width: 80px;
}
/* 比赛统计 */
.live-match-stats {
    position: absolute;
    bottom: 10px;
    right: 0;
    display: flex;
    flex-direction: row;
    gap: 12px;
    border-radius: 10px;
    padding: 10px;
}
.live-stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #191b1f;
    border-radius: 18px;
    padding: 0px 8px;
    position: relative;
}
.live-stat-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.live-stat-number {
    color: white;
    font-size: 12px;
    min-width: 16px;
    text-align: center;
}
.live-stat-icon {
    font-size: 12px;
    margin: 0;
}
.live-stat-icon img{
  height: 12px;
}

/* 操作按钮样式 */
.live-action-buttons {
    display: flex;
    justify-content: center;
    gap: 0;
    margin: 20px 0;
    background: #1a1a1a;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.live-action-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 15px 20px;
    border: none;
    background: #2a2a2a;
    color: white;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    text-transform: uppercase;
    text-decoration: none;
    outline: none;
}

.live-action-btn:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background: rgba(255, 255, 255, 0.1);
}

.live-action-btn:hover {
    background: #3a3a3a;
}

.live-action-btn.active {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #fff;
}

.live-action-btn.active:hover {
    background: linear-gradient(135deg, #16a34a, #15803d);
}

.live-btn-icon {
    font-size: 16px;
}

.live-btn-text {
    font-size: 12px;
    font-weight: bold;
}

/* 响应式设计 */
@media (max-width: 768px) {
    .live-match-card {
        padding: 0;
        margin: 0px;
    }
    
    .live-match-main {
        gap: 20px;
        align-items: center;
    }
    
    .live-team-info {
        flex-direction: column;
        gap: 10px;
        align-items: center;
        width: 100%;
    }
    
    .live-team-info.left-team {
        flex-direction: column-reverse;
        justify-content: center;
    }
    
    .live-team-info.right-team {
        justify-content: center;
    }
    
    .live-team-name {
        margin: 0;
        width: 100px;
        text-align: center;
        font-size: 14px;
    }
    
    .live-score-display {
        margin: 0;
        order: 0;
        width: 90px;
        padding: 8px 0;
    }
    
    .live-score {
        font-size: 20px;
    }
    
    .live-match-stats {
        position: relative;
        bottom: auto;
        right: auto;
        margin-top: 20px;
        flex-direction: row;
        justify-content: center;
    }
    
    .live-stat-item {
        min-width: 60px;
        padding: 2px 6px;
    }
    
    .live-stat-number {
        font-size: 11px;
    }
    
    .live-stat-icon {
        font-size: 12px;
    }
    
    .live-stat-numbers {
        gap: 4px;
    }
    
    /* 移动端按钮样式 - 一行显示两个按钮 */
    .live-action-buttons {
        margin: 15px 10px;
        border-radius: 8px;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .live-action-btn {
        padding: 12px 15px;
        font-size: 12px;
        width: calc(50% - 5px);
        margin: 0;
    }
    
    .live-btn-icon {
        font-size: 14px;
    }
    
    .live-btn-text {
        font-size: 10px;
    }

    .live-match-status{
       margin: 10px 0;
    }
}