/*
 * Shijiebei 2026 visual system.
 * Loaded last on purpose: it reshapes legacy templates without touching data logic.
 */
:root {
    --sb-ink: #101828;
    --sb-muted: #667085;
    --sb-soft: #edf6f0;
    --sb-page: #f5f7fa;
    --sb-line: #d9e2ec;
    --sb-card: #ffffff;
    --sb-green: #167a46;
    --sb-green-2: #0f5f36;
    --sb-red: #f15a24;
    --sb-orange: #f15a24;
    --sb-yellow: #f6c453;
    --sb-blue: #1f3a5f;
    --sb-shadow: 0 10px 26px rgba(16, 24, 40, .07);
    --theme-primary: var(--sb-green);
    --theme-primary-hover: var(--sb-green-2);
    --theme-primary-light: rgba(22, 122, 70, .12);
    --theme-primary-rgb: 22, 122, 70;
    --theme-accent: var(--sb-red);
    --theme-gold: var(--sb-yellow);
    --theme-deep: #0b1626;
    --theme-deep-soft: #12233a;
    --theme-surface: var(--sb-page);
    --bg-page: var(--sb-page);
    --border-light: var(--sb-line);
    --text-main: var(--sb-ink);
    --text-muted: var(--sb-muted);
}

html {
    background: var(--sb-page);
}

body {
    background:
        radial-gradient(circle at 14% 0, rgba(17, 102, 95, .08), transparent 28%),
        linear-gradient(180deg, #f6faf8 0, var(--sb-page) 240px);
    color: var(--sb-ink);
    letter-spacing: 0;
}

.site-container,
.wc-home,
.jzt-basic-page,
.jzt-article-page,
.dir-container,
.jzt-portal-inner,
.yuce-wrap .container,
.seo-core-wrap,
.seo-hub-wrap {
    max-width: 1180px;
}

.jzt-main-shell {
    padding-top: 16px;
}

.jzt-frame-header {
    background: #061c1f;
    box-shadow: 0 12px 32px rgba(6, 28, 31, .2);
}

.jzt-frame-alert {
    background: linear-gradient(90deg, #f15a24, #d9481b);
}

.jzt-frame-top {
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .04), transparent 42%),
        #061c1f;
}

.jzt-frame-logo a {
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 8px;
    background: rgba(255, 255, 255, .055);
    font-size: 22px;
    line-height: 1;
}

.jzt-frame-nav a {
    border-radius: 8px;
    color: #d9e9e6;
}

.jzt-frame-nav a:hover,
.jzt-frame-nav a.is-current,
.jzt-frame-nav a.is-active {
    background: #f4f9f7;
    color: #061c1f;
}

.jzt-frame-nav a.is-worldcup {
    background: var(--sb-yellow);
    color: #201706;
}

.jzt-frame-sub {
    background: #fff;
    border-bottom-color: var(--sb-line);
}

.jzt-frame-sub nav {
    gap: 16px;
}

.jzt-frame-sub a {
    color: #213936;
}

.jzt-frame-search {
    border-radius: 8px;
    background: #0c2b2f;
}

.jzt-frame-search button,
.jzt-mobile-search button {
    background: var(--sb-green);
}

.jzt-frame-menu {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--sb-green), var(--sb-green-2));
}

.jzt-frame-menu::before {
    content: "";
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 -6px 0 #fff, 0 6px 0 #fff;
}

.jzt-frame-menu i {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
}

.wc-panel,
.wc-hero-copy,
.wc-featured-card,
.jzt-basic-card,
.jzt-article-card,
.jzt-side-box,
.dir-card,
.mod-box,
.league-header,
.rank-card,
.schedule-card,
.side-card,
.yuce-main-card,
.seo-main-card,
.seo-jzt-hero,
.seo-topic-card,
.video-main-card,
.hub-card,
.cat-main,
.tag-main,
.sp-match-card,
.sp-team-card,
.sp-player-card {
    border: 1px solid var(--sb-line) !important;
    border-radius: 8px !important;
    background: var(--sb-card) !important;
    box-shadow: var(--sb-shadow) !important;
}

.wc-section-head,
.mod-hd,
.side-card-hd,
.dir-head,
.league-title-box,
.rank-head,
.schedule-head,
.jzt-article-module-head,
.sp-section-head {
    border-color: #e8efec !important;
}

.wc-section-head span,
.jzt-basic-head span,
.jzt-article-head span,
.mod-hd span,
.rank-head span,
.dir-kicker,
.wc-kicker,
.seo-jzt-badge,
.side-card-hd span {
    border-radius: 999px !important;
    background: rgba(215, 38, 77, .09) !important;
    color: var(--sb-red) !important;
}

h1, h2, h3,
.wc-hero h1,
.wc-section-head h2,
.league-title-box h1,
.jzt-basic-head h1,
.jzt-article-head h1,
.dir-head h1,
.rank-head h1 {
    color: var(--sb-ink) !important;
    letter-spacing: 0 !important;
}

.wc-hero-copy {
    background:
        linear-gradient(120deg, rgba(17, 102, 95, .12), transparent 48%),
        linear-gradient(24deg, rgba(215, 38, 77, .06), transparent 52%),
        #fff !important;
}

.sb-redesign .wc-hero.wc-hero-featured {
    grid-template-columns: minmax(0, 1fr) 322px !important;
    align-items: stretch !important;
    margin-bottom: 28px !important;
}

.sb-redesign .wc-hero.wc-hero-featured .wc-hero-copy,
.sb-redesign .wc-hero.wc-hero-featured .wc-featured-card {
    align-self: stretch !important;
}

.sb-redesign .wc-hero.wc-hero-featured .wc-featured-card {
    display: flex !important;
    flex-direction: column !important;
}

.sb-redesign .wc-hero.wc-hero-featured .wc-featured-card .wc-live-btn {
    margin-top: auto !important;
}

.wc-hero-actions a,
.wc-live-btn,
.jzt-live-btn,
.seo-jzt-live-btn,
.jzt-article-live-btn,
.tag-btn-live,
.yc-live-btn,
.sp-side-live-btn,
.schedule-live-btn,
.side-match-btn,
.btn-full-standings,
.jzt-footer-lead > a {
    border-radius: 8px !important;
    background: var(--sb-green) !important;
    border-color: var(--sb-green) !important;
    color: #fff !important;
    box-shadow: 0 7px 16px rgba(17, 102, 95, .18) !important;
}

.wc-hero-actions a:nth-child(2),
.wc-filter button,
.league-jzt-nav-links a,
.date-nav a,
.schedule-tabs a,
.tab-link,
.dir-filter a {
    border-radius: 8px !important;
}

.wc-hero-actions a:nth-child(2),
.wc-filter button:not(.active),
.league-jzt-nav-links a,
.date-nav a,
.schedule-tabs a,
.dir-filter a {
    background: #f7fbfa !important;
    border: 1px solid var(--sb-line) !important;
    color: var(--sb-green-2) !important;
}

.wc-filter button.active,
.date-nav a.active,
.schedule-tabs a.active,
.dir-filter a.active,
.league-jzt-nav-links a:hover {
    background: var(--sb-green) !important;
    color: #fff !important;
    border-color: var(--sb-green) !important;
}

table,
.rank-table,
.yc-h2h-table {
    border-color: var(--sb-line) !important;
}

th,
.rank-table th,
.yc-h2h-table th {
    background: #f4f8f6 !important;
    color: #415450 !important;
}

td,
.rank-table td,
.yc-h2h-table td {
    border-color: #edf3f1 !important;
}

.wc-today-row,
.wc-cup-card,
.wc-match-row,
.side-match-item,
.jzt-article-match-card,
.dir-team-card,
.dir-player-card,
.topic-card,
.seo-media-card,
.video-card,
.hub-list-item {
    border-radius: 8px !important;
    border-color: #e3ece8 !important;
    background: #fbfdfc !important;
}

.wc-today-row:hover,
.wc-cup-card:hover,
.wc-match-row:hover,
.dir-team-card:hover,
.dir-player-card:hover,
.topic-card:hover,
.hub-list-item:hover {
    border-color: rgba(17, 102, 95, .34) !important;
    box-shadow: 0 8px 18px rgba(17, 102, 95, .08) !important;
}

.sb-article-screen .jzt-article-head h1 {
    font-size: 28px !important;
    line-height: 1.3 !important;
}

.sb-article-screen .jzt-article-live-strip,
.sb-article-screen .jzt-article-today-panel {
    padding: 12px 14px !important;
    border-radius: 8px !important;
    background: #fff !important;
}

.sb-article-screen .jzt-article-live-strip {
    border-color: rgba(215, 38, 77, .28) !important;
    background: linear-gradient(180deg, #fffafb 0%, #ffffff 82%) !important;
}

.sb-article-screen .jzt-article-module-head {
    margin-bottom: 8px !important;
}

.sb-article-screen .jzt-article-module-head strong {
    font-size: 15px !important;
}

.sb-article-screen .jzt-article-live-strip .jzt-article-match-grid {
    grid-template-columns: 1fr !important;
}

.sb-article-screen .jzt-article-match-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 108px !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 72px !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    background: #fbfdfc !important;
}

.sb-article-screen .jzt-article-match-card.is-live {
    border-color: rgba(215, 38, 77, .30) !important;
    background: linear-gradient(180deg, #fff8fa 0%, #ffffff 100%) !important;
}

.sb-article-screen .jzt-article-match-main {
    grid-template-columns: 82px minmax(0, 1fr) 48px minmax(0, 1fr) 58px !important;
    grid-template-areas: "time home score away state" !important;
    align-items: center !important;
    gap: 8px !important;
}

.sb-article-screen .jzt-article-match-main time {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
}

.sb-article-screen .jzt-article-match-main time strong {
    font-size: 14px !important;
}

.sb-article-screen .jzt-article-match-team {
    display: block !important;
    color: #14211f !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.sb-article-screen .jzt-article-match-main b {
    font-size: 14px !important;
}

.sb-article-screen .jzt-article-match-main em {
    min-height: 24px !important;
    padding: 0 8px !important;
}

.sb-article-screen .jzt-article-live-btn {
    width: 108px !important;
    min-height: 40px !important;
    border-radius: 8px !important;
}

@media (max-width: 768px) {
    .sb-article-screen .jzt-article-head h1 {
        font-size: 22px !important;
        line-height: 1.32 !important;
    }

    .sb-article-screen .jzt-article-match-card {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
        gap: 8px !important;
    }

    .sb-article-screen .jzt-article-match-main {
        grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr) !important;
        grid-template-areas:
            "time time state"
            "home score away" !important;
    }

    .sb-article-screen .jzt-article-match-main time {
        flex-direction: row !important;
        align-items: baseline !important;
    }

    .sb-article-screen .jzt-article-live-btn {
        width: 100% !important;
        min-height: 34px !important;
    }
}

.jzt-frame-footer {
    background: #061c1f !important;
}

.jzt-footer-lead {
    border-bottom-color: rgba(255, 255, 255, .12) !important;
}

.jzt-footer-grid span,
.jzt-footer-lead strong {
    color: #fff !important;
}

.jzt-footer-grid a,
.jzt-footer-lead p,
.jzt-footer-bottom {
    color: #b6c6c2 !important;
}

.jzt-footer-grid a:hover,
.jzt-footer-bottom a:hover {
    color: #7ee4d6 !important;
}

.jzt-mobile-panel-head {
    background: #061c1f !important;
}

.jzt-mobile-priority a,
.jzt-mobile-list a {
    border-radius: 8px !important;
    background: #f7fbfa !important;
    border-color: var(--sb-line) !important;
}

.jzt-mobile-priority a:first-child {
    background: #fff2f5 !important;
    border-color: #f5c9d3 !important;
    color: var(--sb-red) !important;
}

.sb-empty-page,
.sb-index-fallback {
    padding: 28px 14px 42px;
}

.sb-empty-card,
.sb-index-fallback {
    max-width: 860px;
    margin: 0 auto;
    padding: 28px;
    border: 1px solid var(--sb-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: var(--sb-shadow);
}

.sb-empty-code {
    color: var(--sb-red);
    font-size: 54px;
    line-height: 1;
    font-weight: 950;
}

.sb-empty-title,
.sb-index-fallback h1 {
    margin: 10px 0 0;
    color: var(--sb-ink);
    font-size: 28px;
    line-height: 1.3;
    font-weight: 950;
}

.sb-empty-desc,
.sb-index-fallback p {
    max-width: 680px;
    margin: 12px 0 0;
    color: var(--sb-muted);
    font-size: 14px;
    line-height: 1.8;
}

.sb-empty-actions,
.sb-index-fallback div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.sb-empty-actions a,
.sb-index-fallback a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 8px;
    background: var(--sb-green);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}

.sb-empty-actions a:nth-child(2),
.sb-index-fallback a:nth-child(2) {
    background: #f7fbfa;
    color: var(--sb-green-2);
    border: 1px solid var(--sb-line);
}

.sb-empty-links {
    margin-top: 26px;
    padding-top: 18px;
    border-top: 1px solid #edf3f1;
}

.sb-empty-links h2 {
    margin: 0 0 12px;
    font-size: 16px;
    font-weight: 950;
}

.sb-topic-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sb-topic-chips a {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border: 1px solid var(--sb-line);
    border-radius: 999px;
    background: #f7fbfa;
    color: #38504b;
    font-size: 12px;
    font-weight: 800;
}

@media (max-width: 992px) {
    .hidden-sm {
        display: none !important;
    }

    .visible-sm {
        display: block;
    }
}

@media (max-width: 768px) {
    body {
        background: #f4f7f5;
    }

    .site-container,
    .wc-home,
    .jzt-basic-page,
    .jzt-article-page,
    .dir-container,
    .jzt-portal-inner,
    .seo-core-wrap,
    .seo-hub-wrap {
        width: 100%;
        padding-right: 10px !important;
        padding-left: 10px !important;
        box-sizing: border-box;
    }

    .jzt-frame-alert .site-container {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .jzt-frame-top,
    .jzt-frame-row {
        min-height: 56px !important;
    }

    .jzt-frame-row {
        gap: 10px !important;
        justify-content: space-between !important;
    }

    .jzt-frame-logo {
        min-width: 0 !important;
        margin: 0 !important;
    }

    .jzt-frame-logo a {
        max-width: calc(100vw - 104px) !important;
        min-height: 38px !important;
        padding: 0 11px !important;
        font-size: 20px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .jzt-frame-logo span {
        display: block !important;
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .jzt-frame-menu.visible-sm {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 42px !important;
        width: 42px !important;
        height: 42px !important;
        padding: 0 !important;
        border-radius: 10px !important;
        opacity: 1 !important;
    }

    .jzt-main-shell {
        padding-top: 10px !important;
    }

    .wc-panel,
    .wc-hero-copy,
    .wc-featured-card,
    .jzt-basic-card,
    .jzt-article-card,
    .jzt-side-box,
    .dir-card,
    .mod-box,
    .league-header,
    .rank-card,
    .schedule-card,
    .side-card,
    .yuce-main-card,
    .seo-main-card,
    .seo-jzt-hero {
        box-shadow: 0 6px 16px rgba(20, 33, 31, .05) !important;
    }

    .wc-section-head h2,
    .jzt-basic-head h1,
    .jzt-article-head h1,
    .league-title-box h1,
    .dir-head h1 {
        font-size: 20px !important;
        line-height: 1.28 !important;
    }

    .wc-hero h1 {
        font-size: 22px !important;
    }

    .sb-redesign .wc-hero.wc-hero-featured {
        grid-template-columns: 1fr !important;
    }

    .wc-hero-actions a,
    .wc-live-btn,
    .jzt-live-btn,
    .seo-jzt-live-btn,
    .jzt-article-live-btn,
    .schedule-live-btn {
        min-height: 34px !important;
    }

    .jzt-footer-grid,
    .jzt-footer-mini-cols,
    .jzt-footer-columns,
    .jzt-footer-simple {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px 12px !important;
    }

    .jzt-footer-grid nav,
    .jzt-footer-mini-cols nav,
    .jzt-footer-columns nav,
    .jzt-footer-simple nav {
        min-width: 0 !important;
    }

    .jzt-footer-grid a,
    .jzt-footer-mini-cols a,
    .jzt-footer-columns a,
    .jzt-footer-simple a {
        font-size: 12px !important;
        line-height: 1.7 !important;
        word-break: keep-all !important;
    }
}

/* Template reset layer: keep data logic, reshape every public template surface. */
.sb-page-shell {
    animation: sb-fade-in .18s ease-out;
}

@keyframes sb-fade-in {
    from { opacity: .96; transform: translateY(2px); }
    to { opacity: 1; transform: translateY(0); }
}

.sb-home-screen,
.sb-archive-screen,
.sb-data-screen,
.sb-directory-screen,
.sb-detail-screen,
.sb-hub-screen,
.sb-video-screen,
.sb-yuce-screen,
.sb-seo-core-screen,
.sb-seo-hub-screen,
.sb-template-static,
.sb-article-screen {
    color: var(--sb-ink);
}

.sb-home-screen a,
.sb-archive-screen a,
.sb-data-screen a,
.sb-directory-screen a,
.sb-detail-screen a,
.sb-hub-screen a,
.sb-video-screen a,
.sb-yuce-screen a,
.sb-seo-core-screen a,
.sb-seo-hub-screen a {
    text-decoration: none;
}

.sb-breadcrumb,
.breadcrumb {
    color: #69807b !important;
}

.sb-breadcrumb a,
.breadcrumb a {
    color: var(--sb-green) !important;
    font-weight: 800;
}

.sb-data-screen .page-wrap,
.sb-data-screen .container,
.sb-directory-screen .dir-container,
.sb-detail-screen .sp-match-container,
.sb-detail-screen .sp-team-container,
.sb-detail-screen .jzt-portal-inner,
.sb-hub-screen .container,
.sb-video-screen.container,
.sb-yuce-screen .container,
.sb-seo-core-screen,
.sb-seo-hub-screen.container {
    max-width: 1180px;
}

.sb-data-screen h1,
.sb-directory-screen h1,
.sb-hub-screen h1,
.sb-video-screen h1,
.sb-yuce-screen h1,
.sb-seo-core-screen h1,
.sb-seo-hub-screen h1 {
    letter-spacing: 0;
    color: #0b1626;
}

.sb-data-screen .page-header,
.sb-data-screen .league-header,
.sb-directory-screen .dir-head,
.sb-hub-screen .hub-hero,
.sb-yuce-screen .yuce-hero,
.sb-video-screen .video-hero,
.sb-seo-core-screen .core-hero,
.sb-seo-hub-screen .seo-hub-hero {
    border-radius: var(--sb-radius-lg) !important;
    border: 1px solid rgba(17, 102, 95, .12) !important;
    background:
        linear-gradient(135deg, rgba(17, 102, 95, .10), rgba(36, 87, 197, .06)),
        #ffffff !important;
    box-shadow: var(--sb-shadow) !important;
}

.sb-data-screen .match-list,
.sb-data-screen .schedule-list,
.sb-directory-screen .dir-grid,
.sb-archive-screen .cat-grid,
.sb-archive-screen .tag-grid,
.sb-hub-screen .hub-grid {
    gap: 14px;
}

.sb-data-screen table,
.sb-directory-screen table,
.sb-detail-screen table {
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    border-radius: 10px;
}

.sb-data-screen th,
.sb-directory-screen th,
.sb-detail-screen th {
    background: #eef6f4 !important;
    color: #203f3a !important;
    font-weight: 900 !important;
}

.sb-data-screen td,
.sb-directory-screen td,
.sb-detail-screen td {
    border-color: #e8f0ee !important;
}

.sb-detail-screen .sp-match-hero,
.sb-detail-screen .sp-team-hero,
.sb-detail-screen .sp-player-hero,
.sb-player-hero {
    border-radius: var(--sb-radius-lg) !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    box-shadow: 0 18px 38px rgba(15, 34, 31, .16) !important;
}

.sb-match-screen .sp-match-hero,
.sb-team-screen .sp-team-hero,
.sb-player-screen .sp-player-hero,
.sb-player-hero {
    color: #f8fffd !important;
}

.sb-match-screen .sp-score-core h1,
.sb-match-screen .sp-match-hero h2,
.sb-match-screen .sp-match-hero h3,
.sb-team-screen .sp-team-hero h1,
.sb-team-screen .sp-team-hero h2,
.sb-team-screen .sp-team-hero h3,
.sb-player-screen .sp-player-hero h1,
.sb-player-screen .sp-player-hero h2,
.sb-player-screen .sp-player-hero h3,
.sb-player-hero h1 {
    color: #ffffff !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .28) !important;
}

.sb-match-screen .sp-score-row b,
.sb-match-screen .sp-score-row span,
.sb-match-screen .sp-status-line,
.sb-match-screen .sp-status-line time,
.sb-match-screen .sp-match-league,
.sb-match-screen .sp-team-link strong,
.sb-match-screen .sp-team-panel p {
    color: #ffffff !important;
}

.sb-match-screen .sp-score-row span {
    color: rgba(255, 255, 255, .55) !important;
}

.sb-match-screen .sp-match-crumb,
.sb-match-screen .sp-match-crumb a,
.sb-match-screen .sp-match-crumb span {
    color: rgba(238, 248, 246, .84) !important;
}

.sb-match-screen .sp-status-pill {
    background: #ffffff !important;
    color: #15231f !important;
}

.sb-player-body,
.sb-detail-screen .sp-entity-layout,
.sb-detail-screen .sp-match-layout,
.sb-detail-screen .sp-team-layout {
    gap: 18px !important;
}

.sb-detail-screen .sp-match-card,
.sb-detail-screen .sp-team-card,
.sb-detail-screen .sp-player-card,
.sb-player-body .jzt-portal-section,
.sb-player-body .jzt-side-box {
    border-radius: var(--sb-radius) !important;
    border: 1px solid var(--sb-line) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(20, 33, 31, .06) !important;
}

.sb-player-body .jzt-portal-sec-header,
.sb-detail-screen h2,
.sb-detail-screen h3 {
    border-left-color: var(--sb-green) !important;
    color: #14211f !important;
}

.sb-redesign .btn,
.sb-redesign button,
.sb-redesign input[type="submit"],
.sb-redesign .wc-live-btn,
.sb-redesign .jzt-live-btn,
.sb-redesign .schedule-live-btn,
.sb-redesign .seo-jzt-live-btn,
.sb-redesign .jzt-article-live-btn {
    border-radius: 8px !important;
    letter-spacing: 0 !important;
}

.sb-redesign .wc-live-btn,
.sb-redesign .jzt-live-btn,
.sb-redesign .sp-side-live-btn,
.sb-redesign .schedule-live-btn,
.sb-redesign .seo-jzt-live-btn,
.sb-redesign .jzt-article-live-btn,
.sb-redesign input[type="submit"] {
    background: var(--sb-green) !important;
    color: #fff !important;
    border-color: var(--sb-green) !important;
}

.sb-redesign .wc-live-btn:hover,
.sb-redesign .jzt-live-btn:hover,
.sb-redesign .sp-side-live-btn:hover,
.sb-redesign .schedule-live-btn:hover,
.sb-redesign .seo-jzt-live-btn:hover,
.sb-redesign .jzt-article-live-btn:hover {
    background: var(--sb-green-2) !important;
    border-color: var(--sb-green-2) !important;
}

.sb-redesign .jzt-live-btn *,
.sb-redesign .wc-live-btn *,
.sb-redesign .schedule-live-btn *,
.sb-redesign .seo-jzt-live-btn *,
.sb-redesign .jzt-article-live-btn *,
.sb-redesign .sp-side-live-btn *,
.sb-redesign .jzt-live-btn.sp-match-live-primary,
.sb-redesign .jzt-live-btn.sp-match-live-primary *,
.sb-redesign .jzt-live-btn.sp-match-live-line,
.sb-redesign .jzt-live-btn.sp-match-live-line * {
    color: #ffffff !important;
}

.sb-redesign .jzt-live-btn.sp-match-live-line {
    background: var(--sb-green) !important;
    border-color: var(--sb-green) !important;
}

.sb-redesign .badge,
.sb-redesign .tag,
.sb-redesign .status-live,
.sb-redesign .match-status.live,
.sb-redesign .sp-status.live {
    background: var(--sb-red) !important;
    color: #fff !important;
}

.sb-redesign .offcanvas,
.sb-redesign .modal-content {
    border-radius: 14px !important;
}

@media (max-width: 768px) {
    .sb-page-shell {
        padding-top: 8px !important;
    }

    .sb-home-screen,
    .sb-archive-screen,
    .sb-data-screen,
    .sb-directory-screen,
    .sb-detail-screen,
    .sb-hub-screen,
    .sb-video-screen,
    .sb-yuce-screen,
    .sb-seo-core-screen,
    .sb-seo-hub-screen,
    .sb-template-static,
    .sb-article-screen {
        max-width: 100% !important;
    }

    .sb-data-screen .container,
    .sb-directory-screen .dir-container,
    .sb-detail-screen .sp-match-container,
    .sb-detail-screen .sp-team-container,
    .sb-detail-screen .jzt-portal-inner,
    .sb-hub-screen .container,
    .sb-video-screen.container,
    .sb-yuce-screen .container,
    .sb-seo-hub-screen.container {
        width: 100% !important;
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sb-data-screen .page-header,
    .sb-data-screen .league-header,
    .sb-directory-screen .dir-head,
    .sb-hub-screen .hub-hero,
    .sb-yuce-screen .yuce-hero,
    .sb-video-screen .video-hero,
    .sb-seo-core-screen .core-hero,
    .sb-seo-hub-screen .seo-hub-hero,
    .sb-detail-screen .sp-match-hero,
    .sb-detail-screen .sp-team-hero,
    .sb-detail-screen .sp-player-hero,
    .sb-player-hero {
        border-radius: 12px !important;
        padding: 16px !important;
    }

    .sb-player-hero .hero-flex {
        gap: 14px !important;
        align-items: flex-start !important;
    }

    .sb-player-hero .avatar-box {
        width: 78px !important;
        height: 78px !important;
    }

    .sb-player-hero h1,
    .sb-detail-screen h1,
    .sb-data-screen h1,
    .sb-directory-screen h1 {
        font-size: 21px !important;
        line-height: 1.25 !important;
    }

    .sb-player-body,
    .sb-detail-screen .sp-entity-layout,
    .sb-detail-screen .sp-match-layout,
    .sb-detail-screen .sp-team-layout {
        display: block !important;
    }

    .sb-detail-screen .sp-entity-main,
    .sb-detail-screen .sp-entity-side,
    .sb-detail-screen .sp-match-main,
    .sb-detail-screen .sp-match-side,
    .sb-detail-screen .sp-team-main,
    .sb-detail-screen .sp-team-side {
        width: 100% !important;
        max-width: 100% !important;
    }

    .sb-data-screen table,
    .sb-directory-screen table,
    .sb-detail-screen table {
        font-size: 12px !important;
    }

    .sb-redesign .offcanvas {
        max-width: 88vw !important;
    }
}

/* Site variant 2026-06: newsroom matchday visual system. */
:root {
    --sb-ink: #101828;
    --sb-muted: #667085;
    --sb-soft: #edf6f0;
    --sb-page: #f5f7fa;
    --sb-line: #d9e2ec;
    --sb-card: #ffffff;
    --sb-green: #167a46;
    --sb-green-2: #0f5f36;
    --sb-red: #f15a24;
    --sb-yellow: #f6c453;
    --sb-blue: #1f3a5f;
    --sb-shadow: 0 12px 28px rgba(24, 34, 53, .08);
    --theme-primary: #167a46;
    --theme-primary-hover: #0f5f36;
    --theme-primary-light: rgba(22, 122, 70, .12);
    --theme-primary-rgb: 22, 122, 70;
    --theme-accent: #f15a24;
    --theme-gold: #f6c453;
    --theme-deep: #0b1626;
    --theme-deep-soft: #12233a;
    --theme-surface: #f5f7fa;
    --bg-page: #f5f7fa;
    --border-light: #d9e2ec;
    --text-main: #101828;
    --text-muted: #667085;
}

html,
body.sb-redesign {
    background: linear-gradient(180deg, #f7f9fd 0, #f1f5fb 260px, #f5f7fb 100%) !important;
}

.sb-redesign .wc-home {
    --wc-green: #2563d8;
    --wc-green-dark: #173f9f;
    --wc-red: #f05a28;
    --wc-blue: #0e9f9a;
    --wc-amber: #ad7a00;
    --wc-ink: #182235;
    --wc-muted: #667085;
    --wc-line: #d9e2ee;
    --wc-soft: #f2f6fc;
}

.sb-redesign .jzt-frame-header,
.sb-redesign .jzt-frame-footer {
    background: #151a28 !important;
    box-shadow: 0 12px 28px rgba(21, 26, 40, .22) !important;
}

.sb-redesign .jzt-frame-alert {
    background: #f05a28 !important;
}

.sb-redesign .jzt-frame-top {
    background: linear-gradient(90deg, #151a28 0%, #1f2b42 58%, #182235 100%) !important;
}

.sb-redesign .jzt-frame-logo a {
    border-color: rgba(246, 195, 67, .42) !important;
    background: rgba(246, 195, 67, .10) !important;
    color: #ffffff !important;
    box-shadow: inset 0 -2px 0 rgba(246, 195, 67, .28);
}

.sb-redesign .jzt-frame-nav a {
    color: #e9edf5 !important;
}

.sb-redesign .jzt-frame-nav a:hover,
.sb-redesign .jzt-frame-nav a.is-current,
.sb-redesign .jzt-frame-nav a.is-active {
    background: #ffffff !important;
    color: #182235 !important;
}

.sb-redesign .jzt-frame-nav a.is-worldcup {
    background: #f6c343 !important;
    color: #182235 !important;
}

.sb-redesign .jzt-frame-sub {
    background: #ffffff !important;
    border-bottom: 1px solid #cdd8e8 !important;
}

.sb-redesign .jzt-frame-sub a {
    color: #26344d !important;
}

.sb-redesign .jzt-frame-sub a:first-child {
    color: #f05a28 !important;
}

.sb-redesign .jzt-frame-search {
    border: 1px solid rgba(255, 255, 255, .18) !important;
    background: #202a3e !important;
}

.sb-redesign .jzt-frame-search input {
    color: #ffffff !important;
}

.sb-redesign .jzt-frame-search input::placeholder {
    color: #aeb8cb !important;
}

.sb-redesign .jzt-frame-search button,
.sb-redesign .jzt-mobile-search button,
.sb-redesign .jzt-frame-menu {
    background: var(--sb-green) !important;
    border: 1px solid rgba(255, 255, 255, .22) !important;
}

.sb-redesign .jzt-frame-menu::before {
    width: 19px !important;
    height: 2px !important;
    background: #ffffff !important;
    box-shadow: 0 -6px 0 #ffffff, 0 6px 0 #ffffff !important;
}

.sb-redesign .wc-hero-copy {
    border-color: #d9e2ee !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 216, .12), transparent 48%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
}

.sb-redesign .wc-kicker,
.sb-redesign .wc-section-head span,
.sb-redesign .jzt-basic-head span,
.sb-redesign .jzt-article-head span,
.sb-redesign .dir-kicker,
.sb-redesign .seo-jzt-badge,
.sb-redesign .side-card-hd span {
    background: rgba(240, 90, 40, .10) !important;
    color: #d9461a !important;
}

.sb-redesign .wc-hero h1,
.sb-redesign .wc-section-head h2,
.sb-redesign .jzt-basic-head h1,
.sb-redesign .jzt-article-head h1,
.sb-redesign .dir-head h1,
.sb-redesign .rank-head h1,
.sb-redesign .league-title-box h1 {
    color: #182235 !important;
}

.sb-redesign .wc-featured-card {
    border-color: #d8e3f1 !important;
    background:
        linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%) !important;
}

.sb-redesign .wc-featured-meta span,
.sb-redesign .wc-today-row em,
.sb-redesign .wc-match-row em,
.sb-redesign .wc-cup-card em {
    background: rgba(240, 90, 40, .09) !important;
    color: #d9461a !important;
}

.sb-redesign .wc-hero-actions a,
.sb-redesign .wc-live-btn,
.sb-redesign .jzt-live-btn,
.sb-redesign .seo-jzt-live-btn,
.sb-redesign .jzt-article-live-btn,
.sb-redesign .tag-btn-live,
.sb-redesign .yc-live-btn,
.sb-redesign .sp-side-live-btn,
.sb-redesign .schedule-live-btn,
.sb-redesign .side-match-btn,
.sb-redesign .btn-full-standings,
.sb-redesign .jzt-footer-lead > a,
.sb-redesign input[type="submit"] {
    background: var(--sb-green) !important;
    border-color: var(--sb-green) !important;
    color: #ffffff !important;
}

.sb-redesign .wc-hero-actions a:nth-child(2),
.sb-redesign .wc-filter button:not(.active),
.sb-redesign .league-jzt-nav-links a,
.sb-redesign .date-nav a,
.sb-redesign .schedule-tabs a,
.sb-redesign .tab-link,
.sb-redesign .dir-filter a {
    background: #ffffff !important;
    border-color: #d9e2ee !important;
    color: var(--sb-green-2) !important;
}

.sb-redesign .wc-hero-actions a:nth-child(3),
.sb-redesign .wc-filter button.active,
.sb-redesign .date-nav a.active,
.sb-redesign .schedule-tabs a.active,
.sb-redesign .dir-filter a.active,
.sb-redesign .league-jzt-nav-links a:hover {
    background: var(--sb-green-2) !important;
    border-color: var(--sb-green-2) !important;
    color: #ffffff !important;
}

.sb-redesign .wc-panel,
.sb-redesign .wc-featured-card,
.sb-redesign .jzt-basic-card,
.sb-redesign .jzt-article-card,
.sb-redesign .jzt-side-box,
.sb-redesign .dir-card,
.sb-redesign .mod-box,
.sb-redesign .league-header,
.sb-redesign .rank-card,
.sb-redesign .schedule-card,
.sb-redesign .side-card,
.sb-redesign .yuce-main-card,
.sb-redesign .seo-main-card,
.sb-redesign .seo-jzt-hero,
.sb-redesign .seo-topic-card,
.sb-redesign .video-main-card,
.sb-redesign .hub-card,
.sb-redesign .cat-main,
.sb-redesign .tag-main,
.sb-redesign .sp-match-card,
.sb-redesign .sp-team-card,
.sb-redesign .sp-player-card {
    border-color: #d9e2ee !important;
    box-shadow: 0 12px 28px rgba(24, 34, 53, .08) !important;
}

.sb-redesign .wc-today-row,
.sb-redesign .wc-cup-card,
.sb-redesign .wc-match-row,
.sb-redesign .side-match-item,
.sb-redesign .jzt-article-match-card,
.sb-redesign .dir-team-card,
.sb-redesign .dir-player-card,
.sb-redesign .topic-card,
.sb-redesign .seo-media-card,
.sb-redesign .video-card,
.sb-redesign .hub-list-item {
    border-color: #dfe7f1 !important;
    background: #fbfcff !important;
}

.sb-redesign .wc-today-row:hover,
.sb-redesign .wc-cup-card:hover,
.sb-redesign .wc-match-row:hover,
.sb-redesign .dir-team-card:hover,
.sb-redesign .dir-player-card:hover,
.sb-redesign .topic-card:hover,
.sb-redesign .hub-list-item:hover {
    border-color: rgba(37, 99, 216, .32) !important;
    box-shadow: 0 10px 22px rgba(37, 99, 216, .10) !important;
}

.sb-redesign .wc-league-strip a {
    border-color: #dfe7f1 !important;
    background: #ffffff !important;
}

.sb-redesign .wc-logo-fallback {
    background: #eef4ff !important;
    color: #173f9f !important;
}

.sb-redesign .jzt-footer-grid a:hover,
.sb-redesign .jzt-footer-bottom a:hover {
    color: #f6c343 !important;
}

.sb-redesign .jzt-footer-lead > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    min-height: 42px !important;
    padding: 0 16px !important;
    border-radius: 8px !important;
    white-space: nowrap !important;
}

.sb-redesign .jzt-mobile-panel-head {
    background: #151a28 !important;
}

.sb-redesign .jzt-mobile-priority a,
.sb-redesign .jzt-mobile-list a {
    background: #ffffff !important;
    border-color: #d9e2ee !important;
    color: #182235 !important;
}

.sb-redesign .jzt-mobile-priority a:first-child {
    background: #fff4ee !important;
    border-color: rgba(240, 90, 40, .30) !important;
    color: #d9461a !important;
}

@media (max-width: 768px) {
    .sb-redesign .jzt-frame-alert .site-container {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .sb-redesign .jzt-frame-logo {
        margin-left: 0 !important;
    }

    .sb-redesign .jzt-frame-logo a {
        min-height: 36px !important;
        max-width: 170px !important;
        padding: 0 10px !important;
        font-size: 18px !important;
    }

    .sb-redesign .jzt-frame-menu.visible-sm {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        border-radius: 10px !important;
    }

    .sb-redesign .wc-hero-copy {
        padding: 17px 15px 18px !important;
    }

    .sb-redesign .wc-hero h1 {
        font-size: 24px !important;
        line-height: 1.24 !important;
    }

    .sb-redesign .wc-hero p {
        font-size: 13px !important;
        line-height: 1.65 !important;
    }

    .sb-redesign .wc-hero-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    .sb-redesign .wc-hero-actions a {
        min-width: 0 !important;
        padding: 0 8px !important;
        font-size: 13px !important;
    }

    .sb-redesign .wc-hero-actions a:first-child {
        grid-column: 1 / -1 !important;
    }

    .sb-redesign .wc-today-main,
    .sb-redesign .wc-row-main {
        grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr) !important;
        grid-template-areas:
            "time time state"
            "home score away" !important;
        gap: 8px !important;
    }

    .sb-redesign .wc-today-main time,
    .sb-redesign .wc-row-main time {
        grid-area: time !important;
        display: flex !important;
        align-items: baseline !important;
        gap: 4px !important;
    }

    .sb-redesign .wc-row-team.home {
        grid-area: home !important;
    }

    .sb-redesign .wc-row-team.away {
        grid-area: away !important;
    }

    .sb-redesign .wc-today-main b,
    .sb-redesign .wc-row-main b {
        grid-area: score !important;
        justify-self: center !important;
    }

    .sb-redesign .wc-today-main em,
    .sb-redesign .wc-row-main em {
        grid-area: state !important;
        justify-self: end !important;
        min-width: 58px !important;
        white-space: nowrap !important;
        text-align: center !important;
    }

    .sb-redesign .wc-mobile-quick {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .sb-redesign .wc-mobile-quick a {
        min-width: 0 !important;
        padding: 8px 4px !important;
        font-size: 12px !important;
        text-align: center !important;
    }

    .sb-redesign .jzt-footer-grid,
    .sb-redesign .sb-footer-links {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px 14px !important;
    }
}

/* Final stadium palette pass: deep navy, pitch green, match orange. */
:root {
    --sb-ink: #101828;
    --sb-muted: #667085;
    --sb-page: #f5f7fa;
    --sb-soft: #edf6f0;
    --sb-line: #d9e2ec;
    --sb-card: #ffffff;
    --sb-green: #167a46;
    --sb-green-2: #0f5f36;
    --sb-orange: #f15a24;
    --sb-red: #f15a24;
    --sb-yellow: #f6c453;
    --sb-blue: #1f3a5f;
    --theme-primary: var(--sb-green);
    --theme-primary-hover: var(--sb-green-2);
    --theme-primary-light: rgba(22, 122, 70, .12);
    --theme-primary-rgb: 22, 122, 70;
    --theme-accent: var(--sb-orange);
    --theme-gold: var(--sb-yellow);
    --theme-deep: #0b1626;
    --theme-deep-soft: #12233a;
    --theme-surface: var(--sb-page);
    --bg-page: var(--sb-page);
    --border-light: var(--sb-line);
    --text-main: var(--sb-ink);
    --text-muted: var(--sb-muted);
}

.sb-redesign,
.sb-redesign body {
    background: var(--sb-page) !important;
    color: var(--sb-ink) !important;
}

body.sb-redesign {
    background:
        linear-gradient(180deg, #f7f9fc 0, var(--sb-page) 260px) !important;
}

.sb-redesign .jzt-frame-header,
.sb-redesign .jzt-frame-top,
.sb-redesign .jzt-frame-footer,
.sb-redesign .sp-match-hero,
.sb-redesign .seo-jzt-hero {
    background: #0b1626 !important;
}

.sb-redesign .jzt-frame-alert,
.sb-redesign .wc-live-badge,
.sb-redesign .schedule-status-live,
.sb-redesign .tag-live-status,
.sb-redesign .sp-match-status.live {
    background: linear-gradient(90deg, #f15a24, #d9481b) !important;
    color: #fff !important;
}

.sb-redesign .jzt-frame-nav a.is-worldcup,
.sb-redesign .wc-hero-actions a:first-child,
.sb-redesign .jzt-footer-lead > a,
.sb-redesign .jzt-mobile-priority a:first-child {
    background: var(--sb-yellow) !important;
    border-color: rgba(246, 196, 83, .45) !important;
    color: #182033 !important;
}

.sb-redesign .jzt-frame-nav a:hover,
.sb-redesign .jzt-frame-nav a.is-current,
.sb-redesign .jzt-frame-nav a.is-active {
    background: #f3f7f5 !important;
    color: #0b1626 !important;
}

.sb-redesign .jzt-frame-search,
.sb-redesign .jzt-mobile-panel-head {
    background: #12233a !important;
}

.sb-redesign .jzt-frame-search button,
.sb-redesign .jzt-mobile-search button,
.sb-redesign .jzt-frame-menu.visible-sm,
.sb-redesign .jzt-live-btn,
.sb-redesign .wc-live-btn,
.sb-redesign .seo-jzt-live-btn,
.sb-redesign .jzt-article-live-btn,
.sb-redesign .yc-live-btn,
.sb-redesign .schedule-live-btn,
.sb-redesign .side-match-btn,
.sb-redesign .wc-hero-actions a,
.sb-redesign .wc-featured-card a,
.sb-redesign .schedule-card a[href*="match"],
.sb-redesign .sp-live-source a,
.sb-redesign .sp-source-btn {
    background: var(--sb-green) !important;
    border-color: var(--sb-green) !important;
    color: #fff !important;
}

.sb-redesign .jzt-live-btn:hover,
.sb-redesign .wc-live-btn:hover,
.sb-redesign .seo-jzt-live-btn:hover,
.sb-redesign .jzt-article-live-btn:hover,
.sb-redesign .yc-live-btn:hover,
.sb-redesign .schedule-live-btn:hover,
.sb-redesign .side-match-btn:hover,
.sb-redesign .wc-hero-actions a:hover,
.sb-redesign .sp-source-btn:hover {
    background: var(--sb-green-2) !important;
    border-color: var(--sb-green-2) !important;
    color: #fff !important;
}

.sb-redesign .wc-home {
    --wc-green: var(--sb-green);
    --wc-green-dark: var(--sb-green-2);
    --wc-red: var(--sb-orange);
    --wc-blue: var(--sb-blue);
    --wc-amber: #ad7b12;
    --wc-ink: var(--sb-ink);
    --wc-muted: var(--sb-muted);
    --wc-line: var(--sb-line);
    --wc-soft: var(--sb-page);
}

.sb-redesign .sp-match-page {
    --match-primary: var(--sb-green);
    --match-primary-hover: var(--sb-green-2);
    --match-soft-primary: #fff4ed;
    --match-ink: var(--sb-ink);
    --match-muted: var(--sb-muted);
    --match-line: var(--sb-line);
    --match-soft: var(--sb-page);
    background: var(--sb-page) !important;
}

.sb-redesign .wc-hero-copy,
.sb-redesign .wc-featured-card,
.sb-redesign .wc-panel,
.sb-redesign .jzt-basic-card,
.sb-redesign .jzt-article-card,
.sb-redesign .jzt-side-box,
.sb-redesign .dir-card,
.sb-redesign .mod-box,
.sb-redesign .league-header,
.sb-redesign .rank-card,
.sb-redesign .schedule-card,
.sb-redesign .side-card,
.sb-redesign .yuce-main-card,
.sb-redesign .seo-main-card,
.sb-redesign .seo-topic-card,
.sb-redesign .video-main-card,
.sb-redesign .hub-card,
.sb-redesign .cat-main,
.sb-redesign .tag-main,
.sb-redesign .sp-match-card,
.sb-redesign .sp-team-card,
.sb-redesign .sp-player-card {
    border-color: var(--sb-line) !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(16, 24, 40, .07) !important;
}

.sb-redesign .wc-hero-copy {
    background:
        linear-gradient(120deg, rgba(22, 122, 70, .10), transparent 50%),
        linear-gradient(180deg, #fff 0%, #f8fafc 100%) !important;
}

.sb-redesign .wc-kicker,
.sb-redesign .wc-section-head span,
.sb-redesign .jzt-basic-head span,
.sb-redesign .jzt-article-head span,
.sb-redesign .mod-hd span,
.sb-redesign .rank-head span,
.sb-redesign .dir-kicker,
.sb-redesign .seo-jzt-badge,
.sb-redesign .side-card-hd span,
.sb-redesign .tag-worldcup-core span {
    background: #fff4ed !important;
    color: var(--sb-orange) !important;
    border-color: rgba(241, 90, 36, .22) !important;
}

.sb-redesign a,
.sb-redesign .jzt-frame-sub a,
.sb-redesign .more-link,
.sb-redesign .sp-match-crumb a {
    color: inherit;
}

.sb-redesign .jzt-frame-sub a:hover,
.sb-redesign .more-link:hover,
.sb-redesign .jzt-footer-grid a:hover,
.sb-redesign .jzt-footer-bottom a:hover {
    color: var(--sb-orange) !important;
}

.sb-redesign .wc-score,
.sb-redesign .wc-row-main b,
.sb-redesign .sp-score-number,
.sb-redesign .match-score,
.sb-redesign .schedule-score {
    color: var(--sb-ink) !important;
}

.sb-redesign .wc-row-main em,
.sb-redesign .schedule-state,
.sb-redesign .sp-match-status {
    background: #edf2f7 !important;
    color: var(--sb-muted) !important;
}

.sb-redesign .wc-row-main em.is-live,
.sb-redesign .schedule-state.is-live {
    background: #fff4ed !important;
    color: var(--sb-orange) !important;
}

@media (min-width: 993px) {
    .sb-redesign .jzt-frame-menu,
    .sb-redesign .jzt-frame-menu.visible-sm,
    .sb-redesign .sb-menu-toggle {
        display: none !important;
    }
}

@media (max-width: 992px) {
    .sb-redesign .jzt-frame-menu.visible-sm {
        display: inline-flex !important;
        background: linear-gradient(135deg, var(--sb-green), var(--sb-green-2)) !important;
    }
}

/* China fan matchday redesign: deep navy, match red, warm gold. */
:root {
    --sb-ink: #111827;
    --sb-muted: #667085;
    --sb-page: #f5f6fa;
    --sb-soft: #fff4f3;
    --sb-line: #dfe4ee;
    --sb-card: #ffffff;
    --sb-green: #d71920;
    --sb-green-2: #a80f18;
    --sb-red: #d71920;
    --sb-orange: #d71920;
    --sb-yellow: #ffb703;
    --sb-blue: #10233f;
    --sb-shadow: 0 10px 28px rgba(16, 35, 63, .08);
    --theme-primary: #d71920;
    --theme-primary-hover: #a80f18;
    --theme-primary-light: rgba(215, 25, 32, .10);
    --theme-primary-rgb: 215, 25, 32;
    --theme-accent: #d71920;
    --theme-gold: #ffb703;
    --theme-deep: #10233f;
    --theme-deep-soft: #172f52;
    --theme-surface: #f5f6fa;
    --bg-page: #f5f6fa;
    --border-light: #dfe4ee;
    --text-main: #111827;
    --text-muted: #667085;
}

body,
body.sb-redesign {
    background:
        radial-gradient(circle at 20% 0, rgba(215, 25, 32, .06), transparent 30%),
        linear-gradient(180deg, #f8f9fc 0, var(--sb-page) 280px) !important;
    color: var(--sb-ink) !important;
}

.sb-redesign .jzt-frame-header,
.sb-redesign .jzt-frame-top,
.sb-redesign .jzt-frame-footer,
.sb-redesign .sp-match-hero,
.sb-redesign .seo-jzt-hero {
    background: var(--sb-blue) !important;
}

.sb-redesign .jzt-frame-alert {
    background: linear-gradient(90deg, #d71920, #b3121a) !important;
}

.sb-redesign .jzt-frame-logo a {
    border-color: rgba(255, 183, 3, .42) !important;
    background: rgba(255, 183, 3, .10) !important;
}

.sb-redesign .jzt-frame-nav a.is-worldcup,
.sb-redesign .wc-hero-actions a:first-child,
.sb-redesign .jzt-footer-lead > a,
.sb-redesign .jzt-mobile-priority a:first-child {
    background: var(--sb-yellow) !important;
    border-color: var(--sb-yellow) !important;
    color: #271900 !important;
}

.sb-redesign .jzt-frame-search,
.sb-redesign .jzt-mobile-panel-head {
    background: #172f52 !important;
}

.sb-redesign .jzt-frame-search button,
.sb-redesign .jzt-mobile-search button,
.sb-redesign .jzt-frame-menu.visible-sm,
.sb-redesign .jzt-live-btn,
.sb-redesign .wc-live-btn,
.sb-redesign .seo-jzt-live-btn,
.sb-redesign .jzt-article-live-btn,
.sb-redesign .yc-live-btn,
.sb-redesign .schedule-live-btn,
.sb-redesign .side-match-btn,
.sb-redesign .wc-hero-actions a,
.sb-redesign .wc-featured-card a,
.sb-redesign .schedule-card a[href*="match"],
.sb-redesign .sp-live-source a,
.sb-redesign .sp-source-btn {
    background: var(--sb-red) !important;
    border-color: var(--sb-red) !important;
    color: #fff !important;
}

.sb-redesign .jzt-live-btn:hover,
.sb-redesign .wc-live-btn:hover,
.sb-redesign .seo-jzt-live-btn:hover,
.sb-redesign .jzt-article-live-btn:hover,
.sb-redesign .yc-live-btn:hover,
.sb-redesign .schedule-live-btn:hover,
.sb-redesign .side-match-btn:hover,
.sb-redesign .wc-hero-actions a:hover,
.sb-redesign .sp-source-btn:hover {
    background: var(--sb-green-2) !important;
    border-color: var(--sb-green-2) !important;
}

.sb-redesign .wc-home {
    --wc-green: var(--sb-red);
    --wc-green-dark: var(--sb-green-2);
    --wc-red: var(--sb-red);
    --wc-blue: var(--sb-blue);
    --wc-amber: #9a6500;
    --wc-ink: var(--sb-ink);
    --wc-muted: var(--sb-muted);
    --wc-line: var(--sb-line);
    --wc-soft: var(--sb-page);
}

.sb-matchday-home {
    display: grid;
    gap: 18px;
}

.sb-matchday-board {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 14px;
    border: 1px solid rgba(16, 35, 63, .10);
    border-radius: 10px;
    background:
        linear-gradient(135deg, rgba(16, 35, 63, .04), transparent 46%),
        #ffffff;
    box-shadow: var(--sb-shadow);
}

.sb-matchday-main {
    min-width: 0;
}

.sb-matchday-head {
    display: grid;
    gap: 5px;
    margin-bottom: 10px;
}

.sb-matchday-head span {
    display: inline-flex !important;
    width: fit-content !important;
    max-width: max-content !important;
    align-items: center !important;
    min-height: 24px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}

.sb-matchday-head span,
.sb-redesign .wc-kicker,
.sb-redesign .wc-section-head span,
.sb-redesign .jzt-basic-head span,
.sb-redesign .jzt-article-head span,
.sb-redesign .mod-hd span,
.sb-redesign .rank-head span,
.sb-redesign .dir-kicker,
.sb-redesign .seo-jzt-badge,
.sb-redesign .side-card-hd span,
.sb-redesign .tag-worldcup-core span {
    background: rgba(215, 25, 32, .09) !important;
    color: var(--sb-red) !important;
    border-color: rgba(215, 25, 32, .20) !important;
}

.sb-matchday-head h1 {
    margin: 0;
    color: var(--sb-ink);
    font-size: 28px;
    line-height: 1.22;
    font-weight: 950;
}

.sb-matchday-head p {
    max-width: 760px;
    margin: 0;
    color: var(--sb-muted);
    font-size: 14px;
    line-height: 1.62;
}

.sb-matchday-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
}

.sb-matchday-tabs a,
.sb-redesign .wc-filter button:not(.active),
.sb-redesign .league-jzt-nav-links a,
.sb-redesign .date-nav a,
.sb-redesign .schedule-tabs a,
.sb-redesign .tab-link,
.sb-redesign .dir-filter a {
    border: 1px solid var(--sb-line) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--sb-blue) !important;
}

.sb-matchday-tabs a {
    min-height: 34px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 850;
}

.sb-matchday-tabs a:first-child,
.sb-redesign .wc-filter button.active,
.sb-redesign .date-nav a.active,
.sb-redesign .schedule-tabs a.active,
.sb-redesign .dir-filter a.active,
.sb-redesign .league-jzt-nav-links a:hover {
    background: var(--sb-blue) !important;
    border-color: var(--sb-blue) !important;
    color: #fff !important;
}

.sb-redesign .wc-filter button[data-filter="all"] {
    order: 1;
}

.sb-redesign .wc-filter button[data-filter="foot"] {
    order: 2;
}

.sb-redesign .wc-filter button[data-filter="basket"] {
    order: 3;
}

.sb-redesign .wc-filter button[data-filter="worldcup"] {
    order: 4;
}

.sb-redesign .wc-filter button[data-filter="live"] {
    order: 5;
}

.sb-redesign .wc-filter button[data-filter="next"] {
    order: 6;
}

.sb-redesign .wc-filter button[data-filter="done"] {
    order: 7;
}

.sb-matchday-list {
    display: grid;
    gap: 7px;
}

.sb-matchday-row,
.sb-redesign .wc-today-row,
.sb-redesign .wc-cup-card,
.sb-redesign .wc-match-row,
.sb-redesign .side-match-item,
.sb-redesign .jzt-article-match-card {
    border: 1px solid var(--sb-line) !important;
    border-radius: 8px !important;
    background: #fff !important;
}

.sb-matchday-row:hover,
.sb-redesign .wc-match-row:hover,
.sb-redesign .wc-today-row:hover,
.sb-redesign .wc-cup-card:hover {
    border-color: rgba(215, 25, 32, .30) !important;
    box-shadow: 0 8px 18px rgba(215, 25, 32, .08) !important;
}

.sb-matchday-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 8px;
    align-items: center;
    padding: 7px 9px;
}

.sb-matchday-row > a {
    display: grid;
    grid-template-columns: 58px 68px minmax(0, 1fr) 48px minmax(0, 1fr) 58px;
    gap: 8px;
    align-items: center;
    min-width: 0;
    color: var(--sb-ink);
}

.sb-matchday-row time {
    display: grid;
    gap: 1px;
}

.sb-matchday-row time strong {
    color: var(--sb-red);
    font-size: 14px;
}

.sb-matchday-row time span,
.sb-matchday-league {
    color: var(--sb-muted);
    font-size: 12px;
}

.sb-matchday-team {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    overflow: hidden;
    color: var(--sb-ink);
    font-size: 13px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sb-matchday-team .wc-logo,
.sb-matchday-team .wc-logo-fallback {
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
}

.sb-matchday-team .wc-logo img {
    width: 22px !important;
    height: 22px !important;
    object-fit: contain !important;
}

.sb-matchday-row b {
    text-align: center;
    color: var(--sb-ink);
    font-size: 14px;
    font-weight: 950;
}

.sb-matchday-row em {
    min-height: 24px;
    padding: 0 6px;
    border-radius: 999px;
    background: #f1f4f8;
    color: var(--sb-muted);
    font-size: 12px;
    font-style: normal;
    font-weight: 850;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sb-matchday-row.state-live em {
    background: rgba(215, 25, 32, .10);
    color: var(--sb-red);
}

.sb-matchday-row .wc-live-btn {
    min-width: 96px !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    text-align: center !important;
    white-space: nowrap;
    background: #fff !important;
    color: var(--sb-red) !important;
    border-color: rgba(215, 25, 32, .55) !important;
    box-shadow: none !important;
}

.sb-matchday-row.state-live .wc-live-btn {
    background: var(--sb-red) !important;
    color: #fff !important;
    border-color: var(--sb-red) !important;
}

.sb-matchday-side {
    display: none !important;
    grid-template-columns: 1fr;
    gap: 8px;
    align-content: start;
}

.sb-matchday-side a {
    display: grid;
    align-content: center;
    min-height: 58px;
    padding: 10px;
    border-radius: 8px;
    background: var(--sb-blue);
    color: #fff;
}

.sb-matchday-side strong {
    color: var(--sb-yellow);
    font-size: 24px;
    line-height: 1;
    font-weight: 950;
}

.sb-matchday-side span {
    margin-top: 5px;
    color: rgba(255, 255, 255, .78);
    font-size: 12px;
}

.sb-matchday-home .wc-mobile-quick,
.sb-matchday-home .wc-today,
.sb-matchday-home .wc-worldcup,
.sb-matchday-home .wc-league-strip {
    display: none !important;
}

.sb-redesign .wc-hero.wc-hero-featured {
    grid-template-columns: minmax(0, 1fr) 300px !important;
    margin-bottom: 0 !important;
}

.sb-redesign .wc-hero-copy {
    padding: 22px !important;
    background:
        linear-gradient(120deg, rgba(215, 25, 32, .07), transparent 46%),
        linear-gradient(180deg, #fff 0%, #fafbfe 100%) !important;
}

.sb-redesign .wc-hero h1 {
    font-size: 28px !important;
}

.sb-redesign .wc-hero p {
    max-width: 760px;
}

.sb-redesign .wc-featured-card .wc-featured-teams {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px !important;
    border: 1px solid var(--sb-line) !important;
    border-radius: 8px !important;
    background: #f8fafc !important;
    color: var(--sb-ink) !important;
    box-shadow: none !important;
}

.sb-redesign .wc-featured-card .wc-featured-teams span {
    min-width: 0 !important;
    color: var(--sb-ink) !important;
}

.sb-redesign .wc-featured-card .wc-featured-teams b {
    color: var(--sb-red) !important;
    text-align: center !important;
}

.sb-redesign .wc-panel,
.sb-redesign .wc-featured-card,
.sb-redesign .jzt-basic-card,
.sb-redesign .jzt-article-card,
.sb-redesign .jzt-side-box,
.sb-redesign .dir-card,
.sb-redesign .mod-box,
.sb-redesign .league-header,
.sb-redesign .rank-card,
.sb-redesign .schedule-card,
.sb-redesign .side-card,
.sb-redesign .yuce-main-card,
.sb-redesign .seo-main-card,
.sb-redesign .seo-topic-card,
.sb-redesign .video-main-card,
.sb-redesign .hub-card,
.sb-redesign .cat-main,
.sb-redesign .tag-main,
.sb-redesign .sp-match-card,
.sb-redesign .sp-team-card,
.sb-redesign .sp-player-card {
    border-color: var(--sb-line) !important;
    background: #fff !important;
    box-shadow: var(--sb-shadow) !important;
}

.sb-redesign .wc-schedule {
    padding: 14px !important;
}

.sb-redesign .wc-schedule .wc-section-head {
    align-items: flex-start !important;
    gap: 12px !important;
}

.sb-redesign .wc-fixture-board {
    display: grid !important;
    gap: 10px !important;
}

.sb-redesign .wc-day-group {
    display: grid !important;
    gap: 6px !important;
}

.sb-redesign .wc-day-group h3 {
    margin: 0 !important;
    padding: 9px 12px !important;
    border-radius: 8px !important;
    background: #f0f3f8 !important;
    color: var(--sb-blue) !important;
    font-size: 14px !important;
}

.sb-redesign .wc-match-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 98px !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 10px !important;
}

.sb-redesign .wc-match-row .wc-row-main {
    display: grid !important;
    grid-template-columns: 54px 70px minmax(0, 1fr) 54px minmax(0, 1fr) 62px !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.sb-redesign .wc-match-row .wc-row-main time {
    color: var(--sb-muted) !important;
    font-size: 13px !important;
}

.sb-redesign .wc-match-row .wc-row-team {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.sb-redesign .wc-match-row .wc-row-main b {
    text-align: center !important;
    font-size: 14px !important;
}

.sb-redesign .wc-match-row .wc-row-main em {
    justify-self: end !important;
    min-width: 52px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

.sb-redesign .wc-match-row .wc-live-btn {
    min-width: 90px !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}

.sb-redesign .jzt-footer-grid a:hover,
.sb-redesign .jzt-footer-bottom a:hover,
.sb-redesign .jzt-frame-sub a:hover,
.sb-redesign .more-link:hover {
    color: var(--sb-yellow) !important;
}

@media (max-width: 992px) {
    .sb-matchday-board {
        grid-template-columns: 1fr;
        padding: 10px;
        gap: 8px;
    }

    .sb-matchday-head {
        margin-bottom: 8px;
    }

    .sb-matchday-head h1 {
        font-size: 20px;
        line-height: 1.25;
    }

    .sb-matchday-head p {
        display: none;
    }

    .sb-matchday-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        margin: 0 -2px 8px;
        padding-bottom: 2px;
    }

    .sb-matchday-tabs a {
        flex: 0 0 auto;
        min-height: 32px;
        padding: 0 10px;
        font-size: 12px;
    }

    .sb-matchday-list {
        gap: 7px;
    }

    .sb-matchday-row {
        grid-template-columns: 1fr;
        gap: 6px;
        padding: 8px;
    }

    .sb-matchday-row > a {
        grid-template-columns: 48px minmax(0, 1fr) 42px minmax(0, 1fr) 52px;
        grid-template-areas:
            "time league league league state"
            "home home score away away";
        gap: 6px;
    }

    .sb-matchday-row time {
        grid-area: time;
    }

    .sb-matchday-league {
        grid-area: league;
    }

    .sb-matchday-row em {
        grid-area: state;
        justify-self: end;
    }

    .sb-matchday-team:first-of-type {
        grid-area: home;
    }

    .sb-matchday-team:last-of-type {
        grid-area: away;
        text-align: right;
    }

    .sb-matchday-row b {
        grid-area: score;
    }

    .sb-matchday-row .wc-live-btn {
        width: 100%;
        min-height: 30px !important;
    }

    .sb-matchday-side {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 6px;
    }

    .sb-matchday-side a {
        min-height: 54px;
        padding: 8px 6px;
        text-align: center;
    }

    .sb-matchday-side strong {
        font-size: 20px;
    }

    .sb-matchday-side span {
        font-size: 11px;
    }

    .sb-redesign .wc-hero.wc-hero-featured {
        display: none !important;
    }

    .sb-redesign .wc-hero-copy {
        padding: 16px !important;
    }

    .sb-redesign .wc-hero h1 {
        font-size: 22px !important;
    }
}

@media (max-width: 520px) {
    .jzt-main-shell {
        padding-top: 10px !important;
    }

    .sb-matchday-board {
        border-radius: 8px;
    }

    .sb-matchday-row:nth-child(n+6) {
        display: none;
    }

    .sb-redesign .wc-filter {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding-bottom: 4px !important;
    }

    .sb-redesign .wc-filter button {
        flex: 0 0 auto !important;
    }

    .sb-redesign .wc-schedule {
        padding: 10px !important;
    }

    .sb-redesign .wc-schedule .wc-section-head {
        display: grid !important;
        gap: 10px !important;
    }

    .sb-redesign .wc-match-row {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
        padding: 8px !important;
    }

    .sb-redesign .wc-match-row .wc-row-main {
        grid-template-columns: 48px minmax(0, 1fr) 42px minmax(0, 1fr) 52px !important;
        grid-template-areas:
            "time league league league state"
            "home home score away away" !important;
        gap: 6px !important;
    }

    .sb-redesign .wc-match-row .wc-row-main time {
        grid-area: time !important;
    }

    .sb-redesign .wc-match-row .wc-row-league {
        grid-area: league !important;
    }

    .sb-redesign .wc-match-row .wc-row-team.home {
        grid-area: home !important;
    }

    .sb-redesign .wc-match-row .wc-row-team.away {
        grid-area: away !important;
        text-align: right !important;
    }

    .sb-redesign .wc-match-row .wc-row-main b {
        grid-area: score !important;
    }

    .sb-redesign .wc-match-row .wc-row-main em {
        grid-area: state !important;
    }

    .sb-redesign .wc-match-row .wc-live-btn {
        width: 100% !important;
        min-height: 30px !important;
    }
}

/* Final fixture symmetry pass. */
.sb-redesign .sb-matchday-row {
    grid-template-columns: minmax(0, 1fr) 92px !important;
    gap: 10px !important;
    padding: 10px 12px !important;
}

.sb-redesign .sb-matchday-row > a {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr) 62px !important;
    grid-template-areas: "home score away state" !important;
    gap: 10px !important;
    align-items: center !important;
}

.sb-redesign .sb-matchday-row > a time {
    display: none !important;
}

.sb-redesign .sb-matchday-row > a .sb-matchday-league {
    display: none !important;
}

.sb-redesign .sb-matchday-row::before {
    display: none !important;
    content: none !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team {
    display: flex !important;
    min-width: 0 !important;
    overflow: visible !important;
    color: var(--sb-ink) !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type {
    grid-area: home !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type {
    grid-area: away !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team .wc-logo-fallback {
    order: 2;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type .wc-logo-fallback {
    order: 2;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type .wc-logo-fallback {
    order: 0;
}

.sb-redesign .sb-matchday-row b {
    grid-area: score !important;
    color: var(--sb-ink) !important;
    font-size: 15px !important;
}

.sb-redesign .sb-matchday-row em {
    grid-area: state !important;
    justify-self: end !important;
}

.sb-redesign .sb-matchday-row .wc-live-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 88px !important;
    min-height: 32px !important;
}

.sb-redesign .sb-matchday-row .sb-room-link {
    background: #fff !important;
    color: var(--sb-red) !important;
    border: 1px solid rgba(215, 25, 32, .55) !important;
    box-shadow: none !important;
}

.sb-redesign .sb-matchday-row.state-live .sb-room-link {
    background: var(--sb-red) !important;
    color: #fff !important;
    border-color: var(--sb-red) !important;
}

.sb-redesign .wc-row-team,
.sb-redesign .wc-cup-teams span,
.sb-redesign .wc-today-main .wc-row-team {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    line-height: 1.3 !important;
}

.sb-redesign .wc-row-team.home {
    justify-content: flex-end !important;
    text-align: right !important;
}

.sb-redesign .wc-row-team.away {
    justify-content: flex-start !important;
    text-align: left !important;
}

.sb-redesign .wc-row-team.home .wc-logo,
.sb-redesign .wc-row-team.home .wc-logo-fallback {
    order: 2;
}

.sb-redesign .wc-row-team.away .wc-logo,
.sb-redesign .wc-row-team.away .wc-logo-fallback {
    order: 0;
}

.sb-redesign .wc-row-team .wc-logo,
.sb-redesign .wc-row-team .wc-logo-fallback {
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
}

.sb-redesign .wc-row-team .wc-logo img {
    width: 22px !important;
    height: 22px !important;
    object-fit: contain !important;
}

@media (min-width: 769px) {
    .sb-redesign .sb-matchday-row {
        position: relative !important;
        padding-left: 88px !important;
    }

    .sb-redesign .sb-matchday-row > a::before {
        content: "";
        position: absolute;
        left: 14px;
        top: 50%;
        width: 58px;
        height: 34px;
        transform: translateY(-50%);
        border-radius: 8px;
        background: #f6f8fb;
    }

    .sb-redesign .sb-matchday-row > a time {
        display: grid !important;
        position: absolute;
        left: 20px;
        top: 50%;
        z-index: 1;
        transform: translateY(-50%);
        text-align: center;
    }
}

@media (max-width: 768px) {
    .sb-redesign .sb-matchday-row {
        grid-template-columns: 1fr !important;
        padding: 10px !important;
    }

    .sb-redesign .sb-matchday-row > a {
        grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr) !important;
        grid-template-areas:
            "time league state"
            "home score away" !important;
        gap: 8px 6px !important;
    }

    .sb-redesign .sb-matchday-row > a time {
        display: grid !important;
        grid-area: time !important;
        position: static !important;
        transform: none !important;
        text-align: left !important;
    }

    .sb-redesign .sb-matchday-row > a .sb-matchday-league {
        display: block !important;
        grid-area: league !important;
        text-align: center !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team {
        align-items: center !important;
        min-height: 36px !important;
        font-size: 13px !important;
        word-break: keep-all !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type {
        grid-area: home !important;
        justify-content: flex-end !important;
        padding-right: 2px !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type {
        grid-area: away !important;
        justify-content: flex-start !important;
        padding-left: 2px !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team .wc-logo,
    .sb-redesign .sb-matchday-row .sb-matchday-team .wc-logo-fallback {
        flex: 0 0 20px !important;
        width: 20px !important;
        height: 20px !important;
    }

    .sb-redesign .sb-matchday-row b {
        grid-area: score !important;
        font-size: 14px !important;
    }

    .sb-redesign .sb-matchday-row em {
        grid-area: state !important;
        justify-self: end !important;
    }

    .sb-redesign .sb-matchday-row .wc-live-btn {
        width: 100% !important;
        min-height: 32px !important;
    }
}

/* Final homepage fixture interaction and alignment override. */
.sb-redesign .sb-matchday-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 96px !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 8px 10px !important;
    position: static !important;
}

.sb-redesign .sb-matchday-row > a {
    display: grid !important;
    grid-template-columns: 64px 86px minmax(180px, 1fr) 56px minmax(180px, 1fr) 64px !important;
    grid-template-areas: "time league home score away state" !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    color: var(--sb-ink) !important;
}

.sb-redesign .sb-matchday-row > a::before {
    display: none !important;
    content: none !important;
}

.sb-redesign .sb-matchday-row > a time {
    display: grid !important;
    grid-area: time !important;
    position: static !important;
    transform: none !important;
    text-align: center !important;
}

.sb-redesign .sb-matchday-row > a .sb-matchday-league {
    display: block !important;
    grid-area: league !important;
    text-align: left !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team {
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    color: var(--sb-ink) !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type {
    grid-area: home !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type {
    grid-area: away !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team:first-of-type .wc-logo-fallback {
    order: 2 !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team:last-of-type .wc-logo-fallback {
    order: 0 !important;
}

.sb-redesign .sb-matchday-row b {
    grid-area: score !important;
    text-align: center !important;
    color: var(--sb-ink) !important;
    font-size: 15px !important;
}

.sb-redesign .sb-matchday-row em {
    grid-area: state !important;
    justify-self: end !important;
}

.sb-redesign .sb-matchday-row .sb-room-link {
    min-width: 88px !important;
    min-height: 32px !important;
    border: 1px solid rgba(215, 25, 32, .55) !important;
    background: #fff !important;
    color: var(--sb-red) !important;
    box-shadow: none !important;
    transform: none !important;
}

.sb-redesign .sb-matchday-row .sb-room-link:hover,
.sb-redesign .sb-matchday-row .sb-room-link:focus {
    border-color: var(--sb-red) !important;
    background: var(--sb-red) !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

@media (max-width: 768px) {
    .sb-redesign .sb-matchday-row {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        padding: 10px !important;
    }

    .sb-redesign .sb-matchday-row > a {
        grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr) !important;
        grid-template-areas:
            "time league state"
            "home score away" !important;
        gap: 8px 6px !important;
    }

    .sb-redesign .sb-matchday-row > a time {
        grid-area: time !important;
        display: grid !important;
        position: static !important;
        transform: none !important;
        text-align: left !important;
    }

    .sb-redesign .sb-matchday-row > a .sb-matchday-league {
        grid-area: league !important;
        display: block !important;
        text-align: center !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team {
        min-height: 38px !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        white-space: normal !important;
        word-break: keep-all !important;
    }

    .sb-redesign .sb-matchday-row b {
        font-size: 14px !important;
    }

    .sb-redesign .sb-matchday-row em {
        justify-self: end !important;
    }

    .sb-redesign .sb-matchday-row .sb-room-link {
        width: 100% !important;
    }
}

/* Reliable fixture team symmetry: front-page markup now marks home/away explicitly. */
.sb-redesign .sb-matchday-row .sb-matchday-team.home {
    grid-area: home !important;
    justify-self: stretch !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team.away {
    grid-area: away !important;
    justify-self: stretch !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team.home .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team.home .wc-logo-fallback {
    order: 2 !important;
}

.sb-redesign .sb-matchday-row .sb-matchday-team.away .wc-logo,
.sb-redesign .sb-matchday-row .sb-matchday-team.away .wc-logo-fallback {
    order: 0 !important;
}

@media (min-width: 769px) {
    .sb-redesign .sb-matchday-row > a {
        grid-template-columns: 64px 86px minmax(0, 1fr) 54px minmax(0, 1fr) 64px !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team.home {
        padding-right: 10px !important;
    }

    .sb-redesign .sb-matchday-row .sb-matchday-team.away {
        padding-left: 10px !important;
    }
}

@media (max-width: 768px) {
    .sb-redesign .wc-content-grid {
        gap: 12px !important;
        margin-top: 16px !important;
    }

    .sb-redesign .wc-article-list {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .sb-redesign .wc-article-card {
        display: grid !important;
        grid-template-columns: 82px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        gap: 6px 10px !important;
        align-items: center !important;
        padding: 8px !important;
        border-radius: 8px !important;
        min-height: 74px !important;
    }

    .sb-redesign .wc-article-card img {
        grid-row: 1 / span 2 !important;
        width: 82px !important;
        height: 58px !important;
        aspect-ratio: auto !important;
        border-radius: 6px !important;
        object-fit: cover !important;
    }

    .sb-redesign .wc-article-card strong {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        margin: 0 !important;
    }

    .sb-redesign .wc-article-card span {
        font-size: 11px !important;
        line-height: 1 !important;
        color: #667085 !important;
        margin: 0 !important;
    }
}
