.mcc-phq-fixtures {
    --mcc-phq-fixture-border: #d9dee8;
    --mcc-phq-fixture-muted: #667085;
    --mcc-phq-fixture-bg: #fff;
    --mcc-phq-fixture-soft: #f1f3fb;
    --mcc-phq-fixture-accent: var(--wp--preset--color--primary, #12386b);
    --mcc-phq-fixture-accent-contrast: #fff;
    --mcc-phq-fixture-text: #111d3b;
    max-width: 100%;
}

.mcc-phq-fixtures__season {
    margin: 0 0 .35rem;
    color: var(--mcc-phq-fixture-muted);
    font-size: .9rem;
    font-weight: 700;
}

.mcc-phq-fixtures__title {
    margin-top: 0;
}

.mcc-phq-fixtures__rounds-wrap {
    max-width: 100%;
    margin: 1rem 0 1.7rem;
    overflow-x: auto;
    background: #eef0f8;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.mcc-phq-fixtures__rounds {
    display: flex;
    align-items: center;
    gap: .2rem;
    width: max-content;
    min-width: 100%;
    min-height: 3.25rem;
    padding: .35rem 1rem;
}

.mcc-phq-fixtures__rounds-label {
    margin-right: .45rem;
    color: #10152f;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .02em;
}

.mcc-phq-fixtures__round-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.15rem;
    min-height: 2.15rem;
    margin: 0;
    padding: .35rem .55rem;
    border: 0;
    border-radius: 999px;
    background: transparent;
    box-shadow: none;
    color: #17237d;
    cursor: pointer;
    font: inherit;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1;
    transition: background-color .12s ease, color .12s ease, box-shadow .12s ease;
}

.mcc-phq-fixtures__round-tab:hover,
.mcc-phq-fixtures__round-tab:focus-visible {
    background: rgba(255,255,255,.72);
    outline: 2px solid transparent;
}

.mcc-phq-fixtures__round-tab.is-active {
    background: var(--mcc-phq-fixture-accent);
    box-shadow: 0 0 0 4px rgba(255,255,255,.8);
    color: var(--mcc-phq-fixture-accent-contrast);
}

.mcc-phq-fixtures__round-panel[hidden] {
    display: none !important;
}

.mcc-phq-fixtures__round-panel {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.mcc-phq-fixtures__round-header {
    margin: 0 0 1rem;
}

.mcc-phq-fixtures__round-heading {
    margin: 0;
    color: #18207a;
    font-size: 1.12rem;
    font-weight: 800;
}

.mcc-phq-fixtures__round-date {
    margin: .25rem 0 0;
    color: #7a6270;
    font-size: .9rem;
}

.mcc-phq-fixtures__date-group + .mcc-phq-fixtures__date-group {
    margin-top: 1.8rem;
}

.mcc-phq-fixtures__date-heading {
    margin: 0 0 .55rem;
    color: #667085;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.5;
}

.mcc-phq-fixtures__games {
    overflow: hidden;
    border: 1px solid var(--mcc-phq-fixture-border);
    background: var(--mcc-phq-fixture-bg);
}

.mcc-phq-fixtures__game-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .95fr) 2.8rem;
    min-height: 12rem;
    border-bottom: 1px solid var(--mcc-phq-fixture-border);
    background: var(--mcc-phq-fixture-bg);
    color: var(--mcc-phq-fixture-text);
    text-decoration: none !important;
}

.mcc-phq-fixtures__game-card:last-child {
    border-bottom: 0;
}

.mcc-phq-fixtures__game-card[href]:hover,
.mcc-phq-fixtures__game-card[href]:focus-visible {
    background: #fbfcff;
    outline: 2px solid var(--mcc-phq-fixture-accent);
    outline-offset: -2px;
}

.mcc-phq-fixtures__match {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .8rem;
    min-width: 0;
    padding: 1.55rem 1.8rem;
}

.mcc-phq-fixtures__team-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-width: 0;
}

.mcc-phq-fixtures__team-name {
    min-width: 0;
    color: #3e4764;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35;
}

.mcc-phq-fixtures__team-score {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    color: #11113d;
    font-size: 1.55rem;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.mcc-phq-fixtures__score-main {
    display: block;
}

.mcc-phq-fixtures__score-overs {
    display: block;
    margin-top: .2rem;
    color: #596079;
    font-size: .78rem;
    font-weight: 500;
    line-height: 1.05;
}

.mcc-phq-fixtures__status {
    align-self: center;
    display: inline-block;
    margin: -.15rem 0;
    padding: .28rem .55rem;
    border-radius: .25rem;
    background: #eff1fb;
    color: #2433a0;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
}

.mcc-phq-fixtures__status--cancelled,
.mcc-phq-fixtures__status--abandoned,
.mcc-phq-fixtures__status--forfeit {
    background: #fee4e2;
    color: #b42318;
}

.mcc-phq-fixtures__game-meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.05rem;
    min-width: 0;
    padding: 1.55rem 1.55rem;
    border-left: 1px solid #eceff4;
    color: #3e4764;
    font-size: .9rem;
    line-height: 1.45;
}

.mcc-phq-fixtures__meta-line {
    display: grid;
    grid-template-columns: 1.1rem minmax(0, 1fr);
    align-items: start;
    gap: .6rem;
}

.mcc-phq-fixtures__meta-icon {
    display: block;
    width: 1.1rem;
    height: 1.1rem;
    margin-top: .08rem;
    color: #6b7280;
}

.mcc-phq-fixtures__meta-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mcc-phq-fixtures__meta-text {
    min-width: 0;
}

.mcc-phq-fixtures__game-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f0f2f7;
    color: #687082;
    font-size: 2rem;
    font-weight: 500;
}

.mcc-phq-fixtures__empty-round {
    margin: 0;
    color: var(--mcc-phq-fixture-muted);
}

.mcc-phq-fixtures__empty {
    padding: 1rem;
    border-left: 4px solid var(--mcc-phq-fixture-border);
    background: #f7f8fa;
}

.mcc-phq-fixtures__admin-note {
    padding: .75rem;
    border: 1px dashed #d63638;
    font-size: .9em;
}

.mcc-phq-fixtures__updated,
.mcc-phq-fixtures__source {
    margin: .65rem 0 0;
    color: var(--mcc-phq-fixture-muted);
    font-size: .875em;
}

.mcc-phq-fixtures__source {
    margin-top: 1.5rem;
}

.mcc-phq-fixtures__source a {
    color: inherit;
}

@media (max-width: 760px) {
    .mcc-phq-fixtures__rounds {
        min-width: max-content;
        padding-inline: .75rem;
    }

    .mcc-phq-fixtures__game-card {
        grid-template-columns: 1fr 2.5rem;
        min-height: 0;
    }

    .mcc-phq-fixtures__match {
        padding: 1.2rem;
    }

    .mcc-phq-fixtures__game-meta {
        grid-column: 1;
        padding: 0 1.2rem 1.2rem;
        border-left: 0;
    }

    .mcc-phq-fixtures__game-arrow {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .mcc-phq-fixtures__team-score {
        font-size: 1.2rem;
    }
}
