/*
Theme Name: Kenyanbet Theme
Author: Roman_ta
Version: 1.0
*/


* { box-sizing: border-box; margin: 0; padding: 0; }
:root {
    --color-dark: #1a2332;
    --color-dark-2: #232d3f;
    --color-accent: #14b8a6;
    --color-accent-hover: #0ea394;
    --color-text: #1a1a1a;
    --color-muted: #8a94a6;
    --color-border: #eaeaea;
}

body {
    font-family: 'Roboto', -apple-system, Arial, sans-serif;
    color: var(--color-text);
    line-height: 1.5;
    background: #f5f6f8;
}
body.term-blog {
    background: #ffffff !important;
}
.container { max-width: 1160px; margin: 0 auto; padding: 0 15px !important;}

/* ===== Шапка ===== */

.site-header { background: var(--color-dark); padding: 0; }
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 52px;
    gap: 32px;
}

.custom-logo-link { display: flex; align-items: center; flex-shrink: 0; }
.custom-logo-link img { max-height: 32px; width: auto; display: block; }

.main-nav-list {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 24px;
    flex: 1;
}
.main-nav-list li { margin: 0; }
.main-nav-list li a {
    display: block;
    color: #b8c0cc;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}
.main-nav-list li a:hover,
.main-nav-list li.current-menu-item a { color: #fff; }

.header-button__wrapper { flex-shrink: 0; }
.header-button__item {
    display: inline-block;
    background: var(--color-accent);
    color: #fff;
    padding: 8px 18px;
    border-radius: 3px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}
.header-button__item:hover { background: var(--color-accent-hover); }




/* Бургер */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    cursor: pointer;
}
.mobile-menu-toggle span {
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    transition: 0.2s;
}
.mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0; }
.mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.bookmaker-hero { display: flex; align-items: center; gap: 24px; padding: 32px 0; border-bottom: 1px solid #eee; }
.bookmaker-logo { max-width: 140px; }
.bonus-badge { background: #e8f9ee; color: #0a8a3e; padding: 6px 14px; border-radius: 6px; display: inline-block; margin: 8px 0; font-size: 14px; }
.btn-review { display: inline-block; background: #14b866; color: #fff; padding: 10px 24px; border-radius: 6px; text-decoration: none; font-weight: bold; }

.bookmaker-stats { display: flex; gap: 24px; padding: 24px 0; flex-wrap: wrap; }
.stat { background: #f7f8fa; padding: 12px 20px; border-radius: 8px; text-align: center; }
.stat span { display: block; font-size: 12px; color: #888; }
.stat strong { font-size: 18px; }

.bookmaker-meta { padding: 12px 0; color: #555; font-size: 14px; }
.bookmaker-body { padding: 24px 0; }
.bookmaker-body img { max-width: 100%; height: auto; border-radius: 8px; margin: 8px 0; }
.bookmaker-conclusion { padding: 24px 0; border-top: 1px solid #eee; }
.faq-item { padding: 12px 0; border-bottom: 1px solid #eee; cursor: pointer; }

.site-footer { background: #0b1f3a; color: #ccc; padding: 24px 0; margin-top: 4px; text-align: center; font-size: 13px; }
.site-footer-text-block { padding: 32px 0; color: #444; font-size: 14px; line-height: 1.7; }
.site-footer-text-block h2, .site-footer-text-block h3 { color: #1a1a1a; margin-bottom: 12px; }
.site-footer-text-block p { margin-bottom: 12px; }
.site-top-banner-block { margin-top: 0; }
.site-ad-banner-link { display: block; overflow: hidden; max-height:140px;}
.site-ad-banner-img { width: 100%; height: 100%; display: block; }


.bm-row { display: flex; align-items: stretch; background: #fff; border-radius: 6px; margin-bottom: 12px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.bm-brand { width: 170px; background: var(--color-dark); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.bm-brand img { width: 100%; height: 100%; object-fit: contain; }
.bm-brand-text { color: #fff; font-weight: 700; text-align: center; }

.bm-bonus { background: var(--color-dark-2); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px 24px; min-width: 140px; }
.bm-bonus-label { font-size: 11px; color: #8a94a6; font-weight: 700; letter-spacing: 1px; }
.bm-bonus strong { font-size: 20px; color: var(--color-accent); margin-top: 4px; }

.bm-review-col { background: var(--color-dark-2); display: flex; align-items: center; padding-right: 20px; }
.bm-review-btn { background: var(--color-accent); color: #fff; padding: 10px 18px; border-radius: 4px; text-decoration: none; font-size: 13px; font-weight: 700; text-transform: uppercase; white-space: nowrap; transition: background 0.15s; }
.bm-review-btn:hover { background: var(--color-accent-hover); }

.bm-col { flex: 1; text-align: center; padding: 14px 8px; display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 90px; }
.bm-col-label { font-size: 11px; color: var(--color-muted); margin-bottom: 8px; text-transform: none; }
.bm-col strong { font-size: 16px; color: var(--color-text); }
.content-body-block { padding: 32px 0; }
.content-body-block h2, .content-body-block h3 { margin: 20px 0 10px; }
.content-body-block p { margin-bottom: 12px; color: #333; }

.bm-icon-circle { width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: bold; }
.bm-icon-circle.yes { background: #e3f9f0; color: var(--color-accent); }
.bm-icon-circle.no { background: #fde8e8; color: #e33; }

.hero-slider { padding: 24px 0; }
.slider-track { display: flex; gap: 12px; overflow-x: auto; }
.slide { position: relative; flex: 0 0 260px; height: 300px; border-radius: 8px; overflow: hidden; text-decoration: none; }
.slide img { width: 100%; height: 100%; object-fit: cover; }
.slide-caption { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0,0,0,0.8)); padding: 16px 12px; }
.slide-caption h3 { color: #fff; font-size: 14px; }

.intro { padding: 24px 0; }
.intro h2 { margin: 16px 0 8px; font-size: 18px; }

.see-all-link { display: inline-block; margin-top: 12px; color: #14b866; font-weight: bold; text-decoration: none; }

.predictions-widget { padding: 32px 0; margin-bottom:30px;}
.predictions-embed-placeholder { background: #f7f8fa; border-radius: 8px; padding: 40px; text-align: center; color: #888; }

.archive-header { padding: 32px 0 16px; }
.archive-header h1 { font-size: 28px; margin-bottom: 8px; }
.archive-header p { color: #666; }

.pagination { display: flex; gap: 8px; justify-content: center; padding: 24px 0; }
.pagination a, .pagination span { padding: 8px 14px; border: 1px solid #ddd; border-radius: 6px; text-decoration: none; color: #333; }
.pagination .current { background: #14b866; color: #fff; border-color: #14b866; }


.content-single { padding: 32px 0; max-width: 760px; }
.content-hero-image { width: 100%; max-height: 360px; object-fit: cover; border-radius: 8px; margin-bottom: 20px; }
.content-single h1 { font-size: 28px; margin-bottom: 12px; }
.content-lead { font-size: 16px; color: #555; margin-bottom: 20px; }
.breadcrumb { margin-bottom: 12px; font-size: 13px; }
.breadcrumb a { color: #14b866; text-decoration: none; }

.related-bookmaker-cta { display: flex; align-items: center; gap: 12px; background: #f7f8fa; padding: 16px; border-radius: 8px; margin: 20px 0; flex-wrap: wrap; }
.btn-review-outline { border: 1px solid #14b866; color: #14b866; padding: 8px 16px; border-radius: 6px; text-decoration: none; font-weight: bold; }

.content-body { padding: 20px 0; }
.content-body img { max-width: 100%; border-radius: 8px; margin: 8px 0; }
.content-faq { padding-top: 20px; border-top: 1px solid #eee; }


.articles-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.article-card { border: 1px solid #eee; border-radius: 8px; overflow: hidden; text-decoration: none; color: inherit; }
.article-card img { width: 100%; height: 160px; object-fit: cover; }
.article-card-body { padding: 12px; }
.article-card-body h3 { font-size: 15px; color: #1a1a1a; }


.footer-reviews-nav { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,0.1); margin-bottom: 16px; }
.footer-reviews-nav a { color: #ccc; text-decoration: none; font-size: 13px; text-transform: uppercase; }
.footer-reviews-nav a:hover { color: #fff; }
.footer-copy { color: #888; font-size: 12px; text-align: center; }



.bm-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.bm-card { background: #fff; border: 1px solid var(--color-border); border-radius: 4px; display: flex; flex-direction: column; }
.bm-card-brand { background: var(--color-dark); display: flex; align-items: center; justify-content: center; min-height: 80px; }
.bm-card-brand img { width: 100%; height: 100%; object-fit: contain; }
.bm-card-brand-text { color: #fff; font-weight: 700; font-size: 18px; }

.bm-card-body { padding: 20px; display: flex; flex-direction: column; flex: 1; }
.bm-card-stats { display: flex; gap: 14px; flex-wrap: wrap; font-size: 12px; color: var(--color-muted); margin-bottom: 14px; }
.bm-card-desc { font-size: 14px; color: #444; flex: 1; margin-bottom: 20px; display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden; }

.bm-card-btn { align-self: flex-start; background: var(--color-accent); color: #fff; padding: 10px 20px; border-radius: 4px; text-decoration: none; font-size: 13px; font-weight: 700; text-transform: uppercase; }
.bm-card-btn:hover { background: var(--color-accent-hover); }

@media (max-width: 900px) {
    .bm-cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .bm-cards { grid-template-columns: 1fr; }
}


.archive-intro { padding: 8px 0 24px; }
.archive-intro h2 { font-size: 15px; font-weight: 700; margin-bottom: 8px; }
.archive-intro p { font-size: 14px; color: #444; max-width: 900px; }
.article-hero-image { width: 100%; max-height: 180px; overflow: hidden; }
.article-hero-image img { width: 100%; height: 100%; object-fit: cover; display: block; }

.content-body h2 { font-size: 20px; margin: 24px 0 10px; }
.content-body h3 { font-size: 17px; margin: 18px 0 8px; }
.content-body p { margin-bottom: 12px; color: #333; }
.content-body .block-list { margin: 12px 0 12px 20px; }
.content-body .block-list li { margin-bottom: 6px; }
.content-body .block-pros-cons { display: flex; gap: 24px; margin: 16px 0; flex-wrap: wrap; }
.content-body .pros, .content-body .cons { flex: 1; min-width: 220px; background: #f7f8fa; padding: 16px; border-radius: 8px; }
.content-body .pros h4 { color: #14b8a6; margin-bottom: 8px; }
.content-body .cons h4 { color: #e33; margin-bottom: 8px; }


.hero-slider { padding: 24px 0; position: relative; }
.hero-swiper { border-radius: 8px; overflow: hidden; }
.hero-swiper .swiper-slide { position: relative; height: 300px; border-radius: 8px; overflow: hidden; }
.hero-swiper .swiper-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-swiper .slide-caption { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0,0,0,0.85)); padding: 20px 14px 14px; }
.hero-swiper .slide-caption h3 { color: #fff; font-size: 14px; font-weight: 700; line-height: 1.3; }

.hero-swiper .swiper-button-next,
.hero-swiper .swiper-button-prev {
    color: #fff;
    background: rgba(0,0,0,0.4);
    width: 40px;
    height: 40px;
    border-radius: 50%;
}
.hero-swiper .swiper-button-next::after,
.hero-swiper .swiper-button-prev::after {
    font-size: 16px;
}
.hero-swiper .swiper-pagination-bullet {
    background: #fff;
    opacity: 0.6;
}
.hero-swiper .swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--color-accent);
}

.predictions-widget { padding: 32px 0; }
.predictions-widget h2 { font-size: 22px; margin-bottom: 8px; }
.predictions-widget > p { color: #555; margin-bottom: 20px; max-width: 800px; }

.pred-tabs { display: flex; margin-bottom: 12px; border: 1px solid var(--color-border); border-radius: 4px; overflow: hidden; width: fit-content; }
.pred-tab { background: #f7f8fa; border: none; padding: 10px 20px; font-size: 13px; font-weight: 700; text-transform: uppercase; cursor: pointer; color: #555; border-right: 1px solid var(--color-border); }
.pred-tab:last-child { border-right: none; }
.pred-tab.active { background: var(--color-accent); color: #fff; }

.pred-date-filter { display: flex; gap: 20px; padding: 16px 0; }
.pred-date { background: none; border: none; font-size: 13px; font-weight: 700; text-transform: uppercase; cursor: pointer; color: #888; padding: 8px 16px; border-radius: 4px; }
.pred-date.active { color: var(--color-accent); border: 1px solid var(--color-accent); }

.pred-table-wrap { border: 1px solid var(--color-border); border-radius: 4px; overflow: hidden; background: #fff; }
.pred-table-header { display: grid; grid-template-columns: 1fr 80px 80px 80px 80px; padding: 14px 20px; font-size: 12px; font-weight: 700; color: #888; text-transform: uppercase; border-bottom: 1px solid var(--color-border); text-align: center; }
.pred-table-header span:first-child { text-align: left; }

.pred-country-header { background: #f7f8fa; padding: 10px 20px; font-size: 12px; font-weight: 700; text-transform: uppercase; color: #555; }

.pred-row { display: grid; grid-template-columns: 1fr 80px 80px 80px 80px; align-items: center; padding: 14px 20px; border-bottom: 1px solid var(--color-border); text-align: center; }
.pred-match { text-align: left; }
.pred-time { display: block; font-size: 12px; color: #888; margin-bottom: 4px; }
.pred-match strong { font-size: 14px; }

.pred-odd { background: #2b3648; color: #fff; border-radius: 20px; padding: 6px 4px; font-weight: 700; font-size: 13px; }

.result-icon { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; font-size: 13px; font-weight: bold; }
.result-icon.win { background: #e3f9f0; color: var(--color-accent); }
.result-icon.loss { background: #fde8e8; color: #e33; }
.result-icon.pending { background: #e8f0fd; color: #2f7fe3; }

.pred-bookmakers-row { text-align: center; padding: 20px; border-bottom: 1px solid var(--color-border); background: #fafbfc; }
.pred-bookmakers-row span { display: block; font-size: 12px; font-weight: 700; color: #888; margin-bottom: 12px; text-transform: uppercase; }
.pred-bookmakers-btns { display: flex; gap: 12px; justify-content: center; }
.pred-bm-btn { background: var(--color-accent); color: #fff; padding: 10px 20px; border-radius: 4px; text-decoration: none; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.pred-bm-btn:nth-child(2) { background: var(--color-dark); }

.pred-empty { text-align: center; padding: 40px; color: #888; }
.homepage-footer-text { padding: 24px 0 40px; color: #444; font-size: 14px; line-height: 1.6; }

/* ===== Мобильное меню ===== */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    cursor: pointer;
}
.mobile-menu-toggle span {
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    transition: 0.2s;
}
.mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0; }
.mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ===== Общие адаптивные точки ===== */
@media (max-width: 768px) {
    .container { padding: 0 16px; }

    /* Шапка */
    .mobile-menu-toggle { display: flex; }
    .main-nav {
        display: none;
        position: absolute;
        top: 64px;
        left: 0;
        right: 0;
        background: var(--color-dark);
        z-index: 100;
    }
    .main-nav.is-open { display: block; }
    .main-nav-list {
        flex-direction: column;
        align-items: stretch;
        padding: 12px 16px;
    }
    .main-nav-list li a {
        margin: 0;
        padding: 12px 0;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .main-nav-list li:first-child a { margin: 0; }
    .header-inner { position: relative; }
.header-button__wrapper { display: none; }
    /* Строка букмекера (главная) */
    .bm-row { flex-wrap: wrap; }
    .bm-brand { width: 100%; min-height: 60px; }
    .bm-bonus { flex: 1 1 50%; }
    .bm-review-col { flex: 1 1 50%; justify-content: center; padding-right: 0; }
    .bm-col { flex: 1 1 25%; min-width: 0; padding: 10px 4px; }
    .bm-col-label { font-size: 10px; }
    .bm-col strong { font-size: 13px; }

    /* Карточки букмекеров (архив) */
    .bm-cards { grid-template-columns: 1fr; }

    /* Карточки apps/bonus/статей */
    .articles-grid { grid-template-columns: 1fr; }

    /* Слайдер */
    .hero-swiper .swiper-slide { height: 220px; }

    /* Таблица прогнозов — превращаем в карточки */
    .pred-tabs { width: 100%; overflow-x: auto; flex-wrap: nowrap; }
    .pred-tab { white-space: nowrap; padding: 10px 14px; font-size: 12px; }

    .pred-table-header { display: none; }
    .pred-row {
        grid-template-columns: 1fr;
        gap: 8px;
        text-align: left;
        padding: 16px;
    }
    .pred-row > div { display: flex; justify-content: space-between; align-items: center; }
    .pred-row > div::before { content: attr(data-label); font-size: 11px; color: #888; font-weight: 700; text-transform: uppercase; }
    .pred-match { display: block !important; }
    .pred-match::before { display: none; }

    .pred-bookmakers-btns { flex-direction: column; }

    /* Карточка одного букмекера */
    .bookmaker-hero { flex-direction: column; text-align: center; }
    .bookmaker-stats { justify-content: center; }
    .related-bookmaker-cta { flex-direction: column; align-items: stretch; text-align: center; }
    .pred-odd{
    padding: 0 15px;
    }
    /* Футер */
    .footer-reviews-nav { justify-content: center; text-align: center; }
}

@media (max-width: 480px) {
    .bm-col { flex: 1 1 50%; }
    .content-body .block-pros-cons { flex-direction: column; }
}
.predictions-banner {
    background-size: cover;
    background-position: right center;
    background-color: var(--color-dark);
    border-radius: 8px;
    padding: 32px;
    margin: 20px 0 24px;
    min-height: 140px;
    display: flex;
    align-items: center;
}
.predictions-banner-text {
    background: rgba(255,255,255,0.95);
    padding: 20px 24px;
    border-radius: 6px;
    max-width: 480px;
}
.predictions-banner-text h2 { font-size: 20px; margin-bottom: 8px; color: #1a1a1a; }
.predictions-banner-text p { font-size: 13px; color: #444; margin: 0; }

.bookmaker-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-color: var(--color-dark);
    padding: 32px 0;
    color: #fff;
}
.bookmaker-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(20,10,30,0.85), rgba(20,10,30,0.5));
}
.bookmaker-hero-inner { position: relative; z-index: 1; }
.breadcrumb-light { color: rgba(255,255,255,0.7); font-size: 13px; margin-bottom: 20px; }
.breadcrumb-light a { color: rgba(255,255,255,0.8); text-decoration: none; }

.bookmaker-hero-content { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.bookmaker-hero-logo { background: var(--color-dark); padding: 20px; border-radius: 6px; }
.bookmaker-hero-logo img { max-width: 180px; max-height: 70px; object-fit: contain; }

.bookmaker-hero-info h1 { font-size: 30px; margin-bottom: 14px; }
.bookmaker-hero-actions { display: flex; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.btn-hero { padding: 12px 22px; border-radius: 4px; text-decoration: none; font-weight: 700; font-size: 14px; display: inline-flex; align-items: center; gap: 8px; }
.btn-hero-primary { background: var(--color-accent); color: #fff; }
.btn-hero-secondary { background: #e35555; color: #fff; }

.bookmaker-hero-stars { display: flex; align-items: center; gap: 3px; }
.bookmaker-hero-stars .star { color: rgba(255,255,255,0.3); font-size: 20px; }
.bookmaker-hero-stars .star.filled { color: #f5b301; }
.bookmaker-hero-stars .stars-number { margin-left: 8px; font-weight: 700; }

.bookmaker-content-grid { display: grid; grid-template-columns: 1fr 280px; gap: 40px; padding: 32px 0; align-items: start; }
.bookmaker-single-body { min-width: 0; }

.bookmaker-toc { }
.toc-sticky {
    position: sticky;
    top: 20px;
    background: #f7f8fa;
    border-radius: 8px;
    padding: 24px 20px;
    border-left: 3px solid var(--color-accent);
}
.toc-sticky h4, .toc-sticky .toc-title {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.8px;
    color: var(--color-dark);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(0,0,0,0.08);
}
.toc-sticky ol {
    list-style: none;
    counter-reset: toc-counter;
}
.toc-sticky li {
    margin-bottom: 4px;
}
.toc-sticky li a {
    display: block;
    font-size: 13px;
    color: #333;
    text-decoration: none;
    line-height: 1.4;
    padding: 8px 4px;
    border-radius: 4px;
    transition: background 0.15s, color 0.15s;
}
.toc-sticky li a:hover {
    color: var(--color-accent);
    background: rgba(0,0,0,0.03);
}
.toc-sticky .toc-level-3 {
    padding-left: 14px;
    border-left: 1px solid rgba(0,0,0,0.08);
}

.bookmaker-conclusion { padding: 24px 0; border-top: 1px solid var(--color-border); margin-top: 24px; }

@media (max-width: 900px) {
    .bookmaker-content-grid { grid-template-columns: 1fr; }
/*     .bookmaker-hero-content { flex-direction: column; align-items: flex-start; } */
}

.bookmaker-hero-simple { padding: 24px 0; min-height: auto; }
.bookmaker-hero-simple h1 { font-size: 26px; margin-top: 8px; }
.predictions-intro { padding: 24px 0; }

.logo img { max-height: 44px; width: auto; display: block; }
.custom-logo-link { display: flex; align-items: center; }
/* ===================================================================
   Переключатель "Match Schedule / Predictions" на странице /predictions/
   Сейчас это голые <button> — оформляем как сегментированный тумблер
   в фирменном стиле (используем var(--accent), она уже красит вкладки
   1X2 / TODAY на этой же странице — цвет будет 100% совпадать).
   =================================================================== */

.matches-block {
    margin: 20px 0 28px;
}

.matches-switcher {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    background: #f5f6f8;
    border: 1px solid #eef0f4;
    border-radius: 12px;
    padding: 6px;
    margin: 16px 0;
}

.ms-btn {
    flex: 1 1 160px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 16px;
    background: transparent;
    border: none;
    border-radius: 8px;
    color: #64748b;
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease;
    white-space: nowrap;
}

.ms-btn-icon {
    flex-shrink: 0;
    opacity: .8;
}

.ms-btn:hover {
    color: #101828;
    background: #ffffff;
}

.ms-btn.active {
    background: var(--accent, #14b8a6);
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(20, 184, 166, .35);
}

.ms-btn.active .ms-btn-icon {
    opacity: 1;
}

/* ===================================================================
   Карточки прогнозов на вкладке "Predictions" (.ms-pred-card)
   Сейчас это голые <a> без единого стиля — приводим к той же светлой
   карточной стилистике, что и у полосы матчей выше.
   =================================================================== */

.ms-predictions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 12px;
    margin: 10px 0;
}

.ms-pred-card {
    display: block;
    background: #ffffff;
    border: 1px solid #eef0f4;
    border-left: 3px solid #cbd5e1;
    border-radius: 12px;
    padding: 14px 16px;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 2px 10px rgba(15, 27, 61, .06);
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}

.ms-pred-card:hover {
    box-shadow: 0 10px 24px rgba(15, 27, 61, .12);
    transform: translateY(-2px);
    text-decoration: none;
    color: inherit;
}

.ms-pred-card.status-win {
    border-left-color: #16a34a;
}
.ms-pred-card.status-lose {
    border-left-color: #dc2626;
}
.ms-pred-card.status-pending {
    border-left-color: #cbd5e1;
}

.ms-pred-liga {
    font-size: 10px;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: .5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 6px;
}

.ms-pred-title {
    font-size: 15px;
    font-weight: 700;
    color: #101828;
    margin-bottom: 12px;
    line-height: 1.3;
}

.ms-pred-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
}

.ms-pred-type {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .3px;
    color: #64748b;
    background: #f5f6f8;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 4px 8px;
}

.ms-pred-odd {
    font-size: 13px;
    font-weight: 700;
    color: var(--accent, #14b8a6);
}

.ms-pred-status {
    font-size: 14px;
    line-height: 1;
}

.ms-empty {
    padding: 20px;
    color: #64748b;
    font-style: italic;
    text-align: center;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #eef0f4;
}

/* убираем старую точку-индикатор, если где-то ещё осталась в разметке */
.ms-btn-dot {
    display: none;
}

@media (max-width: 480px) {
    .matches-switcher {
        gap: 4px;
        padding: 4px;
    }
    .ms-btn {
        flex: 1 1 auto;
        padding: 10px 8px;
        font-size: 12.5px;
    }
    .ms-btn-icon {
        width: 15px;
        height: 15px;
    }
}


/* ===== Home lists: Blog & Apps ===== */

.home-lists {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin: 32px 0;
    max-width: 1140px;   /* совпадает с шириной остальных секций */
    margin-left: auto;
    margin-right: auto;
}
@media (max-width: 768px) {
    .home-lists { grid-template-columns: 1fr; }
}

.home-list-block {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}

.home-list-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.home-list-header h3 {
    margin: 0;
    font-size: 18px;
}

/* Кнопки "Visit Blog" / "See all Apps" */
.home-list-seeall {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #7c3aed;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    border-radius: 20px;
    text-decoration: none;
    white-space: nowrap;
    transition: background .15s ease, transform .15s ease;
}
.home-list-seeall:hover {
    background: #6d28d9;
    transform: translateY(-1px);
    text-decoration: none;
    color: #fff;
}
.home-list-seeall i { font-style: normal; }

.home-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.home-list-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 0;
    border-bottom: 1px solid #eee;
}
.home-list-item:last-child { border-bottom: none; }

.home-list-thumb img {
    width: 44px;
    height: 44px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
}

.home-list-item-text {
    flex: 1;
    min-width: 0;
}
.home-list-title {
    display: block;
    color: #111;
    font-weight: 600;
    text-decoration: none;
    font-size: 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.home-list-title:hover { color: #10b981; }

/* Кнопки "Read article" / "View app" — единый стиль */
.home-list-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-shrink: 0;
    padding: 7px 14px;
    font-size: 13px;
    font-weight: 600;
    color: #10b981;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 20px;
    text-decoration: none;
    white-space: nowrap;
    transition: background .15s ease, color .15s ease, transform .15s ease;
}
.home-list-btn:hover {
    background: #10b981;
    color: #fff;
    border-color: #10b981;
    transform: translateY(-1px);
    text-decoration: none;
}
.home-list-btn i { font-style: normal; }

.home-list-empty {
    color: #888;
    font-size: 14px;
}


/* ===== Задачи 06.11: заголовки и QUICK NAVIGATION ===== */

/* Заголовок в баннере: был <h2>, теперь <div> — выглядит так же */
.predictions-banner-text .predictions-banner-title { font-size: 20px; font-weight: 700; line-height: 1.3; margin-bottom: 8px; color: #1a1a1a; }

/* Заголовок в шапке с логотипом, когда длинный H1 перенесён в начало статьи */
.bookmaker-hero-info .bookmaker-hero-title { font-size: 30px; font-weight: 700; line-height: 1.2; margin-bottom: 14px; }
.bookmaker-single-body > .content-h1 { margin-bottom: 20px; }

/* QUICK NAVIGATION на мобильных: над статьёй, свёрнут, раскрывается по нажатию */
@media (max-width: 900px) {
    .bookmaker-content-grid { row-gap: 20px; }
    .bookmaker-toc { order: -1; }
    .bookmaker-toc .toc-sticky { position: static; }

    .toc-sticky .toc-title {
        position: relative;
        cursor: pointer;
        user-select: none;
        padding-right: 28px;
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: 0;
    }
    .toc-sticky .toc-title::after {
        content: '';
        position: absolute;
        right: 4px;
        top: 50%;
        width: 8px;
        height: 8px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: translateY(-75%) rotate(45deg);
        transition: transform .2s;
    }
    .toc-sticky ol { display: none; margin-top: 16px; }

    .toc-sticky.is-open .toc-title { padding-bottom: 12px; border-bottom: 1px solid rgba(0,0,0,0.08); }
    .toc-sticky.is-open .toc-title::after { transform: translateY(-25%) rotate(-135deg); }
    .toc-sticky.is-open ol { display: block; }
}



.content-body ul, .content-body ol,
.content-faq ul, .content-faq ol,
.content-body-block ul, .content-body-block ol { padding-left: 24px; margin: 0 0 16px; }
.content-body ul, .content-faq ul, .content-body-block ul { list-style: disc; }
.content-body ol, .content-faq ol, .content-body-block ol { list-style: decimal; }
.content-body li, .content-faq li, .content-body-block li { margin-bottom: 8px; padding-left: 4px; }
.content-body li > ul, .content-body li > ol { margin: 8px 0 0; }

.content-body table, .content-body-block table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.45;
}
.content-body th, .content-body td,
.content-body-block th, .content-body-block td {
    border: 1px solid #d0d4da;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
}
.content-body th, .content-body-block th,
.content-body thead td, .content-body-block thead td { background: #f3f4f6; font-weight: 700; }

/* на телефоне широкую таблицу можно листать вбок, страница не разъезжается */
@media (max-width: 768px) {
    .content-body table, .content-body-block table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .content-body th, .content-body td { min-width: 140px; }
}