.zy-tournament-hero,
.zy-tournament-tabs,
.zy-tournament-section {
    background: var(--zy-card);
    border: 1px solid var(--zy-border);
    border-radius: 22px;
}

.zy-tournament-hero {
    padding: 26px;
}

.zy-back-link {
    display: inline-flex;
    margin-bottom: 14px;
    color: var(--zy-yellow);
    font-weight: 800;
}

.zy-tournament-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.zy-tournament-meta span {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 0 12px;
    border: 1px solid var(--zy-border);
    border-radius: 999px;
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-tournament-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
    padding: 10px;
}

.zy-tournament-tabs a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid var(--zy-border);
    border-radius: 12px;
    color: var(--zy-white);
    font-weight: 800;
}

.zy-tournament-tabs a:hover {
    background: rgba(254, 204, 0, .08);
    color: var(--zy-yellow);
}

.zy-tournament-section {
    margin-top: 18px;
    padding: 24px;
}

.zy-tournament-section h2 {
    margin: 0 0 18px;
    color: var(--zy-white);
    font-size: clamp(24px, 3vw, 36px);
}

.zy-stage-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.zy-stage-card {
    padding: 18px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 16px;
}

.zy-stage-card span {
    display: block;
    margin-bottom: 10px;
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-stage-card strong {
    color: var(--zy-white);
    font-size: 18px;
}

@media (max-width: 760px) {
    .zy-tournament-hero,
    .zy-tournament-section {
        padding: 20px;
        border-radius: 18px;
    }

    .zy-stage-grid {
        grid-template-columns: 1fr;
    }
}

.zy-tournament-menu {
    margin-top: 18px;
}

.zy-tournament-menu__toggle {
    display: none;
}

.zy-cards-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.zy-cards-grid h3 {
    margin: 0 0 12px;
    color: var(--zy-yellow);
    font-size: 20px;
}

@media (max-width: 760px) {
    .zy-tournament-menu {
        background: var(--zy-card);
        border: 1px solid var(--zy-border);
        border-radius: 18px;
        overflow: hidden;
    }

    .zy-tournament-menu__toggle {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 14px;
        min-height: 52px;
        padding: 0 16px;
        border: 0;
        background: transparent;
        color: var(--zy-yellow);
        font-weight: 900;
        cursor: pointer;
    }

    .zy-tournament-menu__toggle span {
        font-size: 24px;
        line-height: 1;
        transform: rotate(90deg);
    }

    .zy-tournament-menu.is-open .zy-tournament-menu__toggle span {
        transform: rotate(-90deg);
    }

    .zy-tournament-tabs {
        display: none;
        margin-top: 0;
        padding: 8px;
        border: 0;
        border-top: 1px solid var(--zy-border);
        border-radius: 0;
        background: transparent;
    }

    .zy-tournament-menu.is-open .zy-tournament-tabs {
        display: grid;
        gap: 8px;
    }

    .zy-tournament-tabs a {
        width: 100%;
        justify-content: space-between;
    }

    .zy-cards-grid {
        grid-template-columns: 1fr;
    }
}


.zy-tournament-hero {
    max-width: 820px;
    padding: 22px 26px;
}

.zy-tournament-hero .zy-title {
    margin: 0;
}

.zy-tournament-hero {
    max-width: none;
    width: 100%;
}

.zy-tournament-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 132px;
    gap: 24px;
    align-items: center;
}

.zy-tournament-hero__content {
    min-width: 0;
}

.zy-tournament-logo {
    width: 112px;
    height: 112px;
    display: grid;
    place-items: center;
    justify-self: end;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 18px;
    overflow: hidden;
}

.zy-tournament-logo img {
    display: block;
    max-width: 86%;
    max-height: 86%;
    object-fit: contain;
}

.zy-tournament-logo span {
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
}

@media (max-width: 760px) {
    .zy-tournament-hero {
        grid-template-columns: minmax(0, 1fr) 74px;
        gap: 12px;
    }

    .zy-tournament-logo {
        width: 68px;
        height: 68px;
        border-radius: 14px;
    }

    .zy-tournament-logo span {
        font-size: 9px;
    }
}

.zy-overview-section {
    padding: 22px;
}

.zy-overview-layout {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.zy-overview-table h2,
.zy-overview-matches h2 {
    margin: 0 0 14px;
    color: var(--zy-white);
    font-size: 24px;
}

.zy-overview-subtitle {
    margin-top: 30px !important;
}

.zy-mini-table-wrap {
    overflow-x: auto;
}

.zy-mini-standings {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 6px;
}

.zy-mini-standings th {
    padding: 0 8px 6px;
    color: var(--zy-muted);
    font-size: 12px;
    text-align: left;
    text-transform: uppercase;
}

.zy-mini-standings td {
    padding: 10px 8px;
    background: var(--zy-dark);
    border-top: 1px solid var(--zy-border);
    border-bottom: 1px solid var(--zy-border);
    color: var(--zy-white);
    font-size: 14px;
}

.zy-mini-standings td:first-child {
    border-left: 1px solid var(--zy-border);
    border-radius: 10px 0 0 10px;
    color: var(--zy-yellow);
    font-weight: 900;
}

.zy-mini-standings td:last-child {
    border-right: 1px solid var(--zy-border);
    border-radius: 0 10px 10px 0;
}

.zy-round-list {
    display: grid;
    gap: 8px;
}

.zy-round-block {
    border: 1px solid var(--zy-border);
    border-radius: 14px;
    overflow: hidden;
}

.zy-round-block h3 {
    margin: 0;
    padding: 9px 12px;
    background: rgba(254, 204, 0, .10);
    color: var(--zy-yellow);
    font-size: 15px;
}

.zy-overview-match {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) 46px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 9px 12px;
    background: var(--zy-dark);
    border-top: 1px solid var(--zy-border);
}

.zy-overview-match span {
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-overview-match strong {
    color: var(--zy-white);
    font-size: 14px;
}

.zy-overview-match em {
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

@media (max-width: 860px) {
    .zy-overview-layout {
        grid-template-columns: 1fr;
    }

    .zy-overview-match {
        grid-template-columns: 1fr 44px 1fr;
    }

    .zy-overview-match span {
        grid-column: 1 / -1;
    }
}


.zy-tournament-tabs button {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid var(--zy-border);
    border-radius: 12px;
    background: transparent;
    color: var(--zy-white);
    font-weight: 800;
    cursor: pointer;
}

.zy-tournament-tabs button:hover,
.zy-tournament-tabs button.is-active {
    background: rgba(254, 204, 0, .08);
    color: var(--zy-yellow);
}

.zy-tournament-panels [data-tab-panel] {
    display: none;
}

.zy-tournament-panels [data-tab-panel].is-active {
    display: block;
}

@media (max-width: 760px) {
    .zy-tournament-tabs button {
        width: 100%;
        justify-content: space-between;
    }
}

.zy-overview-match {
    grid-template-columns: 150px minmax(140px, 1fr) 58px minmax(140px, 1fr);
}

.zy-overview-match strong {
    display: block;
    text-align: center;
    justify-self: stretch;
}

.zy-overview-match em {
    display: block;
    text-align: center;
    justify-self: stretch;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 54px 1fr;
    }

    .zy-overview-match strong {
        text-align: center;
    }
}

.zy-overview-match {
    grid-template-columns: 138px 178px 48px 178px;
    justify-content: center;
    gap: 8px;
}

.zy-overview-match__date {
    color: var(--zy-muted);
    font-size: 13px;
    text-align: left;
}

.zy-overview-match__team {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-overview-match__team--home {
    justify-content: flex-end;
    text-align: right;
}

.zy-overview-match__team--away {
    justify-content: flex-start;
    text-align: left;
}

.zy-overview-match__team span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-overview-match__score {
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 46px 1fr;
        gap: 8px;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1;
        text-align: center;
    }

    .zy-overview-match__team {
        font-size: 13px;
    }

    .zy-overview-match__team i {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }
}

.zy-overview-match {
    grid-template-columns: 150px minmax(0, 1fr) 42px minmax(0, 1fr);
    justify-content: stretch;
    gap: 6px;
}

.zy-overview-match__date {
    justify-self: start;
    text-align: left;
}

.zy-overview-match__team--home {
    justify-self: end;
    justify-content: flex-end;
    text-align: right;
}

.zy-overview-match__team--away {
    justify-self: start;
    justify-content: flex-start;
    text-align: left;
}

.zy-overview-match__score {
    justify-self: center;
    text-align: center;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 42px 1fr;
        gap: 6px;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1;
        justify-self: start;
        text-align: left;
    }
}

.zy-overview-match {
    grid-template-columns: 150px minmax(90px, 1fr) 42px minmax(90px, 1fr);
    gap: 6px;
    justify-content: stretch;
}

.zy-overview-match .zy-overview-match__date {
    justify-self: start;
    text-align: left;
}

.zy-overview-match .zy-overview-match__team--home {
    justify-self: end;
    justify-content: flex-end;
    text-align: right;
}

.zy-overview-match .zy-overview-match__team--away {
    justify-self: start;
    justify-content: flex-start;
    text-align: left;
}

.zy-overview-match .zy-overview-match__score {
    justify-self: center;
    text-align: center;
    min-width: 42px;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 42px 1fr;
        gap: 6px;
    }

    .zy-overview-match .zy-overview-match__date {
        grid-column: 1 / -1;
        justify-self: start;
        text-align: left;
    }
}

/* Final overview match alignment */
.zy-overview-match {
    grid-template-columns: 150px minmax(80px, 1fr) 40px minmax(80px, 1fr) !important;
    gap: 4px !important;
    align-items: center !important;
}

.zy-overview-match__date {
    justify-self: start !important;
    text-align: left !important;
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-overview-match__team {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-overview-match__team--home {
    justify-self: end !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-overview-match__team--away {
    justify-self: start !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-overview-match__team span {
    display: block;
    max-width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-overview-match__score {
    justify-self: center !important;
    min-width: 40px;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center !important;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 40px 1fr !important;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1;
    }
}

/* Final compact match row with team marks */
.zy-overview-match {
    grid-template-columns: 150px minmax(80px, 1fr) 40px minmax(80px, 1fr) !important;
    gap: 4px !important;
    align-items: center !important;
}

.zy-overview-match__date {
    justify-self: start !important;
    text-align: left !important;
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-overview-match__team {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-overview-match__team--home {
    justify-self: end !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-overview-match__team--away {
    justify-self: start !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-overview-match__team span {
    display: block;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-overview-match__score {
    justify-self: center !important;
    min-width: 40px;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center !important;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 40px 1fr !important;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1;
        justify-self: start !important;
        text-align: left !important;
    }
}

/* Compact score-centered match layout */
.zy-overview-match {
    grid-template-columns: 150px minmax(120px, 180px) 44px minmax(120px, 180px) !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 8px !important;
}

.zy-overview-match > span:first-child {
    justify-self: start !important;
    text-align: left !important;
}

.zy-overview-match > strong:first-of-type {
    justify-self: end !important;
    text-align: right !important;
}

.zy-overview-match > em {
    justify-self: center !important;
    min-width: 44px !important;
    text-align: center !important;
}

.zy-overview-match > strong:last-of-type {
    justify-self: start !important;
    text-align: left !important;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 44px 1fr !important;
    }

    .zy-overview-match > span:first-child {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
        text-align: left !important;
    }
}

/* Team logos in overview and compact table */
.zy-team-inline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zy-team-inline i,
.zy-overview-match__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-team-inline span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match {
    grid-template-columns: 150px minmax(120px, 180px) 44px minmax(120px, 180px) !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 8px !important;
}

.zy-overview-match__date {
    justify-self: start !important;
    text-align: left !important;
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-overview-match__team {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-overview-match__team--home {
    justify-self: end !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-overview-match__team--away {
    justify-self: start !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-overview-match__team span {
    display: block;
    max-width: 125px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match__score {
    justify-self: center !important;
    min-width: 44px !important;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center !important;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 44px 1fr !important;
        gap: 6px !important;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
        text-align: left !important;
    }

    .zy-overview-match__team span {
        max-width: 105px;
    }
}

/* Final team marks in overview matches */
.zy-overview-match {
    grid-template-columns: 150px minmax(120px, 180px) 44px minmax(120px, 180px) !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 8px !important;
}

.zy-overview-match__date {
    justify-self: start !important;
    text-align: left !important;
    color: var(--zy-muted);
    font-size: 13px;
}

.zy-overview-match__team {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-overview-match__team--home {
    justify-self: end !important;
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-overview-match__team--away {
    justify-self: start !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-overview-match__team span {
    display: block;
    max-width: 125px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-overview-match__team i,
.zy-team-inline i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-overview-match__score {
    justify-self: center !important;
    min-width: 44px !important;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center !important;
}

@media (max-width: 860px) {
    .zy-overview-match {
        grid-template-columns: 1fr 44px 1fr !important;
        gap: 6px !important;
    }

    .zy-overview-match__date {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
        text-align: left !important;
    }

    .zy-overview-match__team span {
        max-width: 105px;
    }
}

/* Full standings tab */
.zy-standings {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0 8px;
}

.zy-standings th {
    padding: 0 12px 8px;
    color: var(--zy-muted);
    font-size: 12px;
    text-align: center;
    text-transform: uppercase;
}

.zy-standings th:nth-child(2) {
    text-align: left;
}

.zy-standings td {
    padding: 13px 12px;
    background: var(--zy-dark);
    border-top: 1px solid var(--zy-border);
    border-bottom: 1px solid var(--zy-border);
    color: var(--zy-white);
    text-align: center;
    vertical-align: middle;
}

.zy-standings td:nth-child(2) {
    text-align: left;
}

.zy-standings td:first-child {
    width: 48px;
    border-left: 1px solid var(--zy-border);
    border-radius: 14px 0 0 14px;
    color: var(--zy-yellow);
    font-weight: 900;
}

.zy-standings td:last-child {
    width: 64px;
    border-right: 1px solid var(--zy-border);
    border-radius: 0 14px 14px 0;
}

.zy-standings td:last-child strong {
    color: var(--zy-yellow);
    font-size: 18px;
}

.zy-standings .zy-team-inline {
    justify-content: flex-start;
}

.zy-standings .zy-team-inline i {
    width: 24px;
    height: 24px;
    font-size: 11px;
}

@media (max-width: 760px) {
    .zy-table-wrap {
        margin: 0 -10px;
        padding: 0 10px;
        overflow-x: auto;
    }

    .zy-standings {
        min-width: 720px;
    }
}

/* Mobile compact standings */
@media (max-width: 760px) {
    .zy-table-wrap {
        margin: 0;
        padding: 0;
        overflow-x: visible;
    }

    .zy-standings {
        width: 100%;
        min-width: 0;
        table-layout: fixed;
        border-spacing: 0 6px;
    }

    .zy-standings th {
        padding: 0 4px 6px;
        font-size: 10px;
        letter-spacing: 0;
    }

    .zy-standings td {
        padding: 10px 4px;
        font-size: 12px;
    }

    .zy-standings td:first-child {
        width: 30px;
    }

    .zy-standings td:last-child {
        width: 38px;
    }

    .zy-standings th:nth-child(1),
    .zy-standings td:nth-child(1) { width: 30px; }

    .zy-standings th:nth-child(2),
    .zy-standings td:nth-child(2) { width: 132px; }

    .zy-standings th:nth-child(3),
    .zy-standings td:nth-child(3),
    .zy-standings th:nth-child(4),
    .zy-standings td:nth-child(4),
    .zy-standings th:nth-child(5),
    .zy-standings td:nth-child(5),
    .zy-standings th:nth-child(6),
    .zy-standings td:nth-child(6) { width: 24px; }

    .zy-standings th:nth-child(7),
    .zy-standings td:nth-child(7) { width: 46px; }

    .zy-standings th:nth-child(8),
    .zy-standings td:nth-child(8) { width: 38px; }

    .zy-standings .zy-team-inline {
        gap: 6px;
    }

    .zy-standings .zy-team-inline i {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }

    .zy-standings .zy-team-inline span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 12px;
    }

    .zy-standings td:last-child strong {
        font-size: 14px;
    }
}

/* Final mobile standings fit inside card */
@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] {
        overflow: hidden;
    }

    .zy-table-wrap {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .zy-standings {
        width: 100%;
        max-width: 100%;
        min-width: 0 !important;
        table-layout: fixed;
        border-spacing: 0 6px;
    }

    .zy-standings th,
    .zy-standings td {
        box-sizing: border-box;
        padding-left: 2px;
        padding-right: 2px;
        font-size: 11px;
    }

    .zy-standings th:nth-child(1),
    .zy-standings td:nth-child(1) {
        width: 26px;
    }

    .zy-standings th:nth-child(2),
    .zy-standings td:nth-child(2) {
        width: 116px;
    }

    .zy-standings th:nth-child(3),
    .zy-standings td:nth-child(3),
    .zy-standings th:nth-child(4),
    .zy-standings td:nth-child(4),
    .zy-standings th:nth-child(5),
    .zy-standings td:nth-child(5),
    .zy-standings th:nth-child(6),
    .zy-standings td:nth-child(6) {
        width: 22px;
    }

    .zy-standings th:nth-child(7),
    .zy-standings td:nth-child(7) {
        width: 42px;
    }

    .zy-standings th:nth-child(8),
    .zy-standings td:nth-child(8) {
        width: 30px;
    }

    .zy-standings .zy-team-inline {
        gap: 5px;
        max-width: 100%;
    }

    .zy-standings .zy-team-inline i {
        width: 18px;
        height: 18px;
        font-size: 9px;
    }

    .zy-standings .zy-team-inline span {
        max-width: 78px;
        font-size: 11px;
    }

    .zy-standings td:last-child strong {
        font-size: 12px;
    }
}

/* Real section links */
.zy-tournament-tabs a.is-active {
    background: rgba(254, 204, 0, .08);
    color: var(--zy-yellow);
}

@media (max-width: 760px) {
    .zy-tournament-tabs a {
        width: 100%;
        justify-content: space-between;
    }
}

/* Calendar tab */
.zy-calendar-layout {
    display: grid;
    gap: 28px;
}

.zy-calendar-block h3 {
    margin: 0 0 14px;
    color: var(--zy-white);
    font-size: 24px;
}

.zy-round-block h4 {
    margin: 0;
    padding: 10px 12px;
    background: rgba(254, 204, 0, .10);
    color: var(--zy-yellow);
    font-size: 15px;
    font-weight: 900;
}

.zy-calendar-match {
    display: grid;
    grid-template-columns: 150px minmax(120px, 180px) 44px minmax(120px, 180px);
    justify-content: start;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: var(--zy-dark);
    border-top: 1px solid var(--zy-border);
}

.zy-calendar-match__date {
    justify-self: start;
    color: var(--zy-muted);
    font-size: 13px;
    text-align: left;
}

.zy-calendar-match__team {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: var(--zy-white);
    font-size: 14px;
    line-height: 1.2;
}

.zy-calendar-match__team--home {
    justify-self: end;
    justify-content: flex-end;
    text-align: right;
}

.zy-calendar-match__team--away {
    justify-self: start;
    justify-content: flex-start;
    text-align: left;
}

.zy-calendar-match__team span {
    display: block;
    max-width: 125px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-calendar-match__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.zy-calendar-match__score {
    justify-self: center;
    min-width: 44px;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

@media (max-width: 760px) {
    .zy-calendar-match {
        grid-template-columns: 1fr 44px 1fr;
        gap: 6px;
        padding: 10px;
    }

    .zy-calendar-match__date {
        grid-column: 1 / -1;
    }

    .zy-calendar-match__team span {
        max-width: 105px;
    }

    .zy-calendar-match__team i {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }
}

/* Calendar rounds in two columns */
.zy-calendar-block .zy-round-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.zy-calendar-block .zy-round-block {
    align-self: start;
}

.zy-calendar-match {
    grid-template-columns: 118px minmax(100px, 1fr) 44px minmax(100px, 1fr);
    gap: 6px;
}

.zy-calendar-match__date {
    line-height: 1.25;
}

@media (max-width: 860px) {
    .zy-calendar-block .zy-round-list {
        grid-template-columns: 1fr;
    }

    .zy-calendar-match {
        grid-template-columns: 1fr 44px 1fr;
    }

    .zy-calendar-match__date {
        grid-column: 1 / -1;
    }
}

/* Calendar page: all rounds in ascending order */
.zy-calendar-section .zy-round-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.zy-calendar-section .zy-round-block {
    align-self: start;
}

@media (max-width: 860px) {
    .zy-calendar-section .zy-round-list {
        grid-template-columns: 1fr;
    }
}

/* Playoff tab */
.zy-playoff-scroll {
    overflow-x: auto;
}

.zy-playoff-grid {
    min-width: 860px;
    display: grid;
    grid-template-columns: 1.25fr 1fr .9fr;
    gap: 18px;
    align-items: start;
}

.zy-playoff-round {
    display: grid;
    gap: 12px;
}

.zy-playoff-round h3 {
    margin: 0;
    color: var(--zy-yellow);
    font-size: 20px;
}

.zy-playoff-round__matches {
    display: grid;
    gap: 14px;
}

.zy-playoff-card {
    padding: 14px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 16px;
}

.zy-playoff-card__top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
}

.zy-playoff-card__top span {
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.zy-playoff-card__top strong {
    color: var(--zy-yellow);
    font-size: 20px;
}

.zy-playoff-pair {
    display: grid;
    gap: 8px;
    margin-bottom: 12px;
}

.zy-playoff-team {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--zy-white);
    font-weight: 900;
}

.zy-playoff-team i {
    flex: 0 0 auto;
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 11px;
    font-weight: 900;
}

.zy-playoff-team span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-playoff-legs {
    display: grid;
    gap: 6px;
    padding-top: 10px;
    border-top: 1px solid var(--zy-border);
}

.zy-playoff-leg {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr) 42px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    color: var(--zy-white);
    font-size: 13px;
}

.zy-playoff-leg span {
    color: var(--zy-muted);
    font-size: 12px;
}

.zy-playoff-leg strong:first-of-type {
    text-align: right;
}

.zy-playoff-leg strong:last-of-type {
    text-align: left;
}

.zy-playoff-leg em {
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

@media (max-width: 860px) {
    .zy-playoff-scroll {
        overflow-x: visible;
    }

    .zy-playoff-grid {
        min-width: 0;
        grid-template-columns: 1fr;
    }

    .zy-playoff-leg {
        grid-template-columns: 1fr 42px 1fr;
    }

    .zy-playoff-leg span {
        grid-column: 1 / -1;
    }
}

/* Clean readable playoff layout */
.zy-playoff-scroll {
    overflow: visible !important;
}

.zy-playoff-grid {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
}

.zy-playoff-round {
    padding: 0 !important;
    display: grid !important;
    gap: 12px !important;
}

.zy-playoff-round h3 {
    margin: 0 !important;
    padding: 10px 14px !important;
    background: rgba(254, 204, 0, .10) !important;
    border: 1px solid var(--zy-border) !important;
    border-radius: 14px !important;
    color: var(--zy-yellow) !important;
    font-size: 20px !important;
}

.zy-playoff-round__matches {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.zy-playoff-card {
    padding: 16px !important;
    background: var(--zy-dark) !important;
    border: 1px solid var(--zy-border) !important;
    border-radius: 16px !important;
}

.zy-playoff-card__top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid var(--zy-border) !important;
}

.zy-playoff-card__top span {
    color: var(--zy-muted) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

.zy-playoff-card__top strong {
    color: var(--zy-yellow) !important;
    font-size: 24px !important;
    line-height: 1 !important;
}

.zy-playoff-pair {
    display: grid !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
}

.zy-playoff-team {
    min-height: 34px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--zy-white) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
}

.zy-playoff-team i {
    width: 26px !important;
    height: 26px !important;
}

.zy-playoff-legs {
    display: grid !important;
    gap: 8px !important;
    padding-top: 12px !important;
    border-top: 1px solid var(--zy-border) !important;
}

.zy-playoff-leg {
    display: grid !important;
    grid-template-columns: 132px minmax(90px, 1fr) 46px minmax(90px, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
    padding: 8px 0 !important;
    color: var(--zy-white) !important;
    font-size: 13px !important;
}

.zy-playoff-leg span {
    color: var(--zy-muted) !important;
    font-size: 12px !important;
    text-align: left !important;
}

.zy-playoff-leg strong:first-of-type {
    justify-self: end !important;
    text-align: right !important;
}

.zy-playoff-leg strong:last-of-type {
    justify-self: start !important;
    text-align: left !important;
}

.zy-playoff-leg em {
    min-width: 46px !important;
    color: var(--zy-yellow) !important;
    font-style: normal !important;
    font-weight: 900 !important;
    text-align: center !important;
}

@media (max-width: 860px) {
    .zy-playoff-round__matches {
        grid-template-columns: 1fr !important;
    }

    .zy-playoff-leg {
        grid-template-columns: 1fr 46px 1fr !important;
        gap: 6px !important;
    }

    .zy-playoff-leg span {
        grid-column: 1 / -1 !important;
    }

    .zy-playoff-team {
        font-size: 15px !important;
    }
}

/* Knockout bracket tree */
.zy-knockout-section {
    overflow: hidden;
}

.zy-knockout-scroll {
    overflow-x: auto;
    padding: 4px 0 10px;
}

.zy-knockout {
    min-width: 1040px;
    display: grid;
    grid-template-columns: 300px 300px 300px;
    column-gap: 70px;
    align-items: center;
}

.zy-knockout-round {
    position: relative;
}

.zy-knockout-round h3 {
    margin: 0 0 14px;
    color: var(--zy-yellow);
    font-size: 20px;
}

.zy-knockout-round__matches {
    display: grid;
    gap: 22px;
}

.zy-knockout-round:nth-child(2) .zy-knockout-round__matches {
    gap: 92px;
    padding-top: 58px;
}

.zy-knockout-round:nth-child(3) .zy-knockout-round__matches {
    padding-top: 150px;
}

.zy-knockout-card {
    position: relative;
    min-height: 86px;
    padding: 10px 12px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 14px;
}

.zy-knockout-card__row {
    min-height: 28px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52px;
    gap: 10px;
    align-items: center;
}

.zy-knockout-team {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--zy-white);
    font-weight: 900;
}

.zy-knockout-team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 10px;
    font-weight: 900;
}

.zy-knockout-team span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-knockout-card strong,
.zy-knockout-card em {
    justify-self: end;
    color: var(--zy-yellow);
    font-style: normal;
    font-weight: 900;
}

.zy-knockout-card em {
    color: var(--zy-muted);
}

.zy-knockout-note {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--zy-border);
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

/* connector lines */
.zy-knockout-round:not(:last-child) .zy-knockout-card::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -71px;
    width: 70px;
    height: 1px;
    background: var(--zy-border);
}

.zy-knockout-round:nth-child(1)::after {
    content: "";
    position: absolute;
    top: 92px;
    right: -36px;
    width: 1px;
    height: 324px;
    background: var(--zy-border);
}

.zy-knockout-round:nth-child(2)::after {
    content: "";
    position: absolute;
    top: 174px;
    right: -36px;
    width: 1px;
    height: 178px;
    background: var(--zy-border);
}

@media (max-width: 860px) {
    .zy-knockout-scroll {
        overflow-x: auto;
    }

    .zy-knockout {
        min-width: 920px;
        grid-template-columns: 270px 270px 270px;
        column-gap: 48px;
    }

    .zy-knockout-round:not(:last-child) .zy-knockout-card::after {
        right: -49px;
        width: 48px;
    }

    .zy-knockout-round:nth-child(1)::after {
        right: -25px;
    }

    .zy-knockout-round:nth-child(2)::after {
        right: -25px;
    }
}

/* Cleaner knockout bracket alignment */
.zy-knockout {
    min-width: 1000px !important;
    grid-template-columns: 280px 280px 280px !important;
    column-gap: 80px !important;
    align-items: start !important;
    padding: 4px 0 14px !important;
}

.zy-knockout-round h3 {
    height: 28px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--zy-yellow) !important;
}

.zy-knockout-round__matches {
    display: grid !important;
}

.zy-knockout-round:nth-child(1) .zy-knockout-round__matches {
    gap: 18px !important;
}

.zy-knockout-round:nth-child(2) .zy-knockout-round__matches {
    gap: 106px !important;
    padding-top: 58px !important;
}

.zy-knockout-round:nth-child(3) .zy-knockout-round__matches {
    padding-top: 195px !important;
}

.zy-knockout-card {
    min-height: 86px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
}

.zy-knockout-card__row {
    min-height: 26px !important;
}

.zy-knockout-team.is-empty {
    opacity: .45 !important;
}

.zy-knockout-team.is-empty i {
    background: rgba(255, 255, 255, .08) !important;
    border-color: rgba(255, 255, 255, .18) !important;
}

.zy-knockout-team.is-empty span::before {
    content: "";
    display: block;
    width: 105px;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
}

.zy-knockout-note {
    margin-top: 7px !important;
    padding-top: 7px !important;
}

/* убираем кривые длинные вертикальные линии */
.zy-knockout-round:nth-child(1)::after,
.zy-knockout-round:nth-child(2)::after {
    display: none !important;
}

/* оставляем короткие аккуратные связи вправо */
.zy-knockout-round:not(:last-child) .zy-knockout-card::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: -81px !important;
    width: 80px !important;
    height: 1px !important;
    background: var(--zy-border) !important;
}

@media (max-width: 860px) {
    .zy-knockout {
        min-width: 900px !important;
        grid-template-columns: 260px 260px 260px !important;
        column-gap: 56px !important;
    }

    .zy-knockout-round:not(:last-child) .zy-knockout-card::after {
        right: -57px !important;
        width: 56px !important;
    }
}

/* Final explicit 4-2-1 knockout grid */
.zy-knockout-section {
    overflow: hidden !important;
}

.zy-knockout-scroll {
    overflow-x: auto !important;
    padding: 4px 0 12px !important;
}

.zy-knockout {
    position: relative !important;
    min-width: 1000px !important;
    display: grid !important;
    grid-template-columns: 280px 80px 280px 80px 280px !important;
    grid-template-rows: 34px repeat(4, 104px) !important;
    align-items: center !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
}

.zy-knockout-round,
.zy-knockout-round__matches {
    display: contents !important;
}

.zy-knockout-round h3 {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: var(--zy-yellow) !important;
    font-size: 20px !important;
}

/* Заголовки раундов */
.zy-knockout-round:nth-child(1) h3 { grid-column: 1; grid-row: 1; }
.zy-knockout-round:nth-child(2) h3 { grid-column: 3; grid-row: 1; }
.zy-knockout-round:nth-child(3) h3 { grid-column: 5; grid-row: 1; }

/* Карточки 1/4 */
.zy-knockout-round:nth-child(1) .zy-knockout-card:nth-child(1) { grid-column: 1; grid-row: 2; }
.zy-knockout-round:nth-child(1) .zy-knockout-card:nth-child(2) { grid-column: 1; grid-row: 3; }
.zy-knockout-round:nth-child(1) .zy-knockout-card:nth-child(3) { grid-column: 1; grid-row: 4; }
.zy-knockout-round:nth-child(1) .zy-knockout-card:nth-child(4) { grid-column: 1; grid-row: 5; }

/* Карточки 1/2 — ровно между парами четвертьфиналов */
.zy-knockout-round:nth-child(2) .zy-knockout-card:nth-child(1) {
    grid-column: 3;
    grid-row: 2 / span 2;
    align-self: center;
}

.zy-knockout-round:nth-child(2) .zy-knockout-card:nth-child(2) {
    grid-column: 3;
    grid-row: 4 / span 2;
    align-self: center;
}

/* Финал — ровно между полуфиналами */
.zy-knockout-round:nth-child(3) .zy-knockout-card:nth-child(1) {
    grid-column: 5;
    grid-row: 2 / span 4;
    align-self: center;
}

.zy-knockout-card {
    position: relative !important;
    min-height: 84px !important;
    padding: 10px 12px !important;
    background: var(--zy-dark) !important;
    border: 1px solid var(--zy-border) !important;
    border-radius: 14px !important;
}

.zy-knockout-card__row {
    min-height: 27px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 54px !important;
    gap: 8px !important;
    align-items: center !important;
}

.zy-knockout-team {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    color: var(--zy-white) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}

.zy-knockout-team i {
    flex: 0 0 auto !important;
    width: 22px !important;
    height: 22px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid var(--zy-border) !important;
    border-radius: 50% !important;
    background: var(--zy-card) !important;
    color: var(--zy-yellow) !important;
    font-style: normal !important;
    font-size: 10px !important;
    font-weight: 900 !important;
}

.zy-knockout-team span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.zy-knockout-team.is-empty {
    opacity: .42 !important;
}

.zy-knockout-team.is-empty i {
    background: rgba(255, 255, 255, .08) !important;
    border-color: rgba(255, 255, 255, .18) !important;
}

.zy-knockout-team.is-empty span::before {
    content: "" !important;
    display: block !important;
    width: 104px !important;
    height: 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .14) !important;
}

.zy-knockout-card strong,
.zy-knockout-card em {
    justify-self: end !important;
    color: var(--zy-yellow) !important;
    font-style: normal !important;
    font-weight: 900 !important;
}

.zy-knockout-card em {
    color: var(--zy-muted) !important;
}

.zy-knockout-note {
    margin-top: 7px !important;
    padding-top: 7px !important;
    border-top: 1px solid var(--zy-border) !important;
    color: var(--zy-muted) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

/* Убираем все старые линии */
.zy-knockout-card::before,
.zy-knockout-card::after,
.zy-knockout-round::before,
.zy-knockout-round::after {
    display: none !important;
}

/* Новые аккуратные линии */
.zy-knockout::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background:
        linear-gradient(var(--zy-border), var(--zy-border)) 280px 86px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 280px 190px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 320px 86px / 1px 105px no-repeat,

        linear-gradient(var(--zy-border), var(--zy-border)) 280px 294px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 280px 398px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 320px 294px / 1px 105px no-repeat,

        linear-gradient(var(--zy-border), var(--zy-border)) 640px 138px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 640px 346px / 80px 1px no-repeat,
        linear-gradient(var(--zy-border), var(--zy-border)) 680px 138px / 1px 209px no-repeat;
}

@media (max-width: 860px) {
    .zy-knockout {
        min-width: 960px !important;
    }
}

/* Clean scalable playoff tree: supports 256 -> 1 by adding rounds */
.zy-tree-section {
    overflow: hidden;
}

.zy-tree-scroll {
    overflow-x: auto;
    padding: 4px 0 12px;
}

.zy-tree {
    min-width: max-content;
    display: flex;
    align-items: stretch;
    gap: 72px;
}

.zy-tree-round {
    width: 286px;
    flex: 0 0 286px;
    display: flex;
    flex-direction: column;
}

.zy-tree-round__head {
    min-height: 44px;
    margin-bottom: 14px;
}

.zy-tree-round__head h3 {
    margin: 0;
    color: var(--zy-yellow);
    font-size: 20px;
}

.zy-tree-round__head span {
    display: block;
    margin-top: 5px;
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 800;
}

.zy-tree-round__matches {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    gap: 18px;
}

.zy-tree-round:first-child .zy-tree-round__matches {
    justify-content: flex-start;
}

.zy-tree-card {
    position: relative;
    min-height: 94px;
    padding: 11px 12px 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 14px;
}

.zy-tree-round:not(:last-child) .zy-tree-card::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -73px;
    width: 72px;
    height: 1px;
    background: var(--zy-border);
}

.zy-tree-card__team {
    min-height: 26px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    color: var(--zy-white);
    font-size: 15px;
    font-weight: 900;
}

.zy-tree-card__team + .zy-tree-card__team {
    margin-top: 4px;
}

.zy-tree-card__team i {
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 10px;
    font-weight: 900;
}

.zy-tree-card__team span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-tree-card__team.is-empty {
    opacity: .45;
}

.zy-tree-card__team.is-empty i {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .18);
}

.zy-tree-card__team.is-empty span::before {
    content: "";
    display: block;
    width: 112px;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
}

.zy-tree-card__meta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52px 52px;
    gap: 8px;
    align-items: center;
    margin-top: 9px;
    padding-top: 8px;
    border-top: 1px solid var(--zy-border);
}

.zy-tree-card__meta span {
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-tree-card__meta strong {
    color: var(--zy-yellow);
    font-size: 17px;
    text-align: right;
}

.zy-tree-card__meta em {
    color: var(--zy-muted);
    font-style: normal;
    font-size: 13px;
    font-weight: 800;
    text-align: right;
}

@media (max-width: 860px) {
    .zy-tree {
        gap: 44px;
    }

    .zy-tree-round {
        width: 260px;
        flex-basis: 260px;
    }

    .zy-tree-round:not(:last-child) .zy-tree-card::after {
        right: -45px;
        width: 44px;
    }
}

/* Playoff card: separate scores for first and second leg */
.zy-leg-scoreboard {
    display: grid;
    gap: 5px;
}

.zy-leg-row,
.zy-leg-dates {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px 42px;
    gap: 8px;
    align-items: center;
}

.zy-leg-team {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    min-width: 0;
    color: var(--zy-white);
    font-size: 15px;
    font-weight: 900;
}

.zy-leg-team i {
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 10px;
    font-weight: 900;
}

.zy-leg-team span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-leg-team.is-empty {
    opacity: .45;
}

.zy-leg-team.is-empty i {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .18);
}

.zy-leg-team.is-empty span::before {
    content: "";
    display: block;
    width: 112px;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
}

.zy-leg-score {
    color: var(--zy-yellow);
    font-size: 18px;
    font-weight: 900;
    text-align: center;
}

.zy-leg-score.is-empty::before {
    content: "–";
    color: var(--zy-muted);
    opacity: .45;
}

.zy-leg-dates {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--zy-border);
}

.zy-leg-dates span {
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-leg-dates em {
    color: var(--zy-muted);
    font-style: normal;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.zy-leg-dates em.is-empty::before {
    content: "–";
    opacity: .35;
}

/* make tree cards fit the new two-leg scoreboard */
.zy-tree-card {
    min-height: 104px !important;
    padding: 12px !important;
}

.zy-tree-card__team,
.zy-tree-card__meta {
    display: none !important;
}

/* Remove playoff connector lines */
.zy-tree-round:not(:last-child) .zy-tree-card::after {
    display: none !important;
}

.zy-tree {
    gap: 54px;
}

@media (max-width: 860px) {
    .zy-tree {
        gap: 36px;
    }
}

/* Empty teams in overview/calendar playoff matches */
.zy-overview-match__team.is-empty,
.zy-calendar-match__team.is-empty {
    opacity: .45;
}

.zy-overview-match__team.is-empty i,
.zy-calendar-match__team.is-empty i {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .18);
}

.zy-overview-match__team.is-empty span::before,
.zy-calendar-match__team.is-empty span::before {
    content: "";
    display: block;
    width: 96px;
    height: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
}

/* Tournament stats tabs */
.zy-stats-table {
    display: grid;
    gap: 8px;
}

.zy-stats-table__head,
.zy-stats-row {
    display: grid;
    grid-template-columns: 46px minmax(0, 1.2fr) minmax(0, 1fr) 62px;
    gap: 10px;
    align-items: center;
}

.zy-stats-table__head {
    padding: 0 14px;
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-stats-table__head span:last-child {
    text-align: right;
}

.zy-stats-row {
    min-height: 54px;
    padding: 0 14px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 14px;
    color: var(--zy-white);
}

.zy-stats-row__pos {
    color: var(--zy-yellow);
    font-weight: 900;
}

.zy-stats-row strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-stats-row__team {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zy-stats-row__team i {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border: 1px solid var(--zy-border);
    border-radius: 50%;
    background: var(--zy-card);
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 10px;
    font-weight: 900;
}

.zy-stats-row__team span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-stats-row em {
    color: var(--zy-yellow);
    font-style: normal;
    font-size: 22px;
    font-weight: 900;
    text-align: right;
}

.zy-cards-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.zy-card-stat-block h3 {
    margin: 0 0 14px;
    color: var(--zy-yellow);
    font-size: 22px;
}

.zy-stats-table--cards .zy-stats-table__head,
.zy-stats-table--cards .zy-stats-row {
    grid-template-columns: 40px minmax(0, 1fr) minmax(0, .9fr) 46px;
}

@media (max-width: 760px) {
    .zy-stats-table__head,
    .zy-stats-row {
        grid-template-columns: 32px minmax(0, 1fr) 42px;
    }

    .zy-stats-table__head span:nth-child(3),
    .zy-stats-row__team {
        display: none;
    }

    .zy-stats-row {
        min-height: 50px;
        padding: 0 10px;
    }

    .zy-stats-row em {
        font-size: 18px;
    }

    .zy-cards-stat-grid {
        grid-template-columns: 1fr;
    }

    .zy-stats-table--cards .zy-stats-table__head,
    .zy-stats-table--cards .zy-stats-row {
        grid-template-columns: 32px minmax(0, 1fr) 42px;
    }
}

/* Penalty goals inside scorers value */
.zy-stats-row em small {
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
}

/* Aligned goals + penalty goals column */
.zy-stats-row em.zy-goals-cell {
    display: grid;
    grid-template-columns: 32px 34px;
    justify-content: end;
    align-items: baseline;
    gap: 4px;
    text-align: right;
}

.zy-goals-total {
    color: var(--zy-yellow);
    font-size: 22px;
    font-weight: 900;
    text-align: right;
}

.zy-stats-row em.zy-goals-cell small {
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 900;
    text-align: left;
}

.zy-stats-row em.zy-goals-cell small.is-empty {
    visibility: hidden;
}

/* Fix mobile horizontal scroll for playoff tree */
.zy-tree-section {
    overflow: visible !important;
}

.zy-tree-scroll {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    overscroll-behavior-x: contain !important;
    padding-bottom: 14px !important;
}

.zy-tree {
    width: max-content !important;
    max-width: none !important;
    min-width: max-content !important;
}

.zy-tree-round {
    min-width: 286px !important;
}

@media (max-width: 860px) {
    .zy-tree-scroll {
        margin-left: -2px !important;
        padding-right: 18px !important;
    }

    .zy-tree {
        gap: 34px !important;
    }

    .zy-tree-round {
        min-width: 286px !important;
        width: 286px !important;
        flex-basis: 286px !important;
    }
}

/* Penalty shootout score in match results */
.zy-overview-match__score,
.zy-calendar-match__score {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 5px;
    white-space: nowrap;
}

.zy-overview-match__score small,
.zy-calendar-match__score small {
    color: #9fb2c8;
    font-size: 12px;
    font-weight: 900;
}

.zy-leg-penalties {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px 42px;
    gap: 8px;
    align-items: center;
    margin-top: 4px;
}

.zy-leg-penalties small {
    color: #9fb2c8;
    font-size: 11px;
    font-weight: 900;
    font-style: normal;
    text-align: center;
}

.zy-leg-penalties small.is-empty {
    visibility: hidden;
}

/* Penalty shootout result style */
.zy-overview-match__score,
.zy-calendar-match__score {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 5px;
    white-space: nowrap;
}

.zy-overview-match__score small,
.zy-calendar-match__score small {
    color: #9fb2c8;
    font-size: 12px;
    font-weight: 900;
}

.zy-leg-penalties {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px 42px;
    gap: 8px;
    align-items: center;
    margin-top: 4px;
}

.zy-leg-penalties small {
    color: #9fb2c8;
    font-size: 11px;
    font-weight: 900;
    font-style: normal;
    text-align: center;
}

.zy-leg-penalties small.is-empty {
    visibility: hidden;
}

/* Penalty shootout next to the main score */
.zy-leg-score {
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 3px !important;
    white-space: nowrap !important;
}

.zy-leg-score span {
    color: var(--zy-yellow);
    font-size: 18px;
    font-weight: 900;
}

.zy-leg-score small,
.zy-overview-match__score small,
.zy-calendar-match__score small {
    color: #9fb2c8 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-leg-row,
.zy-leg-dates {
    grid-template-columns: minmax(0, 1fr) 58px 58px !important;
}

.zy-overview-match__score,
.zy-calendar-match__score {
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 5px !important;
    white-space: nowrap !important;
}

.zy-leg-penalties {
    display: none !important;
}

/* Unified match date/time and penalty score in overview/calendar */
.zy-match-datecell {
    display: grid !important;
    gap: 2px !important;
    align-content: center !important;
    color: var(--zy-muted) !important;
    line-height: 1.1 !important;
}

.zy-match-datecell > span {
    color: var(--zy-muted) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.zy-match-datecell > small {
    color: #9fb2c8 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-scorestack {
    display: grid !important;
    place-items: center !important;
    gap: 2px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.zy-match-scorestack > span {
    color: var(--zy-yellow) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
}

.zy-match-scorestack > small {
    display: block !important;
    color: #9fb2c8 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}


/* Penalty score on the far right in overview/calendar */
.zy-overview-match,
.zy-calendar-match {
    grid-template-columns: 150px minmax(130px, 1fr) 70px minmax(130px, 1fr) 92px !important;
    align-items: center !important;
    column-gap: 10px !important;
}

.zy-overview-match__penalty,
.zy-calendar-match__penalty {
    display: block;
    min-width: 92px;
    text-align: right;
    color: #8fb7e8;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

@media (max-width: 760px) {
    .zy-overview-match,
    .zy-calendar-match {
        grid-template-columns: 88px minmax(88px, 1fr) 50px minmax(88px, 1fr) 72px !important;
        column-gap: 6px !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        min-width: 72px;
        font-size: 11px;
    }
}

/* Penalty result as a separate right column in overview/calendar */
.zy-overview-match,
.zy-calendar-match {
    grid-template-columns: 150px minmax(120px, 1fr) 62px minmax(120px, 1fr) 88px !important;
    align-items: center !important;
    column-gap: 10px !important;
}

.zy-overview-match__penalty,
.zy-calendar-match__penalty {
    min-width: 88px !important;
    color: #8fb7e8 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

@media (max-width: 760px) {
    .zy-overview-match,
    .zy-calendar-match {
        grid-template-columns: 82px minmax(72px, 1fr) 46px minmax(72px, 1fr) 62px !important;
        column-gap: 6px !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        min-width: 62px !important;
        font-size: 10px !important;
    }
}

/* Mobile match rows: clean layout for overview/calendar with penalty column */
@media (max-width: 760px) {
    .zy-overview-match,
    .zy-calendar-match {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr) !important;
        grid-template-areas:
            "date date penalty"
            "home score away" !important;
        gap: 8px 8px !important;
        align-items: center !important;
        min-height: auto !important;
        padding: 10px 12px !important;
        overflow: hidden !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date,
    .zy-match-datecell {
        grid-area: date !important;
        justify-self: start !important;
        min-width: 0 !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        grid-area: penalty !important;
        display: block !important;
        min-width: 0 !important;
        width: auto !important;
        justify-self: end !important;
        text-align: right !important;
        color: #8fb7e8 !important;
        font-size: 10px !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
    }

    .zy-overview-match__team--home,
    .zy-calendar-match__team--home {
        grid-area: home !important;
        justify-self: end !important;
        min-width: 0 !important;
        max-width: 100% !important;
        text-align: right !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score,
    .zy-match-scorestack {
        grid-area: score !important;
        justify-self: center !important;
        min-width: 48px !important;
        width: 48px !important;
        text-align: center !important;
    }

    .zy-overview-match__team--away,
    .zy-calendar-match__team--away {
        grid-area: away !important;
        justify-self: start !important;
        min-width: 0 !important;
        max-width: 100% !important;
        text-align: left !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        font-size: 12px !important;
        line-height: 1.15 !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-overview-match__team i,
    .zy-calendar-match__team i {
        flex: 0 0 20px !important;
        width: 20px !important;
        height: 20px !important;
        font-size: 9px !important;
    }

    .zy-match-scorestack > span {
        font-size: 16px !important;
    }

    .zy-match-datecell > span {
        font-size: 11px !important;
    }

    .zy-match-datecell > small {
        font-size: 10px !important;
    }
}

/* Desktop calendar/overview: keep penalty column inside match card */
@media (min-width: 761px) {
    .zy-overview-match,
    .zy-calendar-match {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) 56px minmax(0, 1fr) 70px !important;
        column-gap: 8px !important;
        align-items: center !important;
        overflow: hidden !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date,
    .zy-match-datecell {
        min-width: 0 !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score,
    .zy-match-scorestack {
        min-width: 56px !important;
        width: 56px !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        display: block !important;
        min-width: 0 !important;
        width: 70px !important;
        justify-self: end !important;
        text-align: right !important;
        color: #8fb7e8 !important;
        font-size: 11px !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
    }
}

/* Final polish for tournament stats tabs */
.zy-stats-section > h2 {
    margin-bottom: 20px !important;
}

.zy-stats-table {
    max-width: 980px !important;
}

.zy-stats-table__head,
.zy-stats-row {
    grid-template-columns: 52px minmax(0, 1.35fr) minmax(0, 1fr) 82px !important;
    gap: 12px !important;
}

.zy-stats-table__head {
    padding: 0 16px 2px !important;
}

.zy-stats-row {
    min-height: 62px !important;
    padding: 0 16px !important;
    background: var(--zy-dark) !important;
    border-color: rgba(255, 207, 35, .24) !important;
}

.zy-stats-row__pos {
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 207, 35, .45) !important;
    border-radius: 50% !important;
    color: var(--zy-yellow) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.zy-stats-row strong {
    color: var(--zy-white) !important;
    font-size: 16px !important;
    font-weight: 900 !important;
}

.zy-stats-row__team {
    min-width: 0 !important;
    color: var(--zy-muted) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.zy-stats-row em {
    justify-self: end !important;
    min-width: 64px !important;
}

.zy-stats-row em.zy-goals-cell {
    min-width: 74px !important;
}

.zy-stats-row em:not(.zy-goals-cell) {
    color: var(--zy-yellow) !important;
    font-size: 23px !important;
    font-weight: 900 !important;
    text-align: right !important;
}

.zy-cards-stat-grid {
    align-items: start !important;
}

.zy-card-stat-block {
    min-width: 0 !important;
}

.zy-card-stat-block h3 {
    padding-left: 2px !important;
}

/* Mobile stats: keep team visible as second line */
@media (max-width: 760px) {
    .zy-stats-table {
        gap: 7px !important;
    }

    .zy-stats-table__head {
        grid-template-columns: 34px minmax(0, 1fr) 64px !important;
        padding: 0 10px 2px !important;
    }

    .zy-stats-table__head span:nth-child(3) {
        display: none !important;
    }

    .zy-stats-table__head span:nth-child(4) {
        display: block !important;
        text-align: right !important;
    }

    .zy-stats-row {
        min-height: 60px !important;
        padding: 9px 10px !important;
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) 64px !important;
        grid-template-areas:
            "pos player value"
            "pos team value" !important;
        gap: 3px 8px !important;
        align-items: center !important;
    }

    .zy-stats-row__pos {
        grid-area: pos !important;
        width: 26px !important;
        height: 26px !important;
        font-size: 12px !important;
        align-self: center !important;
    }

    .zy-stats-row strong {
        grid-area: player !important;
        min-width: 0 !important;
        font-size: 14px !important;
        line-height: 1.15 !important;
    }

    .zy-stats-row__team {
        grid-area: team !important;
        display: inline-flex !important;
        min-width: 0 !important;
        max-width: 100% !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
        opacity: .9 !important;
    }

    .zy-stats-row__team i {
        width: 18px !important;
        height: 18px !important;
        font-size: 8px !important;
    }

    .zy-stats-row__team span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-stats-row em {
        grid-area: value !important;
        justify-self: end !important;
        align-self: center !important;
        min-width: 58px !important;
    }

    .zy-stats-row em.zy-goals-cell {
        min-width: 64px !important;
        grid-template-columns: 28px 32px !important;
    }

    .zy-goals-total,
    .zy-stats-row em:not(.zy-goals-cell) {
        font-size: 19px !important;
    }

    .zy-stats-row em.zy-goals-cell small {
        font-size: 11px !important;
    }

    .zy-cards-stat-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .zy-card-stat-block h3 {
        margin-bottom: 12px !important;
        font-size: 20px !important;
    }
}

/* Match detail page */
.zy-match-page {
    padding: 28px 0 52px;
}

.zy-match-hero {
    padding: 22px;
    background: var(--zy-card);
    border: 1px solid rgba(255, 207, 35, .32);
    border-radius: 22px;
}

.zy-match-hero__top {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 22px;
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-match-back {
    color: var(--zy-yellow);
    text-decoration: none;
}

.zy-match-scoreboard {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 180px minmax(0, 1fr);
    gap: 24px;
    align-items: center;
}

.zy-match-side {
    display: grid;
    gap: 12px;
    justify-items: center;
    text-align: center;
}

.zy-match-side h1 {
    margin: 0;
    color: var(--zy-white);
    font-size: 34px;
    line-height: 1.05;
}

.zy-match-logo {
    width: 88px;
    height: 88px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 50%;
    background: var(--zy-dark);
}

.zy-match-logo img {
    max-width: 70%;
    max-height: 70%;
}

.zy-match-logo span {
    color: var(--zy-yellow);
    font-size: 34px;
    font-weight: 900;
}

.zy-match-center {
    display: grid;
    justify-items: center;
    gap: 8px;
}

.zy-match-main-score {
    min-width: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    color: var(--zy-yellow);
    font-size: 58px;
    font-weight: 900;
    line-height: 1;
}

.zy-match-main-score span {
    color: var(--zy-muted);
}

.zy-match-pen-score {
    padding: 5px 10px;
    border: 1px solid rgba(143, 183, 232, .42);
    border-radius: 999px;
    color: #8fb7e8;
    font-size: 13px;
    font-weight: 900;
}

.zy-match-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-top: 22px;
}

.zy-match-meta span {
    padding: 7px 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 999px;
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 800;
}

.zy-match-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 20px;
}

.zy-match-card {
    padding: 18px;
    background: var(--zy-card);
    border: 1px solid rgba(255, 207, 35, .24);
    border-radius: 18px;
}

.zy-match-card--wide {
    grid-column: 1 / -1;
}

.zy-match-card h2 {
    margin: 0 0 16px;
    color: var(--zy-yellow);
    font-size: 22px;
}

.zy-match-events {
    display: grid;
    gap: 9px;
}

.zy-match-event {
    display: grid;
    grid-template-columns: 48px 86px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-height: 42px;
    padding: 8px 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 12px;
}

.zy-match-event span {
    color: var(--zy-yellow);
    font-weight: 900;
}

.zy-match-event strong {
    color: var(--zy-white);
    font-size: 13px;
}

.zy-match-event p {
    margin: 0;
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
}

.zy-match-stats {
    display: grid;
    gap: 9px;
}

.zy-match-stat-row {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr) 70px;
    align-items: center;
    min-height: 38px;
    padding: 0 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 12px;
}

.zy-match-stat-row strong {
    color: var(--zy-yellow);
    font-size: 18px;
    text-align: center;
}

.zy-match-stat-row span {
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}

.zy-match-lineups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.zy-match-lineups div {
    display: grid;
    gap: 7px;
}

.zy-match-lineups h3 {
    margin: 0 0 6px;
    color: var(--zy-white);
    font-size: 18px;
}

.zy-match-lineups span {
    padding: 8px 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 10px;
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
}

.zy-match-penalties {
    display: grid;
    gap: 8px;
}

.zy-match-penalty-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px 42px 34px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    padding: 8px 10px;
    background: var(--zy-dark);
    border: 1px solid var(--zy-border);
    border-radius: 12px;
}

.zy-match-penalty-row span {
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
}

.zy-match-penalty-row span:first-child {
    text-align: right;
}

.zy-match-penalty-row em {
    color: var(--zy-muted);
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

.zy-match-penalty-row strong {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    font-size: 15px;
    font-weight: 900;
}

.zy-match-penalty-row .is-goal {
    background: rgba(255, 207, 35, .18);
    color: var(--zy-yellow);
}

.zy-match-penalty-row .is-miss {
    background: rgba(255, 255, 255, .08);
    color: #9fb2c8;
}

@media (max-width: 760px) {
    .zy-match-hero {
        padding: 16px;
    }

    .zy-match-scoreboard {
        grid-template-columns: minmax(0, 1fr) 92px minmax(0, 1fr);
        gap: 8px;
    }

    .zy-match-logo {
        width: 58px;
        height: 58px;
    }

    .zy-match-logo span {
        font-size: 22px;
    }

    .zy-match-side h1 {
        font-size: 18px;
    }

    .zy-match-main-score {
        min-width: 86px;
        gap: 5px;
        font-size: 36px;
    }

    .zy-match-pen-score {
        font-size: 11px;
    }

    .zy-match-layout {
        grid-template-columns: 1fr;
    }

    .zy-match-card {
        padding: 14px;
    }

    .zy-match-event {
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 6px;
    }

    .zy-match-event strong {
        display: none;
    }

    .zy-match-lineups {
        grid-template-columns: 1fr;
    }

    .zy-match-penalty-row {
        grid-template-columns: minmax(0, 1fr) 28px 30px 28px minmax(0, 1fr);
        gap: 5px;
    }

    .zy-match-penalty-row span {
        font-size: 11px;
    }
}

/* Match timeline like event center */
.zy-match-events-card {
    grid-column: 1 / -1 !important;
}

.zy-match-timeline {
    display: grid;
    gap: 12px;
}

.zy-match-period {
    display: grid;
    gap: 10px;
}

.zy-match-period__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    background: rgba(255, 207, 35, .08);
    border: 1px solid rgba(255, 207, 35, .14);
    border-radius: 8px;
}

.zy-match-period__head strong {
    color: var(--zy-white);
    font-size: 14px;
    font-weight: 900;
}

.zy-match-period__head span {
    color: var(--zy-white);
    font-size: 13px;
    font-weight: 900;
}

.zy-match-period__events {
    display: grid;
    gap: 8px;
    padding: 2px 4px 8px;
}

.zy-match-timeline-row {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 34px;
}

.zy-match-timeline-row--away {
    grid-template-columns: minmax(0, 1fr) 52px;
}

.zy-match-timeline-row--away .zy-match-minute {
    grid-column: 2;
    grid-row: 1;
    text-align: right;
}

.zy-match-timeline-row--away .zy-match-event-line {
    grid-column: 1;
    grid-row: 1;
    justify-self: end;
    text-align: right;
}

.zy-match-minute {
    color: #9fb2c8;
    font-size: 13px;
    font-weight: 900;
}

.zy-match-event-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
}

.zy-event-icon {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: rgba(255, 255, 255, .06);
    color: var(--zy-yellow);
    font-size: 14px;
    font-weight: 900;
}

.zy-event-icon--yellow::before {
    content: "";
    width: 10px;
    height: 17px;
    border-radius: 3px;
    background: var(--zy-yellow);
}

.zy-event-icon--red::before {
    content: "";
    width: 10px;
    height: 17px;
    border-radius: 3px;
    background: #f03b3b;
}

.zy-event-icon--sub {
    color: #2ccf72;
}

.zy-event-text {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    min-width: 0;
    color: var(--zy-muted);
    font-size: 13px;
    font-weight: 800;
}

.zy-event-text strong {
    color: var(--zy-white);
    font-size: 14px;
    font-weight: 900;
}

.zy-event-text em {
    color: var(--zy-muted);
    font-style: normal;
    font-size: 12px;
    font-weight: 800;
}

.zy-match-event-line b {
    min-width: 44px;
    padding: 4px 8px;
    border: 1px solid rgba(143, 183, 232, .35);
    border-radius: 8px;
    color: var(--zy-white);
    background: rgba(143, 183, 232, .08);
    font-size: 13px;
    font-weight: 900;
    text-align: center;
}

@media (max-width: 760px) {
    .zy-match-period__head {
        min-height: 32px;
        padding: 0 10px;
    }

    .zy-match-timeline-row,
    .zy-match-timeline-row--away {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 8px;
        min-height: 32px;
    }

    .zy-match-timeline-row--away .zy-match-minute {
        grid-column: 1;
        text-align: left;
    }

    .zy-match-timeline-row--away .zy-match-event-line {
        grid-column: 2;
        justify-self: start;
        text-align: left;
        flex-direction: row;
    }

    .zy-match-event-line {
        gap: 6px;
    }

    .zy-event-icon {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
        border-radius: 7px;
        font-size: 12px;
    }

    .zy-event-text {
        display: grid;
        gap: 2px;
        font-size: 11px;
        line-height: 1.1;
    }

    .zy-event-text strong {
        font-size: 12px;
    }

    .zy-event-text em {
        font-size: 10px;
    }

    .zy-match-event-line b {
        min-width: 38px;
        padding: 3px 6px;
        font-size: 12px;
    }
}

/* Match page tabs + lineup board */
.zy-match-tabs {
    display: flex;
    gap: 10px;
    margin: 18px 0;
    padding: 10px;
    background: var(--zy-card);
    border: 1px solid rgba(255, 207, 35, .28);
    border-radius: 18px;
}

.zy-match-tabs a {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 999px;
    color: var(--zy-white);
    text-decoration: none;
    font-size: 14px;
    font-weight: 900;
}

.zy-match-tabs a.is-active {
    color: var(--zy-yellow);
    background: rgba(255, 207, 35, .12);
}

.zy-lineups-card {
    padding: 14px !important;
}

.zy-lineups-board {
    display: grid;
    gap: 18px;
}

.zy-lineup-group {
    display: grid;
    gap: 10px;
}

.zy-lineup-group__title {
    min-height: 38px;
    display: grid;
    place-items: center;
    background: rgba(255, 207, 35, .08);
    border: 1px solid rgba(255, 207, 35, .14);
    border-radius: 8px;
    color: var(--zy-white);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.zy-lineup-list {
    display: grid;
    gap: 2px;
}

.zy-lineup-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    min-height: 46px;
    padding: 0 10px;
    background: rgba(255, 255, 255, .015);
    border-radius: 8px;
    align-items: center;
}

.zy-lineup-row:nth-child(even) {
    background: rgba(255, 255, 255, .025);
}

.zy-lineup-player {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: var(--zy-white);
    font-size: 14px;
    font-weight: 900;
}

.zy-lineup-player--away {
    justify-content: flex-end;
    text-align: right;
}

.zy-lineup-number {
    color: #9fb2c8;
    font-size: 13px;
    font-weight: 900;
}

.zy-lineup-crest {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 50%;
    color: var(--zy-yellow);
    background: var(--zy-dark);
    font-size: 10px;
    font-weight: 900;
}

.zy-lineup-player strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zy-lineup-player em {
    color: #9fb2c8;
    font-style: normal;
    font-size: 12px;
    font-weight: 900;
}

.zy-lineup-badge {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    background: rgba(255, 255, 255, .08);
}

.zy-lineup-badge--yellow::before {
    content: "";
    width: 8px;
    height: 14px;
    border-radius: 3px;
    background: var(--zy-yellow);
}

.zy-lineup-badge--red::before {
    content: "";
    width: 8px;
    height: 14px;
    border-radius: 3px;
    background: #f03b3b;
}

.zy-lineup-badge--sub::before {
    content: "↔";
    color: #2ccf72;
    font-style: normal;
    font-size: 13px;
    font-weight: 900;
}

.zy-lineup-badge--goal::before {
    content: "⚽";
    font-size: 12px;
}

@media (max-width: 760px) {
    .zy-match-tabs {
        padding: 8px;
    }

    .zy-match-tabs a {
        flex: 1;
        min-height: 36px;
        padding: 0 10px;
        font-size: 13px;
    }

    .zy-lineup-row {
        grid-template-columns: 1fr;
        gap: 6px;
        padding: 9px 8px;
        min-height: auto;
    }

    .zy-lineup-player,
    .zy-lineup-player--away {
        justify-content: flex-start;
        text-align: left;
        font-size: 12px;
    }

    .zy-lineup-player--away {
        flex-direction: row-reverse;
    }

    .zy-lineup-number {
        font-size: 11px;
    }

    .zy-lineup-crest {
        width: 20px;
        height: 20px;
        flex-basis: 20px;
        font-size: 9px;
    }

    .zy-lineup-badge {
        width: 18px;
        height: 18px;
        flex-basis: 18px;
    }
}


/* Use uploaded SVG event icons without recoloring */
.zy-event-icon,
.zy-lineup-badge {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.zy-event-icon::before,
.zy-lineup-badge::before {
    content: none !important;
    display: none !important;
}

.zy-event-icon img {
    width: 24px !important;
    height: 24px !important;
    display: block !important;
    object-fit: contain !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}

.zy-lineup-badge img {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    object-fit: contain !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}

@media (max-width: 760px) {
    .zy-event-icon img {
        width: 22px !important;
        height: 22px !important;
    }

    .zy-lineup-badge img {
        width: 16px !important;
        height: 16px !important;
    }
}

/* Final match hero layout */
.zy-match-page {
    padding-top: 28px !important;
}

.zy-match-hero {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 22px 24px 24px !important;
    background: var(--zy-card) !important;
    border: 1px solid rgba(255, 207, 35, .42) !important;
    border-radius: 24px !important;
}

.zy-match-hero__top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 24px !important;
}

.zy-match-back {
    color: var(--zy-yellow) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

.zy-match-hero__top > span {
    padding: 7px 12px !important;
    background: var(--zy-dark) !important;
    border: 1px solid rgba(255, 207, 35, .36) !important;
    border-radius: 999px !important;
    color: var(--zy-white) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

.zy-match-scoreboard {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 210px minmax(0, 1fr) !important;
    gap: 30px !important;
    align-items: center !important;
}

.zy-match-side {
    display: grid !important;
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: center !important;
    text-align: left !important;
}

.zy-match-side--away {
    grid-template-columns: minmax(0, 1fr) 84px !important;
    text-align: right !important;
}

.zy-match-side--away .zy-match-logo {
    order: 2 !important;
}

.zy-match-logo {
    width: 84px !important;
    height: 84px !important;
    display: grid !important;
    place-items: center !important;
    background: var(--zy-dark) !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 50% !important;
}

.zy-match-logo span {
    color: var(--zy-yellow) !important;
    font-size: 32px !important;
    font-weight: 900 !important;
}

.zy-match-logo img {
    max-width: 68% !important;
    max-height: 68% !important;
    object-fit: contain !important;
}

.zy-match-side h1 {
    margin: 0 !important;
    color: var(--zy-white) !important;
    font-size: 38px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    overflow-wrap: anywhere !important;
}

.zy-match-center {
    display: grid !important;
    justify-items: center !important;
    gap: 10px !important;
    padding: 16px 14px !important;
    background: var(--zy-dark) !important;
    border: 1px solid rgba(255, 207, 35, .36) !important;
    border-radius: 18px !important;
}

.zy-match-main-score {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    min-width: 150px !important;
    color: var(--zy-yellow) !important;
    font-size: 60px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}

.zy-match-main-score span {
    color: var(--zy-muted) !important;
}

.zy-match-pen-score {
    padding: 6px 12px !important;
    background: rgba(143, 183, 232, .08) !important;
    border: 1px solid rgba(143, 183, 232, .45) !important;
    border-radius: 999px !important;
    color: #8fb7e8 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.zy-match-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
    margin-top: 24px !important;
}

.zy-match-meta span {
    padding: 7px 11px !important;
    background: var(--zy-dark) !important;
    border: 1px solid rgba(255, 207, 35, .36) !important;
    border-radius: 999px !important;
    color: var(--zy-muted) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.zy-match-tabs {
    max-width: 1180px !important;
    margin: 18px auto !important;
}

@media (max-width: 760px) {
    .zy-match-page {
        padding-top: 18px !important;
    }

    .zy-match-hero {
        padding: 16px 14px 18px !important;
        border-radius: 20px !important;
    }

    .zy-match-hero__top {
        margin-bottom: 18px !important;
        align-items: flex-start !important;
    }

    .zy-match-hero__top > span {
        font-size: 10px !important;
        padding: 6px 9px !important;
        text-align: right !important;
    }

    .zy-match-scoreboard {
        grid-template-columns: minmax(0, 1fr) 94px minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .zy-match-side,
    .zy-match-side--away {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 8px !important;
        text-align: center !important;
    }

    .zy-match-side--away .zy-match-logo {
        order: 0 !important;
    }

    .zy-match-logo {
        width: 56px !important;
        height: 56px !important;
    }

    .zy-match-logo span {
        font-size: 22px !important;
    }

    .zy-match-side h1 {
        font-size: 18px !important;
        line-height: 1.1 !important;
    }

    .zy-match-center {
        padding: 10px 6px !important;
        border-radius: 14px !important;
    }

    .zy-match-main-score {
        min-width: 78px !important;
        gap: 5px !important;
        font-size: 34px !important;
    }

    .zy-match-pen-score {
        padding: 4px 7px !important;
        font-size: 10px !important;
    }

    .zy-match-meta {
        margin-top: 18px !important;
        justify-content: flex-start !important;
    }

    .zy-match-meta span {
        font-size: 10px !important;
        padding: 6px 8px !important;
    }
}

/* Lineups without team crest circles */
.zy-lineup-crest {
    display: none !important;
}

.zy-lineup-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 28px !important;
}

.zy-lineup-player {
    min-height: 34px !important;
    gap: 8px !important;
}

.zy-lineup-player--home {
    justify-content: flex-start !important;
}

.zy-lineup-player--away {
    justify-content: flex-end !important;
}

.zy-lineup-number {
    width: 28px !important;
    flex: 0 0 28px !important;
    color: #9fb2c8 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.zy-lineup-player--away .zy-lineup-number {
    text-align: right !important;
}

.zy-lineup-player strong {
    min-width: 0 !important;
    max-width: 240px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.zy-lineup-player--away strong {
    text-align: right !important;
}

.zy-lineup-player em {
    flex: 0 0 auto !important;
}

.zy-lineup-badge {
    flex: 0 0 20px !important;
}

@media (max-width: 760px) {
    .zy-lineup-row {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .zy-lineup-player,
    .zy-lineup-player--away {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .zy-lineup-player--away {
        flex-direction: row !important;
    }

    .zy-lineup-number {
        width: 24px !important;
        flex-basis: 24px !important;
        text-align: left !important;
    }

    .zy-lineup-player--away .zy-lineup-number {
        text-align: left !important;
    }

    .zy-lineup-player strong,
    .zy-lineup-player--away strong {
        max-width: none !important;
        text-align: left !important;
    }
}

/* Hide goalkeeper/captain text markers in lineups */
.zy-lineup-player em {
    display: none !important;
}

/* Mobile lineups: keep two teams in two columns */
@media (max-width: 760px) {
    .zy-lineup-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 10px !important;
        padding: 9px 8px !important;
        align-items: center !important;
    }

    .zy-lineup-player,
    .zy-lineup-player--away {
        min-width: 0 !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .zy-lineup-player--home {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .zy-lineup-player--away {
        justify-content: flex-end !important;
        text-align: right !important;
        flex-direction: row !important;
    }

    .zy-lineup-player strong {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-lineup-player--away strong {
        text-align: right !important;
    }

    .zy-lineup-number {
        width: auto !important;
        min-width: 18px !important;
        flex: 0 0 auto !important;
        font-size: 11px !important;
    }

    .zy-lineup-badge {
        width: 16px !important;
        height: 16px !important;
        flex: 0 0 16px !important;
    }

    .zy-lineup-badge img {
        width: 15px !important;
        height: 15px !important;
    }
}

/* Mobile match timeline: keep home/away events in two sides */
@media (max-width: 760px) {
    .zy-match-period__events {
        gap: 10px !important;
    }

    .zy-match-timeline-row,
    .zy-match-timeline-row--away {
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) minmax(0, 1fr) 34px !important;
        gap: 6px !important;
        align-items: center !important;
        min-height: 34px !important;
    }

    .zy-match-timeline-row--home .zy-match-minute {
        grid-column: 1 !important;
        grid-row: 1 !important;
        text-align: left !important;
    }

    .zy-match-timeline-row--home .zy-match-event-line {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        text-align: left !important;
    }

    .zy-match-timeline-row--away .zy-match-event-line {
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        text-align: right !important;
    }

    .zy-match-timeline-row--away .zy-match-minute {
        grid-column: 4 !important;
        grid-row: 1 !important;
        text-align: right !important;
    }

    .zy-match-event-line {
        max-width: 100% !important;
        min-width: 0 !important;
        gap: 5px !important;
    }

    .zy-match-timeline-row--away .zy-match-event-line {
        justify-content: flex-end !important;
    }

    .zy-match-timeline-row--home .zy-match-event-line {
        justify-content: flex-start !important;
    }

    .zy-event-text {
        min-width: 0 !important;
        max-width: 100% !important;
        display: grid !important;
        gap: 2px !important;
        line-height: 1.05 !important;
    }

    .zy-match-timeline-row--away .zy-event-text {
        text-align: right !important;
    }

    .zy-event-text strong,
    .zy-event-text em {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-event-icon {
        width: 22px !important;
        height: 22px !important;
        flex: 0 0 22px !important;
    }

    .zy-event-icon img {
        width: 22px !important;
        height: 22px !important;
    }

    .zy-match-event-line b {
        min-width: 36px !important;
        padding: 3px 5px !important;
        font-size: 11px !important;
    }
}


/* Match timeline optional extra time and penalty shootout */
.zy-match-period--extra .zy-match-period__head {
    background: rgba(143, 183, 232, .08) !important;
    border-color: rgba(143, 183, 232, .24) !important;
}

.zy-match-period--penalties .zy-match-period__head {
    background: rgba(255, 207, 35, .11) !important;
    border-color: rgba(255, 207, 35, .32) !important;
}

.zy-match-period--penalties .zy-match-minute {
    width: 24px !important;
    height: 24px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(143, 183, 232, .38) !important;
    border-radius: 50% !important;
    color: #9fb2c8 !important;
    font-size: 11px !important;
}

/* Match overview: no title, extra time same color as other periods */
.zy-match-events-card > h2 {
    display: none !important;
}

.zy-match-events-card {
    padding-top: 18px !important;
}

.zy-match-period--extra .zy-match-period__head,
.zy-match-period--penalties .zy-match-period__head,
.zy-match-period__head {
    background: rgba(255, 207, 35, .08) !important;
    border: 1px solid rgba(255, 207, 35, .14) !important;
}

.zy-match-period--extra .zy-match-period__head strong,
.zy-match-period--extra .zy-match-period__head span {
    color: var(--zy-white) !important;
}

/* Penalty shootout: align right column properly */
.zy-match-shootout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 80px;
    align-items: start;
}

.zy-match-shootout__side {
    min-width: 0;
}

.zy-match-shootout__side--home {
    justify-self: stretch;
}

.zy-match-shootout__side--away {
    justify-self: stretch;
}

.zy-match-shootout__side--away .zy-match-shootout__row {
    margin-left: auto;
    justify-content: flex-end;
    text-align: right;
}

.zy-match-shootout__side--away .zy-match-shootout__content {
    justify-content: flex-end;
    text-align: right;
}

.zy-match-shootout__side--away .zy-match-shootout__main {
    justify-content: flex-end;
}

.zy-match-shootout__side--away .zy-match-shootout__score {
    order: -1;
}

.zy-match-shootout__side--away .zy-match-shootout__num {
    order: 10;
}

@media (max-width: 760px) {
    .zy-match-shootout {
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: 14px;
    }

    .zy-match-shootout__side--away .zy-match-shootout__row,
    .zy-match-shootout__side--away .zy-match-shootout__content,
    .zy-match-shootout__side--away .zy-match-shootout__main {
        margin-left: 0;
        justify-content: flex-end;
    }
}

/* Penalty shootout: align by the same right-side event column */
@media (min-width: 761px) {
    .zy-match-period--penalties .zy-match-timeline-row {
        display: grid !important;
        grid-template-columns: 52px minmax(0, 1fr) minmax(0, 1fr) 52px !important;
        gap: 12px !important;
        align-items: center !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home .zy-match-minute {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home .zy-match-event-line {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        text-align: left !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-match-event-line {
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        text-align: right !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-match-minute {
        grid-column: 4 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        text-align: right !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-event-text {
        text-align: right !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-match-event-line {
        min-width: 220px !important;
        justify-content: flex-end !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home .zy-match-event-line {
        min-width: 220px !important;
        justify-content: flex-start !important;
    }
}

/* Mobile penalty shootout: full-width rows without text clipping */
@media (max-width: 760px) {
    .zy-match-period--penalties .zy-match-period__events {
        gap: 9px !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home {
        display: grid !important;
        grid-template-columns: 28px minmax(0, 1fr) !important;
        gap: 8px !important;
        align-items: center !important;
        min-height: 34px !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home .zy-match-minute {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        text-align: center !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--home .zy-match-event-line {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        justify-content: flex-start !important;
        text-align: left !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 28px !important;
        gap: 8px !important;
        align-items: center !important;
        min-height: 34px !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-match-event-line {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        justify-content: flex-end !important;
        text-align: right !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .zy-match-period--penalties .zy-match-timeline-row--away .zy-match-minute {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        text-align: center !important;
    }

    .zy-match-period--penalties .zy-event-text {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        min-width: auto !important;
        max-width: none !important;
    }

    .zy-match-period--penalties .zy-event-text strong,
    .zy-match-period--penalties .zy-event-text em {
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }

    .zy-match-period--penalties .zy-match-event-line b {
        flex: 0 0 auto !important;
        min-width: 38px !important;
    }

    .zy-match-period--penalties .zy-event-icon {
        flex: 0 0 22px !important;
    }
}

/* Match officials under score inside hero */
.zy-match-officials {
    display: none !important;
}

.zy-match-hero-officials {
    max-width: 860px;
    margin: 18px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.zy-match-hero-officials span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 5px 10px;
    background: var(--zy-dark);
    border: 1px solid rgba(255, 207, 35, .28);
    border-radius: 999px;
}

.zy-match-hero-officials em {
    color: var(--zy-muted);
    font-style: normal;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-match-hero-officials strong {
    color: var(--zy-white);
    font-size: 12px;
    font-weight: 900;
}

@media (max-width: 760px) {
    .zy-match-hero-officials {
        margin-top: 14px;
        justify-content: flex-start;
        gap: 6px;
    }

    .zy-match-hero-officials span {
        min-height: 28px;
        padding: 5px 8px;
    }

    .zy-match-hero-officials em {
        font-size: 9px;
    }

    .zy-match-hero-officials strong {
        font-size: 11px;
    }
}

/* Compact match header */
.zy-match-hero {
    margin-top: 14px !important;
    padding: 16px 18px 14px !important;
}

.zy-match-scoreboard {
    grid-template-columns: minmax(0, 1fr) 210px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: center !important;
}

.zy-match-side {
    min-height: 0 !important;
    padding: 0 !important;
}

.zy-match-side [class*="crest"],
.zy-match-side [class*="logo"] {
    width: 58px !important;
    height: 58px !important;
}

.zy-match-center {
    gap: 5px !important;
    padding: 0 !important;
}

.zy-match-score {
    margin: 0 !important;
    font-size: 42px !important;
    line-height: 1 !important;
}

.zy-match-penalty,
.zy-match-penalties,
.zy-match-penalty-score {
    margin-top: 3px !important;
    padding: 3px 8px !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
}

.zy-match-hero-officials {
    max-width: 100% !important;
    margin: 8px auto 0 !important;
    padding: 7px 10px 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px 8px !important;
    border-top: 1px solid rgba(255, 207, 35, .16) !important;
    color: var(--zy-muted) !important;
}

.zy-match-hero-officials span {
    display: inline !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
}

.zy-match-hero-officials em {
    color: var(--zy-muted) !important;
    font-style: normal !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

.zy-match-hero-officials strong {
    color: var(--zy-white) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-hero-officials i {
    color: rgba(255, 207, 35, .55) !important;
    font-style: normal !important;
    font-size: 11px !important;
}

.zy-match-meta {
    margin-top: 10px !important;
    gap: 7px !important;
}

.zy-match-meta span {
    min-height: 26px !important;
    padding: 4px 9px !important;
    font-size: 11px !important;
}

.zy-match-tabs {
    margin-top: 12px !important;
}

@media (max-width: 760px) {
    .zy-match-hero {
        margin-top: 10px !important;
        padding: 12px 10px !important;
    }

    .zy-match-scoreboard {
        grid-template-columns: minmax(0, 1fr) 86px minmax(0, 1fr) !important;
        gap: 8px !important;
        align-items: center !important;
    }

    .zy-match-side [class*="crest"],
    .zy-match-side [class*="logo"] {
        width: 42px !important;
        height: 42px !important;
    }

    .zy-match-score {
        font-size: 28px !important;
    }

    .zy-match-hero-officials {
        margin-top: 7px !important;
        padding-top: 6px !important;
        justify-content: center !important;
        gap: 3px 6px !important;
    }

    .zy-match-hero-officials em {
        font-size: 8px !important;
    }

    .zy-match-hero-officials strong,
    .zy-match-hero-officials i {
        font-size: 9px !important;
    }

    .zy-match-meta {
        margin-top: 8px !important;
    }

    .zy-match-meta span {
        min-height: 24px !important;
        padding: 4px 7px !important;
        font-size: 10px !important;
    }
}

/* Match header: cities, larger logos, meta before officials */
.zy-match-scoreboard {
    grid-template-columns: minmax(0, 1fr) 220px minmax(0, 1fr) !important;
    gap: 18px !important;
}

.zy-match-side [class*="crest"],
.zy-match-side [class*="logo"] {
    width: 74px !important;
    height: 74px !important;
}

.zy-match-team-city {
    display: block;
    margin-top: 4px;
    color: var(--zy-muted);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.15;
}

.zy-match-side--home .zy-match-team-city {
    text-align: left;
}

.zy-match-side--away .zy-match-team-city {
    text-align: right;
}

.zy-match-meta {
    margin-top: 8px !important;
}

.zy-match-hero-officials {
    margin-top: 7px !important;
    padding-top: 7px !important;
}

@media (max-width: 760px) {
    .zy-match-scoreboard {
        grid-template-columns: minmax(0, 1fr) 92px minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .zy-match-side [class*="crest"],
    .zy-match-side [class*="logo"] {
        width: 52px !important;
        height: 52px !important;
    }

    .zy-match-team-city {
        margin-top: 3px;
        font-size: 10px;
    }

    .zy-match-meta {
        margin-top: 7px !important;
    }

    .zy-match-hero-officials {
        margin-top: 6px !important;
        padding-top: 6px !important;
    }
}

/* Match header: remove top controls and separate penalty score */
.zy-match-back,
.zy-match-status,
.zy-match-state,
.zy-match-hero-top,
.zy-match-top {
    display: none !important;
}

.zy-match-hero {
    padding-top: 18px !important;
}

.zy-match-score {
    padding-bottom: 8px !important;
}

.zy-match-penalty,
.zy-match-penalties,
.zy-match-penalty-score {
    position: static !important;
    transform: none !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
}

@media (max-width: 760px) {
    .zy-match-hero {
        padding-top: 12px !important;
    }

    .zy-match-score {
        padding-bottom: 6px !important;
    }

    .zy-match-penalty,
    .zy-match-penalties,
    .zy-match-penalty-score {
        margin-top: 6px !important;
    }
}

/* Match header hard fix: no status row, visible cities, separated penalties */
.zy-match-hero > .zy-match-hero-top,
.zy-match-hero > .zy-match-top,
.zy-match-hero > .zy-match-head,
.zy-match-hero > .zy-match-header,
.zy-match-hero > .zy-match-nav,
.zy-match-hero > .zy-match-bar {
    display: none !important;
}

.zy-match-hero {
    padding-top: 20px !important;
}

.zy-match-center {
    padding: 10px 14px 18px !important;
}

.zy-match-score {
    padding-bottom: 0 !important;
}

.zy-match-center [class*="pen"] {
    position: static !important;
    transform: none !important;
    margin-top: 10px !important;
    margin-bottom: 2px !important;
}

.zy-match-side [class*="crest"],
.zy-match-side [class*="logo"] {
    width: 78px !important;
    height: 78px !important;
}

.zy-match-team-city {
    display: block !important;
    margin-top: 5px !important;
    color: var(--zy-muted) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

.zy-match-side--home .zy-match-team-city {
    text-align: left !important;
}

.zy-match-side--away .zy-match-team-city {
    text-align: right !important;
}

@media (max-width: 760px) {
    .zy-match-hero {
        padding-top: 12px !important;
    }

    .zy-match-center {
        padding: 8px 8px 14px !important;
    }

    .zy-match-center [class*="pen"] {
        margin-top: 7px !important;
        margin-bottom: 1px !important;
    }

    .zy-match-side [class*="crest"],
    .zy-match-side [class*="logo"] {
        width: 54px !important;
        height: 54px !important;
    }

    .zy-match-team-city {
        margin-top: 3px !important;
        font-size: 10px !important;
    }
}

/* Match header: force visible team cities */
.zy-match-team-city {
    display: block !important;
    width: 100% !important;
    margin-top: 6px !important;
    color: rgba(255, 255, 255, .62) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.zy-match-team-city--home {
    text-align: left !important;
}

.zy-match-team-city--away {
    text-align: right !important;
}

@media (max-width: 760px) {
    .zy-match-team-city {
        margin-top: 4px !important;
        font-size: 10px !important;
    }
}

/* Match header: city directly under team name */
.zy-match-team-city {
    display: block !important;
    margin-top: 5px !important;
    color: rgba(255, 255, 255, .68) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.zy-match-side--home .zy-match-team-city {
    text-align: left !important;
}

.zy-match-side--away .zy-match-team-city {
    text-align: right !important;
}

@media (max-width: 760px) {
    .zy-match-team-city {
        margin-top: 3px !important;
        font-size: 10px !important;
    }
}

/* Match header: visible city inside team h1 */
.zy-match-side h1 .zy-match-team-city {
    display: block !important;
    margin-top: 6px !important;
    color: rgba(255, 255, 255, .68) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.zy-match-side--home h1 .zy-match-team-city {
    text-align: left !important;
}

.zy-match-side--away h1 .zy-match-team-city {
    text-align: right !important;
}

@media (max-width: 760px) {
    .zy-match-side h1 .zy-match-team-city {
        margin-top: 3px !important;
        font-size: 10px !important;
    }
}

/* Clean rebuilt match header */
.zy-match-hero--clean {
    max-width: 1180px !important;
    margin: 14px auto 0 !important;
    padding: 14px 18px !important;
    background: var(--zy-card) !important;
    border: 1px solid rgba(255, 207, 35, .28) !important;
    border-radius: 18px !important;
}

.zy-match-clean-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 7px;
    margin-bottom: 12px;
}

.zy-match-clean-meta span {
    min-height: 26px;
    padding: 5px 10px;
    display: inline-flex;
    align-items: center;
    background: var(--zy-dark);
    border: 1px solid rgba(255, 207, 35, .18);
    border-radius: 999px;
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 900;
}

.zy-match-clean-board {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
}

.zy-match-clean-team {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 14px;
}

.zy-match-clean-team--away {
    justify-content: flex-end;
}

.zy-match-clean-logo {
    width: 76px;
    height: 76px;
    flex: 0 0 76px;
    display: grid;
    place-items: center;
    background: #111;
    border: 1px solid rgba(255, 207, 35, .28);
    border-radius: 50%;
    overflow: hidden;
}

.zy-match-clean-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zy-match-clean-logo strong {
    color: var(--zy-yellow);
    font-size: 30px;
    font-weight: 1000;
}

.zy-match-clean-team-text {
    min-width: 0;
}

.zy-match-clean-team-text h1 {
    margin: 0;
    color: var(--zy-white);
    font-size: 25px;
    font-weight: 1000;
    line-height: 1.05;
}

.zy-match-clean-team-text p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .66);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.1;
}

.zy-match-clean-team--away .zy-match-clean-team-text {
    text-align: right;
}

.zy-match-clean-scorebox {
    min-height: 88px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    background: #111;
    border: 1px solid rgba(255, 207, 35, .38);
    border-radius: 16px;
}

.zy-match-clean-score {
    color: var(--zy-yellow);
    font-size: 42px;
    font-weight: 1000;
    line-height: 1;
}

.zy-match-clean-penalty {
    padding: 4px 9px;
    background: rgba(255, 207, 35, .10);
    border: 1px solid rgba(255, 207, 35, .26);
    border-radius: 999px;
    color: var(--zy-white);
    font-size: 12px;
    font-weight: 1000;
    line-height: 1;
}

.zy-match-clean-officials {
    margin-top: 12px;
    padding-top: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px 8px;
    border-top: 1px solid rgba(255, 207, 35, .16);
    color: var(--zy-muted);
}

.zy-match-clean-officials span {
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 900;
}

.zy-match-clean-officials em {
    color: var(--zy-muted);
    font-style: normal;
    text-transform: uppercase;
}

.zy-match-clean-officials strong {
    color: var(--zy-white);
}

.zy-match-clean-officials i {
    color: rgba(255, 207, 35, .55);
    font-style: normal;
}

@media (max-width: 760px) {
    .zy-match-hero--clean {
        margin-top: 10px !important;
        padding: 12px 10px !important;
        border-radius: 14px !important;
    }

    .zy-match-clean-meta {
        gap: 5px;
        margin-bottom: 10px;
    }

    .zy-match-clean-meta span {
        min-height: 23px;
        padding: 4px 7px;
        font-size: 9px;
    }

    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr);
        gap: 8px;
    }

    .zy-match-clean-team {
        display: grid;
        justify-items: start;
        gap: 6px;
    }

    .zy-match-clean-team--away {
        justify-items: end;
    }

    .zy-match-clean-logo {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }

    .zy-match-clean-logo strong {
        font-size: 21px;
    }

    .zy-match-clean-team-text h1 {
        font-size: 14px;
    }

    .zy-match-clean-team-text p {
        margin-top: 3px;
        font-size: 10px;
    }

    .zy-match-clean-scorebox {
        min-height: 70px;
        gap: 6px;
        border-radius: 12px;
    }

    .zy-match-clean-score {
        font-size: 29px;
    }

    .zy-match-clean-penalty {
        padding: 3px 7px;
        font-size: 10px;
    }

    .zy-match-clean-officials {
        margin-top: 10px;
        padding-top: 8px;
        gap: 3px 6px;
    }

    .zy-match-clean-officials span,
    .zy-match-clean-officials i {
        font-size: 9px;
    }
}

/* Clean rebuilt match header v2 */
.zy-match-hero--clean {
    max-width: 1180px !important;
    margin: 14px auto 0 !important;
    padding: 14px 18px !important;
    background: var(--zy-card) !important;
    border: 1px solid rgba(255, 207, 35, .28) !important;
    border-radius: 18px !important;
}

.zy-match-clean-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 7px !important;
    margin-bottom: 12px !important;
}

.zy-match-clean-meta span {
    min-height: 26px !important;
    padding: 5px 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    background: var(--zy-dark) !important;
    border: 1px solid rgba(255, 207, 35, .18) !important;
    border-radius: 999px !important;
    color: var(--zy-muted) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-clean-board {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: center !important;
}

.zy-match-clean-team {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.zy-match-clean-team--away {
    justify-content: flex-end !important;
}

.zy-match-clean-logo {
    width: 78px !important;
    height: 78px !important;
    flex: 0 0 78px !important;
    display: grid !important;
    place-items: center !important;
    background: #111 !important;
    border: 1px solid rgba(255, 207, 35, .28) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
}

.zy-match-clean-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.zy-match-clean-logo strong {
    color: var(--zy-yellow) !important;
    font-size: 30px !important;
    font-weight: 1000 !important;
}

.zy-match-clean-team-text {
    min-width: 0 !important;
}

.zy-match-clean-team-text h1 {
    margin: 0 !important;
    color: var(--zy-white) !important;
    font-size: 25px !important;
    font-weight: 1000 !important;
    line-height: 1.05 !important;
}

.zy-match-clean-team-text p {
    margin: 5px 0 0 !important;
    color: rgba(255, 255, 255, .66) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

.zy-match-clean-team--away .zy-match-clean-team-text {
    text-align: right !important;
}

.zy-match-clean-scorebox {
    min-height: 88px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    gap: 8px !important;
    background: #111 !important;
    border: 1px solid rgba(255, 207, 35, .38) !important;
    border-radius: 16px !important;
}

.zy-match-clean-score {
    color: var(--zy-yellow) !important;
    font-size: 42px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
}

.zy-match-clean-penalty {
    padding: 4px 9px !important;
    background: rgba(255, 207, 35, .10) !important;
    border: 1px solid rgba(255, 207, 35, .26) !important;
    border-radius: 999px !important;
    color: var(--zy-white) !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
}

.zy-match-clean-officials {
    margin-top: 12px !important;
    padding-top: 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 4px 8px !important;
    border-top: 1px solid rgba(255, 207, 35, .16) !important;
    color: var(--zy-muted) !important;
}

.zy-match-clean-officials span,
.zy-match-clean-officials i {
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-clean-officials em {
    color: var(--zy-muted) !important;
    font-style: normal !important;
    text-transform: uppercase !important;
}

.zy-match-clean-officials strong {
    color: var(--zy-white) !important;
}

.zy-match-clean-officials i {
    color: rgba(255, 207, 35, .55) !important;
    font-style: normal !important;
}

@media (max-width: 760px) {
    .zy-match-hero--clean {
        margin-top: 10px !important;
        padding: 12px 10px !important;
        border-radius: 14px !important;
    }

    .zy-match-clean-meta {
        gap: 5px !important;
        margin-bottom: 10px !important;
    }

    .zy-match-clean-meta span {
        min-height: 23px !important;
        padding: 4px 7px !important;
        font-size: 9px !important;
    }

    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .zy-match-clean-team {
        display: grid !important;
        justify-items: start !important;
        gap: 6px !important;
    }

    .zy-match-clean-team--away {
        justify-items: end !important;
    }

    .zy-match-clean-logo {
        width: 50px !important;
        height: 50px !important;
        flex-basis: 50px !important;
    }

    .zy-match-clean-logo strong {
        font-size: 21px !important;
    }

    .zy-match-clean-team-text h1 {
        font-size: 14px !important;
    }

    .zy-match-clean-team-text p {
        margin-top: 3px !important;
        font-size: 10px !important;
    }

    .zy-match-clean-scorebox {
        min-height: 70px !important;
        gap: 6px !important;
        border-radius: 12px !important;
    }

    .zy-match-clean-score {
        font-size: 29px !important;
    }

    .zy-match-clean-penalty {
        padding: 3px 7px !important;
        font-size: 10px !important;
    }

    .zy-match-clean-officials {
        margin-top: 10px !important;
        padding-top: 8px !important;
        gap: 3px 6px !important;
    }

    .zy-match-clean-officials span,
    .zy-match-clean-officials i {
        font-size: 9px !important;
    }
}

/* Mobile fix: away team name should stay beside the logo in match header */
@media (max-width: 760px) {
    .zy-match-clean-board {
        grid-template-columns: 1fr auto 1fr !important;
        align-items: center !important;
        column-gap: 10px !important;
    }

    .zy-match-clean-team {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        min-width: 0 !important;
    }

    .zy-match-clean-team--home {
        justify-content: flex-start !important;
        flex-direction: row !important;
    }

    .zy-match-clean-team--away {
        justify-content: flex-end !important;
        flex-direction: row !important;
    }

    .zy-match-clean-team--home .zy-match-clean-team-text {
        text-align: left !important;
    }

    .zy-match-clean-team--away .zy-match-clean-team-text {
        text-align: right !important;
    }

    .zy-match-clean-logo {
        flex: 0 0 52px !important;
        width: 52px !important;
        height: 52px !important;
    }

    .zy-match-clean-team-text {
        min-width: 0 !important;
    }
}

/* Match clean header: final force team rows */
.zy-match-hero--clean .zy-match-clean-team {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    min-width: 0 !important;
}

.zy-match-hero--clean .zy-match-clean-team--home {
    justify-content: flex-start !important;
}

.zy-match-hero--clean .zy-match-clean-team--away {
    justify-content: flex-end !important;
}

.zy-match-hero--clean .zy-match-clean-team--away .zy-match-clean-team-text {
    order: 1 !important;
    text-align: right !important;
}

.zy-match-hero--clean .zy-match-clean-team--away .zy-match-clean-logo {
    order: 2 !important;
}

@media (max-width: 760px) {
    .zy-match-hero--clean .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr) !important;
        column-gap: 8px !important;
        align-items: center !important;
    }

    .zy-match-hero--clean .zy-match-clean-team {
        gap: 8px !important;
    }

    .zy-match-hero--clean .zy-match-clean-logo {
        width: 50px !important;
        height: 50px !important;
        flex: 0 0 50px !important;
    }

    .zy-match-hero--clean .zy-match-clean-team-text h1 {
        white-space: nowrap !important;
    }
}

/* Match clean header: team names under logos */
.zy-match-hero--clean .zy-match-clean-team {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: start !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.zy-match-hero--clean .zy-match-clean-team--home,
.zy-match-hero--clean .zy-match-clean-team--away {
    justify-content: center !important;
}

.zy-match-hero--clean .zy-match-clean-team--home .zy-match-clean-logo,
.zy-match-hero--clean .zy-match-clean-team--away .zy-match-clean-logo {
    order: 1 !important;
}

.zy-match-hero--clean .zy-match-clean-team--home .zy-match-clean-team-text,
.zy-match-hero--clean .zy-match-clean-team--away .zy-match-clean-team-text {
    order: 2 !important;
    width: 100% !important;
    max-width: 260px !important;
    text-align: center !important;
}

.zy-match-hero--clean .zy-match-clean-team-text h1 {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
}

.zy-match-hero--clean .zy-match-clean-team-text p {
    text-align: center !important;
}

@media (max-width: 760px) {
    .zy-match-hero--clean .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr) !important;
        align-items: start !important;
        column-gap: 8px !important;
    }

    .zy-match-hero--clean .zy-match-clean-team {
        gap: 5px !important;
    }

    .zy-match-hero--clean .zy-match-clean-team-text {
        max-width: 105px !important;
    }

    .zy-match-hero--clean .zy-match-clean-team-text h1 {
        font-size: 13px !important;
        line-height: 1.05 !important;
    }

    .zy-match-hero--clean .zy-match-clean-team-text p {
        font-size: 10px !important;
        line-height: 1.05 !important;
    }
}


/* Match header meta chips with icons */
.zy-match-clean-meta span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
}

.zy-match-clean-meta span::before {
    content: "";
    width: 14px;
    height: 14px;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    flex: 0 0 14px;
}

.zy-match-clean-meta span:nth-child(1)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 3v4M16 3v4M3 10h18'/%3E%3C/svg%3E");
}

.zy-match-clean-meta span:nth-child(2)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

.zy-match-clean-meta span:nth-child(3)::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6-5.33-6-11a6 6 0 1 1 12 0c0 5.67-6 11-6 11Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

@media (max-width: 760px) {
    .zy-match-clean-meta span {
        gap: 5px !important;
    }

    .zy-match-clean-meta span::before {
        width: 12px;
        height: 12px;
        flex: 0 0 12px;
    }
}


/* Match officials: cities only in mobile stacked layout */
.zy-match-clean-officials small {
    display: none;
}

@media (max-width: 760px) {
    .zy-match-clean-officials {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-content: stretch !important;
        justify-items: center !important;
        gap: 4px !important;
        text-align: center !important;
    }

    .zy-match-clean-officials span {
        display: block !important;
        width: 100% !important;
        font-size: 9px !important;
        line-height: 1.25 !important;
    }

    .zy-match-clean-officials i {
        display: none !important;
    }

    .zy-match-clean-officials small {
        display: inline !important;
        color: rgba(255, 255, 255, .62) !important;
        font-size: 9px !important;
        font-weight: 900 !important;
    }
}

/* Match officials: icons instead of role text, cities visible */
.zy-match-clean-officials {
    align-items: center !important;
}

.zy-match-clean-officials .zy-match-official-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: var(--zy-white) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

.zy-match-clean-officials .zy-match-official-chip strong {
    color: var(--zy-white) !important;
    font-weight: 1000 !important;
}

.zy-match-clean-officials .zy-match-official-chip small {
    display: inline !important;
    color: rgba(255, 255, 255, .62) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-official-icon {
    width: 15px !important;
    height: 15px !important;
    flex: 0 0 15px !important;
    display: inline-block !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

.zy-match-official-chip--referee .zy-match-official-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10c2.5-4 7.5-4 10 0'/%3E%3Cpath d='M5 12l5 6c1 1.2 3 1.2 4 0l5-6'/%3E%3Cpath d='M9 12h6'/%3E%3Cpath d='M11 16h2'/%3E%3C/svg%3E");
}

.zy-match-official-chip--assistant .zy-match-official-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 21V4'/%3E%3Cpath d='M6 4h11l-3 4 3 4H6'/%3E%3C/svg%3E");
}

@media (max-width: 760px) {
    .zy-match-clean-officials {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 4px !important;
    }

    .zy-match-clean-officials i {
        display: none !important;
    }

    .zy-match-clean-officials .zy-match-official-chip {
        width: 100% !important;
        justify-content: center !important;
        font-size: 9px !important;
        line-height: 1.25 !important;
    }

    .zy-match-clean-officials .zy-match-official-chip small {
        font-size: 9px !important;
    }

    .zy-match-official-icon {
        width: 13px !important;
        height: 13px !important;
        flex-basis: 13px !important;
    }
}

/* Match officials: clearer referee whistle icon */
.zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
    width: 17px !important;
    height: 17px !important;
    flex: 0 0 17px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd400' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 13h4'/%3E%3Cpath d='M7 10h6.5c3.6 0 6.5 2.4 6.5 5.4S17.1 21 13.5 21H9.2C6.4 21 4 18.8 4 16c0-1.2.4-2.2 1.1-3'/%3E%3Ccircle cx='13.5' cy='15.5' r='2.4'/%3E%3Cpath d='M15 10l2.2-4h3'/%3E%3Cpath d='M20.5 4.5l-1 3.2'/%3E%3C/svg%3E") !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
        width: 15px !important;
        height: 15px !important;
        flex-basis: 15px !important;
    }
}

/* Match officials: real whistle silhouette icon */
.zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
    width: 18px !important;
    height: 14px !important;
    flex: 0 0 18px !important;
    background-image: url("/static/new_site/img/icons/officials/whistle.svg") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
        width: 17px !important;
        height: 13px !important;
        flex-basis: 17px !important;
    }
}

/* Match officials: uploaded whistle silhouette */
.zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
    width: 23px !important;
    height: 18px !important;
    flex: 0 0 23px !important;
    background-image: url("/static/new_site/img/icons/officials/whistle-uploaded.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
        width: 21px !important;
        height: 17px !important;
        flex-basis: 21px !important;
    }
}

/* Match officials: whistle as real image */
.zy-match-official-img {
    display: inline-block !important;
    object-fit: contain !important;
    vertical-align: middle !important;
}

.zy-match-official-img--whistle {
    width: 24px !important;
    height: 19px !important;
    flex: 0 0 24px !important;
}

@media (max-width: 760px) {
    .zy-match-official-img--whistle {
        width: 22px !important;
        height: 18px !important;
        flex-basis: 22px !important;
    }
}

/* Match officials: whistle from reference image */
.zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
    width: 24px !important;
    height: 20px !important;
    flex: 0 0 24px !important;
    background-image: url("/static/new_site/img/icons/officials/whistle-uploaded.png?v=real-1") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

.zy-match-official-img--whistle {
    width: 24px !important;
    height: 20px !important;
    flex: 0 0 24px !important;
    object-fit: contain !important;
    content: url("/static/new_site/img/icons/officials/whistle-uploaded.png?v=real-1") !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon,
    .zy-match-official-img--whistle {
        width: 22px !important;
        height: 18px !important;
        flex-basis: 22px !important;
    }
}

/* Match officials: clean yellow whistle mask */
.zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
    width: 18px !important;
    height: 13px !important;
    flex: 0 0 18px !important;
    background: #ffd400 !important;
    background-image: none !important;
    -webkit-mask-image: url("/static/new_site/img/icons/officials/whistle-mask.svg?v=1") !important;
    mask-image: url("/static/new_site/img/icons/officials/whistle-mask.svg?v=1") !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    -webkit-mask-size: contain !important;
    mask-size: contain !important;
}

.zy-match-official-img--whistle {
    display: none !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials .zy-match-official-chip--referee .zy-match-official-icon {
        width: 16px !important;
        height: 12px !important;
        flex-basis: 16px !important;
    }
}

/* Match officials: reset to text until custom SVG icons are uploaded */
.zy-match-clean-officials--text {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px 8px !important;
}

.zy-match-clean-officials--text .zy-match-official-text {
    display: inline !important;
    color: var(--zy-muted) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

.zy-match-clean-officials--text .zy-match-official-text em {
    color: var(--zy-muted) !important;
    font-style: normal !important;
    text-transform: uppercase !important;
}

.zy-match-clean-officials--text .zy-match-official-text strong {
    color: var(--zy-white) !important;
    font-weight: 1000 !important;
}

.zy-match-clean-officials--text .zy-match-official-text small {
    display: inline !important;
    color: rgba(255, 255, 255, .62) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-match-clean-officials--text .zy-match-official-icon,
.zy-match-clean-officials--text .zy-match-official-img {
    display: none !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials--text {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 4px !important;
        text-align: center !important;
    }

    .zy-match-clean-officials--text i {
        display: none !important;
    }

    .zy-match-clean-officials--text .zy-match-official-text,
    .zy-match-clean-officials--text .zy-match-official-text small {
        font-size: 9px !important;
    }
}

/* Match officials: custom uploaded SVG icons */
.zy-match-clean-officials--icons {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px 8px !important;
}

.zy-match-clean-officials--icons .zy-match-official-text {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: var(--zy-muted) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

.zy-match-clean-officials--icons .zy-match-official-text strong {
    color: var(--zy-white) !important;
    font-weight: 1000 !important;
}

.zy-match-clean-officials--icons .zy-match-official-text small {
    display: inline !important;
    color: rgba(255, 255, 255, .62) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.zy-official-svg-icon {
    display: inline-block !important;
    object-fit: contain !important;
    vertical-align: middle !important;
    flex: 0 0 auto !important;
}

.zy-official-svg-icon--whistle {
    width: 19px !important;
    height: 15px !important;
}

.zy-official-svg-icon--flag {
    width: 16px !important;
    height: 16px !important;
}

.zy-match-clean-officials--icons .zy-match-official-icon,
.zy-match-clean-officials--icons .zy-match-official-img {
    display: none !important;
}

@media (max-width: 760px) {
    .zy-match-clean-officials--icons {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 4px !important;
        text-align: center !important;
    }

    .zy-match-clean-officials--icons i {
        display: none !important;
    }

    .zy-match-clean-officials--icons .zy-match-official-text {
        justify-content: center !important;
        width: 100% !important;
        font-size: 9px !important;
        gap: 5px !important;
    }

    .zy-match-clean-officials--icons .zy-match-official-text small {
        font-size: 9px !important;
    }

    .zy-official-svg-icon--whistle {
        width: 17px !important;
        height: 13px !important;
    }

    .zy-official-svg-icon--flag {
        width: 14px !important;
        height: 14px !important;
    }
}

/* Match header: compact tournament and stage line */
.zy-match-clean-titleline {
    max-width: 100%;
    margin: 0 auto 8px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 5px 8px;
    color: var(--zy-muted);
    font-size: 11px;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
}

.zy-match-clean-titleline span {
    color: rgba(255, 255, 255, .72);
}

.zy-match-clean-titleline i {
    color: rgba(255, 207, 35, .70);
    font-style: normal;
}

.zy-match-clean-meta {
    margin-bottom: 10px !important;
}

@media (max-width: 760px) {
    .zy-match-clean-titleline {
        margin-bottom: 7px;
        gap: 3px 6px;
        font-size: 9px;
    }

    .zy-match-clean-meta {
        margin-bottom: 9px !important;
    }
}

/* Lineups: separate substitution in/out icons */
.zy-lineup-badge--sub img[src*="sub-in.svg"],
.zy-lineup-badge--sub img[src*="sub-out.svg"] {
    width: 18px !important;
    height: 18px !important;
    object-fit: contain !important;
}

@media (max-width: 760px) {
    .zy-lineup-badge--sub img[src*="sub-in.svg"],
    .zy-lineup-badge--sub img[src*="sub-out.svg"] {
        width: 16px !important;
        height: 16px !important;
    }
}

/* Match timeline: score pills in site colors */
.zy-match-event-line > b,
.zy-match-timeline-row .zy-match-event-line b {
    min-width: 38px !important;
    min-height: 24px !important;
    padding: 3px 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 207, 35, .10) !important;
    border: 1px solid rgba(255, 207, 35, .42) !important;
    border-radius: 8px !important;
    color: var(--zy-white) !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
}

.zy-match-period--penalties .zy-match-event-line > b,
.zy-match-period--penalties .zy-match-timeline-row .zy-match-event-line b {
    background: rgba(255, 207, 35, .13) !important;
    border-color: rgba(255, 207, 35, .50) !important;
}

@media (max-width: 760px) {
    .zy-match-event-line > b,
    .zy-match-timeline-row .zy-match-event-line b {
        min-width: 34px !important;
        min-height: 22px !important;
        padding: 3px 7px !important;
        border-radius: 7px !important;
        font-size: 11px !important;
    }
}

/* Match timeline: minutes and penalty attempt numbers in site colors */
.zy-match-minute {
    color: var(--zy-yellow) !important;
    font-weight: 1000 !important;
    text-shadow: none !important;
}

/* Penalty shootout attempt number */
.zy-match-period--penalties .zy-match-minute {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 207, 35, .08) !important;
    border: 1px solid rgba(255, 207, 35, .45) !important;
    border-radius: 999px !important;
    color: var(--zy-yellow) !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

/* Remove remaining blue accents from timeline score/number elements */
.zy-match-timeline-row .zy-match-minute,
.zy-match-period--penalties .zy-match-minute,
.zy-match-event-line > b {
    border-color: rgba(255, 207, 35, .45) !important;
}

@media (max-width: 760px) {
    .zy-match-minute {
        color: var(--zy-yellow) !important;
    }

    .zy-match-period--penalties .zy-match-minute {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        font-size: 11px !important;
    }
}

/* Match page: tighter overview timeline and lineups */
.zy-match-card {
    padding: 18px !important;
}

.zy-match-period {
    margin-bottom: 14px !important;
}

.zy-match-period__head {
    min-height: 32px !important;
    padding: 7px 10px !important;
}

.zy-match-period__events {
    gap: 7px !important;
    padding-top: 10px !important;
}

.zy-match-timeline-row {
    min-height: 32px !important;
    align-items: center !important;
}

.zy-match-event-line {
    gap: 7px !important;
    min-height: 28px !important;
}

.zy-event-icon,
.zy-match-event-line img {
    width: 21px !important;
    height: 21px !important;
}

.zy-event-text strong {
    line-height: 1.05 !important;
}

.zy-event-text em {
    margin-top: 1px !important;
    line-height: 1.05 !important;
}

/* Lineups: tighter rows */
.zy-lineups-card {
    padding: 16px !important;
}

.zy-lineup-group {
    padding: 12px !important;
}

.zy-lineup-group__title {
    min-height: 30px !important;
    padding: 7px 10px !important;
    margin-bottom: 8px !important;
}

.zy-lineup-list {
    gap: 4px !important;
}

.zy-lineup-row {
    min-height: 34px !important;
    padding: 4px 0 !important;
    align-items: center !important;
}

.zy-lineup-player {
    min-height: 28px !important;
    gap: 6px !important;
}

.zy-lineup-number {
    min-width: 24px !important;
    font-size: 11px !important;
}

.zy-lineup-name {
    line-height: 1.1 !important;
}

.zy-lineup-badges {
    gap: 3px !important;
}

.zy-lineup-badge {
    width: 20px !important;
    height: 20px !important;
}

.zy-lineup-badge img {
    width: 18px !important;
    height: 18px !important;
}

@media (max-width: 760px) {
    .zy-match-card {
        padding: 14px !important;
    }

    .zy-match-period {
        margin-bottom: 12px !important;
    }

    .zy-match-period__events {
        gap: 6px !important;
        padding-top: 8px !important;
    }

    .zy-match-timeline-row {
        min-height: 30px !important;
    }

    .zy-match-event-line {
        gap: 5px !important;
        min-height: 26px !important;
    }

    .zy-event-icon,
    .zy-match-event-line img {
        width: 19px !important;
        height: 19px !important;
    }

    .zy-lineups-card {
        padding: 12px !important;
    }

    .zy-lineup-group {
        padding: 10px !important;
    }

    .zy-lineup-row {
        min-height: 31px !important;
        padding: 3px 0 !important;
    }

    .zy-lineup-player {
        min-height: 26px !important;
        gap: 5px !important;
    }

    .zy-lineup-number {
        min-width: 21px !important;
        font-size: 10px !important;
    }

    .zy-lineup-badge {
        width: 18px !important;
        height: 18px !important;
    }

    .zy-lineup-badge img {
        width: 16px !important;
        height: 16px !important;
    }
}

/* Match overview only: stronger compact timeline */
.zy-match-events-card {
    padding: 14px !important;
}

.zy-match-events-card .zy-match-period {
    margin-bottom: 10px !important;
}

.zy-match-events-card .zy-match-period:last-child {
    margin-bottom: 0 !important;
}

.zy-match-events-card .zy-match-period__head {
    min-height: 30px !important;
    padding: 6px 10px !important;
    margin-bottom: 6px !important;
}

.zy-match-events-card .zy-match-period__events {
    display: grid !important;
    row-gap: 3px !important;
    padding-top: 4px !important;
}

.zy-match-events-card .zy-match-timeline-row {
    min-height: 26px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
}

.zy-match-events-card .zy-match-event-line {
    min-height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 6px !important;
    align-items: center !important;
}

.zy-match-events-card .zy-match-minute {
    line-height: 1 !important;
}

.zy-match-events-card .zy-event-icon,
.zy-match-events-card .zy-match-event-line img {
    width: 19px !important;
    height: 19px !important;
}

.zy-match-events-card .zy-event-text {
    gap: 0 !important;
    line-height: 1.05 !important;
}

.zy-match-events-card .zy-event-text strong {
    line-height: 1.05 !important;
}

.zy-match-events-card .zy-event-text em {
    margin-top: 0 !important;
    line-height: 1.05 !important;
}

/* Slightly tighter penalty shootout rows in overview */
.zy-match-events-card .zy-match-period--penalties .zy-match-period__events {
    row-gap: 5px !important;
}

.zy-match-events-card .zy-match-period--penalties .zy-match-timeline-row {
    min-height: 28px !important;
}

@media (max-width: 760px) {
    .zy-match-events-card {
        padding: 12px !important;
    }

    .zy-match-events-card .zy-match-period {
        margin-bottom: 9px !important;
    }

    .zy-match-events-card .zy-match-period__head {
        min-height: 28px !important;
        padding: 5px 9px !important;
        margin-bottom: 5px !important;
    }

    .zy-match-events-card .zy-match-period__events {
        row-gap: 2px !important;
        padding-top: 3px !important;
    }

    .zy-match-events-card .zy-match-timeline-row {
        min-height: 24px !important;
    }

    .zy-match-events-card .zy-match-event-line {
        min-height: 22px !important;
        gap: 5px !important;
    }

    .zy-match-events-card .zy-event-icon,
    .zy-match-events-card .zy-match-event-line img {
        width: 18px !important;
        height: 18px !important;
    }

    .zy-match-events-card .zy-match-period--penalties .zy-match-period__events {
        row-gap: 4px !important;
    }

    .zy-match-events-card .zy-match-period--penalties .zy-match-timeline-row {
        min-height: 26px !important;
    }
}

/* Match overview: readable gap between player and event description */
.zy-match-events-card .zy-event-text {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    min-width: 0 !important;
}

.zy-match-events-card .zy-event-text strong,
.zy-match-events-card .zy-event-text em {
    display: inline !important;
    white-space: nowrap !important;
}

.zy-match-events-card .zy-event-text em {
    margin-left: 0 !important;
    color: var(--zy-muted) !important;
}

/* Right-side events keep the same spacing but align to the right */
.zy-match-events-card .zy-match-timeline-row--away .zy-event-text {
    justify-content: flex-end !important;
    text-align: right !important;
}

@media (max-width: 760px) {
    .zy-match-events-card .zy-event-text {
        gap: 5px !important;
    }
}

/* Mobile overview: event description under player name */
@media (max-width: 760px) {
    .zy-match-events-card .zy-event-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 2px !important;
        min-width: 0 !important;
        max-width: 100% !important;
        line-height: 1.08 !important;
    }

    .zy-match-events-card .zy-event-text strong,
    .zy-match-events-card .zy-event-text em {
        display: block !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
        line-height: 1.08 !important;
    }

    .zy-match-events-card .zy-event-text strong {
        color: var(--zy-white) !important;
        font-size: 12px !important;
        font-weight: 1000 !important;
    }

    .zy-match-events-card .zy-event-text em {
        margin-top: 0 !important;
        margin-left: 0 !important;
        color: var(--zy-muted) !important;
        font-size: 10px !important;
        font-style: normal !important;
        font-weight: 900 !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text {
        align-items: flex-end !important;
        text-align: right !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text strong,
    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text em {
        text-align: right !important;
    }

    .zy-match-events-card .zy-match-event-line {
        align-items: center !important;
    }

    .zy-match-events-card .zy-match-timeline-row {
        min-height: 34px !important;
    }

    .zy-match-events-card .zy-match-period--penalties .zy-match-timeline-row {
        min-height: 27px !important;
    }

    .zy-match-events-card .zy-match-period--penalties .zy-event-text {
        flex-direction: row !important;
        align-items: center !important;
        gap: 5px !important;
    }
}

/* Mobile overview: correct order for right-side event text */
@media (max-width: 760px) {
    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        justify-content: center !important;
        gap: 2px !important;
        text-align: right !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text strong {
        order: 1 !important;
        display: block !important;
        text-align: right !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-event-text em {
        order: 2 !important;
        display: block !important;
        text-align: right !important;
    }

    /* Keep penalty shootout compact */
    .zy-match-events-card .zy-match-period--penalties .zy-event-text {
        flex-direction: row !important;
        align-items: center !important;
        gap: 5px !important;
    }
}

/* Lineups: player numbers in site colors */
.zy-lineups-card .zy-lineup-number {
    min-width: 24px !important;
    height: 22px !important;
    padding: 0 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 207, 35, .08) !important;
    border: 1px solid rgba(255, 207, 35, .38) !important;
    border-radius: 999px !important;
    color: var(--zy-yellow) !important;
    font-size: 11px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

@media (max-width: 760px) {
    .zy-lineups-card .zy-lineup-number {
        min-width: 21px !important;
        height: 20px !important;
        padding: 0 5px !important;
        font-size: 10px !important;
    }
}

/* Tournament match rows as links */
a.zy-overview-match,
a.zy-calendar-match {
    color: inherit !important;
    text-decoration: none !important;
}

a.zy-overview-match:hover,
a.zy-calendar-match:hover {
    border-color: rgba(255, 207, 35, .55) !important;
    background: rgba(255, 207, 35, .06) !important;
}

/* Playoff card as match link */
a.zy-tree-card,
a.zy-tree-card--link {
    color: inherit !important;
    text-decoration: none !important;
}

a.zy-tree-card--link:hover {
    border-color: rgba(255, 207, 35, .60) !important;
    background: rgba(255, 207, 35, .06) !important;
}

/* Tournament links: only score is clickable */
a.zy-score-link {
    color: inherit !important;
    text-decoration: none !important;
    font-style: normal !important;
    cursor: pointer !important;
}

a.zy-score-link:hover {
    color: var(--zy-yellow) !important;
    border-color: rgba(255, 207, 35, .70) !important;
    background: rgba(255, 207, 35, .10) !important;
}

.zy-leg-score-hit {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    color: inherit !important;
    text-decoration: none !important;
    border-radius: inherit !important;
    cursor: pointer !important;
}

.zy-leg-score-hit:hover {
    color: var(--zy-yellow) !important;
    background: rgba(255, 207, 35, .10) !important;
}

/* Playoff: one clickable area over the full score, not every digit */
.zy-leg-scoreboard {
    position: relative !important;
}

.zy-leg-scoreboard-score-link {
    position: absolute !important;
    z-index: 8 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 28px !important;
    width: 92px !important;
    display: block !important;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.zy-leg-scoreboard-score-link:hover {
    background: rgba(255, 207, 35, .08) !important;
    border-color: rgba(255, 207, 35, .55) !important;
}

@media (max-width: 760px) {
    .zy-leg-scoreboard-score-link {
        width: 86px !important;
        bottom: 26px !important;
    }
}

/* Playoff: invisible score link over both score columns */
.zy-leg-scoreboard-score-link {
    position: absolute !important;
    z-index: 20 !important;
    top: 8px !important;
    bottom: 36px !important;
    left: 132px !important;
    right: 28px !important;
    width: auto !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.zy-leg-scoreboard-score-link:hover,
.zy-leg-scoreboard-score-link:focus,
.zy-leg-scoreboard-score-link:active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

@media (max-width: 760px) {
    .zy-leg-scoreboard-score-link {
        top: 7px !important;
        bottom: 34px !important;
        left: 126px !important;
        right: 24px !important;
        width: auto !important;
    }
}

/* Playoff: per-leg invisible score links */
.zy-leg-scoreboard-score-link {
    display: none !important;
    pointer-events: none !important;
}

.zy-leg-score-column-link {
    position: absolute !important;
    z-index: 20 !important;
    top: 7px !important;
    bottom: 35px !important;
    width: 44px !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.zy-leg-score-column-link:hover,
.zy-leg-score-column-link:focus,
.zy-leg-score-column-link:active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.zy-leg-score-column-link--leg1 {
    left: calc(100% - 116px) !important;
}

.zy-leg-score-column-link--leg2 {
    right: 16px !important;
}

@media (max-width: 760px) {
    .zy-leg-score-column-link {
        top: 7px !important;
        bottom: 34px !important;
        width: 42px !important;
    }

    .zy-leg-score-column-link--leg1 {
        left: calc(100% - 108px) !important;
    }

    .zy-leg-score-column-link--leg2 {
        right: 14px !important;
    }
}

/* Tournament page: remove blue/gray tones, use site colors */
.zy-tournament-page,
.zy-tournament-page * {
    text-shadow: none !important;
}

/* Team names */
.zy-overview-match__team span,
.zy-calendar-match__team span,
.zy-leg-team span,
.zy-table-team span,
.zy-stats-player strong,
.zy-stats-player span,
.zy-card-player strong,
.zy-card-player span {
    color: var(--zy-white) !important;
}

/* Team initials / logo placeholders */
.zy-overview-match__team i,
.zy-calendar-match__team i,
.zy-leg-team i,
.zy-table-team i {
    background: rgba(255, 207, 35, .08) !important;
    border: 1px solid rgba(255, 207, 35, .70) !important;
    color: var(--zy-yellow) !important;
    box-shadow: none !important;
}

/* Dates, times, rounds, match labels */
.zy-match-datecell,
.zy-match-datecell span,
.zy-match-datecell small,
.zy-overview-match__date,
.zy-calendar-match__date,
.zy-leg-dates,
.zy-leg-dates span,
.zy-leg-dates em,
.zy-tree-round__head span,
.zy-overview-round__title,
.zy-calendar-round__title,
.zy-calendar-round h3,
.zy-overview-card h3,
.zy-tournament-section h2,
.zy-tournament-section h3 {
    color: rgba(255, 255, 255, .82) !important;
}

/* Important date/time accents */
.zy-match-datecell span,
.zy-leg-dates em,
.zy-calendar-match__date strong,
.zy-calendar-match__date b,
.zy-overview-match__date strong,
.zy-overview-match__date b {
    color: var(--zy-yellow) !important;
}

/* Secondary labels: not blue, not cold gray */
.zy-match-datecell small,
.zy-leg-dates span,
.zy-tree-round__head span,
.zy-overview-match__penalty,
.zy-calendar-match__penalty,
.zy-round-meta,
.zy-section-subtitle,
.zy-muted {
    color: rgba(255, 230, 120, .70) !important;
}

/* Scores */
.zy-overview-match__score,
.zy-calendar-match__score,
.zy-leg-score,
.zy-score-link {
    color: var(--zy-yellow) !important;
    background: rgba(255, 207, 35, .08) !important;
    border-color: rgba(255, 207, 35, .45) !important;
    box-shadow: none !important;
}

/* Empty scores / empty playoff slots */
.zy-leg-score.is-empty,
.zy-leg-team.is-empty span,
.zy-calendar-match__team.is-empty span,
.zy-overview-match__team.is-empty span {
    color: rgba(255, 230, 120, .35) !important;
}

/* Calendar and overview cards */
.zy-overview-match,
.zy-calendar-match,
.zy-tree-card,
.zy-round-card,
.zy-overview-card,
.zy-calendar-round,
.zy-stats-card {
    border-color: rgba(255, 207, 35, .22) !important;
    box-shadow: none !important;
}

/* Table / stats text */
.zy-table th,
.zy-stats-table th,
.zy-table td,
.zy-stats-table td,
.zy-table-row,
.zy-stats-row {
    color: rgba(255, 255, 255, .86) !important;
}

.zy-table th,
.zy-stats-table th {
    color: rgba(255, 230, 120, .78) !important;
}

.zy-table td strong,
.zy-stats-table td strong,
.zy-goals-cell,
.zy-goals-cell span {
    color: var(--zy-yellow) !important;
}

/* Tabs and active states stay in site palette */
.zy-tournament-tabs a {
    color: var(--zy-white) !important;
    border-color: rgba(255, 207, 35, .38) !important;
    background: transparent !important;
}

.zy-tournament-tabs a.is-active,
.zy-tournament-tabs a:hover {
    color: var(--zy-yellow) !important;
    border-color: rgba(255, 207, 35, .85) !important;
    background: rgba(255, 207, 35, .08) !important;
}

/* Links inside scores */
a.zy-score-link:hover,
.zy-leg-score-column-link:hover {
    color: var(--zy-yellow) !important;
}

/* Mobile: keep same palette */
@media (max-width: 760px) {
    .zy-match-datecell,
    .zy-match-datecell span,
    .zy-match-datecell small,
    .zy-leg-dates,
    .zy-leg-dates span,
    .zy-leg-dates em {
        color: rgba(255, 230, 120, .76) !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span,
    .zy-leg-team span,
    .zy-table-team span {
        color: var(--zy-white) !important;
    }
}

/* Tournament page: white titles, rounds, dates and match times */
.zy-tournament-page .zy-tournament-section h2,
.zy-tournament-page .zy-tournament-section h3,
.zy-tournament-page .zy-overview-card h3,
.zy-tournament-page .zy-calendar-round h3,
.zy-tournament-page .zy-calendar-round__title,
.zy-tournament-page .zy-overview-round__title,
.zy-tournament-page .zy-tree-round__head h3,
.zy-tournament-page .zy-tree-round__head span {
    color: var(--zy-white) !important;
}

/* Overview and calendar dates/times */
.zy-tournament-page .zy-match-datecell,
.zy-tournament-page .zy-match-datecell span,
.zy-tournament-page .zy-match-datecell small,
.zy-tournament-page .zy-overview-match__date,
.zy-tournament-page .zy-overview-match__date span,
.zy-tournament-page .zy-overview-match__date small,
.zy-tournament-page .zy-calendar-match__date,
.zy-tournament-page .zy-calendar-match__date span,
.zy-tournament-page .zy-calendar-match__date small,
.zy-tournament-page .zy-calendar-match__date strong,
.zy-tournament-page .zy-calendar-match__date b,
.zy-tournament-page .zy-overview-match__date strong,
.zy-tournament-page .zy-overview-match__date b {
    color: var(--zy-white) !important;
}

/* Playoff dates and match labels */
.zy-tournament-page .zy-leg-dates,
.zy-tournament-page .zy-leg-dates span,
.zy-tournament-page .zy-leg-dates em {
    color: var(--zy-white) !important;
}

/* Round/meta labels without blue or gray */
.zy-tournament-page .zy-round-meta,
.zy-tournament-page .zy-section-subtitle {
    color: var(--zy-white) !important;
}

@media (max-width: 760px) {
    .zy-tournament-page .zy-match-datecell,
    .zy-tournament-page .zy-match-datecell span,
    .zy-tournament-page .zy-match-datecell small,
    .zy-tournament-page .zy-leg-dates,
    .zy-tournament-page .zy-leg-dates span,
    .zy-tournament-page .zy-leg-dates em,
    .zy-tournament-page .zy-calendar-round__title,
    .zy-tournament-page .zy-overview-round__title,
    .zy-tournament-page .zy-tree-round__head h3,
    .zy-tournament-page .zy-tree-round__head span {
        color: var(--zy-white) !important;
    }
}

/* Tournament: force white headings, rounds, dates and times */
.zy-tournament-section h2,
.zy-tournament-section h3,
.zy-overview-card h2,
.zy-overview-card h3,
.zy-overview-round h3,
.zy-overview-round__title,
.zy-calendar-round h3,
.zy-calendar-round__title,
.zy-tree-round__head h3,
.zy-tree-round__head span {
    color: #ffffff !important;
}

/* Overview/calendar date and time cells */
.zy-match-datecell,
.zy-match-datecell *,
.zy-overview-match__date,
.zy-overview-match__date *,
.zy-calendar-match__date,
.zy-calendar-match__date * {
    color: #ffffff !important;
}

/* Playoff labels and dates */
.zy-leg-dates,
.zy-leg-dates *,
.zy-leg-dates span,
.zy-leg-dates em {
    color: #ffffff !important;
}

/* Round headers inside match blocks */
.zy-overview-round-title,
.zy-overview-round__head,
.zy-overview-round__head *,
.zy-calendar-round__head,
.zy-calendar-round__head *,
.zy-round-title,
.zy-round-title *,
.zy-round-meta,
.zy-round-meta * {
    color: #ffffff !important;
}

/* Extra protection against old blue/gray meta colors */
.zy-overview-card small,
.zy-calendar-round small,
.zy-tree-round small,
.zy-overview-match small,
.zy-calendar-match small {
    color: #ffffff !important;
}

/* Keep scores yellow */
.zy-overview-match__score,
.zy-calendar-match__score,
.zy-leg-score,
.zy-score-link {
    color: var(--zy-yellow) !important;
}

@media (max-width: 760px) {
    .zy-match-datecell,
    .zy-match-datecell *,
    .zy-overview-match__date,
    .zy-overview-match__date *,
    .zy-calendar-match__date,
    .zy-calendar-match__date *,
    .zy-leg-dates,
    .zy-leg-dates *,
    .zy-overview-round__title,
    .zy-calendar-round__title,
    .zy-tree-round__head h3,
    .zy-tree-round__head span {
        color: #ffffff !important;
    }
}

/* Tournament: rounded score backgrounds in site style */
.zy-overview-match__score,
.zy-calendar-match__score,
.zy-score-link {
    min-width: 48px !important;
    min-height: 28px !important;
    padding: 4px 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 207, 35, .12) !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 10px !important;
    color: var(--zy-yellow) !important;
    font-style: normal !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

/* Playoff score cells */
.zy-leg-score {
    min-width: 38px !important;
    min-height: 28px !important;
    padding: 3px 7px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    background: rgba(255, 207, 35, .12) !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 10px !important;
    color: var(--zy-yellow) !important;
    box-shadow: none !important;
}

.zy-leg-score small {
    color: var(--zy-white) !important;
    font-size: 10px !important;
    font-weight: 1000 !important;
}

/* Empty score cells stay quieter, but with the same rounded shape */
.zy-leg-score.is-empty {
    background: rgba(255, 207, 35, .04) !important;
    border-color: rgba(255, 207, 35, .22) !important;
    color: rgba(255, 255, 255, .35) !important;
}

/* Hover only for clickable score links */
a.zy-score-link:hover {
    background: rgba(255, 207, 35, .18) !important;
    border-color: rgba(255, 207, 35, .80) !important;
    color: var(--zy-yellow) !important;
}

@media (max-width: 760px) {
    .zy-overview-match__score,
    .zy-calendar-match__score,
    .zy-score-link {
        min-width: 42px !important;
        min-height: 25px !important;
        padding: 3px 8px !important;
        border-radius: 9px !important;
    }

    .zy-leg-score {
        min-width: 34px !important;
        min-height: 25px !important;
        padding: 2px 6px !important;
        border-radius: 9px !important;
    }
}

/* Player detail page */
.zy-player-page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 28px 18px 54px;
    color: var(--zy-white);
}

.zy-player-hero,
.zy-player-card,
.zy-player-stat {
    background: #111;
    border: 1px solid rgba(255, 207, 35, .26);
    border-radius: 18px;
    box-shadow: none;
}

.zy-player-hero {
    padding: 20px;
}

.zy-player-hero__top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.zy-player-back {
    color: var(--zy-yellow);
    text-decoration: none;
}

.zy-player-hero__grid {
    display: grid;
    grid-template-columns: 170px 1fr 260px;
    gap: 22px;
    align-items: center;
}

.zy-player-photo {
    width: 170px;
    height: 170px;
    border-radius: 22px;
    background: rgba(255, 207, 35, .08);
    border: 1px solid rgba(255, 207, 35, .55);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.zy-player-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zy-player-photo span {
    color: var(--zy-yellow);
    font-size: 46px;
    font-weight: 1000;
}

.zy-player-main p {
    margin: 0 0 8px;
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.zy-player-main h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 5vw, 64px);
    line-height: .95;
    font-weight: 1000;
}

.zy-player-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.zy-player-meta strong,
.zy-player-meta span {
    padding: 8px 11px;
    border: 1px solid rgba(255, 207, 35, .35);
    border-radius: 999px;
    color: #fff;
    background: rgba(255, 207, 35, .06);
    font-size: 12px;
    font-weight: 900;
}

.zy-player-meta strong {
    color: var(--zy-yellow);
}

.zy-player-team-card {
    border: 1px solid rgba(255, 207, 35, .30);
    border-radius: 16px;
    padding: 16px;
    background: #0b0b0b;
}

.zy-player-team-card span,
.zy-player-team-card em {
    display: block;
    color: #fff;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.zy-player-team-card strong {
    display: block;
    margin: 8px 0 4px;
    color: var(--zy-yellow);
    font-size: 22px;
    line-height: 1;
    font-weight: 1000;
}

.zy-player-quick {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin: 14px 0;
}

.zy-player-stat {
    padding: 14px;
    text-align: center;
}

.zy-player-stat span {
    display: block;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.zy-player-stat strong {
    display: block;
    margin-top: 6px;
    color: var(--zy-yellow);
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-player-layout {
    display: grid;
    grid-template-columns: 1fr 330px;
    gap: 14px;
}

.zy-player-left,
.zy-player-side {
    display: grid;
    gap: 14px;
    align-content: start;
}

.zy-player-card {
    padding: 16px;
}

.zy-player-card__head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: baseline;
    margin-bottom: 12px;
}

.zy-player-card__head h2 {
    margin: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 1000;
}

.zy-player-card__head span {
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-player-stats-grid,
.zy-player-info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.zy-player-stat-row,
.zy-player-info div,
.zy-player-events div {
    min-height: 48px;
    padding: 10px;
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .20);
    border-radius: 12px;
}

.zy-player-stat-row span,
.zy-player-info span,
.zy-player-events span,
.zy-player-events em {
    display: block;
    color: #fff;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
}

.zy-player-stat-row strong,
.zy-player-info strong,
.zy-player-events strong {
    display: block;
    margin-top: 4px;
    color: var(--zy-yellow);
    font-size: 20px;
    line-height: 1;
    font-weight: 1000;
}

.zy-player-matches {
    display: grid;
    gap: 8px;
}

.zy-player-match {
    display: grid;
    grid-template-columns: 92px 1fr 54px 110px;
    gap: 10px;
    align-items: center;
    min-height: 54px;
    padding: 9px 10px;
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .20);
    border-radius: 12px;
}

.zy-player-match time,
.zy-player-match span,
.zy-player-match small {
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}

.zy-player-match strong {
    display: block;
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
}

.zy-player-match em {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--zy-yellow);
    background: rgba(255, 207, 35, .12);
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 10px;
    font-style: normal;
    font-weight: 1000;
}

.zy-player-events {
    display: grid;
    gap: 8px;
}

@media (max-width: 900px) {
    .zy-player-hero__grid,
    .zy-player-layout {
        grid-template-columns: 1fr;
    }

    .zy-player-photo {
        width: 150px;
        height: 150px;
    }

    .zy-player-quick {
        grid-template-columns: repeat(2, 1fr);
    }

    .zy-player-match {
        grid-template-columns: 1fr 54px;
    }

    .zy-player-match time,
    .zy-player-match small {
        grid-column: 1 / -1;
    }
}

@media (max-width: 560px) {
    .zy-player-page {
        padding: 18px 10px 42px;
    }

    .zy-player-hero,
    .zy-player-card {
        border-radius: 14px;
        padding: 12px;
    }

    .zy-player-quick,
    .zy-player-stats-grid,
    .zy-player-info {
        grid-template-columns: 1fr;
    }

    .zy-player-main h1 {
        font-size: 36px;
    }
}

/* Player page: simple clean version */
.zy-player-simple {
    max-width: 1080px;
    margin: 0 auto;
    padding: 28px 18px 54px;
    color: var(--zy-white);
}

.zy-player-simple-hero,
.zy-player-simple-card,
.zy-player-simple-stats > div {
    background: #111;
    border: 1px solid rgba(255, 207, 35, .26);
    border-radius: 18px;
    box-shadow: none;
}

.zy-player-simple-hero {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 22px;
    align-items: center;
    padding: 20px;
}

.zy-player-simple-photo {
    width: 150px;
    height: 150px;
    border-radius: 20px;
    background: rgba(255, 207, 35, .08);
    border: 1px solid rgba(255, 207, 35, .58);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.zy-player-simple-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zy-player-simple-photo span {
    color: var(--zy-yellow);
    font-size: 42px;
    font-weight: 1000;
}

.zy-player-simple-main a {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--zy-yellow);
    text-decoration: none;
    font-size: 12px;
    font-weight: 1000;
}

.zy-player-simple-main p {
    margin: 0 0 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.zy-player-simple-main h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(36px, 5vw, 62px);
    line-height: .95;
    font-weight: 1000;
}

.zy-player-simple-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.zy-player-simple-meta strong,
.zy-player-simple-meta span {
    padding: 8px 11px;
    border: 1px solid rgba(255, 207, 35, .35);
    border-radius: 999px;
    background: rgba(255, 207, 35, .06);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}

.zy-player-simple-meta strong {
    color: var(--zy-yellow);
}

.zy-player-simple-stats {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin: 14px 0;
}

.zy-player-simple-stats > div {
    padding: 14px;
    text-align: center;
}

.zy-player-simple-stats span,
.zy-player-simple-season span,
.zy-player-simple-match time,
.zy-player-simple-match span {
    display: block;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.zy-player-simple-stats strong,
.zy-player-simple-season strong {
    display: block;
    margin-top: 6px;
    color: var(--zy-yellow);
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-player-simple-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.zy-player-simple-card {
    padding: 16px;
}

.zy-player-simple-card__head {
    margin-bottom: 12px;
}

.zy-player-simple-card__head h2 {
    margin: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 1000;
}

.zy-player-simple-season {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.zy-player-simple-season > div,
.zy-player-simple-match {
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .20);
    border-radius: 12px;
}

.zy-player-simple-season > div {
    min-height: 58px;
    padding: 11px;
}

.zy-player-simple-matches {
    display: grid;
    gap: 8px;
}

.zy-player-simple-match {
    display: grid;
    grid-template-columns: 88px 1fr 54px;
    gap: 10px;
    align-items: center;
    min-height: 54px;
    padding: 10px;
}

.zy-player-simple-match strong {
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
}

.zy-player-simple-match em {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--zy-yellow);
    background: rgba(255, 207, 35, .12);
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 10px;
    font-style: normal;
    font-weight: 1000;
}

.zy-player-simple-match span {
    grid-column: 2 / -1;
    color: rgba(255, 255, 255, .78);
}

@media (max-width: 860px) {
    .zy-player-simple-hero,
    .zy-player-simple-grid {
        grid-template-columns: 1fr;
    }

    .zy-player-simple-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .zy-player-simple-photo {
        width: 132px;
        height: 132px;
    }
}

@media (max-width: 560px) {
    .zy-player-simple {
        padding: 18px 10px 42px;
    }

    .zy-player-simple-hero,
    .zy-player-simple-card {
        padding: 12px;
        border-radius: 14px;
    }

    .zy-player-simple-stats,
    .zy-player-simple-season {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .zy-player-simple-main h1 {
        font-size: 36px;
    }

    .zy-player-simple-match {
        grid-template-columns: 1fr 54px;
    }

    .zy-player-simple-match time,
    .zy-player-simple-match span {
        grid-column: 1 / -1;
    }
}

/* Player page: Join.Football-inspired clean profile */
.zy-jf-player {
    max-width: 1080px;
    margin: 0 auto;
    padding: 28px 18px 54px;
    color: #fff;
}

.zy-jf-player-card,
.zy-jf-player-stats {
    background: #111;
    border: 1px solid rgba(255, 207, 35, .26);
    border-radius: 18px;
    box-shadow: none;
}

.zy-jf-player-card {
    padding: 20px;
}

.zy-jf-player-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.zy-jf-player-top a {
    color: var(--zy-yellow);
    text-decoration: none;
}

.zy-jf-player-main {
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 24px;
    align-items: center;
}

.zy-jf-player-photo {
    width: 170px;
    height: 170px;
    border-radius: 20px;
    background: rgba(255, 207, 35, .08);
    border: 1px solid rgba(255, 207, 35, .60);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.zy-jf-player-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zy-jf-player-photo span {
    color: var(--zy-yellow);
    font-size: 44px;
    font-weight: 1000;
}

.zy-jf-player-info h1 {
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(30px, 4.4vw, 54px);
    line-height: 1;
    font-weight: 1000;
    text-transform: uppercase;
}

.zy-jf-player-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.zy-jf-player-facts div {
    padding: 10px 12px;
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .22);
    border-radius: 12px;
}

.zy-jf-player-facts span {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.zy-jf-player-facts strong {
    display: block;
    color: var(--zy-yellow);
    font-size: 14px;
    line-height: 1.15;
    font-weight: 1000;
}

.zy-jf-player-numbers {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    margin-top: 18px;
}

.zy-jf-player-numbers div {
    min-height: 78px;
    padding: 12px;
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .24);
    border-radius: 14px;
    text-align: center;
}

.zy-jf-player-numbers span {
    display: block;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.zy-jf-player-numbers strong {
    display: block;
    margin-top: 8px;
    color: var(--zy-yellow);
    font-size: 32px;
    line-height: 1;
    font-weight: 1000;
}

.zy-jf-player-stats {
    margin-top: 14px;
    padding: 18px;
}

.zy-jf-player-stats__head {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: center;
    margin-bottom: 14px;
}

.zy-jf-player-stats__head h2 {
    margin: 0;
    color: #fff;
    font-size: 24px;
    font-weight: 1000;
}

.zy-jf-player-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.zy-jf-player-tabs span {
    padding: 7px 10px;
    border: 1px solid rgba(255, 207, 35, .30);
    border-radius: 999px;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}

.zy-jf-player-tabs span.is-active {
    color: var(--zy-yellow);
    border-color: rgba(255, 207, 35, .75);
    background: rgba(255, 207, 35, .08);
}

.zy-jf-player-table {
    display: grid;
    gap: 6px;
}

.zy-jf-player-table__row {
    display: grid;
    grid-template-columns: 1.1fr 1.6fr repeat(6, .45fr);
    gap: 8px;
    align-items: center;
    min-height: 44px;
    padding: 9px 10px;
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .18);
    border-radius: 12px;
}

.zy-jf-player-table__row--head {
    min-height: 34px;
    background: transparent;
    border-color: rgba(255, 207, 35, .30);
}

.zy-jf-player-table__row span,
.zy-jf-player-table__row strong,
.zy-jf-player-table__row em {
    color: #fff;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.zy-jf-player-table__row strong {
    color: var(--zy-yellow);
}

.zy-jf-player-table__row em {
    color: #fff;
}

.zy-jf-player-table__row span {
    text-align: center;
}

.zy-jf-player-table__row--head span {
    color: var(--zy-yellow);
    font-size: 11px;
    text-transform: uppercase;
}

@media (max-width: 860px) {
    .zy-jf-player-main {
        grid-template-columns: 1fr;
    }

    .zy-jf-player-photo {
        width: 150px;
        height: 150px;
    }

    .zy-jf-player-numbers {
        grid-template-columns: repeat(2, 1fr);
    }

    .zy-jf-player-stats__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .zy-jf-player-table {
        overflow-x: auto;
        padding-bottom: 4px;
    }

    .zy-jf-player-table__row {
        min-width: 760px;
    }
}

@media (max-width: 560px) {
    .zy-jf-player {
        padding: 18px 10px 42px;
    }

    .zy-jf-player-card,
    .zy-jf-player-stats {
        padding: 12px;
        border-radius: 14px;
    }

    .zy-jf-player-facts {
        grid-template-columns: 1fr;
    }

    .zy-jf-player-info h1 {
        font-size: 30px;
    }

    .zy-jf-player-numbers div {
        min-height: 70px;
    }

    .zy-jf-player-numbers strong {
        font-size: 28px;
    }
}

/* Player page: career-only cleanup */
.zy-jf-player--career .zy-jf-player-main {
    grid-template-columns: 170px 1fr !important;
}

.zy-jf-player--career .zy-jf-player-info h1 {
    margin-bottom: 20px !important;
}

.zy-jf-player-facts--short {
    grid-template-columns: repeat(2, minmax(0, 260px)) !important;
    justify-content: start !important;
}

.zy-jf-player--career .zy-jf-player-numbers {
    margin-top: 22px !important;
}

.zy-jf-player--career .zy-jf-player-numbers div {
    min-height: 80px !important;
}

.zy-jf-player--career .zy-jf-player-numbers span::after {
    content: "" !important;
}

.zy-jf-player--career .zy-jf-player-stats__head {
    margin-bottom: 12px !important;
}

.zy-jf-player-table--career .zy-jf-player-table__row {
    grid-template-columns: 1.7fr repeat(6, .55fr) !important;
}

.zy-jf-player-table--career .zy-jf-player-table__row em {
    color: #fff !important;
    font-weight: 1000 !important;
}

.zy-jf-player-table--career .zy-jf-player-table__row span {
    color: var(--zy-yellow) !important;
    font-weight: 1000 !important;
}

.zy-jf-player-table--career .zy-jf-player-table__row--head span {
    color: #fff !important;
}

@media (max-width: 860px) {
    .zy-jf-player--career .zy-jf-player-main {
        grid-template-columns: 1fr !important;
    }

    .zy-jf-player-facts--short {
        grid-template-columns: 1fr 1fr !important;
    }

    .zy-jf-player-table--career .zy-jf-player-table__row {
        min-width: 620px !important;
    }
}

@media (max-width: 560px) {
    .zy-jf-player-facts--short {
        grid-template-columns: 1fr !important;
    }
}

/* Player page: clean top and team/tournament/season stats */
.zy-jf-player-top--clean {
    justify-content: flex-start !important;
    margin-bottom: 14px !important;
}

.zy-jf-player-top--clean span {
    display: none !important;
}

.zy-jf-player-stats__note {
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

.zy-jf-player-table--club-season .zy-jf-player-table__row {
    grid-template-columns: 1.15fr 1.5fr .7fr repeat(6, .45fr) !important;
}

.zy-jf-player-table--club-season .zy-jf-player-table__row strong,
.zy-jf-player-table--club-season .zy-jf-player-table__row em,
.zy-jf-player-table--club-season .zy-jf-player-table__row b {
    color: #fff !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 1000 !important;
    line-height: 1.15 !important;
}

.zy-jf-player-table--club-season .zy-jf-player-table__row b {
    color: var(--zy-yellow) !important;
    text-align: center !important;
}

.zy-jf-player-table--club-season .zy-jf-player-table__row span {
    color: var(--zy-yellow) !important;
    font-weight: 1000 !important;
}

.zy-jf-player-table--club-season .zy-jf-player-table__row--head span {
    color: #fff !important;
}

@media (max-width: 860px) {
    .zy-jf-player-table--club-season .zy-jf-player-table__row {
        min-width: 860px !important;
    }
}

/* Player page: only birth date in top facts */
.zy-jf-player-facts--short {
    grid-template-columns: minmax(0, 260px) !important;
}

@media (max-width: 560px) {
    .zy-jf-player-facts--short {
        grid-template-columns: 1fr !important;
    }
}


/* Player page: tighter stats table columns on mobile only */
@media (max-width: 760px) {
    .zy-jf-player-table--club-season {
        overflow-x: auto !important;
        padding-bottom: 4px !important;
    }

    .zy-jf-player-table--club-season .zy-jf-player-table__row {
        grid-template-columns: 105px 150px 54px 38px 38px 42px 44px 38px 38px !important;
        min-width: 585px !important;
        gap: 4px !important;
        padding: 8px 8px !important;
    }

    .zy-jf-player-table--club-season .zy-jf-player-table__row span,
    .zy-jf-player-table--club-season .zy-jf-player-table__row strong,
    .zy-jf-player-table--club-season .zy-jf-player-table__row em,
    .zy-jf-player-table--club-season .zy-jf-player-table__row b {
        font-size: 11px !important;
        line-height: 1.1 !important;
    }

    .zy-jf-player-table--club-season .zy-jf-player-table__row--head {
        min-height: 32px !important;
    }
}

@media (max-width: 380px) {
    .zy-jf-player-table--club-season .zy-jf-player-table__row {
        grid-template-columns: 96px 138px 50px 34px 34px 38px 40px 34px 34px !important;
        min-width: 535px !important;
        gap: 3px !important;
        padding: 7px 7px !important;
    }

    .zy-jf-player-table--club-season .zy-jf-player-table__row span,
    .zy-jf-player-table--club-season .zy-jf-player-table__row strong,
    .zy-jf-player-table--club-season .zy-jf-player-table__row em,
    .zy-jf-player-table--club-season .zy-jf-player-table__row b {
        font-size: 10px !important;
    }
}

/* Player page: birth date + age */
.zy-jf-player-facts--short {
    grid-template-columns: repeat(2, minmax(0, 260px)) !important;
    justify-content: start !important;
}

@media (max-width: 380px) {
    .zy-jf-player-facts--short {
        grid-template-columns: 1fr !important;
    }
}

/* Player profile links */
.zy-player-name-link {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(255, 207, 35, .45) !important;
    cursor: pointer !important;
}

.zy-player-name-link:hover {
    color: var(--zy-yellow) !important;
    border-bottom-color: var(--zy-yellow) !important;
}

/* Player profile links */
.zy-player-name-link {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(255, 207, 35, .45) !important;
    cursor: pointer !important;
}

.zy-player-name-link:hover {
    color: var(--zy-yellow) !important;
    border-bottom-color: var(--zy-yellow) !important;
}

/* Player profile links: no underline */
.zy-player-name-link,
.zy-player-name-link:visited,
.zy-player-name-link:active {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.zy-player-name-link:hover {
    color: var(--zy-yellow) !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* Team page */
.zy-team-page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 26px 14px 44px;
}

.zy-team-hero,
.zy-team-card {
    background: #070707;
    border: 1px solid rgba(255, 207, 35, .48);
    border-radius: 20px;
}

.zy-team-hero {
    padding: 18px;
    margin-bottom: 16px;
}

.zy-team-topline {
    margin-bottom: 16px;
}

.zy-team-topline a {
    color: #b8b8b8;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
}

.zy-team-topline a:hover {
    color: var(--zy-yellow);
}

.zy-team-hero__main {
    display: flex;
    align-items: center;
    gap: 18px;
}

.zy-team-logo {
    width: 112px;
    height: 112px;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 18px;
    background: #0b0b0b;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.zy-team-logo img {
    max-width: 86px;
    max-height: 86px;
    display: block;
}

.zy-team-logo span {
    color: var(--zy-yellow);
    font-size: 46px;
    font-weight: 1000;
    line-height: 1;
}

.zy-team-info {
    min-width: 0;
}

.zy-team-label {
    display: block;
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 6px;
}

.zy-team-info h1 {
    color: #fff;
    margin: 0;
    font-size: clamp(32px, 5vw, 58px);
    line-height: .95;
    font-weight: 1000;
}

.zy-team-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.zy-team-meta span {
    color: #fff;
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 999px;
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 800;
}

.zy-team-numbers {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.zy-team-numbers div {
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 16px;
    padding: 13px 10px;
    text-align: center;
}

.zy-team-numbers span {
    display: block;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-team-numbers strong {
    display: block;
    margin-top: 7px;
    color: var(--zy-yellow);
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-team-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 16px;
}

.zy-team-card {
    padding: 16px;
}

.zy-team-card__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.zy-team-card__head h2 {
    color: #fff;
    margin: 0;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-team-card__head span {
    color: #b8b8b8;
    font-size: 12px;
    font-weight: 800;
}

.zy-team-competition-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.zy-team-competition-tabs button {
    border: 1px solid rgba(255, 207, 35, .45);
    background: #0b0b0b;
    color: #fff;
    border-radius: 999px;
    padding: 8px 11px;
    font-size: 12px;
    font-weight: 900;
    cursor: default;
}

.zy-team-competition-tabs button.is-active {
    background: var(--zy-yellow);
    color: #050505;
    border-color: var(--zy-yellow);
}

.zy-team-roster {
    overflow-x: auto;
}

.zy-team-roster__row {
    min-width: 760px;
    display: grid;
    grid-template-columns: 54px minmax(260px, 1fr) 78px 140px 52px 52px 52px 52px;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid rgba(255, 207, 35, .22);
    padding: 10px 8px;
}

.zy-team-roster__row--head {
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 14px;
    margin-bottom: 6px;
    background: #0b0b0b;
}

.zy-team-roster__row span,
.zy-team-roster__row strong {
    color: #fff;
    font-size: 13px;
    line-height: 1.15;
}

.zy-team-roster__row strong {
    font-weight: 900;
}

.zy-team-roster__row--head span {
    color: #fff;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
}

.zy-team-match-list {
    display: grid;
    gap: 10px;
}

.zy-team-match {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border: 1px solid rgba(255, 207, 35, .28);
    border-radius: 14px;
    padding: 11px;
    background: #0b0b0b;
}

.zy-team-match div {
    min-width: 0;
}

.zy-team-match span {
    display: block;
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 5px;
}

.zy-team-match strong {
    display: block;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
}

.zy-team-match a,
.zy-team-match b {
    color: var(--zy-yellow);
    border: 1px solid rgba(255, 207, 35, .65);
    border-radius: 10px;
    padding: 6px 8px;
    text-decoration: none;
    font-weight: 1000;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .zy-team-layout {
        grid-template-columns: 1fr;
    }

    .zy-team-numbers {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .zy-team-page {
        padding: 14px 10px 34px;
    }

    .zy-team-hero,
    .zy-team-card {
        border-radius: 16px;
    }

    .zy-team-hero {
        padding: 12px;
    }

    .zy-team-hero__main {
        align-items: flex-start;
        gap: 12px;
    }

    .zy-team-logo {
        width: 82px;
        height: 82px;
        border-radius: 14px;
    }

    .zy-team-logo span {
        font-size: 34px;
    }

    .zy-team-info h1 {
        font-size: 34px;
    }

    .zy-team-numbers {
        gap: 8px;
    }

    .zy-team-numbers div {
        padding: 11px 8px;
        border-radius: 14px;
    }

    .zy-team-numbers strong {
        font-size: 24px;
    }

    .zy-team-card {
        padding: 12px;
    }

    .zy-team-card__head {
        display: block;
    }

    .zy-team-card__head h2 {
        font-size: 25px;
        margin-bottom: 7px;
    }

    .zy-team-roster__row {
        min-width: 670px;
        grid-template-columns: 44px minmax(210px, 1fr) 64px 118px 44px 44px 44px 44px;
        gap: 6px;
        padding: 9px 6px;
    }
}

/* Team page: season selector and no horizontal roster scroll */
.zy-team-layout--single {
    grid-template-columns: 1fr !important;
}

.zy-team-card__head--with-select {
    align-items: center !important;
}

.zy-team-season-form {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.zy-team-season-form label {
    color: #b8b8b8;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-team-season-form select {
    appearance: none;
    border: 1px solid rgba(255, 207, 35, .7);
    background: #0b0b0b;
    color: var(--zy-yellow);
    border-radius: 12px;
    padding: 9px 34px 9px 12px;
    font-size: 13px;
    font-weight: 1000;
    cursor: pointer;
}

.zy-team-competition-tabs--links a {
    border: 1px solid rgba(255, 207, 35, .45);
    background: #0b0b0b;
    color: #fff;
    border-radius: 999px;
    padding: 8px 11px;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.zy-team-competition-tabs--links a.is-active {
    background: var(--zy-yellow);
    color: #050505;
    border-color: var(--zy-yellow);
}

.zy-team-roster--fit {
    overflow-x: visible !important;
}

.zy-team-roster--fit .zy-team-roster__row {
    min-width: 0 !important;
    width: 100% !important;
    grid-template-columns: 44px minmax(180px, 1fr) 70px 122px 44px 44px 44px 44px 44px !important;
    gap: 6px !important;
}

.zy-team-roster--fit .zy-team-roster__row span,
.zy-team-roster--fit .zy-team-roster__row strong {
    font-size: 12px !important;
}

@media (max-width: 760px) {
    .zy-team-card__head--with-select {
        display: grid !important;
        gap: 12px !important;
    }

    .zy-team-season-form {
        justify-content: space-between;
        width: 100%;
    }

    .zy-team-season-form select {
        min-width: 150px;
    }

    .zy-team-roster--fit .zy-team-roster__row {
        grid-template-columns: 28px minmax(92px, 1fr) 44px 58px 28px 28px 30px 30px 30px !important;
        gap: 3px !important;
        padding: 8px 4px !important;
    }

    .zy-team-roster--fit .zy-team-roster__row span,
    .zy-team-roster--fit .zy-team-roster__row strong {
        font-size: 9px !important;
        line-height: 1.05 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row--head span {
        font-size: 8px !important;
    }
}

@media (max-width: 390px) {
    .zy-team-roster--fit .zy-team-roster__row {
        grid-template-columns: 24px minmax(82px, 1fr) 38px 48px 24px 24px 26px 26px 26px !important;
        gap: 2px !important;
        padding: 7px 3px !important;
    }

    .zy-team-roster--fit .zy-team-roster__row span,
    .zy-team-roster--fit .zy-team-roster__row strong {
        font-size: 8px !important;
    }
}

/* Team page: header-style season dropdown */
.zy-team-meta {
    margin-top: 12px !important;
}

.zy-team-season-form--clean {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
}

.zy-team-season-form--clean label {
    display: none !important;
}

.zy-team-season-form--clean::after {
    content: "▾";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-52%);
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 1000;
    pointer-events: none;
}

.zy-team-season-form--clean select {
    appearance: none !important;
    -webkit-appearance: none !important;
    min-width: 158px !important;
    height: 38px !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 0 !important;
    background: #2a2a2a !important;
    color: #fff !important;
    padding: 0 34px 0 14px !important;
    font-size: 13px !important;
    line-height: 38px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

.zy-team-season-form--clean select:hover,
.zy-team-season-form--clean select:focus {
    background: var(--zy-yellow) !important;
    color: #050505 !important;
    border-color: var(--zy-yellow) !important;
    outline: none !important;
}

.zy-team-season-form--clean:hover::after,
.zy-team-season-form--clean:focus-within::after {
    color: #050505 !important;
}

@media (max-width: 760px) {
    .zy-team-season-form--clean {
        width: auto !important;
        justify-content: flex-start !important;
    }

    .zy-team-season-form--clean select {
        min-width: 150px !important;
        height: 36px !important;
        line-height: 36px !important;
        font-size: 12px !important;
    }
}

/* Team page: strong cleanup for top meta and season dropdown */
.zy-team-page .zy-team-meta span + span {
    display: none !important;
}

.zy-team-page .zy-team-season-form label {
    display: none !important;
}

.zy-team-page .zy-team-season-form--clean {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    gap: 0 !important;
}

.zy-team-page .zy-team-season-form--clean::after {
    content: "";
    position: absolute;
    right: 13px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-right: 2px solid var(--zy-yellow);
    border-bottom: 2px solid var(--zy-yellow);
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

.zy-team-page .zy-team-season-form--clean select {
    appearance: none !important;
    -webkit-appearance: none !important;
    min-width: 162px !important;
    height: 38px !important;
    border: 0 !important;
    border-left: 1px solid rgba(255, 207, 35, .65) !important;
    border-right: 1px solid rgba(255, 207, 35, .65) !important;
    border-radius: 0 !important;
    background: #2b2b2b !important;
    color: #fff !important;
    padding: 0 38px 0 14px !important;
    font-size: 13px !important;
    line-height: 38px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

.zy-team-page .zy-team-season-form--clean select:hover,
.zy-team-page .zy-team-season-form--clean select:focus {
    background: var(--zy-yellow) !important;
    color: #050505 !important;
    outline: none !important;
}

.zy-team-page .zy-team-season-form--clean:hover::after,
.zy-team-page .zy-team-season-form--clean:focus-within::after {
    border-color: #050505 !important;
}

@media (max-width: 760px) {
    .zy-team-page .zy-team-season-form--clean {
        justify-content: flex-start !important;
    }

    .zy-team-page .zy-team-season-form--clean select {
        min-width: 150px !important;
        height: 36px !important;
        line-height: 36px !important;
        font-size: 12px !important;
    }
}

/* Team page: custom season dropdown like site header */
.zy-team-season-dropdown {
    position: relative;
    z-index: 30;
    flex: 0 0 auto;
}

.zy-team-season-dropdown summary {
    list-style: none;
    min-width: 176px;
    height: 44px;
    border: 1px solid rgba(255, 207, 35, .75);
    border-radius: 14px;
    background: #101010;
    color: #fff;
    padding: 0 42px 0 14px;
    display: flex;
    align-items: center;
    font-size: 14px;
    line-height: 1;
    font-weight: 900;
    cursor: pointer;
    user-select: none;
}

.zy-team-season-dropdown summary::-webkit-details-marker {
    display: none;
}

.zy-team-season-dropdown summary span {
    position: absolute;
    right: 16px;
    top: 17px;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--zy-yellow);
    border-bottom: 2px solid var(--zy-yellow);
    transform: rotate(45deg);
}

.zy-team-season-dropdown[open] summary span {
    top: 20px;
    transform: rotate(225deg);
}

.zy-team-season-dropdown__menu {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    min-width: 210px;
    padding: 10px;
    border: 1px solid rgba(255, 207, 35, .75);
    border-radius: 16px;
    background: #050505;
    display: grid;
    gap: 8px;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .55);
}

.zy-team-season-dropdown__menu a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 0 13px;
    border: 1px solid rgba(255, 207, 35, .75);
    border-radius: 12px;
    background: #101010;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.1;
    font-weight: 900;
}

.zy-team-season-dropdown__menu a:hover,
.zy-team-season-dropdown__menu a.is-active {
    background: var(--zy-yellow);
    color: #050505;
}

@media (max-width: 760px) {
    .zy-team-season-dropdown {
        width: 100%;
    }

    .zy-team-season-dropdown summary {
        width: 100%;
        min-width: 0;
    }

    .zy-team-season-dropdown__menu {
        left: 0;
        right: auto;
        width: 100%;
        min-width: 0;
    }
}

/* Team page: season dropdown colors aligned with header menu */
.zy-team-season-dropdown summary {
    background: #0b0b0b !important;
    color: #fff !important;
    border-color: rgba(255, 207, 35, .75) !important;
}

.zy-team-season-dropdown[open] summary,
.zy-team-season-dropdown summary:hover {
    background: #111 !important;
    color: var(--zy-yellow) !important;
}

.zy-team-season-dropdown__menu {
    background: #050505 !important;
    border-color: rgba(255, 207, 35, .75) !important;
}

.zy-team-season-dropdown__menu a {
    background: #0b0b0b !important;
    color: #fff !important;
    border-color: rgba(255, 207, 35, .65) !important;
}

.zy-team-season-dropdown__menu a:hover,
.zy-team-season-dropdown__menu a.is-active {
    background: rgba(255, 207, 35, .12) !important;
    color: var(--zy-yellow) !important;
    border-color: var(--zy-yellow) !important;
}

.zy-team-season-dropdown summary span {
    border-color: var(--zy-yellow) !important;
}

/* Team page: city as plain text, no pill */
.zy-team-page .zy-team-meta {
    display: block !important;
    margin-top: 10px !important;
}

.zy-team-page .zy-team-meta span {
    display: block !important;
    width: fit-content !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    color: #b8b8b8 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-transform: none !important;
}

/* Team page: mobile roster as readable cards */
@media (max-width: 760px) {
    .zy-team-roster--fit {
        display: grid !important;
        gap: 8px !important;
        overflow: visible !important;
    }

    .zy-team-roster--fit .zy-team-roster__row--head {
        display: none !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) {
        display: grid !important;
        grid-template-columns: 28px repeat(5, minmax(0, 1fr)) !important;
        grid-template-areas:
            "num name name name name name"
            "num age pos pos pos pos"
            ". games goals assists yellow red" !important;
        gap: 6px 7px !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 10px 8px !important;
        border: 1px solid rgba(255, 207, 35, .28) !important;
        border-radius: 12px !important;
        background: #080808 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span,
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > strong {
        font-size: 11px !important;
        line-height: 1.15 !important;
        min-width: 0 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(1) {
        grid-area: num !important;
        color: var(--zy-yellow) !important;
        font-size: 13px !important;
        font-weight: 1000 !important;
        align-self: start !important;
        padding-top: 1px !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > strong {
        grid-area: name !important;
        font-size: 13px !important;
        font-weight: 1000 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(3) {
        grid-area: age !important;
        color: #b8b8b8 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(3)::before {
        content: "Возраст: ";
        color: #777 !important;
        font-weight: 800 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(4) {
        grid-area: pos !important;
        color: #b8b8b8 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(5) { grid-area: games !important; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(6) { grid-area: goals !important; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(7) { grid-area: assists !important; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(8) { grid-area: yellow !important; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(9) { grid-area: red !important; }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(n+5) {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        min-height: 34px !important;
        border: 1px solid rgba(255, 207, 35, .22) !important;
        border-radius: 8px !important;
        color: #fff !important;
        font-size: 12px !important;
        font-weight: 900 !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(5)::before { content: "И"; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(6)::before { content: "Г"; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(7)::before { content: "Пас"; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(8)::before { content: "ЖК"; }
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(9)::before { content: "КК"; }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(n+5)::before {
        color: var(--zy-yellow) !important;
        font-size: 8px !important;
        line-height: 1 !important;
        font-weight: 1000 !important;
        text-transform: uppercase !important;
    }
}

@media (max-width: 390px) {
    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) {
        grid-template-columns: 24px repeat(5, minmax(0, 1fr)) !important;
        gap: 5px !important;
        padding: 9px 7px !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > strong {
        font-size: 12px !important;
    }

    .zy-team-roster--fit .zy-team-roster__row:not(.zy-team-roster__row--head) > span:nth-child(n+5) {
        min-height: 32px !important;
        font-size: 11px !important;
    }
}

/* Team links */
.zy-team-name-link,
.zy-team-name-link:visited,
.zy-team-name-link:active {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

.zy-team-name-link:hover {
    color: var(--zy-yellow) !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* Team links */
.zy-team-name-link,
.zy-team-name-link:visited,
.zy-team-name-link:active {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

.zy-team-name-link:hover {
    color: var(--zy-yellow) !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* Referee profile page */
.zy-referee-page {
    max-width: 1080px;
    margin: 0 auto;
    padding: 26px 14px 44px;
}

.zy-referee-card,
.zy-referee-section {
    background: #070707;
    border: 1px solid rgba(255, 207, 35, .48);
    border-radius: 20px;
}

.zy-referee-card {
    padding: 18px;
    margin-bottom: 16px;
}

.zy-referee-top {
    margin-bottom: 16px;
}

.zy-referee-top a {
    color: #b8b8b8;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
}

.zy-referee-top a:hover {
    color: var(--zy-yellow);
}

.zy-referee-main {
    display: flex;
    align-items: center;
    gap: 18px;
}

.zy-referee-photo {
    width: 112px;
    height: 112px;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 18px;
    background: #0b0b0b;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.zy-referee-photo img {
    max-width: 100%;
    max-height: 100%;
    border-radius: 18px;
    display: block;
}

.zy-referee-photo span {
    color: var(--zy-yellow);
    font-size: 42px;
    font-weight: 1000;
    line-height: 1;
}

.zy-referee-label {
    display: block;
    color: var(--zy-yellow);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 6px;
}

.zy-referee-info h1 {
    color: #fff;
    margin: 0;
    font-size: clamp(32px, 5vw, 54px);
    line-height: .95;
    font-weight: 1000;
}

.zy-referee-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 230px));
    gap: 10px;
    margin-top: 16px;
}

.zy-referee-facts div {
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .35);
    border-radius: 14px;
    padding: 10px 12px;
}

.zy-referee-facts span,
.zy-referee-numbers span {
    display: block;
    color: #b8b8b8;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-referee-facts strong {
    display: block;
    color: #fff;
    margin-top: 5px;
    font-size: 15px;
    font-weight: 900;
}

.zy-referee-numbers {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.zy-referee-numbers div {
    background: #0b0b0b;
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 16px;
    padding: 13px 10px;
    text-align: center;
}

.zy-referee-numbers strong {
    display: block;
    margin-top: 7px;
    color: var(--zy-yellow);
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-referee-section {
    padding: 16px;
}

.zy-referee-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.zy-referee-section__head h2 {
    color: #fff;
    margin: 0;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-referee-section__head span {
    color: #b8b8b8;
    font-size: 12px;
    font-weight: 800;
}

.zy-referee-table {
    overflow-x: auto;
}

.zy-referee-table__row {
    min-width: 720px;
    display: grid;
    grid-template-columns: 110px minmax(180px, 1fr) minmax(170px, 1fr) 130px 44px 44px;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid rgba(255, 207, 35, .22);
    padding: 10px 8px;
}

.zy-referee-table__row--head {
    border: 1px solid rgba(255, 207, 35, .45);
    border-radius: 14px;
    margin-bottom: 6px;
    background: #0b0b0b;
}

.zy-referee-table__row span,
.zy-referee-table__row strong,
.zy-referee-table__row a {
    color: #fff;
    font-size: 13px;
    line-height: 1.15;
}

.zy-referee-table__row a {
    text-decoration: none;
    font-weight: 900;
}

.zy-referee-table__row a:hover {
    color: var(--zy-yellow);
}

.zy-referee-table__row--head span {
    color: #fff;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
}

.zy-referee-name-link,
.zy-referee-name-link:visited,
.zy-referee-name-link:active {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.zy-referee-name-link:hover {
    color: var(--zy-yellow) !important;
    text-decoration: none !important;
}

@media (max-width: 760px) {
    .zy-referee-page {
        padding: 14px 10px 34px;
    }

    .zy-referee-card,
    .zy-referee-section {
        border-radius: 16px;
    }

    .zy-referee-card {
        padding: 12px;
    }

    .zy-referee-main {
        align-items: flex-start;
        gap: 12px;
    }

    .zy-referee-photo {
        width: 82px;
        height: 82px;
        border-radius: 14px;
    }

    .zy-referee-photo span {
        font-size: 32px;
    }

    .zy-referee-facts {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .zy-referee-numbers {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .zy-referee-section {
        padding: 12px;
    }

    .zy-referee-table__row {
        min-width: 620px;
        grid-template-columns: 92px minmax(150px, 1fr) minmax(150px, 1fr) 112px 38px 38px;
        font-size: 11px;
    }
}


/* Referee profile: facts in one row */
@media (min-width: 761px) {
    .zy-referee-facts {
        grid-template-columns: repeat(3, minmax(0, 230px)) !important;
    }
}


/* Tournament chess table */
.zy-chess-section {
    margin-top: 22px;
    background: #070707;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 18px;
    padding: 16px;
}

.zy-chess-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 12px;
    margin-bottom: 14px;
}

.zy-chess-head h2 {
    margin: 0;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-chess-head span {
    display: block;
    margin-top: 6px;
    color: #b8b8b8;
    font-size: 12px;
    font-weight: 800;
}

.zy-chess-scroll {
    overflow-x: auto;
    padding-bottom: 2px;
}

.zy-chess-table {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;
    color: #fff;
}

.zy-chess-table th,
.zy-chess-table td {
    border-right: 1px solid rgba(255, 207, 35, .22);
    border-bottom: 1px solid rgba(255, 207, 35, .22);
    padding: 10px 8px;
    text-align: center;
    vertical-align: middle;
    font-size: 13px;
    line-height: 1.15;
}

.zy-chess-table thead th {
    background: #171300;
    color: var(--zy-yellow);
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
    white-space: nowrap;
}

.zy-chess-team-head,
.zy-chess-team-name {
    position: sticky;
    left: 0;
    z-index: 2;
    min-width: 160px;
    text-align: left !important;
    background: #090909;
}

.zy-chess-table thead .zy-chess-team-head {
    z-index: 3;
    background: #171300;
}

.zy-chess-team-name {
    color: #fff;
    font-weight: 1000;
    white-space: nowrap;
}

.zy-chess-table td {
    min-width: 88px;
    background: #080808;
}

.zy-chess-table td a,
.zy-chess-table td span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 26px;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 999px;
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
}

.zy-chess-table td a:hover {
    color: var(--zy-yellow);
    border-color: var(--zy-yellow);
}

.zy-chess-table td.zy-chess-self {
    background: #111;
}

.zy-chess-table td.zy-chess-self span {
    color: #777;
    border-color: rgba(255,255,255,.14);
}

.zy-chess-empty {
    color: #777 !important;
    border-color: rgba(255,255,255,.12) !important;
}

@media (max-width: 760px) {
    .zy-chess-section {
        margin-top: 16px;
        padding: 12px;
        border-radius: 16px;
    }

    .zy-chess-head h2 {
        font-size: 24px;
    }

    .zy-chess-table {
        min-width: 700px;
    }

    .zy-chess-team-head,
    .zy-chess-team-name {
        min-width: 132px;
    }

    .zy-chess-table th,
    .zy-chess-table td {
        padding: 8px 6px;
        font-size: 12px;
    }
}


/* Classic tournament chess table */
.zy-cross-section {
    margin-top: 22px;
    background: #070707;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 18px;
    padding: 16px;
}

.zy-cross-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.zy-cross-head h2 {
    margin: 0;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-cross-head span {
    display: block;
    margin-top: 6px;
    color: #b8b8b8;
    font-size: 12px;
    font-weight: 800;
}

.zy-cross-scroll {
    overflow-x: auto;
    border: 1px solid rgba(255, 207, 35, .35);
    border-radius: 14px;
}

.zy-cross-table {
    width: 100%;
    min-width: 980px;
    border-collapse: collapse;
    color: #fff;
    background: #090909;
}

.zy-cross-table th,
.zy-cross-table td {
    border: 1px solid rgba(255, 207, 35, .24);
    padding: 8px 7px;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
    line-height: 1.12;
}

.zy-cross-table thead th {
    background: #191400;
    color: var(--zy-yellow);
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
}

.zy-cross-place {
    width: 42px;
    min-width: 42px;
    font-weight: 1000;
}

.zy-cross-team {
    position: sticky;
    left: 0;
    z-index: 2;
    min-width: 190px;
    text-align: left !important;
    background: #0b0b0b;
}

.zy-cross-table thead .zy-cross-team {
    z-index: 3;
    background: #191400;
}

.zy-cross-teamline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zy-cross-teamline i {
    width: 23px;
    height: 23px;
    border-radius: 50%;
    border: 1px solid rgba(255, 207, 35, .7);
    color: var(--zy-yellow);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-size: 11px;
    font-weight: 1000;
    flex: 0 0 auto;
}

.zy-cross-teamline span {
    color: #fff;
    font-weight: 1000;
    white-space: nowrap;
}

.zy-cross-opponent {
    min-width: 54px;
    width: 54px;
}

.zy-cross-self {
    background: #151515 !important;
}

.zy-cross-self-number {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #242424;
    color: var(--zy-yellow);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 1000;
}

.zy-cross-games {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
}

.zy-cross-games a,
.zy-cross-games span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 39px;
    min-height: 23px;
    padding: 0 7px;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 999px;
    color: #fff;
    font-weight: 1000;
    text-decoration: none;
}

.zy-cross-games a:hover {
    color: var(--zy-yellow);
    border-color: var(--zy-yellow);
}

.zy-cross-games small {
    color: var(--zy-yellow);
    font-size: 10px;
    line-height: 1;
    font-weight: 900;
    white-space: nowrap;
}

.zy-cross-empty {
    color: #656565;
    font-weight: 1000;
}

.zy-cross-goals {
    white-space: nowrap;
    font-weight: 900;
}

.zy-cross-points {
    color: var(--zy-yellow);
    font-weight: 1000;
}

@media (max-width: 760px) {
    .zy-cross-section {
        margin-top: 16px;
        padding: 12px;
        border-radius: 16px;
    }

    .zy-cross-head h2 {
        font-size: 24px;
    }

    .zy-cross-table {
        min-width: 900px;
    }

    .zy-cross-table th,
    .zy-cross-table td {
        padding: 7px 6px;
        font-size: 11px;
    }

    .zy-cross-team {
        min-width: 150px;
    }

    .zy-cross-opponent {
        min-width: 48px;
        width: 48px;
    }
}


/* Tournament table separate contour */
.zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap {
    background: #070707;
    border: 1px solid rgba(255, 207, 35, .55);
    border-radius: 18px;
    padding: 16px;
    margin-bottom: 22px;
}

.zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap .zy-standings {
    margin: 0;
}

.zy-cross-head {
    margin-bottom: 14px;
}

.zy-cross-head span:empty {
    display: none;
}

@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap {
        padding: 12px;
        border-radius: 16px;
        margin-bottom: 16px;
    }
}


/* Unified table and chess design */
.zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap {
    background: #070707 !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 18px !important;
    padding: 16px !important;
    margin-bottom: 22px !important;
    overflow: visible !important;
}

.zy-table-card-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.zy-table-card-head h2 {
    margin: 0;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
}

.zy-table-scroll {
    overflow-x: auto;
    border: 1px solid rgba(255, 207, 35, .35);
    border-radius: 14px;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings {
    width: 100%;
    min-width: 820px;
    border-collapse: collapse !important;
    color: #fff;
    background: #090909;
    margin: 0 !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th,
.zy-tournament-section[data-tab-panel="table"] .zy-standings td {
    border: 1px solid rgba(255, 207, 35, .24) !important;
    padding: 8px 7px !important;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
    line-height: 1.12;
    background: #090909;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings thead th {
    background: #191400 !important;
    color: var(--zy-yellow) !important;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(2),
.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(2) {
    text-align: left;
    font-weight: 1000;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings td strong {
    color: var(--zy-yellow);
    font-weight: 1000;
}

.zy-cross-section {
    background: #070707 !important;
    border: 1px solid rgba(255, 207, 35, .55) !important;
    border-radius: 18px !important;
    padding: 16px !important;
}

.zy-cross-head span {
    display: none !important;
}

@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap,
    .zy-cross-section {
        padding: 12px !important;
        border-radius: 16px !important;
        margin-bottom: 16px !important;
    }

    .zy-table-card-head h2,
    .zy-cross-head h2 {
        font-size: 24px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings {
        min-width: 760px;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th,
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td {
        padding: 7px 6px !important;
        font-size: 11px;
    }
}


/* Standings table: larger readable numbers */
.zy-tournament-section[data-tab-panel="table"] .zy-standings th,
.zy-tournament-section[data-tab-panel="table"] .zy-standings td {
    height: auto !important;
    padding: 12px 10px !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td {
    font-size: 18px !important;
    font-weight: 900 !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(1) {
    font-size: 16px !important;
    color: #b8b8b8 !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(2) {
    font-size: 15px !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(8),
.zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:last-child {
    font-size: 22px !important;
    color: var(--zy-yellow) !important;
    font-weight: 1000 !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings thead th {
    font-size: 12px !important;
    padding: 10px 8px !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(3),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(4),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(5),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(6),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(7),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(8) {
    min-width: 58px !important;
}

@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td {
        font-size: 16px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(2) {
        font-size: 13px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(8),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:last-child {
        font-size: 19px !important;
    }
}


/* Chess table: larger numbers without larger cells */
.zy-cross-table tbody td {
    font-size: 16px !important;
    font-weight: 900 !important;
}

.zy-cross-table thead .zy-cross-opponent {
    font-size: 14px !important;
    font-weight: 1000 !important;
}

.zy-cross-place {
    font-size: 15px !important;
}

.zy-cross-self-number {
    font-size: 15px !important;
    font-weight: 1000 !important;
}

.zy-cross-games a,
.zy-cross-games span {
    font-size: 16px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
}

.zy-cross-goals {
    font-size: 16px !important;
    font-weight: 1000 !important;
}

.zy-cross-points {
    font-size: 18px !important;
    font-weight: 1000 !important;
}

@media (max-width: 760px) {
    .zy-cross-table tbody td {
        font-size: 14px !important;
    }

    .zy-cross-games a,
    .zy-cross-games span {
        font-size: 14px !important;
    }

    .zy-cross-points {
        font-size: 16px !important;
    }
}


/* Mobile: standings and chess readability fix */
@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] > .zy-table-wrap,
    .zy-cross-section {
        padding: 12px !important;
    }

    .zy-table-scroll,
    .zy-cross-scroll {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    /* Турнирная таблица: влезает в мобильную карточку */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings {
        min-width: 0 !important;
        width: 100% !important;
        table-layout: fixed !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th,
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td {
        text-align: center !important;
        vertical-align: middle !important;
        padding: 9px 3px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(1),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(1) {
        width: 24px !important;
        font-size: 15px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(2),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(2) {
        width: auto !important;
        text-align: left !important;
        padding-left: 6px !important;
        padding-right: 4px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(2) {
        font-size: 12px !important;
        overflow: hidden !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline {
        gap: 4px !important;
        min-width: 0 !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline i {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        font-size: 10px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(6),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(6) {
        width: 23px !important;
        min-width: 23px !important;
        max-width: 23px !important;
        font-size: 16px !important;
        font-weight: 1000 !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(7),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(7) {
        width: 43px !important;
        min-width: 43px !important;
        max-width: 43px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(7) {
        font-size: 8px !important;
        letter-spacing: -.06em !important;
        overflow: hidden !important;
        text-overflow: clip !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(7) {
        font-size: clamp(12px, 3.4vw, 15px) !important;
        font-weight: 1000 !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        color: #fff !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(8),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(8) {
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(8) {
        font-size: 17px !important;
        font-weight: 1000 !important;
        color: var(--zy-yellow) !important;
    }

    /* Шахматка: компактнее на мобиле, чтобы были видны счета и колонки */
    .zy-cross-table {
        min-width: 520px !important;
        width: 520px !important;
        table-layout: fixed !important;
    }

    .zy-cross-table th,
    .zy-cross-table td {
        padding: 7px 3px !important;
        line-height: 1.05 !important;
        text-align: center !important;
        vertical-align: middle !important;
    }

    .zy-cross-table thead th {
        font-size: 9px !important;
    }

    .zy-cross-place {
        width: 24px !important;
        min-width: 24px !important;
        max-width: 24px !important;
        font-size: 13px !important;
    }

    .zy-cross-team {
        min-width: 112px !important;
        width: 112px !important;
        max-width: 112px !important;
        padding-left: 6px !important;
        padding-right: 4px !important;
    }

    .zy-cross-teamline {
        gap: 5px !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .zy-cross-teamline i {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;
        font-size: 10px !important;
    }

    .zy-cross-teamline span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 12px !important;
    }

    .zy-cross-opponent {
        min-width: 32px !important;
        width: 32px !important;
        max-width: 32px !important;
        font-size: 12px !important;
    }

    .zy-cross-games a,
    .zy-cross-games span {
        min-width: 28px !important;
        height: 21px !important;
        padding: 0 3px !important;
        font-size: 12px !important;
        line-height: 1 !important;
    }

    .zy-cross-self-number {
        width: 21px !important;
        height: 21px !important;
        font-size: 12px !important;
    }

    .zy-cross-empty {
        font-size: 13px !important;
    }

    .zy-cross-table tbody td {
        font-size: 14px !important;
        font-weight: 1000 !important;
    }

    .zy-cross-goals {
        font-size: 12px !important;
        white-space: nowrap !important;
    }

    .zy-cross-points {
        font-size: 16px !important;
        color: var(--zy-yellow) !important;
        font-weight: 1000 !important;
    }
}


/* Mobile standings: final compact cleanup */
@media (max-width: 760px) {
    .zy-tournament-section[data-tab-panel="table"] .zy-table-scroll {
        overflow-x: hidden !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings {
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings th,
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td {
        box-sizing: border-box !important;
        text-align: center !important;
        vertical-align: middle !important;
        padding: 8px 2px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    /* Шапка: все буквы компактные и по центру */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th {
        font-size: 9px !important;
        line-height: 1 !important;
        font-weight: 1000 !important;
        letter-spacing: 0 !important;
        text-align: center !important;
        padding: 7px 1px !important;
    }

    /* 1-я колонка: место */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(1),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(1) {
        width: 26px !important;
        min-width: 26px !important;
        max-width: 26px !important;
        font-size: 15px !important;
        text-align: center !important;
    }

    /* Команда */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(2),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(2) {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        text-align: left !important;
        padding-left: 5px !important;
        padding-right: 3px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(2) {
        font-size: 9px !important;
        text-align: left !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(2) {
        font-size: 12px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline i {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        font-size: 9px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline span {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    /* И / В / Н / П */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(6),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(6) {
        width: 23px !important;
        min-width: 23px !important;
        max-width: 23px !important;
        text-align: center !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(6) {
        font-size: 10px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(3),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(4),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(5),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(6) {
        font-size: 16px !important;
        font-weight: 1000 !important;
    }

    /* Мячи */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(7),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(7) {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        text-align: center !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(7) {
        font-size: 7px !important;
        letter-spacing: -.04em !important;
        text-transform: lowercase !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(7) {
        font-size: 13px !important;
        font-weight: 1000 !important;
        color: #fff !important;
        white-space: nowrap !important;
        overflow: visible !important;
        letter-spacing: -.06em !important;
    }

    /* Очки */
    .zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(8),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(8) {
        width: 30px !important;
        min-width: 30px !important;
        max-width: 30px !important;
        text-align: center !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings thead th:nth-child(8) {
        font-size: 10px !important;
    }

    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(8),
    .zy-tournament-section[data-tab-panel="table"] .zy-standings tbody td:nth-child(8) strong {
        font-size: 16px !important;
        color: var(--zy-yellow) !important;
        font-weight: 1000 !important;
    }
}


/* ZY_MOBILE_CHESS_ALIGN_FIX_START */
@media (max-width: 760px) {
    .zy-chess-section .zy-chess-scroll {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .zy-chess-section .zy-chess-table {
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
    }

    .zy-chess-section .zy-chess-table th,
    .zy-chess-section .zy-chess-table td {
        box-sizing: border-box !important;
        padding: 8px 3px !important;
        text-align: center !important;
        vertical-align: middle !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        line-height: 1 !important;
        font-size: 12px !important;
    }

    /* № */
    .zy-chess-section .zy-chess-table th:nth-child(1),
    .zy-chess-section .zy-chess-table td:nth-child(1) {
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
        text-align: center !important;
    }

    /* Команда */
    .zy-chess-section .zy-chess-table th:nth-child(2),
    .zy-chess-section .zy-chess-table td:nth-child(2) {
        width: 124px !important;
        min-width: 124px !important;
        max-width: 124px !important;
        text-align: left !important;
        padding-left: 8px !important;
        padding-right: 4px !important;
    }

    .zy-chess-section .zy-chess-table th:nth-child(2) {
        font-size: 10px !important;
    }

    .zy-chess-section .zy-chess-table .zy-chess-team-name,
    .zy-chess-section .zy-chess-table .zy-chess-team-head {
        text-align: left !important;
    }

    .zy-chess-section .zy-chess-table .zy-chess-team-name a,
    .zy-chess-section .zy-chess-table .zy-chess-team-name span {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        max-width: 100% !important;
    }

    /* И / В / Н / П */
    .zy-chess-section .zy-chess-table th:nth-child(3),
    .zy-chess-section .zy-chess-table th:nth-child(4),
    .zy-chess-section .zy-chess-table th:nth-child(5),
    .zy-chess-section .zy-chess-table th:nth-child(6),
    .zy-chess-section .zy-chess-table td:nth-child(3),
    .zy-chess-section .zy-chess-table td:nth-child(4),
    .zy-chess-section .zy-chess-table td:nth-child(5),
    .zy-chess-section .zy-chess-table td:nth-child(6) {
        width: 26px !important;
        min-width: 26px !important;
        max-width: 26px !important;
        text-align: center !important;
    }

    .zy-chess-section .zy-chess-table th:nth-child(3),
    .zy-chess-section .zy-chess-table th:nth-child(4),
    .zy-chess-section .zy-chess-table th:nth-child(5),
    .zy-chess-section .zy-chess-table th:nth-child(6) {
        font-size: 10px !important;
    }

    .zy-chess-section .zy-chess-table td:nth-child(3),
    .zy-chess-section .zy-chess-table td:nth-child(4),
    .zy-chess-section .zy-chess-table td:nth-child(5),
    .zy-chess-section .zy-chess-table td:nth-child(6) {
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    /* Мячи */
    .zy-chess-section .zy-chess-table th:nth-child(7),
    .zy-chess-section .zy-chess-table td:nth-child(7) {
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        text-align: center !important;
    }

    .zy-chess-section .zy-chess-table th:nth-child(7) {
        font-size: 9px !important;
        letter-spacing: 0 !important;
    }

    .zy-chess-section .zy-chess-table td:nth-child(7) {
        font-size: 11px !important;
        font-weight: 900 !important;
        letter-spacing: -0.04em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    /* Очки */
    .zy-chess-section .zy-chess-table th:nth-child(8),
    .zy-chess-section .zy-chess-table td:nth-child(8) {
        width: 30px !important;
        min-width: 30px !important;
        max-width: 30px !important;
        text-align: center !important;
    }

    .zy-chess-section .zy-chess-table th:nth-child(8) {
        font-size: 10px !important;
    }

    .zy-chess-section .zy-chess-table td:nth-child(8) {
        font-size: 13px !important;
        font-weight: 1000 !important;
    }
}
/* ZY_MOBILE_CHESS_ALIGN_FIX_END */


/* ZY_REAL_MOBILE_CROSS_FIX_START */
@media (max-width: 760px) {
    .zy-cross-scroll {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .zy-cross-table {
        width: 650px !important;
        min-width: 650px !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
    }

    .zy-cross-table th,
    .zy-cross-table td {
        box-sizing: border-box !important;
        text-align: center !important;
        vertical-align: middle !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        padding: 7px 3px !important;
        line-height: 1 !important;
    }

    .zy-cross-table thead th {
        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-align: center !important;
    }

    /* № */
    .zy-cross-table th:nth-child(1),
    .zy-cross-table td:nth-child(1),
    .zy-cross-place {
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
        text-align: center !important;
        font-size: 13px !important;
    }

    /* Команда */
    .zy-cross-table th:nth-child(2),
    .zy-cross-table td:nth-child(2),
    .zy-cross-team {
        width: 142px !important;
        min-width: 142px !important;
        max-width: 142px !important;
        text-align: left !important;
        padding-left: 7px !important;
        padding-right: 4px !important;
    }

    .zy-cross-table thead th:nth-child(2),
    .zy-cross-table thead .zy-cross-team {
        text-align: left !important;
        font-size: 9px !important;
    }

    .zy-cross-teamline {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 5px !important;
        width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    .zy-cross-teamline i {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;
        font-size: 10px !important;
        flex: 0 0 19px !important;
    }

    .zy-cross-teamline span {
        display: block !important;
        min-width: 0 !important;
        max-width: 104px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        text-align: left !important;
        font-size: 12px !important;
        line-height: 1 !important;
    }

    /* Колонки соперников 1-5 */
    .zy-cross-opponent,
    .zy-cross-table th:nth-child(3),
    .zy-cross-table th:nth-child(4),
    .zy-cross-table th:nth-child(5),
    .zy-cross-table th:nth-child(6),
    .zy-cross-table th:nth-child(7),
    .zy-cross-table td:nth-child(3),
    .zy-cross-table td:nth-child(4),
    .zy-cross-table td:nth-child(5),
    .zy-cross-table td:nth-child(6),
    .zy-cross-table td:nth-child(7) {
        width: 38px !important;
        min-width: 38px !important;
        max-width: 38px !important;
        text-align: center !important;
    }

    .zy-cross-games a,
    .zy-cross-games span {
        min-width: 29px !important;
        height: 20px !important;
        padding: 0 2px !important;
        font-size: 11px !important;
        line-height: 1 !important;
        box-sizing: border-box !important;
    }

    .zy-cross-self-number {
        width: 20px !important;
        height: 20px !important;
        font-size: 11px !important;
    }

    /* И / В / Н / П */
    .zy-cross-table th:nth-last-child(6),
    .zy-cross-table th:nth-last-child(5),
    .zy-cross-table th:nth-last-child(4),
    .zy-cross-table th:nth-last-child(3),
    .zy-cross-table td:nth-last-child(6),
    .zy-cross-table td:nth-last-child(5),
    .zy-cross-table td:nth-last-child(4),
    .zy-cross-table td:nth-last-child(3) {
        width: 29px !important;
        min-width: 29px !important;
        max-width: 29px !important;
        font-size: 13px !important;
        font-weight: 1000 !important;
        text-align: center !important;
    }

    .zy-cross-table thead th:nth-last-child(6),
    .zy-cross-table thead th:nth-last-child(5),
    .zy-cross-table thead th:nth-last-child(4),
    .zy-cross-table thead th:nth-last-child(3) {
        font-size: 9px !important;
    }

    /* М */
    .zy-cross-table th:nth-last-child(2),
    .zy-cross-table td:nth-last-child(2),
    .zy-cross-goals {
        width: 58px !important;
        min-width: 58px !important;
        max-width: 58px !important;
        text-align: center !important;
    }

    .zy-cross-table thead th:nth-last-child(2) {
        font-size: 9px !important;
    }

    .zy-cross-table td:nth-last-child(2),
    .zy-cross-goals {
        font-size: 12px !important;
        font-weight: 1000 !important;
        letter-spacing: -0.04em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        color: #fff !important;
    }

    /* О */
    .zy-cross-table th:nth-last-child(1),
    .zy-cross-table td:nth-last-child(1),
    .zy-cross-points {
        width: 34px !important;
        min-width: 34px !important;
        max-width: 34px !important;
        text-align: center !important;
    }

    .zy-cross-table thead th:nth-last-child(1) {
        font-size: 9px !important;
    }

    .zy-cross-table td:nth-last-child(1),
    .zy-cross-points {
        font-size: 15px !important;
        font-weight: 1000 !important;
        color: var(--zy-yellow) !important;
        overflow: hidden !important;
    }
}
/* ZY_REAL_MOBILE_CROSS_FIX_END */


/* Match header tournament links */
.zy-match-header-link,
.zy-match-header-link:visited,
.zy-match-header-link:active {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.zy-match-header-link:hover {
    color: var(--zy-yellow) !important;
    text-decoration: none !important;
}

/* ZY_TOURNAMENT_HEADER_LOGO_CLEANUP_START */
.zy-tournament-hero,
.zy-tournament-head,
.zy-tournament-top {
    align-items: center;
}

.zy-tournament-hero__logo,
.zy-tournament-logo,
.zy-tournament-head__logo,
.zy-tournament-top__logo {
    width: 148px !important;
    min-width: 148px !important;
    height: 148px !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
}

.zy-tournament-hero__logo img,
.zy-tournament-logo img,
.zy-tournament-head__logo img,
.zy-tournament-top__logo img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: contain !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

@media (max-width: 768px) {
    .zy-tournament-hero__logo,
    .zy-tournament-logo,
    .zy-tournament-head__logo,
    .zy-tournament-top__logo {
        width: 108px !important;
        min-width: 108px !important;
        height: 108px !important;
    }
}
/* ZY_TOURNAMENT_HEADER_LOGO_CLEANUP_END */


/* ZY_TOURNAMENT_LOGO_BORDER_FINAL_START */
.zy-tournament-hero .zy-tournament-logo {
    width: 150px !important;
    min-width: 150px !important;
    height: 150px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
}

.zy-tournament-hero .zy-tournament-logo::before,
.zy-tournament-hero .zy-tournament-logo::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.zy-tournament-hero .zy-tournament-logo img {
    width: 150px !important;
    height: 150px !important;
    max-width: none !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    object-fit: contain !important;
}

@media (max-width: 768px) {
    .zy-tournament-hero .zy-tournament-logo,
    .zy-tournament-hero .zy-tournament-logo img {
        width: 110px !important;
        min-width: 110px !important;
        height: 110px !important;
    }
}
/* ZY_TOURNAMENT_LOGO_BORDER_FINAL_END */


/* ZY_TOURNAMENT_REAL_LOGO_SPLIT_START */
.zy-tournament-hero .zy-tournament-logo-real {
    width: 170px !important;
    min-width: 170px !important;
    height: 170px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zy-tournament-hero .zy-tournament-logo-real::before,
.zy-tournament-hero .zy-tournament-logo-real::after {
    content: none !important;
    display: none !important;
}

.zy-tournament-hero .zy-tournament-logo-real img {
    width: 100% !important;
    height: 100% !important;
    max-width: 170px !important;
    max-height: 170px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
}

@media (max-width: 768px) {
    .zy-tournament-hero .zy-tournament-logo-real {
        width: 120px !important;
        min-width: 120px !important;
        height: 120px !important;
    }

    .zy-tournament-hero .zy-tournament-logo-real img {
        max-width: 120px !important;
        max-height: 120px !important;
    }
}
/* ZY_TOURNAMENT_REAL_LOGO_SPLIT_END */


/* ZY_TOURNAMENT_LOGO_INVISIBLE_SLOT_START */
.zy-tournament-hero .zy-tournament-logo-slot {
    width: 128px !important;
    min-width: 128px !important;
    height: 128px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zy-tournament-hero .zy-tournament-logo-slot::before,
.zy-tournament-hero .zy-tournament-logo-slot::after {
    content: none !important;
    display: none !important;
}

.zy-tournament-hero .zy-tournament-logo-slot__img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 128px !important;
    max-height: 128px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
}

@media (max-width: 768px) {
    .zy-tournament-hero .zy-tournament-logo-slot {
        width: 96px !important;
        min-width: 96px !important;
        height: 96px !important;
    }

    .zy-tournament-hero .zy-tournament-logo-slot__img {
        max-width: 96px !important;
        max-height: 96px !important;
    }
}
/* ZY_TOURNAMENT_LOGO_INVISIBLE_SLOT_END */


/* ZY_TOURNAMENT_LOGO_SLOT_SIZE_FINAL_START */
.zy-tournament-hero .zy-tournament-logo-slot {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 128px !important;
    min-height: 128px !important;
    max-height: 128px !important;
    flex: 0 0 128px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: hidden !important;
}

.zy-tournament-hero .zy-tournament-logo-slot__img {
    width: 128px !important;
    height: 128px !important;
    max-width: 128px !important;
    max-height: 128px !important;
    object-fit: contain !important;
    display: block !important;
}
/* ZY_TOURNAMENT_LOGO_SLOT_SIZE_FINAL_END */


/* ZY_TOURNAMENT_MOBILE_LOGO_SIZE_FIX_START */
@media (max-width: 768px) {
    .zy-tournament-hero {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
        overflow: hidden !important;
    }

    .zy-tournament-hero__content {
        min-width: 0 !important;
        max-width: calc(100% - 104px) !important;
    }

    .zy-tournament-hero .zy-tournament-logo-slot {
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 88px !important;
        min-height: 88px !important;
        max-height: 88px !important;
        flex: 0 0 88px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .zy-tournament-hero .zy-tournament-logo-slot__img {
        width: 88px !important;
        height: 88px !important;
        max-width: 88px !important;
        max-height: 88px !important;
        object-fit: contain !important;
    }
}
/* ZY_TOURNAMENT_MOBILE_LOGO_SIZE_FIX_END */


/* ZY_TOURNAMENT_DESCRIPTION_START */
.zy-tournament-description {
    margin: 0 0 18px;
    padding: 22px 24px;
    border: 1px solid var(--zy-yellow);
    border-radius: 18px;
    background: #111;
    color: #f4f4f4;
    font-size: 16px;
    line-height: 1.55;
}

.zy-tournament-description > *:first-child {
    margin-top: 0;
}

.zy-tournament-description > *:last-child {
    margin-bottom: 0;
}

.zy-tournament-description h2,
.zy-tournament-description h3 {
    margin: 0 0 12px;
    color: #fff;
    line-height: 1.25;
}

.zy-tournament-description p {
    margin: 0 0 12px;
}

.zy-tournament-description img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 12px 0;
}

.zy-tournament-description a {
    color: var(--zy-yellow);
    text-decoration: none;
}

.zy-tournament-description ul,
.zy-tournament-description ol {
    margin: 0 0 12px 22px;
}

@media (max-width: 768px) {
    .zy-tournament-description {
        padding: 18px;
        border-radius: 16px;
        font-size: 15px;
    }
}
/* ZY_TOURNAMENT_DESCRIPTION_END */


/* ZY_TOURNAMENT_HERO_DESCRIPTION_START */
.zy-tournament-hero-description {
    margin-top: 14px;
    max-width: 720px;
    color: #e6e6e6;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
}

.zy-tournament-hero-description > *:first-child {
    margin-top: 0;
}

.zy-tournament-hero-description > *:last-child {
    margin-bottom: 0;
}

.zy-tournament-hero-description p {
    margin: 0 0 10px;
}

.zy-tournament-hero-description h2,
.zy-tournament-hero-description h3 {
    margin: 0 0 10px;
    color: #fff;
    line-height: 1.25;
}

.zy-tournament-hero-description a {
    color: var(--zy-yellow);
    text-decoration: none;
}

.zy-tournament-hero-description ul,
.zy-tournament-hero-description ol {
    margin: 0 0 10px 22px;
}

.zy-tournament-hero-description img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 12px 0;
}

@media (max-width: 768px) {
    .zy-tournament-hero-description {
        margin-top: 10px;
        max-width: 100%;
        font-size: 14px;
        line-height: 1.45;
    }
}
/* ZY_TOURNAMENT_HERO_DESCRIPTION_END */


/* ZY_TEAM_MOBILE_LOGO_FIX_START */
@media (max-width: 768px) {
    .zy-team-logo,
    .zy-team-hero__logo,
    .zy-team-card__logo,
    .zy-team-head__logo,
    .zy-team-main__logo {
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
        height: 72px !important;
        min-height: 72px !important;
        max-height: 72px !important;
        flex: 0 0 92px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        padding: 4px !important;
    }

    .zy-team-logo img,
    .zy-team-hero__logo img,
    .zy-team-card__logo img,
    .zy-team-head__logo img,
    .zy-team-main__logo img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        display: block !important;
    }
}
/* ZY_TEAM_MOBILE_LOGO_FIX_END */


/* ZY_TEAM_MOBILE_LONG_NAME_FIX_START */
@media (max-width: 768px) {
    .zy-team-hero__main {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .zy-team-info {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 104px) !important;
    }

    .zy-team-info h1 {
        max-width: 100% !important;
        margin: 0 !important;
        font-size: clamp(24px, 7vw, 36px) !important;
        line-height: .95 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
        hyphens: auto !important;
    }

    .zy-team-meta {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }
}
/* ZY_TEAM_MOBILE_LONG_NAME_FIX_END */


/* ZY_TEAM_MOBILE_NAME_NOWRAP_START */
@media (max-width: 768px) {
    .zy-team-info {
        min-width: 0 !important;
        max-width: calc(100% - 104px) !important;
        overflow: hidden !important;
    }

    .zy-team-info h1 {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        font-size: clamp(22px, 6.2vw, 32px) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }
}
/* ZY_TEAM_MOBILE_NAME_NOWRAP_END */


/* ZY_TEAM_MOBILE_FULL_NAME_NOWRAP_START */
@media (max-width: 768px) {
    .zy-team-hero {
        overflow: hidden !important;
    }

    .zy-team-hero__main {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .zy-team-logo {
        width: 82px !important;
        min-width: 82px !important;
        max-width: 82px !important;
        height: 66px !important;
        min-height: 66px !important;
        max-height: 66px !important;
        flex: 0 0 82px !important;
        padding: 4px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .zy-team-logo img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    .zy-team-info {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 92px) !important;
        overflow: visible !important;
    }

    .zy-team-info h1 {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        font-size: 20px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        letter-spacing: -0.8px !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    .zy-team-label {
        font-size: 12px !important;
    }

    .zy-team-meta {
        margin-top: 4px !important;
        font-size: 14px !important;
        line-height: 1.1 !important;
    }
}
/* ZY_TEAM_MOBILE_FULL_NAME_NOWRAP_END */


/* ZY_TOURNAMENT_GROUP_TABLES_START */
.zy-mini-table-group-title {
    margin: 16px 0 8px;
    color: var(--zy-yellow);
    font-size: 16px;
    line-height: 1.2;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-mini-table-group-title:first-of-type {
    margin-top: 0;
}
/* ZY_TOURNAMENT_GROUP_TABLES_END */


/* ZY_OVERVIEW_MINI_TABLES_EQUAL_COLUMNS_START */
.zy-overview-table .zy-mini-table-wrap {
    width: 360px !important;
    max-width: 360px !important;
}

.zy-overview-table .zy-mini-standings {
    width: 100% !important;
    table-layout: fixed !important;
}

.zy-overview-table .zy-mini-standings th:nth-child(1),
.zy-overview-table .zy-mini-standings td:nth-child(1) {
    width: 38px !important;
    text-align: center !important;
}

.zy-overview-table .zy-mini-standings th:nth-child(2),
.zy-overview-table .zy-mini-standings td:nth-child(2) {
    width: 220px !important;
}

.zy-overview-table .zy-mini-standings th:nth-child(3),
.zy-overview-table .zy-mini-standings td:nth-child(3),
.zy-overview-table .zy-mini-standings th:nth-child(4),
.zy-overview-table .zy-mini-standings td:nth-child(4) {
    width: 44px !important;
    text-align: center !important;
}

.zy-overview-table .zy-team-inline {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.zy-overview-table .zy-team-inline i {
    flex: 0 0 20px !important;
}

.zy-overview-table .zy-team-inline span {
    white-space: nowrap !important;
}
/* ZY_OVERVIEW_MINI_TABLES_EQUAL_COLUMNS_END */


/* ZY_OVERVIEW_TABLE_MATCHES_GAP_START */
@media (min-width: 769px) {
    .zy-tournament-section[data-tab-panel="overview"] .zy-overview-layout {
        display: grid !important;
        grid-template-columns: 360px minmax(0, 1fr) !important;
        column-gap: 52px !important;
        align-items: start !important;
    }

    .zy-tournament-section[data-tab-panel="overview"] .zy-overview-table {
        width: 360px !important;
        max-width: 360px !important;
    }

    .zy-tournament-section[data-tab-panel="overview"] .zy-overview-matches {
        min-width: 0 !important;
        padding-left: 0 !important;
        margin-left: 0 !important;
    }
}

@media (max-width: 768px) {
    .zy-tournament-section[data-tab-panel="overview"] .zy-overview-layout {
        display: block !important;
    }

    .zy-tournament-section[data-tab-panel="overview"] .zy-overview-table {
        width: 100% !important;
        max-width: 100% !important;
    }

    .zy-tournament-section[data-tab-panel="overview"] .zy-mini-table-wrap {
        width: 100% !important;
        max-width: 100% !important;
    }
}
/* ZY_OVERVIEW_TABLE_MATCHES_GAP_END */


/* ZY_FULL_TABLES_EQUAL_COLUMNS_START */
.zy-tournament-section[data-tab-panel="table"] .zy-standings {
    width: 100% !important;
    table-layout: fixed !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(1),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(1) {
    width: 52px !important;
    text-align: center !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(2),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(2) {
    width: 38% !important;
    text-align: left !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(3),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(3),
.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(4),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(4),
.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(5),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(5),
.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(6),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(6) {
    width: 90px !important;
    text-align: center !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(7),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(7) {
    width: 110px !important;
    text-align: center !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings th:nth-child(8),
.zy-tournament-section[data-tab-panel="table"] .zy-standings td:nth-child(8) {
    width: 60px !important;
    text-align: center !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-team-inline {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-team-inline i {
    flex: 0 0 22px !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-team-inline span {
    min-width: 0 !important;
    white-space: nowrap !important;
}
/* ZY_FULL_TABLES_EQUAL_COLUMNS_END */


/* ZY_TABLE_TEAM_LOGOS_START */
.zy-team-inline i {
    overflow: hidden !important;
}

.zy-team-inline i img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}
/* ZY_TABLE_TEAM_LOGOS_END */


/* ZY_TABLE_TEAM_LOGOS_NO_CIRCLE_START */
.zy-team-inline i.has-logo {
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    flex: 0 0 34px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.zy-team-inline i.has-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
}

.zy-mini-standings .zy-team-inline i.has-logo {
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
    flex-basis: 30px !important;
}
/* ZY_TABLE_TEAM_LOGOS_NO_CIRCLE_END */


/* ZY_TABLE_TEAM_LOGOS_CONTAIN_FIX_START */
.zy-team-inline i.has-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline i.has-logo {
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    flex: 0 0 34px !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings .zy-team-inline i.has-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 34px !important;
    max-height: 34px !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
}

.zy-tournament-section[data-tab-panel="table"] .zy-standings td {
    vertical-align: middle !important;
}

.zy-mini-standings .zy-team-inline i.has-logo {
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: 26px !important;
    flex: 0 0 28px !important;
    overflow: hidden !important;
}

.zy-mini-standings .zy-team-inline i.has-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 28px !important;
    max-height: 26px !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
}
/* ZY_TABLE_TEAM_LOGOS_CONTAIN_FIX_END */


/* ZY_TEAM_TABLE_LINKS_START */
.zy-team-table-link {
    color: #fff !important;
    text-decoration: none !important;
}

.zy-team-table-link:hover {
    color: var(--zy-yellow) !important;
}
/* ZY_TEAM_TABLE_LINKS_END */

/* ZY_PLAYER_PHOTO_600x800_CELL_START */
.zy-jf-player-photo {
    width: min(100%, 300px) !important;
    max-width: 300px !important;
    aspect-ratio: 3 / 4 !important;
    height: auto !important;
    overflow: hidden !important;
}

.zy-jf-player-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}
/* ZY_PLAYER_PHOTO_600x800_CELL_END */


/* ZY_REFEREE_PHOTO_600x800_CELL_START */
.zy-referee-photo {
    width: min(100%, 300px) !important;
    max-width: 300px !important;
    aspect-ratio: 3 / 4 !important;
    height: auto !important;
    overflow: hidden !important;
}

.zy-referee-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}
/* ZY_REFEREE_PHOTO_600x800_CELL_END */


/* ZY_REFEREE_LIKE_PLAYER_HEADER_START */
.zy-jf-player-facts--three {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.zy-jf-player .zy-referee-section {
    margin-top: 24px !important;
}

@media (max-width: 768px) {
    .zy-jf-player-facts--three {
        grid-template-columns: 1fr !important;
    }
}
/* ZY_REFEREE_LIKE_PLAYER_HEADER_END */


/* ZY_MATCH_TEAM_LOGOS_START */
.zy-overview-match__team i.has-logo,
.zy-calendar-match__team i.has-logo {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.zy-overview-match__team i.has-logo img,
.zy-calendar-match__team i.has-logo img {
    width: 22px !important;
    height: 22px !important;
    object-fit: contain !important;
    display: block !important;
}
/* ZY_MATCH_TEAM_LOGOS_END */


/* ZY_MATCH_LOGOS_HARD_FIX_START */
.zy-overview-match__team i.has-logo,
.zy-calendar-match__team i.has-logo {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zy-overview-match__team i.has-logo img,
.zy-calendar-match__team i.has-logo img {
    width: 26px !important;
    height: 26px !important;
    max-width: 26px !important;
    max-height: 26px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
}
/* ZY_MATCH_LOGOS_HARD_FIX_END */


/* ZY_MATCH_FULL_TEAM_NAMES_START */
.zy-overview-match,
.zy-calendar-match {
    grid-template-columns: 92px minmax(190px, 1fr) 58px minmax(230px, 1.25fr) 34px !important;
    column-gap: 8px !important;
}

.zy-overview-match__team,
.zy-calendar-match__team {
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
}

.zy-overview-match__team span,
.zy-calendar-match__team span,
.zy-overview-match__team a,
.zy-calendar-match__team a {
    max-width: none !important;
    width: auto !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.zy-overview-match__score,
.zy-calendar-match__score {
    min-width: 48px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
}
/* ZY_MATCH_FULL_TEAM_NAMES_END */


/* ZY_MATCH_MOBILE_STACK_FIX_START */
@media (max-width: 640px) {
    .zy-overview-match,
    .zy-calendar-match {
        grid-template-columns: 1fr !important;
        row-gap: 8px !important;
        column-gap: 0 !important;
        padding: 10px 10px !important;
        overflow: hidden !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date {
        grid-column: 1 !important;
        width: 100% !important;
        text-align: left !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    .zy-overview-match__team--home,
    .zy-calendar-match__team--home,
    .zy-overview-match__team--away,
    .zy-calendar-match__team--away {
        justify-content: flex-start !important;
    }

    .zy-overview-match__team--home span,
    .zy-calendar-match__team--home span,
    .zy-overview-match__team--away span,
    .zy-calendar-match__team--away span {
        order: 2 !important;
    }

    .zy-overview-match__team--home i,
    .zy-calendar-match__team--home i,
    .zy-overview-match__team--away i,
    .zy-calendar-match__team--away i {
        order: 1 !important;
        flex: 0 0 28px !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span,
    .zy-overview-match__team a,
    .zy-calendar-match__team a {
        display: block !important;
        width: auto !important;
        max-width: calc(100vw - 110px) !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        line-height: 1.25 !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score {
        grid-column: 1 !important;
        justify-self: flex-start !important;
        min-width: 58px !important;
        width: auto !important;
        margin: 2px 0 !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        grid-column: 1 !important;
        width: 100% !important;
    }
}
/* ZY_MATCH_MOBILE_STACK_FIX_END */


/* ZY_MATCH_MOBILE_OLD_SITE_LAYOUT_START */
@media (max-width: 640px) {
    .zy-overview-match,
    .zy-calendar-match {
        display: grid !important;
        grid-template-columns: 66px minmax(0, 1fr) 48px minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 6px !important;
        padding: 9px 8px !important;
        overflow: hidden !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date {
        grid-column: 1 !important;
        width: 66px !important;
        min-width: 66px !important;
        text-align: left !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .zy-overview-match__date small,
    .zy-calendar-match__date small {
        display: block !important;
        margin-top: 2px !important;
        font-size: 11px !important;
    }

    .zy-overview-match__team--home,
    .zy-calendar-match__team--home {
        grid-column: 2 !important;
        justify-content: flex-end !important;
        text-align: right !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score {
        grid-column: 3 !important;
        justify-self: center !important;
        align-self: center !important;
        min-width: 42px !important;
        width: 42px !important;
        padding: 3px 4px !important;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }

    .zy-overview-match__team--away,
    .zy-calendar-match__team--away {
        grid-column: 4 !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        overflow: hidden !important;
        font-size: 12px !important;
        line-height: 1.15 !important;
    }

    .zy-overview-match__team i,
    .zy-calendar-match__team i {
        flex: 0 0 20px !important;
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
    }

    .zy-overview-match__team i img,
    .zy-calendar-match__team i img {
        width: 20px !important;
        height: 20px !important;
        max-width: 20px !important;
        max-height: 20px !important;
        object-fit: contain !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span,
    .zy-overview-match__team a,
    .zy-calendar-match__team a {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        line-height: 1.15 !important;
    }

    .zy-overview-match__team--home span,
    .zy-calendar-match__team--home span {
        order: 1 !important;
    }

    .zy-overview-match__team--home i,
    .zy-calendar-match__team--home i {
        order: 2 !important;
    }

    .zy-overview-match__team--away i,
    .zy-calendar-match__team--away i {
        order: 1 !important;
    }

    .zy-overview-match__team--away span,
    .zy-calendar-match__team--away span {
        order: 2 !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        display: none !important;
    }
}
/* ZY_MATCH_MOBILE_OLD_SITE_LAYOUT_END */


/* ZY_MATCH_MOBILE_DATE_TOP_MATCH_ONE_ROW_START */
@media (max-width: 640px) {
    .zy-overview-match,
    .zy-calendar-match {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr) !important;
        grid-template-areas:
            "date date date"
            "home score away" !important;
        align-items: center !important;
        row-gap: 6px !important;
        column-gap: 5px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 8px 7px !important;
        overflow: hidden !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date {
        grid-area: date !important;
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
        font-size: 10px !important;
        line-height: 1 !important;
        text-align: left !important;
        overflow: visible !important;
    }

    .zy-overview-match__date small,
    .zy-calendar-match__date small {
        display: inline !important;
        margin: 0 !important;
        font-size: 10px !important;
        line-height: 1 !important;
    }

    .zy-overview-match__team--home,
    .zy-calendar-match__team--home {
        grid-area: home !important;
        justify-content: flex-end !important;
        text-align: right !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score {
        grid-area: score !important;
        justify-self: center !important;
        align-self: center !important;
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        padding: 3px 2px !important;
        margin: 0 !important;
        font-size: 12px !important;
        line-height: 1 !important;
        box-sizing: border-box !important;
    }

    .zy-overview-match__team--away,
    .zy-calendar-match__team--away {
        grid-area: away !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 3px !important;
        overflow: visible !important;
        font-size: 9px !important;
        line-height: 1 !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span,
    .zy-overview-match__team a,
    .zy-calendar-match__team a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        line-height: 1 !important;
        font-size: 9px !important;
        max-width: none !important;
    }

    .zy-overview-match__team i,
    .zy-calendar-match__team i,
    .zy-overview-match__team i.has-logo,
    .zy-calendar-match__team i.has-logo {
        flex: 0 0 15px !important;
        width: 15px !important;
        height: 15px !important;
        min-width: 15px !important;
    }

    .zy-overview-match__team i img,
    .zy-calendar-match__team i img,
    .zy-overview-match__team i.has-logo img,
    .zy-calendar-match__team i.has-logo img {
        width: 15px !important;
        height: 15px !important;
        max-width: 15px !important;
        max-height: 15px !important;
        object-fit: contain !important;
    }

    .zy-overview-match__team--home span,
    .zy-calendar-match__team--home span {
        order: 1 !important;
    }

    .zy-overview-match__team--home i,
    .zy-calendar-match__team--home i {
        order: 2 !important;
    }

    .zy-overview-match__team--away i,
    .zy-calendar-match__team--away i {
        order: 1 !important;
    }

    .zy-overview-match__team--away span,
    .zy-calendar-match__team--away span {
        order: 2 !important;
    }

    .zy-overview-match__penalty,
    .zy-calendar-match__penalty {
        display: none !important;
    }
}
/* ZY_MATCH_MOBILE_DATE_TOP_MATCH_ONE_ROW_END */


/* ZY_MATCH_MOBILE_TEAM_FONT_UP_START */
@media (max-width: 640px) {
    .zy-overview-match,
    .zy-calendar-match {
        grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr) !important;
        column-gap: 6px !important;
    }

    .zy-overview-match__team,
    .zy-calendar-match__team {
        font-size: clamp(10px, 2.4vw, 11px) !important;
        line-height: 1.05 !important;
        gap: 4px !important;
        overflow: hidden !important;
    }

    .zy-overview-match__team span,
    .zy-calendar-match__team span,
    .zy-overview-match__team a,
    .zy-calendar-match__team a {
        font-size: clamp(10px, 2.4vw, 11px) !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    .zy-overview-match__team i,
    .zy-calendar-match__team i,
    .zy-overview-match__team i.has-logo,
    .zy-calendar-match__team i.has-logo {
        flex: 0 0 16px !important;
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
    }

    .zy-overview-match__team i img,
    .zy-calendar-match__team i img,
    .zy-overview-match__team i.has-logo img,
    .zy-calendar-match__team i.has-logo img {
        width: 16px !important;
        height: 16px !important;
        max-width: 16px !important;
        max-height: 16px !important;
    }

    .zy-overview-match__score,
    .zy-calendar-match__score {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        font-size: 13px !important;
    }

    .zy-overview-match__date,
    .zy-calendar-match__date,
    .zy-overview-match__date small,
    .zy-calendar-match__date small {
        font-size: 11px !important;
    }
}
/* ZY_MATCH_MOBILE_TEAM_FONT_UP_END */


/* ZY_CALENDAR_DESKTOP_FULL_WIDTH_START */
@media (min-width: 641px) {
    .zy-calendar-section .zy-round-list,
    .zy-calendar-section .zy-round-block {
        width: 100% !important;
        max-width: none !important;
    }

    .zy-calendar-section .zy-calendar-match {
        width: 100% !important;
        max-width: none !important;
        display: grid !important;
        grid-template-columns: 110px minmax(260px, 1fr) 72px minmax(340px, 1.2fr) 40px !important;
        column-gap: 10px !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }

    .zy-calendar-section .zy-calendar-match__team {
        min-width: 0 !important;
        max-width: none !important;
        overflow: visible !important;
        font-size: 14px !important;
    }

    .zy-calendar-section .zy-calendar-match__team span,
    .zy-calendar-section .zy-calendar-match__team a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        max-width: none !important;
    }

    .zy-calendar-section .zy-calendar-match__score {
        width: 64px !important;
        min-width: 64px !important;
        max-width: 64px !important;
    }
}
/* ZY_CALENDAR_DESKTOP_FULL_WIDTH_END */


/* ZY_CALENDAR_DESKTOP_SAFE_WIDTH_FIX_START */
@media (min-width: 641px) {
    .zy-calendar-section .zy-round-list {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .zy-calendar-section .zy-round-block {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .zy-calendar-section .zy-calendar-match {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        display: grid !important;
        grid-template-columns: 100px minmax(0, 1fr) 60px minmax(0, 1.15fr) 20px !important;
        column-gap: 8px !important;
        align-items: center !important;
        overflow: hidden !important;
    }

    .zy-calendar-section .zy-calendar-match__date {
        width: 100px !important;
        min-width: 100px !important;
        max-width: 100px !important;
    }

    .zy-calendar-section .zy-calendar-match__team {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }

    .zy-calendar-section .zy-calendar-match__team span,
    .zy-calendar-section .zy-calendar-match__team a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        max-width: none !important;
        font-size: 13px !important;
    }

    .zy-calendar-section .zy-calendar-match__score {
        width: 58px !important;
        min-width: 58px !important;
        max-width: 58px !important;
        justify-self: center !important;
    }
}
/* ZY_CALENDAR_DESKTOP_SAFE_WIDTH_FIX_END */


/* ZY_CALENDAR_DESKTOP_TWO_ROUNDS_START */
@media (min-width: 641px) {
    .zy-calendar-section .zy-round-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px !important;
        width: 100% !important;
        max-width: 100% !important;
        align-items: start !important;
    }

    .zy-calendar-section .zy-round-block {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .zy-calendar-section .zy-calendar-match {
        width: 100% !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: 82px minmax(0, 1fr) 48px minmax(0, 1fr) !important;
        column-gap: 6px !important;
        align-items: center !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .zy-calendar-section .zy-calendar-match__date {
        width: 82px !important;
        min-width: 82px !important;
        max-width: 82px !important;
        font-size: 12px !important;
        line-height: 1.15 !important;
    }

    .zy-calendar-section .zy-calendar-match__team {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
        gap: 4px !important;
    }

    .zy-calendar-section .zy-calendar-match__team span,
    .zy-calendar-section .zy-calendar-match__team a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        max-width: none !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
    }

    .zy-calendar-section .zy-calendar-match__team i,
    .zy-calendar-section .zy-calendar-match__team i.has-logo {
        flex: 0 0 18px !important;
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
    }

    .zy-calendar-section .zy-calendar-match__team i img,
    .zy-calendar-section .zy-calendar-match__team i.has-logo img {
        width: 18px !important;
        height: 18px !important;
        max-width: 18px !important;
        max-height: 18px !important;
        object-fit: contain !important;
    }

    .zy-calendar-section .zy-calendar-match__score {
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        justify-self: center !important;
        font-size: 13px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    .zy-calendar-section .zy-calendar-match__penalty {
        display: none !important;
    }
}
/* ZY_CALENDAR_DESKTOP_TWO_ROUNDS_END */


/* ZY_MATCH_CLEAN_LOGOS_NO_CROP_START */
.zy-match-clean-logo {
    width: 96px !important;
    height: 96px !important;
    min-width: 96px !important;
    min-height: 96px !important;
    max-width: 96px !important;
    max-height: 96px !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zy-match-clean-logo img {
    width: 96px !important;
    height: 96px !important;
    max-width: 96px !important;
    max-height: 96px !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 0 !important;
    background: transparent !important;
    display: block !important;
}
/* ZY_MATCH_CLEAN_LOGOS_NO_CROP_END */


/* ZY_MATCH_DETAIL_TEAM_NAMES_ONE_LINE_START */
.zy-match-clean-team-text {
    min-width: 0 !important;
    max-width: 100% !important;
}

.zy-match-clean-team-text h1,
.zy-match-clean-team-text h1 a {
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: none !important;
    line-height: 1.05 !important;
}

@media (min-width: 641px) {
    .zy-match-clean-team-text h1,
    .zy-match-clean-team-text h1 a {
        font-size: 22px !important;
    }

    .zy-match-clean-team {
        min-width: 0 !important;
    }

    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1fr) !important;
        column-gap: 32px !important;
    }
}

@media (max-width: 640px) {
    .zy-match-clean-team-text h1,
    .zy-match-clean-team-text h1 a {
        font-size: clamp(15px, 4.2vw, 18px) !important;
    }

    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 76px minmax(0, 1fr) !important;
        column-gap: 8px !important;
    }
}
/* ZY_MATCH_DETAIL_TEAM_NAMES_ONE_LINE_END */


/* ZY_MATCH_DETAIL_TEAM_NAMES_FORCE_NOWRAP_START */
.zy-match-clean-team,
.zy-match-clean-team-text,
.zy-match-clean-team-text h1 {
    overflow: visible !important;
}

.zy-match-clean-team-text {
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
}

.zy-match-clean-team-text h1,
.zy-match-clean-team-text h1 a {
    display: inline-block !important;
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

@media (min-width: 641px) {
    .zy-match-clean-board {
        grid-template-columns: minmax(300px, 1fr) 132px minmax(330px, 1fr) !important;
        column-gap: 24px !important;
    }

    .zy-match-clean-team-text h1,
    .zy-match-clean-team-text h1 a {
        font-size: 19px !important;
        line-height: 1.05 !important;
    }

    .zy-match-clean-team--home {
        justify-self: center !important;
    }

    .zy-match-clean-team--away {
        justify-self: center !important;
    }

    .zy-match-clean-scorebox {
        width: 132px !important;
        min-width: 132px !important;
        max-width: 132px !important;
    }
}
/* ZY_MATCH_DETAIL_TEAM_NAMES_FORCE_NOWRAP_END */


/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_FIX_START */
@media (max-width: 640px) {
    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr) !important;
        column-gap: 10px !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .zy-match-clean-team,
    .zy-match-clean-team--home,
    .zy-match-clean-team--away {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        justify-self: stretch !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    .zy-match-clean-team-text {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    .zy-match-clean-team-text h1,
    .zy-match-clean-team-text h1 a {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        text-align: center !important;
        font-size: clamp(12px, 3.25vw, 14px) !important;
        line-height: 1.05 !important;
        letter-spacing: -0.2px !important;
    }

    .zy-match-clean-team-text p {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
        margin-top: 4px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-match-clean-logo {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_FIX_END */


/* ZY_MATCH_DETAIL_MOBILE_NAMES_NO_WRAP_FINAL_START */
@media (max-width: 640px) {
    .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 66px minmax(0, 1fr) !important;
        column-gap: 4px !important;
        overflow: visible !important;
    }

    .zy-match-clean-scorebox {
        width: 66px !important;
        min-width: 66px !important;
        max-width: 66px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    .zy-match-clean-team,
    .zy-match-clean-team--home,
    .zy-match-clean-team--away {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-align: center !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .zy-match-clean-team-text {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-align: center !important;
    }

    .zy-match-clean-team-text h1,
    .zy-match-clean-team-text h1 a {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
        text-align: center !important;
        font-size: clamp(9px, 2.55vw, 11px) !important;
        line-height: 1 !important;
        letter-spacing: -0.45px !important;
    }

    .zy-match-clean-team-text p {
        font-size: 10px !important;
        line-height: 1.05 !important;
        margin-top: 4px !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_NAMES_NO_WRAP_FINAL_END */


/* ZY_MATCH_DETAIL_MOBILE_SCORE_AND_NAMES_FINAL_START */
@media (max-width: 640px) {
    .zy-match-page .zy-match-clean-board {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 78px minmax(0, 1fr) !important;
        column-gap: 6px !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .zy-match-page .zy-match-clean-scorebox {
        width: 78px !important;
        min-width: 78px !important;
        max-width: 78px !important;
        height: 70px !important;
        min-height: 70px !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    .zy-match-page .zy-match-clean-score {
        display: block !important;
        width: 100% !important;
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        overflow: visible !important;
        text-align: center !important;
        font-size: 24px !important;
        line-height: 1 !important;
        letter-spacing: -1px !important;
    }

    .zy-match-page .zy-match-clean-team,
    .zy-match-page .zy-match-clean-team--home,
    .zy-match-page .zy-match-clean-team--away {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        justify-self: stretch !important;
        justify-content: center !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    .zy-match-page .zy-match-clean-team-text {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-align: center !important;
    }

    .zy-match-page .zy-match-clean-team-text h1,
    .zy-match-page .zy-match-clean-team-text h1 a,
    .zy-match-page .zy-match-clean-team-text h1 .zy-team-name-link {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
        text-align: center !important;
        font-size: 10px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.85px !important;
    }

    .zy-match-page .zy-match-clean-team-text p {
        width: 100% !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        text-align: center !important;
        font-size: 10px !important;
        line-height: 1.05 !important;
        margin-top: 4px !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_SCORE_AND_NAMES_FINAL_END */


/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_BIGGER_START */
@media (max-width: 640px) {
    .zy-match-page .zy-match-clean-team-text h1,
    .zy-match-page .zy-match-clean-team-text h1 a,
    .zy-match-page .zy-match-clean-team-text h1 .zy-team-name-link {
        font-size: clamp(10.8px, 2.8vw, 11.6px) !important;
        line-height: 1.05 !important;
        letter-spacing: -0.9px !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_BIGGER_END */


/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_READABLE_START */
@media (max-width: 640px) {
    .zy-match-page .zy-match-clean-board {
        grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr) !important;
        column-gap: 6px !important;
    }

    .zy-match-page .zy-match-clean-scorebox {
        width: 72px !important;
        min-width: 72px !important;
        max-width: 72px !important;
    }

    .zy-match-page .zy-match-clean-team-text h1,
    .zy-match-page .zy-match-clean-team-text h1 a,
    .zy-match-page .zy-match-clean-team-text h1 .zy-team-name-link {
        font-size: clamp(10.4px, 2.7vw, 11.2px) !important;
        line-height: 1.05 !important;
        letter-spacing: -0.25px !important;
        white-space: nowrap !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_TEAM_NAMES_READABLE_END */


/* ZY_MATCH_DETAIL_SCORE_SPACED_START */
.zy-match-clean-score {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

.zy-match-clean-score span,
.zy-match-clean-score b {
    display: inline-block !important;
    line-height: 1 !important;
}

.zy-match-clean-score b {
    font-weight: 900 !important;
}
/* ZY_MATCH_DETAIL_SCORE_SPACED_END */


/* ZY_MATCH_DETAIL_MOBILE_SCORE_SPACED_START */
@media (max-width: 640px) {
    .zy-match-page .zy-match-clean-score {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        white-space: nowrap !important;
        letter-spacing: 0 !important;
    }

    .zy-match-page .zy-match-clean-score span,
    .zy-match-page .zy-match-clean-score b {
        display: inline-block !important;
        line-height: 1 !important;
    }

    .zy-match-page .zy-match-clean-score b {
        font-weight: 900 !important;
    }
}
/* ZY_MATCH_DETAIL_MOBILE_SCORE_SPACED_END */


/* ZY_MATCH_LINEUPS_OUTPUT_START */
.zy-match-lineups {
    margin-top: 24px !important;
    padding: 22px !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.zy-match-lineups__head {
    margin-bottom: 18px !important;
}

.zy-match-lineups__head h2 {
    margin: 0 !important;
    font-size: 24px !important;
    line-height: 1.1 !important;
    color: #fff !important;
}

.zy-match-lineups__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.zy-match-lineup-card {
    min-width: 0 !important;
    border-radius: 18px !important;
    background: rgba(0, 0, 0, 0.22) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    overflow: hidden !important;
}

.zy-match-lineup-card__title {
    padding: 13px 16px !important;
    background: rgba(255, 204, 0, 0.12) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.zy-match-lineup-card__title span {
    display: block !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #fff !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.zy-match-lineup-card__section {
    padding: 15px 16px !important;
}

.zy-match-lineup-card__section + .zy-match-lineup-card__section {
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
}

.zy-match-lineup-card__section h3 {
    margin: 0 0 10px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: rgba(255, 255, 255, 0.58) !important;
}

.zy-match-lineup-card__section ul {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.zy-match-lineup-card__section li {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-width: 0 !important;
    padding: 7px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.zy-match-lineup-card__section li:last-child {
    border-bottom: none !important;
}

.zy-match-lineup-card__section a,
.zy-match-lineup-card__section span {
    min-width: 0 !important;
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 650 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.zy-match-lineup-card__section a:hover {
    color: #ffcc00 !important;
}

.zy-match-lineup-card__section em {
    flex: 0 0 auto !important;
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-style: normal !important;
    white-space: nowrap !important;
}

.zy-match-lineups__empty {
    padding: 18px !important;
    border-radius: 16px !important;
    background: rgba(0, 0, 0, 0.18) !important;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 14px !important;
}

@media (max-width: 640px) {
    .zy-match-lineups {
        margin-top: 18px !important;
        padding: 14px !important;
        border-radius: 18px !important;
    }

    .zy-match-lineups__head h2 {
        font-size: 20px !important;
    }

    .zy-match-lineups__grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .zy-match-lineup-card__title {
        padding: 12px 14px !important;
    }

    .zy-match-lineup-card__title span {
        font-size: 16px !important;
    }

    .zy-match-lineup-card__section {
        padding: 13px 14px !important;
    }

    .zy-match-lineup-card__section a,
    .zy-match-lineup-card__section span {
        font-size: 13px !important;
    }

    .zy-match-lineup-card__section em {
        font-size: 11px !important;
    }
}
/* ZY_MATCH_LINEUPS_OUTPUT_END */


/* ZY_MATCH_LINEUPS_INSIDE_TAB_START */
.zy-match-page .zy-match-lineups {
    display: none !important;
}

.zy-match-page.zy-match-page--lineups-open .zy-match-lineups {
    display: block !important;
}

.zy-match-page .zy-match-lineups {
    margin-top: 18px !important;
}
/* ZY_MATCH_LINEUPS_INSIDE_TAB_END */


/* ZY_MATCH_LINEUPS_NO_POSITIONS_START */
.zy-match-lineup-card__section em {
    display: none !important;
}
/* ZY_MATCH_LINEUPS_NO_POSITIONS_END */


/* ZY_MATCH_LINEUPS_AWAY_RIGHT_START */
.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) {
    text-align: right !important;
}

.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__title span {
    text-align: right !important;
}

.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__section h3 {
    text-align: right !important;
}

.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__section li {
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__section a,
.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__section span {
    text-align: right !important;
    margin-left: auto !important;
}
/* ZY_MATCH_LINEUPS_AWAY_RIGHT_END */


/* ZY_MATCH_LINEUPS_SECTION_HEADINGS_START */
.zy-match-lineup-card__section h3 {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 0 14px !important;
    padding: 7px 11px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 204, 0, 0.55) !important;
    background: rgba(255, 204, 0, 0.10) !important;
    color: #ffcc00 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

.zy-match-lineups__grid .zy-match-lineup-card:nth-child(2) .zy-match-lineup-card__section h3 {
    margin-left: auto !important;
    margin-right: 0 !important;
}

.zy-match-lineup-card__section + .zy-match-lineup-card__section {
    padding-top: 18px !important;
}

.zy-match-lineup-card__section li:first-of-type {
    border-top: none !important;
}

@media (max-width: 640px) {
    .zy-match-lineup-card__section h3 {
        font-size: 11px !important;
        padding: 7px 10px !important;
        margin-bottom: 12px !important;
    }
}
/* ZY_MATCH_LINEUPS_SECTION_HEADINGS_END */


/* ZY_MATCH_LINEUPS_OLD_STYLE_START */
.zy-match-lineups-old {
    padding: 22px !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.zy-match-lineups-old__title {
    margin: 0 0 22px !important;
    font-size: 24px !important;
    line-height: 1.1 !important;
    color: #fff !important;
}

.zy-match-lineups-old__section + .zy-match-lineups-old__section {
    margin-top: 28px !important;
}

.zy-match-lineups-old__bar {
    width: 100% !important;
    padding: 9px 14px !important;
    margin-bottom: 16px !important;
    box-sizing: border-box !important;
    border-radius: 10px !important;
    background: rgba(255, 204, 0, 0.16) !important;
    border: 1px solid rgba(255, 204, 0, 0.35) !important;
    color: #ffcc00 !important;
    text-align: center !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

.zy-match-lineups-old__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 48px !important;
}

.zy-match-lineups-old__list {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.zy-match-lineups-old__list li {
    min-width: 0 !important;
    padding: 4px 0 8px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.zy-match-lineups-old__list a,
.zy-match-lineups-old__list span {
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.zy-match-lineups-old__list a:hover {
    color: #ffcc00 !important;
}

.zy-match-lineups-old__list--home {
    text-align: left !important;
}

.zy-match-lineups-old__list--away {
    text-align: right !important;
}

@media (max-width: 640px) {
    .zy-match-lineups-old {
        padding: 14px !important;
        border-radius: 18px !important;
    }

    .zy-match-lineups-old__title {
        font-size: 20px !important;
        margin-bottom: 18px !important;
    }

    .zy-match-lineups-old__bar {
        font-size: 11px !important;
        padding: 8px 10px !important;
        margin-bottom: 14px !important;
    }

    .zy-match-lineups-old__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    .zy-match-lineups-old__list a,
    .zy-match-lineups-old__list span {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }

    .zy-match-lineups-old__list {
        gap: 7px !important;
    }
}
/* ZY_MATCH_LINEUPS_OLD_STYLE_END */




/* ZY_MATCH_EVENTS_PUBLIC_START */
.zy-match-events-public {
    margin: 22px 0;
    padding: 18px;
    border-radius: 18px;
    background: rgba(12, 18, 24, 0.92);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.zy-match-events-public__title {
    margin: 0 0 14px;
    font-size: 22px;
    font-weight: 900;
}

.zy-match-events-public__list {
    display: grid;
    gap: 10px;
}

.zy-match-events-public__item {
    display: grid;
    grid-template-columns: 62px 1fr;
    gap: 12px;
    align-items: start;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.045);
}

.zy-match-events-public__minute {
    font-weight: 900;
    color: #ffd34d;
}

.zy-match-events-public__main {
    font-weight: 700;
}

.zy-match-events-public__meta {
    margin-top: 4px;
    opacity: 0.82;
    font-size: 14px;
}

.zy-match-events-public a {
    color: inherit;
    text-decoration: none;
}

.zy-match-events-public a:hover {
    text-decoration: underline;
}

.zy-match-events-public__empty {
    margin: 0;
    opacity: 0.75;
}

@media (max-width: 700px) {
    .zy-match-events-public {
        padding: 14px;
    }

    .zy-match-events-public__item {
        grid-template-columns: 46px 1fr;
        gap: 8px;
        padding: 10px;
    }
}
/* ZY_MATCH_EVENTS_PUBLIC_END */


/* ZY_MATCH_TIMELINE_FLASHSCORE_START */
.zy-match-timeline {
    margin: 22px 0;
    padding: 0;
    border-radius: 18px;
    overflow: hidden;
    background: #061f27;
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.zy-match-timeline__title {
    margin: 0;
    padding: 16px 18px;
    font-size: 22px;
    font-weight: 900;
    background: rgba(255, 255, 255, 0.035);
}

.zy-match-timeline__list {
    padding: 0 14px 14px;
}

.zy-tl-period {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 12px 0 4px;
    padding: 8px 12px;
    border-radius: 8px;
    background: #092d35;
    color: #dff8ff;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.zy-tl-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr);
    min-height: 42px;
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

.zy-tl-cell {
    min-width: 0;
}

.zy-tl-cell--home {
    text-align: right;
}

.zy-tl-cell--away {
    text-align: left;
}

.zy-tl-minute {
    text-align: center;
    color: #d9f6ff;
    font-size: 13px;
    font-weight: 900;
}

.zy-tl-event {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    max-width: 100%;
    padding: 6px 0;
    color: #f4fbff;
    font-size: 14px;
    line-height: 1.25;
}

.zy-tl-event--home {
    justify-content: flex-end;
}

.zy-tl-event--away {
    justify-content: flex-start;
}

.zy-tl-text {
    min-width: 0;
}

.zy-tl-event a {
    color: inherit;
    text-decoration: none;
}

.zy-tl-event a:hover {
    text-decoration: underline;
}

.zy-tl-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 22px;
    margin: 0 6px;
    padding: 0 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
}

.zy-tl-assist,
.zy-tl-note {
    color: rgba(235, 250, 255, 0.72);
    font-size: 13px;
}

.zy-tl-icon {
    position: relative;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.zy-tl-icon--goal::before,
.zy-tl-icon--penalty_goal::before {
    content: "⚽";
    font-size: 17px;
    line-height: 1;
}

.zy-tl-icon--own_goal::before {
    content: "⚽";
    font-size: 17px;
    line-height: 1;
    filter: hue-rotate(135deg) saturate(2);
}

.zy-tl-icon--yellow_card::before {
    content: "";
    width: 11px;
    height: 17px;
    border-radius: 2px;
    background: #ffd43b;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.zy-tl-icon--red_card::before {
    content: "";
    width: 11px;
    height: 17px;
    border-radius: 2px;
    background: #ff3b4f;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.zy-tl-icon--second_yellow_red::before,
.zy-tl-icon--second_yellow_red::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 16px;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.zy-tl-icon--second_yellow_red::before {
    left: 5px;
    top: 4px;
    background: #ffd43b;
}

.zy-tl-icon--second_yellow_red::after {
    left: 10px;
    top: 4px;
    background: #ff3b4f;
}

.zy-tl-icon--substitution::before {
    content: "↻";
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #40d36f;
    border: 1px solid rgba(64, 211, 111, 0.45);
    font-size: 17px;
    font-weight: 900;
}

.zy-tl-icon--missed_penalty::before {
    content: "✕";
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ff4d5f;
    border: 1px solid rgba(255, 77, 95, 0.6);
    font-size: 15px;
    font-weight: 900;
}

.zy-tl-icon--event::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.65);
}

.zy-match-timeline__empty {
    margin: 0;
    padding: 16px 18px;
    color: rgba(235, 250, 255, 0.7);
}

@media (max-width: 700px) {
    .zy-match-timeline__title {
        padding: 14px;
        font-size: 19px;
    }

    .zy-match-timeline__list {
        padding: 0 10px 12px;
    }

    .zy-tl-row {
        grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr);
        min-height: 40px;
    }

    .zy-tl-event {
        font-size: 12px;
        gap: 5px;
    }

    .zy-tl-assist,
    .zy-tl-note {
        font-size: 11px;
    }

    .zy-tl-score {
        min-width: 34px;
        height: 20px;
        margin: 0 4px;
        font-size: 11px;
    }
}
/* ZY_MATCH_TIMELINE_FLASHSCORE_END */









/* ZY_MATCH_EVENTS_MOVE_TO_MINUTES_START */
.zy-match-events-card .zy-match-timeline-row--home .zy-match-event-line {
    transform: translateX(-34px) !important;
}

.zy-match-events-card .zy-match-timeline-row--away .zy-match-event-line {
    transform: translateX(34px) !important;
}
/* ZY_MATCH_EVENTS_MOVE_TO_MINUTES_END */






/* ZY_MATCH_EVENTS_MOBILE_OLD_SITE_STYLE_START */
@media (max-width: 700px) {
    .zy-match-events-card .zy-match-period__events {
        display: block !important;
        padding: 6px 0 10px !important;
    }

    .zy-match-events-card .zy-match-timeline-row {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        min-height: 28px !important;
        margin: 0 !important;
        padding: 4px 0 !important;
        overflow: visible !important;
        gap: 7px !important;
    }

    .zy-match-events-card .zy-match-timeline-row--home {
        justify-content: flex-start !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away {
        justify-content: flex-end !important;
    }

    .zy-match-events-card .zy-match-timeline-row--home .zy-match-minute {
        order: 1 !important;
    }

    .zy-match-events-card .zy-match-timeline-row--home .zy-match-event-line {
        order: 2 !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-match-event-line {
        order: 1 !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-match-minute {
        order: 2 !important;
    }

    .zy-match-events-card .zy-match-minute {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 24px !important;
        max-width: none !important;
        padding: 0 !important;
        margin: 0 !important;
        color: #ffd21f !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
        text-align: center !important;
    }

    .zy-match-events-card .zy-match-event-line,
    .zy-match-events-card .zy-match-timeline-row--home .zy-match-event-line,
    .zy-match-events-card .zy-match-timeline-row--away .zy-match-event-line {
        transform: none !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 36px) !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        white-space: normal !important;
        overflow: visible !important;
    }

    .zy-match-events-card .zy-match-timeline-row--home .zy-match-event-line {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .zy-match-events-card .zy-match-timeline-row--away .zy-match-event-line {
        justify-content: flex-end !important;
        text-align: right !important;
    }

    .zy-match-events-card .zy-match-event-line strong,
    .zy-match-events-card .zy-match-event-line span,
    .zy-match-events-card .zy-match-event-line a {
        font-size: 12px !important;
        line-height: 1.1 !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .zy-match-events-card .zy-event-icon,
    .zy-match-events-card .zy-event-icon img {
        flex: 0 0 15px !important;
        width: 15px !important;
        height: 15px !important;
        min-width: 15px !important;
        max-width: 15px !important;
    }

    .zy-match-events-card .zy-match-event-score,
    .zy-match-events-card .zy-event-score,
    .zy-match-events-card .zy-match-score-chip,
    .zy-match-events-card .zy-score-chip {
        flex: 0 0 auto !important;
        font-size: 10px !important;
        line-height: 1 !important;
        padding: 2px 6px !important;
        min-width: 26px !important;
        border-radius: 7px !important;
    }

    .zy-match-events-card .zy-match-period__head {
        margin: 12px 0 8px !important;
    }
}
/* ZY_MATCH_EVENTS_MOBILE_OLD_SITE_STYLE_END */










/* ZY_LINEUPS_FINAL_CLEAN_START */
.zy-match-page--lineups-open .zy-match-events-card {
    display: none !important;
}

.zy-lineup-player-row {
    display: flex !important;
    align-items: center !important;
    min-height: 20px !important;
    padding: 2px 0 !important;
    gap: 5px !important;
    line-height: 1.05 !important;
}

.zy-lineup-player-row--home {
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-lineup-player-row--away {
    justify-content: flex-end !important;
    text-align: right !important;
}

.zy-lineup-number {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    min-width: auto !important;
    color: #ffcc00 !important;
}

.zy-lineup-events {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.zy-lineup-event-icon,
.zy-lineup-event-icon img {
    display: inline-flex !important;
    width: 13px !important;
    height: 13px !important;
    min-width: 13px !important;
    max-width: 13px !important;
    flex: 0 0 13px !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.zy-match-lineups-old__list {
    gap: 3px !important;
}

.zy-match-lineups-old__list a,
.zy-match-lineups-old__list span {
    line-height: 1.05 !important;
}

@media (max-width: 640px) {
    .zy-lineup-player-row {
        min-height: 18px !important;
        gap: 4px !important;
        padding: 1px 0 !important;
    }

    .zy-lineup-event-icon,
    .zy-lineup-event-icon img {
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        max-width: 12px !important;
        flex-basis: 12px !important;
    }
}
/* ZY_LINEUPS_FINAL_CLEAN_END */


/* ZY_LINEUPS_AWAY_ICONS_OLD_SITE_ORDER_FIX_START */
.zy-match-lineups-old__list--home .zy-lineup-player-row {
    justify-content: flex-start !important;
    text-align: left !important;
}

.zy-match-lineups-old__list--away .zy-lineup-player-row {
    justify-content: flex-end !important;
    text-align: right !important;
}

/* хозяева: номер — имя — иконки */
.zy-match-lineups-old__list--home .zy-lineup-number {
    order: 1 !important;
}

.zy-match-lineups-old__list--home .zy-lineup-player-name {
    order: 2 !important;
}

.zy-match-lineups-old__list--home .zy-lineup-events {
    order: 3 !important;
}

/* гости: иконки — имя — номер */
.zy-match-lineups-old__list--away .zy-lineup-events {
    order: 1 !important;
    margin-right: 6px !important;
    margin-left: 0 !important;
}

.zy-match-lineups-old__list--away .zy-lineup-player-name {
    order: 2 !important;
}

.zy-match-lineups-old__list--away .zy-lineup-number {
    order: 3 !important;
    margin-left: 6px !important;
    margin-right: 0 !important;
}

.zy-lineup-number {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-width: auto !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    color: #ffcc00 !important;
}

.zy-lineup-events {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    flex: 0  !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-width: auto !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    color: #ffcc00 !important;
}

.zy-lineup-events {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    flex: 0 0 auto !important;
}

.zy-lineup-event-icon,
.zy-lineup-event-icon img {
    width: 13px !important;
    height: 13px !important;
    min-width: 13px !important;
    max-width: 13px !important;
    flex: 0 0 13px !important;
}
/* ZY_LINEUPS_AWAY_ICONS_OLD_SITE_ORDER_FIX_END */


/* ZY_LINEUPS_HOME_ICONS_SPACING_FIX_START */
.zy-match-lineups-old__list--home .zy-lineup-events {
    margin-left: 6px !important;
    margin-right: 0 !important;
}

@media (max-width: 640px) {
    .zy-match-lineups-old__list--home .zy-lineup-events {
        margin-left: 5px !important;
        margin-right: 0 !important;
    }
}
/* ZY_LINEUPS_HOME_ICONS_SPACING_FIX_END */

/* ZY_MATCH_PERIOD_BARS_LIKE_LINEUPS_START */
.zy-match-events-card .zy-match-period__head {
    background: rgba(255, 204, 0, 0.18) !important;
    border: 1px solid rgba(255, 204, 0, 0.75) !important;
    border-radius: 9px !important;
    min-height: 31px !important;
    padding: 6px 12px !important;
    color: #ffcc00 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}

.zy-match-events-card .zy-match-period__head strong,
.zy-match-events-card .zy-match-period__head span {
    color: #ffcc00 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

@media (max-width: 640px) {
    .zy-match-events-card .zy-match-period__head {
        min-height: 29px !important;
        padding: 6px 10px !important;
        font-size: 12px !important;
    }

    .zy-match-events-card .zy-match-period__head strong,
    .zy-match-events-card .zy-match-period__head span {
        font-size: 12px !important;
    }
}
/* ZY_MATCH_PERIOD_BARS_LIKE_LINEUPS_END */


/* ZY_MATCH_EVENTS_NO_BLUE_BACKGROUND_START */
.zy-match-events-card,
.zy-match-events-card .zy-match-timeline,
.zy-match-events-card .zy-match-period,
.zy-match-events-card .zy-match-period__events,
.zy-match-events-card .zy-match-timeline-row {
    background: transparent !important;
    background-color: transparent !important;
}

.zy-match-events-card {
    background: #101010 !important;
}
/* ZY_MATCH_EVENTS_NO_BLUE_BACKGROUND_END */


/* ZY_MATCH_EVENTS_REMOVE_INNER_BORDER_START */
.zy-match-events-card .zy-match-timeline,
.zy-match-events-card .zy-match-period,
.zy-match-events-card .zy-match-period__events {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.zy-match-events-card .zy-match-timeline {
    padding-top: 0 !important;
}

.zy-match-events-card .zy-match-period__head {
    width: 100% !important;
    box-sizing: border-box !important;
}
/* ZY_MATCH_EVENTS_REMOVE_INNER_BORDER_END */

/* ZY_STATS_TABLE_COMPACT_ROWS_START */
.zy-stats-section .zy-stats-table__head {
    min-height: 26px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    line-height: 1 !important;
}

.zy-stats-section .zy-stats-row {
    min-height: 28px !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    line-height: 1.05 !important;
}

.zy-stats-section .zy-stats-row > span,
.zy-stats-section .zy-stats-row > strong,
.zy-stats-section .zy-stats-row > em,
.zy-stats-section .zy-stats-table__head > span {
    line-height: 1.05 !important;
}

.zy-stats-section .zy-stats-row__team {
    min-height: 20px !important;
}

.zy-stats-section .zy-stats-row__team i {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    font-size: 9px !important;
    line-height: 18px !important;
}

.zy-stats-section .zy-goals-cell,
.zy-stats-section .zy-stats-row em {
    min-height: 18px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* ZY_STATS_TABLE_COMPACT_ROWS_END */

/* ZY_STATS_POSITION_PLAIN_START */
/* Обычные номера позиций в таблицах статистики */
.zy-stats-row__pos {
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1.2 !important;
}
/* ZY_STATS_POSITION_PLAIN_END */

/* ZY_STATS_TEAM_LOGOS_PLAIN_START */
/* Эмблемы команд в статистике: без фона, рамки и круглой формы */
.zy-stats-row__team > .zy-stats-row__logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 30px !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    font-style: normal !important;
}

.zy-stats-row__team > .zy-stats-row__logo img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 30px !important;
    max-height: 30px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
/* ZY_STATS_TEAM_LOGOS_PLAIN_END */

/* ZY_STATS_TEAM_LOGOS_VISIBLE_START */

/* Нейтральное место для эмблемы команды */
.zy-stats-row__logo-slot {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.zy-stats-row__logo-slot::before,
.zy-stats-row__logo-slot::after {
    display: none !important;
    content: none !important;
}

/* Сама эмблема без круга, рамки, тени и фона */
img.zy-stats-row__team-logo {
    display: block !important;
    position: static !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 30px !important;
    max-height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    object-fit: contain !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

/* ZY_STATS_TEAM_LOGOS_VISIBLE_END */

/* ZY_STATS_COMPACT_TEXT_START */
/* Статистика: меньше расстояние между местом и игроком, легче шрифт, полные названия команд */

.zy-stats-row {
    column-gap: 8px !important;
}

/* Номер места ближе к футболисту */
.zy-stats-row__pos {
    margin-right: 0 !important;
    padding-right: 0 !important;
}

/* Имя футболиста — менее жирное */
.zy-stats-row__player,
.zy-stats-row__player a,
.zy-stats-row__name,
.zy-stats-row__name a {
    font-weight: 500 !important;
}

/* Команда: показываем название полностью */
.zy-stats-row__team {
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    line-height: 1.2 !important;
}

/* Текст названия команды внутри блока */
.zy-stats-row__team span,
.zy-stats-row__team a {
    max-width: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}

/* Чтобы эмблема не сжималась, а длинное название переносилось рядом */
.zy-stats-row__logo-slot,
.zy-stats-row__team-logo {
    flex-shrink: 0 !important;
}

/* На узких экранах команда может занимать всю доступную ширину */
@media (max-width: 760px) {
    .zy-stats-row {
        column-gap: 6px !important;
    }

    .zy-stats-row__team {
        width: auto !important;
        max-width: 100% !important;
    }
}

/* ZY_STATS_COMPACT_TEXT_END */

/* ZY_STATS_POSITION_COLUMN_FIX_START */
/* Статистика: сжимаем колонку места, чтобы имя футболиста было ближе к цифре */

.zy-stats-row {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1.25fr) minmax(180px, 1fr) 52px !important;
    column-gap: 8px !important;
    align-items: center !important;
}

.zy-stats-row__pos {
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    justify-self: start !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Имя игрока ближе к месту и без лишней жирности */
.zy-stats-row__player,
.zy-stats-row__player a,
.zy-stats-row__name,
.zy-stats-row__name a {
    justify-self: start !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    font-weight: 500 !important;
}

/* Длинные названия команд показываем полностью */
.zy-stats-row__team {
    min-width: 180px !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

.zy-stats-row__team span,
.zy-stats-row__team a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
}

/* На телефоне — компактнее */
@media (max-width: 760px) {
    .zy-stats-row {
        grid-template-columns: 22px minmax(0, 1fr) !important;
        row-gap: 4px !important;
        column-gap: 6px !important;
    }

    .zy-stats-row__team {
        grid-column: 2 / -1 !important;
        min-width: 0 !important;
    }
}

/* ZY_STATS_POSITION_COLUMN_FIX_END */

/* ZY_CARD_STATS_DESKTOP_NOWRAP_TEAM_START */
/* Десктоп: в блоках желтых и красных карточек команда в одну строку */

@media (min-width: 761px) {
    .zy-card-stats-desktop-nowrap-team .zy-stats-row {
        grid-template-columns: 24px minmax(0, 1fr) minmax(240px, 1.35fr) 52px !important;
        column-gap: 8px !important;
    }

    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team {
        min-width: 0 !important;
        max-width: none !important;
        width: auto !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        letter-spacing: -0.03em !important;
    }

    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team span,
    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        letter-spacing: -0.03em !important;
    }

    .zy-card-stats-desktop-nowrap-team .zy-stats-row__logo-slot {
        flex: 0 0 26px !important;
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
    }

    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team-logo {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
        max-width: 24px !important;
        max-height: 24px !important;
    }
}

/* Очень узкий десктоп/планшет: еще чуть уменьшаем шрифт */
@media (min-width: 761px) and (max-width: 1020px) {
    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team,
    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team span,
    .zy-card-stats-desktop-nowrap-team .zy-stats-row__team a {
        font-size: 11px !important;
        letter-spacing: -0.04em !important;
    }
}

/* ZY_CARD_STATS_DESKTOP_NOWRAP_TEAM_END */

/* ZY_PLAYOFF_CLEAN_FINAL_START */

/* Контейнер плей-офф не вылезает за сайт */
.zy-tree-section,
.zy-playoff-tree-layout,
.zy-playoff-tree-block {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.zy-playoff-tree-layout {
    display: grid !important;
    gap: 26px !important;
}

.zy-playoff-tree-block {
    overflow: hidden !important;
    border: 1px solid rgba(250, 204, 21, 0.32) !important;
    border-radius: 16px !important;
    background: rgba(10, 10, 10, 0.76) !important;
    padding: 16px !important;
}

/* Внутренний горизонтальный скролл */
.zy-tree-section .zy-tree-scroll {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    box-sizing: border-box !important;
    padding-bottom: 10px !important;
}

.zy-tree-section .zy-tree {
    display: flex !important;
    align-items: flex-start !important;
    gap: 28px !important;
    width: max-content !important;
    min-width: max-content !important;
}

/* Одна колонка раунда */
.zy-tree-section .zy-tree-round {
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    flex: 0 0 320px !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Заголовок раунда и карточки — строго по одному левому краю */
.zy-tree-section .zy-tree-round__head,
.zy-tree-section .zy-tree-round__matches {
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.zy-tree-section .zy-tree-round__head {
    margin-bottom: 10px !important;
    text-align: left !important;
    background: transparent !important;
    border: 0 !important;
}

.zy-tree-section .zy-tree-round__head h3 {
    margin: 0 0 3px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    text-align: left !important;
}

.zy-tree-section .zy-tree-round__head span {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #facc15 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-align: left !important;
}

/* Список карточек раунда */
.zy-tree-section .zy-tree-round__matches {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 14px !important;
}

/* Вертикальное смещение сетки сохраняем */
.zy-tree-section .zy-tree-round:nth-child(2) .zy-tree-round__matches {
    padding-top: 45px !important;
}

.zy-tree-section .zy-tree-round:nth-child(3) .zy-tree-round__matches {
    padding-top: 120px !important;
}

.zy-tree-section .zy-tree-round:nth-child(4) .zy-tree-round__matches {
    padding-top: 250px !important;
}

/* Карточка матча: одинаковая ширина и левое выравнивание */
.zy-tree-section .zy-tree-card {
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    min-height: 82px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    align-self: flex-start !important;
    transform: none !important;
    border: 1px solid rgba(250, 204, 21, 0.38) !important;
    border-radius: 12px !important;
    background: rgba(0, 0, 0, 0.36) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.zy-tree-section .zy-tree-card.is-empty {
    opacity: .68 !important;
}

/* Табло */
.zy-tree-section .zy-tree-card .zy-leg-scoreboard {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.zy-tree-section .zy-tree-card .zy-leg-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 32px 32px !important;
    column-gap: 7px !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 27px !important;
}

/* Команда */
.zy-tree-section .zy-tree-card .zy-leg-team {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
    overflow: visible !important;
}

/* Эмблема без рамки */
.zy-tree-section .zy-tree-card .zy-leg-team i {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    flex: 0 0 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.zy-tree-section .zy-tree-card .zy-leg-team i img {
    width: 18px !important;
    height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Название команды: одна строка, без троеточия */
.zy-tree-section .zy-tree-card .zy-leg-team span,
.zy-tree-section .zy-tree-card .zy-leg-team a {
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    color: #fff !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

/* Счет справа, строго колонками */
.zy-tree-section .zy-tree-card .zy-leg-score {
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: end !important;
    align-self: center !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(250, 204, 21, .55) !important;
    border-radius: 8px !important;
    background: rgba(250, 204, 21, .08) !important;
    color: #facc15 !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    text-align: center !important;
}

.zy-tree-section .zy-tree-card .zy-leg-score--second {
    opacity: .72 !important;
}

/* Пустая подпись не ломает размер карточки */
.zy-tree-section .zy-tree-card__empty-note {
    height: 12px !important;
    margin-top: 4px !important;
    padding: 0 !important;
    border: 0 !important;
    color: rgba(255, 255, 255, .38) !important;
    font-size: 10px !important;
    line-height: 12px !important;
    text-align: center !important;
    overflow: hidden !important;
}

/* ZY_PLAYOFF_CLEAN_FINAL_END */


/* ZY_PLAYOFF_KILL_HORIZONTAL_TRANSFORMS_START */
.zy-playoff-tree-block .zy-tree-round,
.zy-playoff-tree-block .zy-tree-round *,
.zy-tree-section .zy-tree-round,
.zy-tree-section .zy-tree-round * {
    transform: none !important;
    translate: none !important;
}

.zy-playoff-tree-block .zy-tree-round__head,
.zy-playoff-tree-block .zy-tree-round__matches,
.zy-playoff-tree-block .zy-tree-card,
.zy-tree-section .zy-tree-round__head,
.zy-tree-section .zy-tree-round__matches,
.zy-tree-section .zy-tree-card {
    margin-left: 0 !important;
    left: 0 !important;
    right: auto !important;
    align-self: flex-start !important;
    justify-self: start !important;
}

/* Вертикальное смещение сетки сохраняем */
.zy-tree-section .zy-tree-round:nth-child(2) .zy-tree-round__matches {
    padding-top: 45px !important;
}

.zy-tree-section .zy-tree-round:nth-child(3) .zy-tree-round__matches {
    padding-top: 120px !important;
}

.zy-tree-section .zy-tree-round:nth-child(4) .zy-tree-round__matches {
    padding-top: 250px !important;
}
/* ZY_PLAYOFF_KILL_HORIZONTAL_TRANSFORMS_END */

/* ZY_PLAYOFF_SCORE_JS_CLICKABLE_START */
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable {
    cursor: pointer !important;
}

.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:hover {
    background: rgba(250, 204, 21, .18) !important;
    border-color: rgba(250, 204, 21, .85) !important;
}
/* ZY_PLAYOFF_SCORE_JS_CLICKABLE_END */

/* ZY_PLAYOFF_SCORE_CLICK_HOVER_VISIBLE_START */
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable {
    cursor: pointer !important;
    transition: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease !important;
}

.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:hover,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:focus {
    background: #facc15 !important;
    border-color: #facc15 !important;
    color: #050505 !important;
    box-shadow: 0 0 0 2px rgba(250, 204, 21, .25) !important;
    transform: translateY(-1px) !important;
    outline: none !important;
}

.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:hover span,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:hover small,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:focus span,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable:focus small {
    color: #050505 !important;
}
/* ZY_PLAYOFF_SCORE_CLICK_HOVER_VISIBLE_END */

/* ZY_PLAYOFF_SCORE_POINTER_CURSOR_FIX_START */
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable *,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable span,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable small {
    cursor: pointer !important;
    user-select: none !important;
}

.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable span,
.zy-tree-section .zy-tree-card .zy-leg-score.zy-leg-score-is-clickable small {
    pointer-events: none !important;
}
/* ZY_PLAYOFF_SCORE_POINTER_CURSOR_FIX_END */

/* ZY_PLAYOFF_DATETIME_ROW_START */
.zy-tree-section .zy-leg-date-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 32px 32px !important;
    column-gap: 7px !important;
    width: 100% !important;
    margin-top: 4px !important;
    box-sizing: border-box !important;
}

.zy-tree-section .zy-leg-date-cell {
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    text-align: center !important;
    color: rgba(255,255,255,.58) !important;
    font-size: 8px !important;
    line-height: 1.05 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    pointer-events: none !important;
    user-select: none !important;
}
/* ZY_PLAYOFF_DATETIME_ROW_END */

/* ZY_PLAYOFF_DATETIME_UNDER_SCORE_COLUMNS_FIX_START */

/* Даем табло место под дату/время */
.zy-tree-section .zy-tree-card .zy-leg-scoreboard {
    position: relative !important;
    padding-bottom: 22px !important;
}

/* Строка даты теперь привязана к правому краю, а не к названию команды */
.zy-tree-section .zy-leg-date-row {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    display: grid !important;
    grid-template-columns: 32px 32px !important;
    column-gap: 7px !important;
    width: 71px !important;
    margin-top: 0 !important;
    box-sizing: border-box !important;
}

/* Первый пустой span больше не занимает левую колонку команды */
.zy-tree-section .zy-leg-date-row > span:first-child {
    display: none !important;
}

.zy-tree-section .zy-leg-date-cell {
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    display: block !important;
    text-align: center !important;
    color: rgba(255,255,255,.58) !important;
    font-size: 8px !important;
    line-height: 1.05 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    pointer-events: none !important;
    user-select: none !important;
}

/* ZY_PLAYOFF_DATETIME_UNDER_SCORE_COLUMNS_FIX_END */

/* ZY_MOBILE_MATCH_SCORE_PENALTY_INSIDE_START */
.zy-overview-match__score,
.zy-calendar-match__score {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 1px !important;
    min-height: 28px !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

.zy-overview-match__score .zy-score-main,
.zy-calendar-match__score .zy-score-main {
    display: block !important;
    line-height: 1 !important;
}

.zy-overview-match__score .zy-score-penalty,
.zy-calendar-match__score .zy-score-penalty {
    display: block !important;
    margin-top: 1px !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-transform: lowercase !important;
}
/* ZY_MOBILE_MATCH_SCORE_PENALTY_INSIDE_END */


/* ZY_PLAYOFF_NO_ROUND_OVERLAP_FINAL_START */
.zy-tree-section .zy-tree {
    gap: 12px !important;
    column-gap: 12px !important;
}

.zy-tree-section .zy-tree-round,
.zy-tree-section .zy-tree-round + .zy-tree-round {
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
}
/* ZY_PLAYOFF_NO_ROUND_OVERLAP_FINAL_END */


/* ZY_PLAYOFF_DATES_FORCE_VISIBLE_START */
.zy-tree-section .zy-leg-scoreboard,
.zy-tree-section .zy-tree-card {
    overflow: visible !important;
}

.zy-tree-section .zy-leg-date-row--visible {
    display: grid !important;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 25px !important;
}

.zy-tree-section .zy-leg-date-cell--visible {
    display: block !important;
    color: #f6c744 !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    opacity: 1 !important;
    visibility: visible !important;
}
/* ZY_PLAYOFF_DATES_FORCE_VISIBLE_END */


/* ZY_PLAYOFF_DATES_COMPACT_NO_HEIGHT_START */
.zy-tree-section .zy-leg-date-row--visible,
.zy-tree-section .zy-leg-date-row--compact {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    display: flex !important;
    width: 95px !important;
    height: 14px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.zy-tree-section .zy-leg-date-cell--visible,
.zy-tree-section .zy-leg-date-cell--compact {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    color: #f6c744 !important;
    font-size: 8px !important;
    line-height: .95 !important;
    font-weight: 900 !important;
}
/* ZY_PLAYOFF_DATES_COMPACT_NO_HEIGHT_END */


/* ZY_PLAYOFF_DATES_RIGHT_ALIGN_START */
.zy-tree-section .zy-leg-date-row--compact {
    right: 0 !important;
    bottom: 0 !important;
    width: 71px !important;
    height: 14px !important;
    gap: 7px !important;
    justify-content: flex-end !important;
}

.zy-tree-section .zy-leg-date-cell--compact {
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    text-align: center !important;
}
/* ZY_PLAYOFF_DATES_RIGHT_ALIGN_END */


/* ZY_YELLOW_SUSPENSIONS_TABLE_START */
.zy-stats-table--cards-suspensions .zy-stats-table__head,
.zy-stats-table--cards-suspensions .zy-stats-row {
    grid-template-columns: 42px minmax(150px, 1.5fr) minmax(130px, 1fr) 52px 74px minmax(135px, 1fr) !important;
}

.zy-yellow-suspension-count {
    font-weight: 800;
    color: #f6c744;
}

.zy-yellow-suspension-status {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 12px;
    line-height: 1.15;
    color: rgba(255,255,255,.72);
}

.zy-yellow-suspension-status.is-active {
    color: #f6c744;
    font-weight: 800;
}

.zy-yellow-suspension-status small {
    display: block;
    font-size: 10px;
    line-height: 1.15;
    color: rgba(255,255,255,.52);
    font-weight: 600;
}

@media (max-width: 760px) {
    .zy-stats-table--cards-suspensions .zy-stats-table__head,
    .zy-stats-table--cards-suspensions .zy-stats-row {
        grid-template-columns: 32px minmax(100px, 1.4fr) 44px 58px minmax(86px, 1fr) !important;
    }

    .zy-stats-table--cards-suspensions .zy-stats-table__head span:nth-child(3),
    .zy-stats-table--cards-suspensions .zy-stats-row .zy-stats-row__team {
        display: none !important;
    }
}
/* ZY_YELLOW_SUSPENSIONS_TABLE_END */


/* ZY_SUSPENSIONS_TAB_UI_START */
.zy-card-count--suspended {
    color: #ff4545 !important;
    text-shadow: 0 0 10px rgba(255, 69, 69, .35) !important;
}

.zy-suspensions-section {
    width: 100%;
}

.zy-suspensions-table {
    display: grid;
    gap: 8px;
}

.zy-suspensions-table__head,
.zy-suspensions-row {
    display: grid;
    grid-template-columns: minmax(180px, 1.3fr) minmax(150px, 1fr) minmax(140px, 1fr) minmax(180px, 1.2fr) 100px;
    gap: 12px;
    align-items: center;
}

.zy-suspensions-table__head {
    color: rgba(255,255,255,.58);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.zy-suspensions-row {
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid rgba(246,199,68,.28);
    border-radius: 10px;
    background: rgba(0,0,0,.22);
    color: rgba(255,255,255,.86);
}

.zy-suspensions-row.is-active {
    border-color: rgba(255,69,69,.7);
    box-shadow: 0 0 0 1px rgba(255,69,69,.12);
}

.zy-suspensions-row em {
    font-style: normal;
    font-weight: 900;
    color: #f6c744;
}

.zy-suspensions-row.is-active em {
    color: #ff4545;
}

.zy-empty-state {
    padding: 16px;
    border: 1px solid rgba(246,199,68,.25);
    border-radius: 12px;
    color: rgba(255,255,255,.68);
    background: rgba(0,0,0,.18);
}

@media (max-width: 760px) {
    .zy-suspensions-table__head {
        display: none;
    }

    .zy-suspensions-row {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}
/* ZY_SUSPENSIONS_TAB_UI_END */


/* ZY_YELLOW_CARD_RED_ACTIVE_START */
.zy-card-count--suspended {
    color: #ff4545 !important;
    text-shadow: 0 0 10px rgba(255, 69, 69, .35) !important;
}
/* ZY_YELLOW_CARD_RED_ACTIVE_END */


/* ZY_SUSPENSIONS_STATS_STYLE_START */
.zy-stats-table--suspensions .zy-stats-table__head,
.zy-stats-table--suspensions .zy-stats-row {
    grid-template-columns:
        42px
        minmax(160px, 1.35fr)
        minmax(150px, 1fr)
        minmax(220px, 1.35fr)
        100px !important;
}

.zy-stats-table--suspensions .zy-stats-row.is-suspended {
    border-color: rgba(255, 69, 69, .42) !important;
    box-shadow: inset 3px 0 0 rgba(255, 69, 69, .85) !important;
}

.zy-suspensions-match {
    color: rgba(255,255,255,.76);
    font-size: 13px;
    line-height: 1.2;
}

.zy-suspensions-status {
    font-style: normal;
    font-weight: 900;
    color: #f6c744;
}

.zy-suspensions-status.is-active {
    color: #ff4545;
}

@media (max-width: 760px) {
    .zy-stats-table--suspensions .zy-stats-table__head {
        display: none !important;
    }

    .zy-stats-table--suspensions .zy-stats-row {
        grid-template-columns: 32px 1fr 82px !important;
        gap: 8px !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__team,
    .zy-stats-table--suspensions .zy-suspensions-match {
        grid-column: 2 / -1;
    }

    .zy-stats-table--suspensions .zy-suspensions-status {
        grid-column: 3;
        grid-row: 1;
        text-align: right;
    }
}
/* ZY_SUSPENSIONS_STATS_STYLE_END */


/* ZY_SUSPENSIONS_LOGO_SIZE_FIX_START */
.zy-stats-table--suspensions .zy-stats-row__logo-slot {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    overflow: visible !important;
}

.zy-stats-table--suspensions .zy-stats-row__logo-slot i,
.zy-stats-table--suspensions .zy-stats-row__logo-slot img {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    object-fit: contain !important;
}
/* ZY_SUSPENSIONS_LOGO_SIZE_FIX_END */


/* ZY_SUSPENSIONS_LOGO_CLEAN_AS_CARDS_START */
.zy-stats-table--suspensions .zy-stats-row__team {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.zy-stats-table--suspensions .zy-stats-row__logo-slot {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.zy-stats-table--suspensions .zy-stats-row__logo-slot i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    overflow: visible !important;
}

.zy-stats-table--suspensions .zy-stats-row__logo-slot img {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    object-fit: contain !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
/* ZY_SUSPENSIONS_LOGO_CLEAN_AS_CARDS_END */


/* ZY_SUSPENSIONS_TEAM_NOWRAP_START */
.zy-stats-table--suspensions .zy-stats-table__head,
.zy-stats-table--suspensions .zy-stats-row {
    grid-template-columns:
        42px
        minmax(160px, 1.25fr)
        minmax(220px, 1.25fr)
        minmax(240px, 1.35fr)
        90px !important;
}

.zy-stats-table--suspensions .zy-stats-row__team {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-width: 0 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.zy-stats-table--suspensions .zy-stats-row__team > span:last-child,
.zy-stats-table--suspensions .zy-stats-row__team a {
    display: inline-block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    vertical-align: middle !important;
}
/* ZY_SUSPENSIONS_TEAM_NOWRAP_END */


/* ZY_SUSPENSIONS_MOBILE_OVERFLOW_FIX_START */
@media (max-width: 760px) {
    .zy-suspensions-section {
        overflow: hidden !important;
    }

    .zy-stats-table--suspensions {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    .zy-stats-table--suspensions .zy-stats-table__head {
        display: none !important;
    }

    .zy-stats-table--suspensions .zy-stats-row {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) 34px !important;
        grid-template-areas:
            "pos player count"
            "pos team count"
            "pos match count" !important;
        gap: 4px 8px !important;
        align-items: center !important;
        padding: 10px 12px !important;
        overflow: hidden !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__pos {
        grid-area: pos !important;
        align-self: center !important;
    }

    .zy-stats-table--suspensions .zy-stats-row > strong {
        grid-area: player !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: block !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-stats-table--suspensions .zy-stats-row > strong a {
        display: block !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__team {
        grid-area: team !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__team > span:last-child {
        min-width: 0 !important;
        max-width: 100% !important;
        display: block !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__team a {
        display: block !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .zy-stats-table--suspensions .zy-suspensions-match {
        grid-area: match !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: block !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        line-height: 1.15 !important;
        font-size: 12px !important;
    }

    .zy-stats-table--suspensions .zy-suspensions-status {
        grid-area: count !important;
        align-self: center !important;
        justify-self: end !important;
        text-align: right !important;
        min-width: 0 !important;
        max-width: 34px !important;
        font-size: 20px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    .zy-stats-table--suspensions .zy-stats-row__logo-slot,
    .zy-stats-table--suspensions .zy-stats-row__logo-slot i,
    .zy-stats-table--suspensions .zy-stats-row__logo-slot img {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        max-width: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
    }
}
/* ZY_SUSPENSIONS_MOBILE_OVERFLOW_FIX_END */


/* ZY_MATCH_MEDIA_BLOCK_START */
.zy-match-media-block {
  box-sizing: border-box !important;
  max-width: calc(100vw - 40px) !important;
  margin: 20px auto 32px !important;
  padding: 16px !important;
  background: #080808 !important;
  border: 1px solid rgba(255, 210, 0, 0.5) !important;
  border-radius: 18px !important;
}

.zy-match-media-head {
  margin-bottom: 12px !important;
}

.zy-match-media-head h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
}

.zy-match-media-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 260px)) !important;
  gap: 14px !important;
  justify-content: start !important;
  align-items: start !important;
}

.zy-match-media-card {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 260px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: #ffffff !important;
  text-decoration: none !important;
  background: #101010 !important;
  border: 1px solid rgba(255, 210, 0, 0.45) !important;
  border-radius: 16px !important;
}

.zy-match-media-card__preview {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  background: #161616 !important;
  overflow: hidden !important;
}

.zy-match-media-card__preview img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.zy-match-media-card__fallback {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
  background:
    radial-gradient(circle at 50% 35%, rgba(255, 210, 0, 0.18), transparent 38%),
    #101010 !important;
}

.zy-match-media-card__fallback img {
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  opacity: 0.85 !important;
}

.zy-match-media-play {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  display: grid !important;
  place-items: center !important;
  width: 38px !important;
  height: 38px !important;
  transform: translate(-50%, -50%) !important;
  color: #000000 !important;
  background: #ffd200 !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

.zy-match-media-card__body {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  padding: 11px 12px 13px !important;
}

.zy-match-media-card__body em {
  width: max-content !important;
  padding: 4px 8px !important;
  color: #000000 !important;
  background: #ffd200 !important;
  border-radius: 999px !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  font-style: normal !important;
  text-transform: uppercase !important;
}

.zy-match-media-card__body strong {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
}

.zy-match-media-card__body small {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: #d1d5db !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

@media (max-width: 720px) {
  .zy-match-media-block {
    max-width: calc(100vw - 24px) !important;
    padding: 14px !important;
  }

  .zy-match-media-grid {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
  }

  .zy-match-media-card {
    max-width: none !important;
  }
}
/* ZY_MATCH_MEDIA_BLOCK_END */


/* ZY_ROW_MEDIA_BADGES_START */

/* Обзор: правая ячейка строки */
.zy-overview-match__penalty {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  min-width: 90px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* Календарь: отдельная правая зона внутри длинной строки матча */
.zy-calendar-match {
  position: relative !important;
  padding-right: 125px !important;
  overflow: visible !important;
}

.zy-calendar-match__penalty {
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: 105px !important;
  min-width: 105px !important;
  height: auto !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  z-index: 40 !important;
  pointer-events: none !important;
}

/* Сами иконки */
.zy-overview-match__penalty .zy-row-media-icons,
.zy-calendar-match__penalty .zy-row-media-icons {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 4px !important;
  position: static !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.zy-row-media-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 16px !important;
  padding: 0 6px !important;
  color: #000000 !important;
  background: #ffd200 !important;
  border-radius: 999px !important;
  font-size: 7px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
  box-sizing: border-box !important;
}

.zy-row-media-icon--video {
  background: #ffffff !important;
  color: #000000 !important;
}

.zy-row-media-icon--live {
  background: #d60000 !important;
  color: #ffffff !important;
}

@media (max-width: 720px) {
  .zy-calendar-match {
    padding-right: 82px !important;
  }

  .zy-calendar-match__penalty {
    right: 8px !important;
    width: 72px !important;
    min-width: 72px !important;
  }

  .zy-row-media-icon {
    height: 13px !important;
    padding: 0 4px !important;
    font-size: 6px !important;
  }
}
/* ZY_ROW_MEDIA_BADGES_END */
