
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: "Roboto", sans-serif;
background: #003266;
color: #000;
}

/* Top Bar */
.top-bar {
background: #043B75;
padding: 8px 20px;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 12px;
}


.top-bar-left {
display: flex;
gap: 15px;
align-items: center;
color: #fff;
}

.top-bar-left a {
color: #fff;
text-decoration: none;
display: flex;
align-items: center;
gap: 5px;
}

.mybtn {
border-radius: 20px;
background-color: #054588;
display: flex;
align-items: center;
padding: 10px 15px;
}

.top-bar-right {
display: flex;
gap: 15px;
align-items: center;
}

.top-bar-btn {
background: none;
border: 1px solid rgba(255,255,255,0.3);
color: #fff;
padding: 5px 12px;
border-radius: 4px;
font-size: 11px;
cursor: pointer;
}

/* Header */
.header {
background: linear-gradient(90deg, #0a4a8a 0%, #1565b8 100%);
padding: 12px 20px;
display: flex;
align-items: center;
justify-content: space-between;
position: sticky;
top: 0;
z-index: 1000;
box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

.header-left {
display: flex;
align-items: center;
gap: 30px;
justify-self: center;
}

.logo {
display: flex;
align-items: center;
text-decoration: none;
}

.logo-text img {
height: 40px;
}
@media (max-width: 767px) {
.logo-text img{
width: 100%;
height: auto;
}}
.logo-star {
color: #ff6b00;
font-size: 32px;
margin: 0 2px;
}

.nav-menu {
display: flex;
gap: 25px;
list-style: none;
align-items: center;
}

.nav-menu a {
color: #fff;
text-decoration: none;
font-size: 15px;
font-weight: 600;
transition: color 0.3s;
white-space: nowrap;
}

.nav-menu a:hover {
color: #ff6b00;
}

.nav-menu .aviator {
font-style: italic;
color: #ff6b00;
}

.bonus-buy {
background: rgba(255, 255, 255, 0.15);
padding: 8px 16px;
border-radius: 20px;
display: flex;
align-items: center;
gap: 5px;
}

.header-right {
display: flex;
gap: 12px;
align-items: center;
}

.btn {
padding: 10px 24px;
border-radius: 25px;
text-decoration: none;
font-size: 14px;
font-weight: 700;
cursor: pointer;
border: none;
transition: all 0.3s;
text-transform: uppercase;
}

.btn-register {
background: #fa4d00;
color: #fff;
}

.btn-register:hover {
background: #ff8533;
transform: translateY(-2px);
}

.btn-login {
background: #428cdc;
color: #fff;
}

.btn-login:hover {
background: #fff;
color: #0a4a8a;
}

.menu-toggle {
display: none;
background: none;
border: none;
color: #fff;
font-size: 24px;
cursor: pointer;
padding: 5px;
}

/* Layout Container */
.layout-container {
display: flex;
max-width: 1920px;
margin: 0 auto;
}

/* Left Sidebar */
.left-sidebar {
width: 220px;
background: #fff;
height: calc(100vh - 63px);
overflow-y: auto;
position: sticky;
top: 63px;
box-shadow: 2px 0 5px rgba(0,0,0,0.1);
transition: transform 0.3s;
}

.left-sidebar.closed {
transform: translateX(-100%);
}

.sidebar-header {
padding: 15px;
background: #f5f5f5;
border-bottom: 1px solid #e0e0e0;
display: flex;
align-items: center;
gap: 10px;
cursor: pointer;
}

.sidebar-header:hover {
background: #ebebeb;
}

.sidebar-menu {
list-style: none;
}

.sidebar-menu li {
border-bottom: 1px solid #f0f0f0;
}

.sidebar-menu a {
display: flex;
align-items: center;
gap: 12px;
padding: 12px 15px;
color: #333;
text-decoration: none;
transition: all 0.3s;
font-size: 14px;
}

.sidebar-menu a:hover {
background: #f8f8f8;
color: #ff6b00;
}

.sidebar-icon {
width: 20px;
height: 20px;
font-size: 16px;
}

.sport-name {
flex: 1;
}

/* Main Content */
.main-content {
flex: 1;
padding: 20px;
min-width: 0;
}

/* Right Sidebar */
.right-sidebar {
width: 280px;
background: #fff;
height: calc(100vh - 110px);
overflow-y: auto;
position: sticky;
top: 110px;
box-shadow: -2px 0 5px rgba(0,0,0,0.1);
}

.coupon-section {
padding: 20px;
text-align: center;
border-bottom: 8px solid #f0f0f0;
background: linear-gradient(to top,#084b95 0% 12%,#003266)
}

.coupon-empty {
color: #999;
padding: 30px 0;
}

.coupon-icon {
font-size: 48px;
margin-bottom: 10px;
opacity: 0.3;
}

.btn-register-coupon {
width: 100%;
background: #7bc043;
color: #fff;
padding: 12px;
border: none;
border-radius: 6px;
font-weight: 600;
cursor: pointer;
margin-top: 15px;
}

.btn-register-coupon:hover {
background: #6aa839;
}

.casino-section {
padding: 15px;
}

.section-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
}

.section-title {
font-size: 14px;
font-weight: 600;
color: #0a4a8a;
}

.section-link {
font-size: 12px;
color: #0a4a8a;
text-decoration: none;
}

.casino-games {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 8px;
}

.game-card {
border-radius: 8px;
overflow: hidden;
cursor: pointer;
transition: transform 0.3s;
}

.game-card:hover {
transform: scale(1.05);
}

.game-card img {
width: 100%;
height: auto;
display: block;
}

/* Hero Banner */
.hero-banner {
background: linear-gradient(135deg, #1565b8 0%, #0a4a8a 100%);
border-radius: 12px;
padding: 50px 40px;
margin-bottom: 20px;
position: relative;
overflow: hidden;
color: #fff;
background-image: url('img/hero-bg.jpg');
background-size: cover;
background-position: center;
}

.hero-content {
position: relative;
z-index: 2;
max-width: 500px;
}

.hero-title {
font-size: 36px;
font-weight: bold;
margin-bottom: 15px;
}

.hero-subtitle {
font-size: 18px;
margin-bottom: 25px;
opacity: 0.95;
}

.btn-hero {
background: #ff6b00;
color: #fff;
padding: 14px 35px;
border-radius: 30px;
font-size: 16px;
font-weight: 700;
display: inline-block;
text-decoration: none;
transition: all 0.3s;
}

.btn-hero:hover {
background: #ff8533;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(255, 107, 0, 0.4);
}


/* Sports Icons */
.sports-icons {
display: flex;
gap: 8px;
padding: 15px 20px;
background: transparent;
/* border-radius: 12px; */
margin-bottom: 15px;
overflow-x: auto;
/* box-shadow: 0 2px 8px rgba(0,0,0,0.08); */
}

.sport-icon-btn {
min-width: 50px;
background: transparent;
border: none;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.3s;
font-size: 20px;
}

.sport-icon-btn img {
    filter: brightness(0) saturate(100%) invert(38%) sepia(97%) saturate(1289%) hue-rotate(179deg) brightness(94%) contrast(90%);
}

/* Matches */
/* .matches-section {
display: flex;
flex-direction: column;
gap: 2px;
}

.match-group {
background: #fff;
border-radius: 8px;
overflow: hidden;
margin-bottom: 15px;
box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.match-group-header {
background: #f8f8f8;
padding: 12px 20px;
display: flex;
align-items: center;
gap: 10px;
border-bottom: 1px solid #e8e8e8;
cursor: pointer;
}

.match-group-icon {
width: 20px;
height: 20px;
}

.match-group-title {
font-size: 14px;
font-weight: 600;
color: #333;
}

.match-card {
border-bottom: 1px solid #f0f0f0;
transition: background 0.3s;
}

.match-card:last-child {
border-bottom: none;
}

.match-card:hover {
background: #fafafa;
}

.match-header {
padding: 12px 20px;
display: flex;
align-items: center;
gap: 15px;
}

.match-time {
font-size: 12px;
color: #666;
min-width: 50px;
}

.match-score {
display: flex;
flex-direction: column;
font-size: 14px;
font-weight: 600;
color: #4CAF50;
min-width: 30px;
text-align: center;
}

.match-teams {
flex: 1;
}

.team {
font-size: 14px;
padding: 3px 0;
}

.match-stats {
display: flex;
gap: 8px;
align-items: center;
}

.stat-icon {
font-size: 16px;
color: #999;
cursor: pointer;
}

.odds-container {
display: flex;
gap: 8px;
padding: 0 20px 12px 20px;
}

.odds-grid {
display: flex;
gap: 6px;
flex: 1;
}

.odd-btn {
flex: 1;
background: #f5f5f5;
border: 1px solid #e8e8e8;
padding: 8px;
text-align: center;
border-radius: 6px;
cursor: pointer;
transition: all 0.3s;
min-width: 60px;
}

.odd-btn:hover {
background: #ffe8d6;
border-color: #ff6b00;
}

.odd-label {
display: block;
font-size: 10px;
color: #999;
margin-bottom: 2px;
}

.odd-value {
display: block;
font-size: 15px;
font-weight: 700;
color: #333;
}

.more-odds {
color: #0a4a8a;
font-size: 12px;
cursor: pointer;
white-space: nowrap;
padding: 8px 12px;
display: flex;
align-items: center;
} */

/* Footer */
.footer {
background: #1a2c4e;
color: #fff;
padding: 40px 20px;
margin-top: 50px;
}

.footer-content {
max-width: 1200px;
margin: 0 auto;
text-align: center;
}

.footer-links {
display: flex;
justify-content: center;
gap: 25px;
margin-bottom: 25px;
flex-wrap: wrap;
}

.footer-links a {
color: #fff;
text-decoration: none;
font-size: 13px;
opacity: 0.8;
transition: opacity 0.3s;
}

.footer-links a:hover {
opacity: 1;
}

.payment-methods {
display: flex;
justify-content: center;
gap: 25px;
margin: 25px 0;
flex-wrap: wrap;
}

.payment-icon {
color: #fff;
font-size: 13px;
opacity: 0.7;
}

.footer-copyright {
margin-top: 25px;
opacity: 0.6;
font-size: 12px;
}

.overlay {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.5);
z-index: 998;
}

.overlay.active {
display: block;
}

/* Responsive */
@media (max-width: 1200px) {
.right-sidebar {
display: none;
}
}

@media (max-width: 968px) {
.left-sidebar {
position: fixed;
z-index: 999;
transform: translateX(-105%);
}

.left-sidebar.open {
transform: translateX(0);
}

.menu-toggle {
display: block;
}

.nav-menu {
display: none;
}

.main-content {
padding: 15px;
}
}

@media (max-width: 768px) {
.top-bar {
font-size: 11px;
padding: 6px 10px;
}

.header {
padding: 10px;
}

.btn {
padding: 8px 16px;
font-size: 12px;
}

.hero-banner {
padding: 30px 20px;
}

.hero-title {
font-size: 24px;
}

.hero-subtitle {
font-size: 14px;
}

.odds-container {
flex-direction: column;
}
}
@media (max-width: 767px) {
.top-bar {
display: none;
}}
/* Custom Scrollbar */
.left-sidebar::-webkit-scrollbar,
.right-sidebar::-webkit-scrollbar {
width: 6px;
}

.left-sidebar::-webkit-scrollbar-track,
.right-sidebar::-webkit-scrollbar-track {
background: #f1f1f1;
}

.left-sidebar::-webkit-scrollbar-thumb,
.right-sidebar::-webkit-scrollbar-thumb {
background: #ccc;
border-radius: 3px;
}

.left-sidebar::-webkit-scrollbar-thumb:hover,
.right-sidebar::-webkit-scrollbar-thumb:hover {
background: #999;
}

@media (min-width: 767px) {
.header-right-mobile {
display: none;
gap:5px;
}}

/* Dual Slider Container */
.dual-slider-container {
max-width: 1400px;
margin: 0 auto;
display: flex;
gap: 20px;
margin-bottom: 40px;
}

/* Hero Slider */
.hero-slider {
position: relative;
border-radius: 12px;
overflow: hidden;
flex: 1;
height: 300px;
box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}

.slider-container {
position: relative;
width: 100%;
height: 100%;
overflow: hidden;
}

@media (max-width: 767px) {
    .slider-container {
height: 260px;
    }
}

.slider-wrapper {
display: flex;
transition: transform 0.5s ease-in-out;
height: 100%;
}

@media (max-width: 767px) {
    .dual-slider-container {
       margin-bottom: 20px;
}}

.slide {
min-width: 100%;
height: 100%;
position: relative;
background-size: cover;
background-position: center;
}

.slide-content {
position: relative;
z-index: 2;
padding: 40px 30px;
max-width: 100%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
}

.slide-title {
font-size: 28px;
font-weight: bold;
margin-bottom: 12px;
color: #fff;
text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
line-height: 1.2;
}

.slide-subtitle {
font-size: 15px;
margin-bottom: 20px;
color: #fff;
opacity: 0.95;
text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
line-height: 1.4;
}

.btn-slide {
background: #ff6b00;
color: #fff;
padding: 12px 28px;
border-radius: 30px;
font-size: 14px;
font-weight: 700;
display: inline-block;
text-decoration: none;
transition: all 0.3s;
border: none;
cursor: pointer;
width: fit-content;
text-transform: uppercase;
}

.btn-slide:hover {
background: #ff8533;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(255, 107, 0, 0.4);
}

/* Slide Backgrounds - Slider 1 */
.slider-1 .slide-1 {
    background: #003265 url('img/ALL_RU_Champ_tuesday.webp') no-repeat center/contain;
}

.slider-1 .slide-2 {
    background: #003265 url('img/ALL_RU_freemoney_06.26.webp') no-repeat center/contain;
}

.slider-1 .slide-3 {
    background: #003265 url('img/ALL_RU_INSTALL_APP_new_04.25.webp') no-repeat center/contain;
}

/* Slide Backgrounds - Slider 2 */
.slider-2 .slide-1 {
    background: #003265 url('img/ALL_RU_referral_women_04.25\ .webp') no-repeat center/contain;

}

.slider-2 .slide-2 {
    background: #003265 url('img/ALL_RU_INSTALL_APP_new_04.25.webp') no-repeat center/contain;

}

.slider-2 .slide-3 {
    background: #003265 url('img/ALL_RU_INSTALL_APP_new_04.25.webp') no-repeat center/contain;

}

@media (max-width: 767px) {
    .slider-2 {
        display: none;
}}


/* Slider Navigation Dots */
.slider-nav {
position: absolute;
bottom: 15px;
left: 50%;
transform: translateX(-50%);
display: flex;
gap: 8px;
z-index: 10;
}

.slider-dot {
width: 10px;
height: 10px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.5);
cursor: pointer;
transition: all 0.3s;
border: none;
}

.slider-dot:hover {
background: rgba(255, 255, 255, 0.8);
}

.slider-dot.active {
background: #fff;
width: 25px;
border-radius: 5px;
}

/* Slider Navigation Arrows */
.slider-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
background: rgba(255, 255, 255, 0.3);
color: #fff;
border: none;
width: 35px;
height: 35px;
border-radius: 50%;
cursor: pointer;
font-size: 18px;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s;
z-index: 10;
user-select: none;
}

.slider-arrow:hover {
background: rgba(255, 255, 255, 0.5);
}

.slider-arrow-left {
left: 15px;
}

.slider-arrow-right {
right: 15px;
}

/* Responsive */
@media (max-width: 968px) {
.dual-slider-container {
    flex-direction: column;
}

.hero-slider {
    width: 100%;
    height: 250px;
}

.slide-content {
    padding: 30px 20px;
}

.slide-title {
    font-size: 24px;
}

.slide-subtitle {
    font-size: 14px;
}

.btn-slide {
    display: none;
}

.slider-arrow {
    width: 32px;
    height: 32px;
    font-size: 16px;
}

.slider-arrow-left {
    left: 10px;
}

.slider-arrow-right {
    right: 10px;
}
}

@media (max-width: 768px) {
body {
    padding: 15px;
}

.dual-slider-container {
    gap: 15px;
}

.hero-slider {
    height: 220px;
    border-radius: 8px;
}

.slide-content {
    padding: 25px 15px;
}

.slide-title {
    font-size: 20px;
    margin-bottom: 10px;
}

.slide-subtitle {
    font-size: 13px;
    margin-bottom: 15px;
}

.btn-slide {
    padding: 9px 20px;
    font-size: 12px;
}

.slider-nav {
    bottom: 12px;
}

.slider-dot {
    width: 8px;
    height: 8px;
}

.slider-dot.active {
    width: 20px;
}

.slider-arrow {
    width: 28px;
    height: 28px;
    font-size: 14px;
}
}

@media (max-width: 480px) {
body {
    padding: 10px;
}

.dual-slider-container {
    gap: 10px;
}

.hero-slider {
    height: 200px;
}

.slide-content {
    padding: 20px 12px;
}

.slide-title {
    font-size: 18px;
}

.slide-subtitle {
    font-size: 12px;
}

.btn-slide {
    padding: 8px 16px;
    font-size: 11px;
}

.slider-arrow {
    display: none;
}
}
.sport-icon-btn span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 400;
    color: #fff;
    background: transparent;
}
.sport-icon-btn span img {
    height: 16px;
}

@media (max-width: 767px) {
    .sport-icon-btn span {
        flex-direction: column;
        font-size: 10px;
}}

a {
    text-decoration: none;
    color: inherit;
}

.menu-buttons {
    display: flex;
    gap: 10px;
    background: #fff;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.menu-btn {
    flex: 1; /* Каждая кнопка занимает равную ширину */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 8px;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    font-size: 12px;
    text-align: center;
    transition: all 0.3s;
    cursor: pointer;
}

.menu-btn:hover {
    background: #e8f4ff;
    border-color: #0a4a8a;
    color: #0a4a8a;
    transform: translateY(-2px);
}

.menu-btn img {
    width: 24px;
    height: 24px;
}

.menu-btn span {
    font-weight: 600;
    line-height: 1.2;
}

/* Адаптив */
@media (max-width: 968px) {
    .menu-buttons {
        overflow-x: auto;
        gap: 8px;
    }
    
    .menu-btn {
        min-width: 100px;
        flex: 0 0 auto;
    }
}

@media (max-width: 768px) {
    .menu-btn {
        min-width: 80px;
        font-size: 11px;
        padding: 10px 6px;
    }
    
    .menu-btn img {
        width: 20px;
        height: 20px;
    }
}

.sport-icon-btn a {
    width: 100%;
}

/* Sports Icons */
.sports-icons {
    display: flex;
    gap: 4px;
    overflow-x: auto;
	     scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
}

.sport-icon-btn {
    flex: 1; /* ← ЭТО ГЛАВНОЕ! Растягивает кнопки на всю ширину */
    min-width: 100px;
    display: flex;
    flex-direction: column; /* ← Иконка сверху, текст снизу */
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.3s;
    text-decoration: none;
    color: #000;
    font-size: 12px;
    text-align: center;
}


.sport-icon-btn img {
    width: 24px;
    height: 24px;
}

.sport-icon-btn span {
    line-height: 1.2;
}

/* Адаптив */
@media (max-width: 968px) {
    .sports-icons {
        overflow-x: auto;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
        gap: 8px;
    }
    
    .sport-icon-btn {
        min-width: 100px;
        flex: 0 0 auto; /* На мобильных не растягивать */
    }
}

@media (max-width: 768px) {
    .sport-icon-btn {
        min-width: 80px;
        font-size: 11px;
        padding: 10px 6px;
    }
    
    .sport-icon-btn img {
        width: 20px;
        height: 20px;
    }
}

.spart-text {
        padding: 15px 20px;
    background: #fff;
    border-radius: 12px;
    margin-bottom: 15px;
    overflow-x: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.spart-text h1 {
    font-size: 24px;
    margin-bottom: 10px;
    color: #000;
}

.spart-text p {
    font-size: 14px;
    line-height: 1.6;
    color: #333;
    margin-bottom: 10px;
}

/* активная */
.menu li a.active {
  color: #edc97f;
  border-bottom: 2px solid #edc97f;
}

a:-webkit-any-link:active {
	color: #edc97f;
	
} 

/* ===== Base / Theme ===== */
:root{
  --bg:#0e2b46;
  --card:#12385a;
  --text:#dfe9f4;
  --muted:#8fa7be;
  --accent:#edc97f;
  --ring:#6b86a1;
  --radius:16px;
}
.games-section{ margin-bottom: 30px;}
.games-head{
  margin:18px 0 10px; display:flex; align-items:center; justify-content:space-between;
}
.games-title{display:flex; align-items:center; gap:10px; color:var(--text); font-weight:700; letter-spacing:.04em}
.games-title .ico{
  width:22px; height:22px; stroke:var(--accent); fill:none;
}
.games-all{
  display:inline-flex; gap:8px; align-items:center;
  color:#cfe1ff; text-decoration:none; font-weight:700;
  background:#0d3558; border:1px solid #1f4f75; padding:6px 12px; border-radius:999px;
}
.games-all:hover{color:#fff; border-color:#2a689b}

/* ===== Grid ===== */
.games-grid{
  display:grid; gap:18px;
  grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1280px){ .games-grid{grid-template-columns: repeat(5, 1fr);} }
@media (max-width: 1024px){ .games-grid{grid-template-columns: repeat(4, 1fr);} }
@media (max-width: 820px){  .games-grid{grid-template-columns: repeat(3, 1fr);} }
@media (max-width: 620px){  .games-grid{grid-template-columns: repeat(2, 1fr);} }

/* ===== Card ===== */
.game-card{
  position:relative; display:block; overflow:hidden; border-radius:22px;
  background:var(--card) center/cover no-repeat;
  width: 170px;
  aspect-ratio: 1 / 1; /* держим пропорции как на скрине */
  box-shadow: 0 8px 20px rgba(0,0,0,.25), inset 0 0 0 1px rgba(255,255,255,.05);
  transition: transform .2s ease, box-shadow .2s ease;
}
.game-card::after{ /* лёгкий внутренний градиент */
  content:""; position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.00) 40%, rgba(0,0,0,.25) 100%);
  pointer-events:none;
}
.game-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.08);
}

@media (max-width: 767px) {
    .game-card{
     width: 130px;
}
.games-grid {
    gap: 10px;
    border-radius: 10px;
}
.games-title span img {
    height: 30px;
}}

/* ===== Badges ===== */
.badge{
  position:absolute; top:8px; left:8px;
  background:rgba(13, 53, 88, .85);
  color:#fff; font-weight:800; font-size:12px; line-height:1;
  padding:6px 8px; border-radius:10px; border:1px solid rgba(255,255,255,.25);
  backdrop-filter: blur(3px);
}
.badge + .badge{ left:auto; right:8px; }
.badge-rm{ background:#ffcc00; color:#2a1e00; border:none; }
.badge-cup{ background:rgba(255,255,255,.9); color:#1b1f3b; }

/* (опционально) focus */
.game-card:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; border-radius:22px; }

/* Активное состояние */
.nav-menu a.active,
.sidebar-menu a.active,
.sport-icon-btn a.active,
.menu-btn.active {
  color: #ff6b00;
  font-weight: 700;
  border-bottom: 2px solid #ff6b00;
}

.menu-btn.active {
  background: #e8f4ff;
  border-color: #0a4a8a;
  color: #0a4a8a;
}

.sport-icon-btn a.active span {
  color: #ff6b00;
}
