/* ShaySport Mondial public responsive UI */

/* Mondial content styles only. No body, header, footer, Elementor or site shell styles are changed. */


.shaysport-mondial-page {
    background: transparent !important;
}

.shaysport-mondial-page {
    direction: rtl;
    max-width: min(1480px, calc(100% - 24px));
    margin: 0 auto;
    padding: 24px 0 36px;
    box-sizing: border-box;
}

.shaysport-mondial-page *,
.shaysport-mondial-page *:before,
.shaysport-mondial-page *:after {
    box-sizing: border-box;
}

.shaysport-mondial-page .shaysport-panel,
.shaysport-mondial-page .ssm-panel,
.shaysport-mondial-page .ssm-hero,
.shaysport-mondial-page .ssm-group,
.shaysport-mondial-page .ssm-round,
.shaysport-mondial-page .ssm-subcollapse {
    box-sizing: border-box;
    max-width: 100%;
}

.shaysport-mondial-page .ssm-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 24px;
    align-items: stretch;
    padding: 28px;
    margin-bottom: 22px;
    background: linear-gradient(135deg, rgba(255,246,225,.96), rgba(232,249,255,.96));
    border: 1px solid rgba(10,119,184,.16);
    border-radius: 28px;
}

.shaysport-mondial-page .ssm-hero__copy,
.shaysport-mondial-page .ssm-panel-body,
.shaysport-mondial-page .ssm-table-wrap,
.shaysport-mondial-page .ssm-groups,
.shaysport-mondial-page .ssm-knockout,
.shaysport-mondial-page .ssm-knockout-tree {
    min-width: 0;
    max-width: 100%;
}

.shaysport-mondial-page .ssm-hero h2,
.shaysport-mondial-page .ssm-panel h2 {
    margin: 0 0 12px;
    color: #081A33;
}

.shaysport-mondial-page .ssm-hero p,
.shaysport-mondial-page .ssm-panel p {
    margin: 0 0 16px;
    color: #26384f;
    line-height: 1.75;
}

.shaysport-mondial-page .ssm-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
    align-items: center;
}

.shaysport-mondial-page .ssm-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid rgba(8,26,51,.15);
    background: #fff;
    color: #081A33;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.2;
}

.shaysport-mondial-page .ssm-button--primary {
    background: #0A77B8;
    color: #fff;
    border-color: #0A77B8;
}

.shaysport-mondial-page .ssm-hero__badge {
    border-radius: 28px;
    padding: 22px;
    background: #081A33;
    color: #fff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 0 14px 34px rgba(8,26,51,.16);
}

.shaysport-mondial-page .ssm-hero__badge span {
    font-size: 56px;
    font-weight: 900;
    color: #D7A53A;
    line-height: 1;
}

.shaysport-mondial-page .ssm-hero__badge strong {
    font-size: 22px;
    margin-top: 8px;
}

.shaysport-mondial-page .ssm-hero__badge small {
    margin-top: 8px;
    line-height: 1.5;
    color: rgba(255,255,255,.82);
}

.shaysport-mondial-page .ssm-configured-logo {
    display:flex;
    justify-content:center;
    margin:0 0 14px;
}

.shaysport-mondial-page .ssm-configured-logo img {
    display: block;
    max-height:110px;
    max-width:min(320px,80vw);
    height: auto;
    object-fit:contain;
}

.shaysport-mondial-page .ssm-panel {
    padding: 24px;
    margin-bottom: 22px;
    background: rgba(255,255,255,.9);
    border: 1px solid rgba(10,119,184,.14);
    border-radius: 24px;
}

.shaysport-mondial-page .ssm-collapse,
.shaysport-mondial-page .ssm-subcollapse {
    overflow: hidden;
}

.shaysport-mondial-page .ssm-collapse-title,
.shaysport-mondial-page .ssm-subcollapse-title {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .75rem 1rem;
    font-weight: 800;
    background: rgba(10, 119, 184, .08);
    border-radius: 14px;
    cursor:pointer;
}

.shaysport-mondial-page .ssm-collapse-title::-webkit-details-marker,
.shaysport-mondial-page .ssm-subcollapse-title::-webkit-details-marker {
    display: none;
}

.shaysport-mondial-page .ssm-collapse-title:after,
.shaysport-mondial-page .ssm-subcollapse-title:after {
    content: "▾";
    font-size: .9rem;
    transform: rotate(0deg);
    transition: transform .18s ease;
}

.shaysport-mondial-page .ssm-collapse:not([open]) > .ssm-collapse-title:after,
.shaysport-mondial-page .ssm-subcollapse:not([open]) > .ssm-subcollapse-title:after {
    transform: rotate(90deg);
}

.shaysport-mondial-page .ssm-subcollapse {
    margin: .85rem 0;
    padding: .65rem;
    border: 1px solid rgba(8, 26, 51, .12);
    border-radius: 18px;
    background: rgba(255, 255, 255, .58);
}

.shaysport-mondial-page .ssm-table-wrap {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    border-radius: 14px;
}

.shaysport-mondial-page .ssm-table,
.shaysport-mondial-page .ssm-group table {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto;
}

.shaysport-mondial-page .ssm-table th,
.shaysport-mondial-page .ssm-table td,
.shaysport-mondial-page .ssm-group th,
.shaysport-mondial-page .ssm-group td {
    padding: .65rem .55rem;
    vertical-align: middle;
    border-bottom: 1px solid rgba(8, 26, 51, .09);
    text-align: right;
}

.shaysport-mondial-page .ssm-fixture {
    display:flex;
    gap:.45rem;
    align-items:center;
    flex-wrap:wrap;
    min-width: 0;
}

.shaysport-mondial-page .ssm-versus {
    font-weight:400;
    opacity:.65;
}

.shaysport-mondial-page .ssm-team {
    display:inline-flex;
    gap:.35rem;
    align-items:center;
    max-width: 100%;
    min-width: 0;
    white-space: normal !important;
    flex-wrap: wrap;
}

.shaysport-mondial-page .ssm-flag {
    font-size:1rem;
    line-height:1;
}

.shaysport-mondial-page .ssm-team-en {
    direction:ltr;
    unicode-bidi:isolate;
    font-size:.9em;
    opacity:.78;
    word-break: break-word;
}

.shaysport-mondial-page .ssm-team-he {
    font-weight:700;
}

.shaysport-mondial-page .ssm-groups {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 1rem;
}

.shaysport-mondial-page .ssm-group {
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid rgba(8,26,51,.10);
    background: #fff;
    padding: 14px;
}

.shaysport-mondial-page .ssm-group h3 {
    font-size: 1rem;
    line-height: 1.4;
    margin: 0 0 12px;
}

.shaysport-mondial-page .ssm-knockout-tree {
    border: 1px solid rgba(8,26,51,.16);
    border-radius: 22px;
    padding: 16px;
    background: linear-gradient(135deg, rgba(8,26,51,.04), rgba(10,119,184,.05));
    display: grid;
    grid-template-columns: repeat(5, minmax(180px, 1fr));
    gap: 14px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.shaysport-mondial-page .ssm-bracket-round {
    min-width: 180px;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    margin: 0 0 10px;
    padding: 10px;
    border-radius: 14px;
    background: #081A33;
    color: #fff;
    text-align: center;
    font-size: .98rem;
}

.shaysport-mondial-page .ssm-bracket-matches {
    display: grid;
    gap: 10px;
}

.shaysport-mondial-page .ssm-bracket-match {
    position: relative;
    border: 1px solid rgba(8,26,51,.16);
    background: #fff;
    border-radius: 14px;
    padding: 8px;
    box-shadow: 0 8px 20px rgba(8,26,51,.06);
}

.shaysport-mondial-page .ssm-match-no {
    display: block;
    margin-bottom: 6px;
    font-size: .78rem;
    color: rgba(8,26,51,.62);
    font-weight: 700;
}

.shaysport-mondial-page .ssm-bracket-team {
    border-radius: 10px;
    background: rgba(10,119,184,.07);
    padding: 7px 8px;
    margin-top: 6px;
    font-weight: 700;
}

.shaysport-mondial-page .ssm-empty {
    padding: 14px;
    border-radius: 14px;
    background: rgba(10,119,184,.07);
    color: #081A33;
}

@media (max-width: 760px) {
    .shaysport-mondial-page {
        max-width: calc(100% - 16px);
        padding: 14px 0 26px;
    }

    .shaysport-mondial-page .ssm-hero {
        display: block;
        padding: 1rem !important;
        border-radius: 20px;
    }

    .shaysport-mondial-page .ssm-hero__badge {
        margin-top: 1rem;
    }

    .shaysport-mondial-page .ssm-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .shaysport-mondial-page .ssm-button {
        width: 100%;
        min-height: 42px;
    }

    .shaysport-mondial-page .ssm-configured-logo img {
        max-height: 86px !important;
        max-width: min(260px, 82vw) !important;
    }

    .shaysport-mondial-page .ssm-panel,
    .shaysport-mondial-page .shaysport-panel {
        padding: .85rem !important;
        border-radius: 18px !important;
    }

    .shaysport-mondial-page .ssm-collapse-title,
    .shaysport-mondial-page .ssm-subcollapse-title {
        padding: .8rem .85rem;
        font-size: .98rem;
    }

    .shaysport-mondial-page .ssm-table-wrap {
        overflow-x: visible;
    }

    .shaysport-mondial-page .ssm-table,
    .shaysport-mondial-page .ssm-table thead,
    .shaysport-mondial-page .ssm-table tbody,
    .shaysport-mondial-page .ssm-table tr,
    .shaysport-mondial-page .ssm-table td,
    .shaysport-mondial-page .ssm-standings-table,
    .shaysport-mondial-page .ssm-standings-table thead,
    .shaysport-mondial-page .ssm-standings-table tbody,
    .shaysport-mondial-page .ssm-standings-table tr,
    .shaysport-mondial-page .ssm-standings-table td {
        display: block;
        width: 100%;
    }

    .shaysport-mondial-page .ssm-table thead,
    .shaysport-mondial-page .ssm-standings-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0,0,0,0);
        white-space: nowrap;
        border: 0;
    }

    .shaysport-mondial-page .ssm-table tr,
    .shaysport-mondial-page .ssm-standings-table tr {
        margin: .75rem 0;
        padding: .75rem;
        border: 1px solid rgba(8, 26, 51, .12);
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 8px 20px rgba(8, 26, 51, .06);
    }

    .shaysport-mondial-page .ssm-table td,
    .shaysport-mondial-page .ssm-standings-table td {
        display: flex;
        justify-content: space-between;
        gap: .8rem;
        align-items: flex-start;
        border: 0;
        padding: .45rem 0;
        text-align: left;
    }

    .shaysport-mondial-page .ssm-table td:before,
    .shaysport-mondial-page .ssm-standings-table td:before {
        content: attr(data-label);
        flex: 0 0 36%;
        color: #081A33;
        font-weight: 800;
        text-align: right;
    }

    .shaysport-mondial-page .ssm-table td > *,
    .shaysport-mondial-page .ssm-standings-table td > * {
        min-width: 0;
        text-align: right;
    }

    .shaysport-mondial-page .ssm-fixture {
        justify-content: flex-start;
        flex-direction: column;
        align-items: flex-start !important;
        gap: .25rem !important;
        width: 100%;
    }

    .shaysport-mondial-page .ssm-versus {
        display: none;
    }

    .shaysport-mondial-page .ssm-team {
        display: inline-flex !important;
        justify-content: flex-start;
    }

    .shaysport-mondial-page .ssm-knockout-tree {
        grid-template-columns: 1fr;
        overflow-x: visible;
        padding: 10px;
    }

    .shaysport-mondial-page .ssm-bracket-round {
        min-width: 0;
    }
}


/* v1.0.0: public CSS is scoped to .shaysport-mondial-page only. */

/* v1.0.6: bracket alignment and clean hero */
.shaysport-mondial-page .ssm-configured-logo {
    display: none !important;
}

.shaysport-mondial-page .ssm-knockout-tree {
    align-items: stretch;
    grid-template-columns: repeat(5, minmax(190px, 1fr));
    gap: 16px;
}

.shaysport-mondial-page .ssm-bracket-round {
    display: grid;
    grid-template-rows: auto 1fr;
}

.shaysport-mondial-page .ssm-bracket-matches {
    display: grid;
    grid-template-rows: repeat(32, 34px);
    gap: 0;
    min-height: 1088px;
    align-items: center;
}

.shaysport-mondial-page .ssm-bracket-match {
    align-self: center;
    min-height: 78px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.shaysport-mondial-page .ssm-bracket-team {
    min-height: 32px;
}

.shaysport-mondial-page .ssm-bracket-team:empty:after {
    content: "";
    display: block;
    min-height: 1em;
}

@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-match:before,
    .shaysport-mondial-page .ssm-bracket-match:after {
        content: "";
        position: absolute;
        top: 50%;
        width: 14px;
        border-top: 2px solid rgba(8,26,51,.18);
    }

    .shaysport-mondial-page .ssm-bracket-match:before {
        right: -15px;
    }

    .shaysport-mondial-page .ssm-bracket-match:after {
        left: -15px;
    }

    .shaysport-mondial-page .ssm-bracket-round:first-child .ssm-bracket-match:after,
    .shaysport-mondial-page .ssm-bracket-round:last-child .ssm-bracket-match:before {
        display: none;
    }
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        grid-template-columns: 1fr;
    }

    .shaysport-mondial-page .ssm-bracket-matches {
        display: grid;
        grid-template-rows: none;
        min-height: 0;
        gap: 10px;
    }

    .shaysport-mondial-page .ssm-bracket-match {
        grid-row: auto !important;
        min-height: 78px;
    }
}

/* v1.0.7 - clearer knockout tree spacing */
.shaysport-mondial-page .ssm-match-no {
    display: none !important;
}

.shaysport-mondial-page .ssm-knockout-tree {
    align-items: stretch;
    gap: 22px;
    padding: 20px;
}

.shaysport-mondial-page .ssm-bracket-round {
    min-width: 220px;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    margin-bottom: 18px;
    position: sticky;
    top: 0;
    z-index: 3;
}

.shaysport-mondial-page .ssm-bracket-matches {
    grid-template-rows: repeat(32, 56px);
    min-height: 1792px;
    gap: 0;
    align-items: stretch;
}

.shaysport-mondial-page .ssm-bracket-match {
    align-self: stretch;
    min-height: 0;
    max-height: none;
    margin: 5px 0;
    padding: 9px;
    justify-content: center;
    overflow: visible;
}

.shaysport-mondial-page .ssm-bracket-team {
    min-height: 36px;
    margin-top: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.25;
}

.shaysport-mondial-page .ssm-bracket-team:first-child {
    margin-top: 0;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-bracket-round {
        min-width: 0;
    }

    .shaysport-mondial-page .ssm-bracket-round h3 {
        position: static;
        margin-bottom: 10px;
    }

    .shaysport-mondial-page .ssm-bracket-matches {
        grid-template-rows: none;
        min-height: 0;
        gap: 10px;
    }

    .shaysport-mondial-page .ssm-bracket-match {
        margin: 0;
        min-height: 78px;
    }
}


/* v1.0.8 - sticky hero and clean empty knockout placeholders */
.shaysport-mondial-page .ssm-hero {
    position: sticky;
    top: 12px;
    z-index: 20;
}

/* v1.0.9 - keep empty knockout matches visible, but without a white card background */
.shaysport-mondial-page .ssm-bracket-match--empty {
    background: transparent !important;
    border: 1px solid rgba(8, 26, 51, 0.12) !important;
    box-shadow: none !important;
}

.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    background: rgba(234, 243, 249, 0.92) !important;
    min-height: 36px;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-hero {
        position: sticky;
        top: 0;
        z-index: 20;
    }
}


/* v1.0.10 - empty later-round knockout matches use compact white cards, same visual style as round of 32 */
.shaysport-mondial-page .ssm-bracket-match--empty {
    background: #ffffff !important;
    border: 1px solid rgba(8, 26, 51, 0.16) !important;
    box-shadow: 0 8px 20px rgba(8, 26, 51, 0.06) !important;
    border-radius: 14px !important;
    padding: 8px !important;
    align-self: center !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
}

.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    background: rgba(10, 119, 184, 0.07) !important;
    min-height: 36px !important;
    margin-top: 6px !important;
    padding: 7px 8px !important;
}

.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team:first-child {
    margin-top: 0 !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-bracket-match--empty {
        align-self: stretch !important;
    }
}

/* v1.0.11 - stable knockout tree sizing and partial refresh support */
.shaysport-mondial-page .ssm-knockout-tree {
    grid-template-columns: repeat(5, minmax(220px, 1fr)) !important;
    gap: 28px !important;
    overflow-x: auto;
}

.shaysport-mondial-page .ssm-bracket-matches {
    position: relative;
    display: grid !important;
    grid-template-rows: repeat(32, 54px) !important;
    min-height: 1728px !important;
    gap: 0 !important;
    align-items: stretch !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    position: relative !important;
    align-self: center !important;
    height: 92px !important;
    min-height: 92px !important;
    max-height: 92px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 8px !important;
    background: #ffffff !important;
    border: 1px solid rgba(8, 26, 51, 0.12) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(8, 26, 51, 0.06) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    overflow: visible !important;
    z-index: 2;
}

.shaysport-mondial-page .ssm-bracket-team,
.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    min-height: 34px !important;
    height: 34px !important;
    margin-top: 6px !important;
    padding: 6px 8px !important;
    background: rgba(10, 119, 184, 0.07) !important;
    border-radius: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.2 !important;
    overflow: hidden !important;
}

.shaysport-mondial-page .ssm-bracket-team:first-child,
.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team:first-child {
    margin-top: 0 !important;
}

@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before {
        content: "";
        position: absolute;
        top: 50%;
        right: -29px;
        width: 29px;
        border-top: 2px solid rgba(8, 26, 51, 0.18);
        z-index: 1;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
        content: "";
        position: absolute;
        top: calc(50% - var(--ssm-connector-half, 54px));
        right: -29px;
        height: calc(var(--ssm-connector-half, 54px) * 2);
        border-right: 2px solid rgba(8, 26, 51, 0.18);
        z-index: 1;
    }

    .shaysport-mondial-page .ssm-bracket-round-1 .ssm-bracket-match { --ssm-connector-half: 54px; }
    .shaysport-mondial-page .ssm-bracket-round-2 .ssm-bracket-match { --ssm-connector-half: 108px; }
    .shaysport-mondial-page .ssm-bracket-round-3 .ssm-bracket-match { --ssm-connector-half: 216px; }
    .shaysport-mondial-page .ssm-bracket-round-4 .ssm-bracket-match { --ssm-connector-half: 432px; }

    .shaysport-mondial-page .ssm-bracket-round:first-child .ssm-bracket-match:before,
    .shaysport-mondial-page .ssm-bracket-round:first-child .ssm-bracket-match:after,
    .shaysport-mondial-page .ssm-bracket-round:last-child .ssm-bracket-match:after {
        display: none !important;
    }
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        grid-template-columns: 1fr !important;
        overflow-x: visible !important;
        gap: 14px !important;
    }

    .shaysport-mondial-page .ssm-bracket-matches {
        grid-template-rows: none !important;
        min-height: 0 !important;
        gap: 10px !important;
    }

    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        grid-row: auto !important;
        height: auto !important;
        min-height: 92px !important;
        max-height: none !important;
    }
}


/* v1.1.0 - compact knockout columns, centered progression, no connector lines */
.shaysport-mondial-page .ssm-knockout-tree {
    grid-template-columns: repeat(5, minmax(158px, 190px)) !important;
    justify-content: start !important;
    column-gap: 14px !important;
    row-gap: 0 !important;
    overflow-x: auto !important;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    min-width: 0 !important;
    max-width: 190px !important;
    white-space: nowrap !important;
}

.shaysport-mondial-page .ssm-bracket-matches {
    grid-template-rows: repeat(32, 50px) !important;
    min-height: 1600px !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    width: 100% !important;
    max-width: 190px !important;
    height: 86px !important;
    min-height: 86px !important;
    max-height: 86px !important;
    padding: 7px !important;
    align-self: center !important;
}

.shaysport-mondial-page .ssm-bracket-team,
.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    height: 32px !important;
    min-height: 32px !important;
    margin-top: 6px !important;
    padding: 5px 7px !important;
    font-size: 0.9rem !important;
    white-space: nowrap !important;
}

.shaysport-mondial-page .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-match:after,
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    content: none !important;
    display: none !important;
}

.shaysport-mondial-page .ssm-actions {
    flex-wrap: wrap !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        grid-template-columns: 1fr !important;
        overflow-x: visible !important;
    }

    .shaysport-mondial-page .ssm-bracket-round h3,
    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        max-width: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        height: auto !important;
        min-height: 86px !important;
        max-height: none !important;
    }
}

/* v1.1.1 - knockout connector lines and third-place match */
.shaysport-mondial-page .ssm-knockout-tree {
    grid-template-columns: repeat(5, minmax(152px, 174px)) !important;
    column-gap: 26px !important;
    align-items: stretch !important;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    max-width: 174px !important;
}

.shaysport-mondial-page .ssm-bracket-matches {
    grid-template-rows: repeat(32, 44px) !important;
    min-height: 1408px !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    max-width: 174px !important;
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    padding: 6px !important;
    align-self: center !important;
    background: #ffffff !important;
    border: 1px solid rgba(10, 31, 61, 0.08) !important;
    box-shadow: 0 8px 18px rgba(10, 31, 61, 0.10) !important;
}

.shaysport-mondial-page .ssm-bracket-team,
.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    height: 30px !important;
    min-height: 30px !important;
    margin-top: 5px !important;
    padding: 4px 7px !important;
    font-size: 0.88rem !important;
    white-space: nowrap !important;
}

.shaysport-mondial-page .ssm-bracket-match-label {
    position: absolute;
    top: -20px;
    inset-inline-start: 8px;
    font-size: 0.72rem;
    font-weight: 800;
    color: rgba(8, 26, 51, 0.75);
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before {
    top: 50% !important;
    inset-inline-end: -27px !important;
    width: 27px !important;
    height: 0 !important;
    border-top: 2px solid rgba(8, 26, 51, 0.22) !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    inset-inline-end: -28px !important;
    top: calc(50% - (var(--ssm-source-gap, 88px) / 2)) !important;
    width: 0 !important;
    height: var(--ssm-source-gap, 88px) !important;
    border-inline-end: 2px solid rgba(8, 26, 51, 0.22) !important;
}

.shaysport-mondial-page .ssm-bracket-round-1 .ssm-bracket-match { --ssm-source-gap: 88px; }
.shaysport-mondial-page .ssm-bracket-round-2 .ssm-bracket-match { --ssm-source-gap: 176px; }
.shaysport-mondial-page .ssm-bracket-round-3 .ssm-bracket-match { --ssm-source-gap: 352px; }
.shaysport-mondial-page .ssm-bracket-round-4 .ssm-bracket-match { --ssm-source-gap: 704px; }

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
        content: none !important;
        display: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        max-width: none !important;
    }
}


/* v1.1.2 - balanced knockout connectors and no third-place vertical connector */
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before {
    inset-inline-end: -14px !important;
    width: 14px !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    inset-inline-end: -15px !important;
}

.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after {
    content: none !important;
    display: none !important;
}

/* v1.1.3 - precise compact knockout connectors */
.shaysport-mondial-page .ssm-knockout-tree {
    grid-template-columns: repeat(5, minmax(150px, 170px)) !important;
    column-gap: 26px !important;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    max-width: 170px !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    max-width: 170px !important;
    width: 100% !important;
    overflow: visible !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    inset-inline-end: -13px !important;
    width: 13px !important;
    height: 0 !important;
    border-top: 2px solid rgba(8, 26, 51, 0.24) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset-inline-end: -14px !important;
    top: calc(50% - (var(--ssm-source-gap, 88px) / 2)) !important;
    width: 0 !important;
    height: var(--ssm-source-gap, 88px) !important;
    border-inline-end: 2px solid rgba(8, 26, 51, 0.24) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.shaysport-mondial-page .ssm-connector-source-lines {
    position: absolute !important;
    display: block !important;
    top: 50% !important;
    inset-inline-end: -26px !important;
    width: 13px !important;
    height: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.shaysport-mondial-page .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-connector-source-lines:after {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    inset-inline-end: 0 !important;
    width: 13px !important;
    height: 0 !important;
    border-top: 2px solid rgba(8, 26, 51, 0.24) !important;
}

.shaysport-mondial-page .ssm-connector-source-lines:before {
    top: calc(var(--ssm-source-gap, 88px) / -2) !important;
}

.shaysport-mondial-page .ssm-connector-source-lines:after {
    top: calc(var(--ssm-source-gap, 88px) / 2) !important;
}

.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:after {
    content: none !important;
    display: none !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
    }
}


/* v1.1.4 - knockout connector geometry fixed for RTL layout
   Use physical right-side positioning, not logical inline-end, because the bracket advances from right to left. */
.shaysport-mondial-page .ssm-knockout-tree {
    grid-template-columns: repeat(5, minmax(150px, 170px)) !important;
    column-gap: 34px !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    position: relative !important;
    overflow: visible !important;
    z-index: 2 !important;
}

/* Remove every older connector definition first. */
.shaysport-mondial-page .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-match:after,
.shaysport-mondial-page .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-connector-source-lines:after {
    content: none !important;
    display: none !important;
}

/* Target match to central vertical connector. */
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: -17px !important;
    width: 17px !important;
    height: 0 !important;
    border-top: 2px solid rgba(8, 26, 51, 0.24) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Central vertical connector between the two source games. */
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: -18px !important;
    top: calc(50% - (var(--ssm-source-gap, 88px) / 2)) !important;
    width: 0 !important;
    height: var(--ssm-source-gap, 88px) !important;
    border-right: 2px solid rgba(8, 26, 51, 0.24) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Central vertical connector to the two source games on the right. */
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: -34px !important;
    width: 17px !important;
    height: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 0 !important;
    width: 17px !important;
    height: 0 !important;
    border-top: 2px solid rgba(8, 26, 51, 0.24) !important;
    pointer-events: none !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:before {
    top: calc(var(--ssm-source-gap, 88px) / -2) !important;
}

.shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:after {
    top: calc(var(--ssm-source-gap, 88px) / 2) !important;
}

/* Third-place match is an independent placement game, not fed by the final bracket connector. */
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:after {
    content: none !important;
    display: none !important;
    border: 0 !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-bracket-match:before,
    .shaysport-mondial-page .ssm-bracket-match:after,
    .shaysport-mondial-page .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
    }
}

/* v1.1.5 - thinner knockout connector lines and no extra connector for the third-place area */
@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-connector-source-lines:after {
        border-top-width: 1px !important;
        border-top-color: rgba(8, 26, 51, 0.24) !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:after {
        border-right-width: 1px !important;
        border-right-color: rgba(8, 26, 51, 0.24) !important;
    }

    /* The third-place match is independent. Remove all of its own connector parts. */
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        border: 0 !important;
    }

    /* Keep the final connector local to the final match only so it does not visually continue down toward place 3. */
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0:after {
        top: calc(50% - 54px) !important;
        height: 108px !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:before {
        top: -54px !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:after {
        top: 54px !important;
    }
}

/* v1.1.6 - final connector cleanup
   The third-place game is independent. The final game should not draw a long vertical spine that visually runs toward the third-place game.
   Keep only the horizontal source lines from the two semi-finals to the final connector area. */
@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after {
        content: none !important;
        display: none !important;
        border: 0 !important;
        height: 0 !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        border: 0 !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:before {
        top: calc(var(--ssm-source-gap, 704px) / -2) !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:after {
        top: calc(var(--ssm-source-gap, 704px) / 2) !important;
    }
}


/* v1.1.7 - third-place game stays in place but has no connector lines at all */
@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-1 .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
    }
}


/* v1.1.8 - restore the lower semi-final feeder line into the final.
   Place 3 remains independent and has no connector lines. */
@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-finals .ssm-final-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-final-match .ssm-connector-source-lines:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        right: 0 !important;
        width: 17px !important;
        height: 0 !important;
        border-top: 1px solid rgba(8, 26, 51, 0.24) !important;
        opacity: 1 !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-final-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:before {
        top: calc(var(--ssm-source-gap, 704px) / -2) !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-final-match .ssm-connector-source-lines:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-bracket-match-index-0 .ssm-connector-source-lines:after {
        top: calc(var(--ssm-source-gap, 704px) / 2) !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
    }
}

/* v1.1.10 - hero panel should scroll normally, not stay sticky */
.shaysport-mondial-page .ssm-hero {
    position: static !important;
    top: auto !important;
    z-index: auto !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-hero {
        position: static !important;
        top: auto !important;
        z-index: auto !important;
    }
}

/* v1.3.0 - mobile knockout bracket uses a real horizontal scroller */
.shaysport-mondial-page .ssm-knockout-scroll {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-inline: contain !important;
    padding: 0 0 12px !important;
    direction: rtl !important;
    touch-action: pan-x pan-y !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-knockout-tree {
    width: max-content !important;
    min-width: 1020px !important;
    max-width: none !important;
    overflow: visible !important;
    grid-template-columns: repeat(5, 170px) !important;
    column-gap: 34px !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page {
        max-width: calc(100% - 12px) !important;
    }

    .shaysport-mondial-page .ssm-panel {
        padding: 12px !important;
    }

    .shaysport-mondial-page .ssm-panel-body {
        max-width: 100% !important;
        overflow: visible !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll {
        margin-inline: -4px !important;
        padding-inline: 4px !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-knockout-tree {
        display: grid !important;
        width: max-content !important;
        min-width: 1020px !important;
        max-width: none !important;
        grid-template-columns: repeat(5, 170px) !important;
        column-gap: 34px !important;
        overflow: visible !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-round {
        min-width: 170px !important;
        width: 170px !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-round h3,
    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match,
    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match--empty {
        width: 170px !important;
        min-width: 170px !important;
        max-width: 170px !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-matches {
        grid-template-rows: repeat(32, 44px) !important;
        min-height: 1408px !important;
    }
}


/* v1.3.1 - FIFA official match number tags */
.shaysport-mondial-page .ssm-match-no,
.shaysport-mondial-page .ssm-match-no-table {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin: 0 0 6px;
    padding: 2px 7px;
    border-radius: 999px;
    background: rgba(215, 165, 58, .18);
    color: #081A33;
    border: 1px solid rgba(215, 165, 58, .34);
    font-size: .74rem;
    line-height: 1.25;
    font-weight: 900;
}

.shaysport-mondial-page .ssm-match-no-table {
    margin: 0;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-match-no,
    .shaysport-mondial-page .ssm-match-no-table {
        margin-inline-start: auto;
    }
}


/* v1.3.4 - reliable mobile knockout spacing and clean fixture list support */
.shaysport-mondial-page .ssm-knockout-scroll .ssm-knockout-tree {
    grid-template-columns: repeat(5, 190px) !important;
    column-gap: 42px !important;
    min-width: 1120px !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-round {
    width: 190px !important;
    min-width: 190px !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-round h3,
.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match,
.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match--empty {
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-matches {
    grid-template-rows: repeat(32, 58px) !important;
    min-height: 1856px !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match,
.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match--empty {
    height: 98px !important;
    min-height: 98px !important;
    max-height: 98px !important;
    padding: 8px !important;
}

.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-team,
.shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match--empty .ssm-bracket-team {
    height: 34px !important;
    min-height: 34px !important;
    white-space: normal !important;
    overflow: visible !important;
    line-height: 1.15 !important;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-knockout-scroll {
        overflow-x: auto !important;
        overflow-y: visible !important;
        padding-bottom: 18px !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-knockout-tree {
        display: grid !important;
        grid-template-columns: repeat(5, 190px) !important;
        column-gap: 42px !important;
        min-width: 1120px !important;
        width: max-content !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-round {
        width: 190px !important;
        min-width: 190px !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-matches {
        display: grid !important;
        grid-template-rows: repeat(32, 58px) !important;
        min-height: 1856px !important;
        gap: 0 !important;
    }

    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match,
    .shaysport-mondial-page .ssm-knockout-scroll .ssm-bracket-match--empty {
        grid-row: var(--ssm-row-start, auto) / span var(--ssm-row-span, 2) !important;
        height: 98px !important;
        min-height: 98px !important;
        max-height: 98px !important;
        margin: 0 !important;
        align-self: center !important;
    }

    .shaysport-mondial-page .ssm-match-no {
        margin-inline-start: 0 !important;
        margin-inline-end: auto !important;
        font-size: .72rem !important;
        padding: 1px 6px !important;
    }
}


/* v1.3.4 - knockout match numbers moved into a popup */
.shaysport-mondial-page .ssm-bracket-match {
    cursor: pointer !important;
}

.shaysport-mondial-page .ssm-bracket-match:focus-visible {
    outline: 3px solid rgba(10, 119, 184, .45) !important;
    outline-offset: 3px !important;
}

.shaysport-mondial-page .ssm-bracket-match > .ssm-match-no {
    display: none !important;
}

.shaysport-mondial-page .ssm-ko-modal[hidden] {
    display: none !important;
}

.shaysport-mondial-page .ssm-ko-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 26, 51, .58);
}

.shaysport-mondial-page .ssm-ko-modal__dialog {
    position: relative;
    width: min(460px, calc(100vw - 36px));
    max-height: calc(100vh - 48px);
    overflow: auto;
    padding: 22px 20px 18px;
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid rgba(8, 26, 51, .16);
    box-shadow: 0 24px 70px rgba(8, 26, 51, .28);
    direction: rtl;
}

.shaysport-mondial-page .ssm-ko-modal__close {
    position: absolute;
    top: 12px;
    left: 12px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: #081A33;
    color: #ffffff;
    font-weight: 900;
    cursor: pointer;
}

.shaysport-mondial-page .ssm-ko-modal__dialog h3 {
    margin: 0 0 14px;
    padding-inline-end: 42px;
    color: #081A33;
    font-size: 1.25rem;
    line-height: 1.35;
}

.shaysport-mondial-page .ssm-ko-modal-row {
    display: grid;
    grid-template-columns: 145px 1fr;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(8, 26, 51, .1);
}

.shaysport-mondial-page .ssm-ko-modal-row strong {
    color: #081A33;
}

.shaysport-mondial-page .ssm-ko-modal-row span {
    color: #2f3a45;
    font-weight: 700;
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-ko-modal {
        align-items: flex-end;
        padding: 10px;
    }

    .shaysport-mondial-page .ssm-ko-modal__dialog {
        width: 100%;
        max-height: 78vh;
        border-radius: 22px 22px 14px 14px;
    }

    .shaysport-mondial-page .ssm-ko-modal-row {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}

/* v1.3.5 - stable knockout geometry and clickable match rows */
.shaysport-mondial-page .ssm-match-row {
    cursor: pointer;
}
.shaysport-mondial-page .ssm-match-row:hover td {
    background: rgba(47, 132, 201, 0.06);
}

.shaysport-mondial-page .ssm-knockout-scroll {
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
}

.shaysport-mondial-page .ssm-knockout-tree {
    --ssm-ko-match-w: 178px;
    --ssm-ko-col-gap: 46px;
    --ssm-ko-row-h: 52px;
    display: grid !important;
    grid-template-columns: repeat(5, var(--ssm-ko-match-w)) !important;
    column-gap: var(--ssm-ko-col-gap) !important;
    align-items: start !important;
    direction: rtl !important;
    min-width: calc((5 * var(--ssm-ko-match-w)) + (4 * var(--ssm-ko-col-gap))) !important;
}

.shaysport-mondial-page .ssm-bracket-round {
    width: var(--ssm-ko-match-w) !important;
    min-width: var(--ssm-ko-match-w) !important;
    max-width: var(--ssm-ko-match-w) !important;
    overflow: visible !important;
}

.shaysport-mondial-page .ssm-bracket-round h3 {
    width: var(--ssm-ko-match-w) !important;
    max-width: var(--ssm-ko-match-w) !important;
    min-width: var(--ssm-ko-match-w) !important;
    margin: 0 0 18px 0 !important;
}

.shaysport-mondial-page .ssm-bracket-matches {
    display: grid !important;
    grid-template-rows: repeat(32, var(--ssm-ko-row-h)) !important;
    min-height: calc(32 * var(--ssm-ko-row-h)) !important;
    position: relative !important;
    overflow: visible !important;
}

.shaysport-mondial-page .ssm-bracket-match,
.shaysport-mondial-page .ssm-bracket-match--empty {
    width: var(--ssm-ko-match-w) !important;
    min-width: var(--ssm-ko-match-w) !important;
    max-width: var(--ssm-ko-match-w) !important;
    height: 84px !important;
    min-height: 84px !important;
    max-height: 84px !important;
    padding: 7px !important;
    align-self: center !important;
    justify-self: stretch !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    cursor: pointer !important;
}

.shaysport-mondial-page .ssm-bracket-team,
.shaysport-mondial-page .ssm-bracket-match--empty .ssm-bracket-team {
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    line-height: 22px !important;
    margin: 4px 0 0 0 !important;
    padding: 4px 7px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Reset every earlier connector rule. */
.shaysport-mondial-page .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-match:after,
.shaysport-mondial-page .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-connector-source-lines:after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
}

@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):after,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        pointer-events: none !important;
        opacity: 1 !important;
        z-index: 1 !important;
    }

    /* From target match left edge of its source gap to the midpoint connector. */
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):before {
        top: 50% !important;
        right: calc(-1 * (var(--ssm-ko-col-gap) / 2)) !important;
        width: calc(var(--ssm-ko-col-gap) / 2) !important;
        height: 0 !important;
        border-top: 1px solid rgba(8, 26, 51, 0.24) !important;
    }

    /* Vertical line between the two feeder games. */
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):after {
        top: calc(50% - (var(--ssm-source-gap, 104px) / 2)) !important;
        right: calc(-1 * (var(--ssm-ko-col-gap) / 2)) !important;
        width: 0 !important;
        height: var(--ssm-source-gap, 104px) !important;
        border-right: 1px solid rgba(8, 26, 51, 0.24) !important;
    }

    /* From midpoint connector to the two source games. */
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines {
        top: 50% !important;
        right: calc(-1 * var(--ssm-ko-col-gap)) !important;
        width: calc(var(--ssm-ko-col-gap) / 2) !important;
        height: 0 !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:after {
        right: 0 !important;
        width: calc(var(--ssm-ko-col-gap) / 2) !important;
        height: 0 !important;
        border-top: 1px solid rgba(8, 26, 51, 0.24) !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:before {
        top: calc(var(--ssm-source-gap, 104px) / -2) !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:after {
        top: calc(var(--ssm-source-gap, 104px) / 2) !important;
    }

    .shaysport-mondial-page .ssm-bracket-round-1 .ssm-bracket-match { --ssm-source-gap: 104px; }
    .shaysport-mondial-page .ssm-bracket-round-2 .ssm-bracket-match { --ssm-source-gap: 208px; }
    .shaysport-mondial-page .ssm-bracket-round-3 .ssm-bracket-match { --ssm-source-gap: 416px; }
    .shaysport-mondial-page .ssm-bracket-round-4 .ssm-final-match { --ssm-source-gap: 832px; }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        border: 0 !important;
        opacity: 0 !important;
    }
}

@media (max-width: 760px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        --ssm-ko-match-w: 190px;
        --ssm-ko-col-gap: 52px;
        --ssm-ko-row-h: 64px;
        grid-template-columns: repeat(5, var(--ssm-ko-match-w)) !important;
        column-gap: var(--ssm-ko-col-gap) !important;
        min-width: calc((5 * var(--ssm-ko-match-w)) + (4 * var(--ssm-ko-col-gap))) !important;
    }

    .shaysport-mondial-page .ssm-bracket-round,
    .shaysport-mondial-page .ssm-bracket-round h3,
    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        width: var(--ssm-ko-match-w) !important;
        min-width: var(--ssm-ko-match-w) !important;
        max-width: var(--ssm-ko-match-w) !important;
    }

    .shaysport-mondial-page .ssm-bracket-matches {
        grid-template-rows: repeat(32, var(--ssm-ko-row-h)) !important;
        min-height: calc(32 * var(--ssm-ko-row-h)) !important;
    }

    .shaysport-mondial-page .ssm-bracket-match,
    .shaysport-mondial-page .ssm-bracket-match--empty {
        height: 88px !important;
        min-height: 88px !important;
        max-height: 88px !important;
    }
}


/* v1.3.6 - exact knockout connector alignment at match frame edges */
@media (min-width: 761px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        --ssm-ko-line: rgba(8, 26, 51, 0.24);
        --ssm-ko-line-w: 1px;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):before {
        top: calc(50% - 0.5px) !important;
        right: calc(-1 * (var(--ssm-ko-col-gap) / 2)) !important;
        width: calc((var(--ssm-ko-col-gap) / 2) + 1px) !important;
        height: 0 !important;
        border-top: var(--ssm-ko-line-w) solid var(--ssm-ko-line) !important;
        transform: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match):after {
        top: calc(50% - (var(--ssm-source-gap, 104px) / 2)) !important;
        right: calc(-1 * (var(--ssm-ko-col-gap) / 2)) !important;
        height: var(--ssm-source-gap, 104px) !important;
        border-right: var(--ssm-ko-line-w) solid var(--ssm-ko-line) !important;
        transform: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines {
        top: calc(50% - 0.5px) !important;
        right: calc(-1 * var(--ssm-ko-col-gap)) !important;
        width: calc((var(--ssm-ko-col-gap) / 2) + 1px) !important;
        transform: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-round:not(:first-child) .ssm-bracket-match:not(.ssm-third-place-match) .ssm-connector-source-lines:after {
        right: 0 !important;
        width: calc((var(--ssm-ko-col-gap) / 2) + 1px) !important;
        border-top: var(--ssm-ko-line-w) solid var(--ssm-ko-line) !important;
        transform: none !important;
    }

    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match:after,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:before,
    .shaysport-mondial-page .ssm-bracket-finals .ssm-third-place-match .ssm-connector-source-lines:after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
    }
}

/* v1.3.10 - final connector renderer: SVG overlay only, no legacy pseudo-element connectors */
.shaysport-mondial-page .ssm-ko-line,
.shaysport-mondial-page .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-bracket-match:after,
.shaysport-mondial-page .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-connector-source-lines:after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    background: none !important;
}
.shaysport-mondial-page .ssm-knockout-tree {
    position: relative !important;
    overflow: visible !important;
}
.shaysport-mondial-page .ssm-knockout-svg-lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
    z-index: 1;
}
.shaysport-mondial-page .ssm-knockout-svg-lines line {
    stroke: #a9b5c1;
    stroke-width: 2;
    stroke-linecap: square;
}
.shaysport-mondial-page .ssm-bracket-match {
    z-index: 2;
}
@media (max-width: 768px) {
    .shaysport-mondial-page .ssm-knockout-tree {
        --round-w: 184px !important;
        --round-gap: 84px !important;
        --unit: 96px !important;
        --match-h: 74px !important;
        min-width: calc((5 * var(--round-w)) + (4 * var(--round-gap))) !important;
    }
}


/* v1.3.13 - authoritative knockout geometry, one SVG connector layer only, identical desktop/mobile layout */
.shaysport-mondial-page .ssm-knockout-scroll {
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
    direction: ltr !important;
}
.shaysport-mondial-page .ssm-knockout-tree {
    --round-w: 178px !important;
    --round-gap: 64px !important;
    --unit: 58px !important;
    --match-h: 76px !important;
    direction: rtl !important;
    display: grid !important;
    grid-template-columns: repeat(5, var(--round-w)) !important;
    column-gap: var(--round-gap) !important;
    align-items: start !important;
    min-width: calc((5 * var(--round-w)) + (4 * var(--round-gap)) + 36px) !important;
    padding: 6px 18px 42px !important;
    position: relative !important;
    overflow: visible !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-round {
    width: var(--round-w) !important;
    min-width: var(--round-w) !important;
    max-width: var(--round-w) !important;
    position: relative !important;
    overflow: visible !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-round h3 {
    width: var(--round-w) !important;
    min-width: var(--round-w) !important;
    max-width: var(--round-w) !important;
    box-sizing: border-box !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-matches {
    display: grid !important;
    grid-template-rows: repeat(32, var(--unit)) !important;
    min-height: calc(32 * var(--unit)) !important;
    position: relative !important;
    overflow: visible !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match,
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match--empty {
    width: var(--round-w) !important;
    min-width: var(--round-w) !important;
    max-width: var(--round-w) !important;
    height: var(--match-h) !important;
    min-height: var(--match-h) !important;
    max-height: var(--match-h) !important;
    align-self: center !important;
    position: relative !important;
    z-index: 2 !important;
    box-sizing: border-box !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match::before,
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match::after,
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match:before,
.shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match:after,
.shaysport-mondial-page .ssm-knockout-tree .ssm-ko-line,
.shaysport-mondial-page .ssm-knockout-tree .ssm-connector-source-lines,
.shaysport-mondial-page .ssm-knockout-tree .ssm-connector-source-lines::before,
.shaysport-mondial-page .ssm-knockout-tree .ssm-connector-source-lines::after,
.shaysport-mondial-page .ssm-knockout-tree .ssm-connector-source-lines:before,
.shaysport-mondial-page .ssm-knockout-tree .ssm-connector-source-lines:after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    opacity: 0 !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-knockout-svg-lines {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    pointer-events: none !important;
    z-index: 1 !important;
}
.shaysport-mondial-page .ssm-knockout-tree .ssm-knockout-svg-lines line,
.shaysport-mondial-page .ssm-knockout-tree .ssm-knockout-svg-lines path {
    fill: none !important;
    stroke: #a9b5c1 !important;
    stroke-width: 2 !important;
    stroke-linecap: square !important;
    stroke-linejoin: miter !important;
    shape-rendering: crispEdges !important;
}
@media (max-width: 768px) {
    .shaysport-mondial-page .ssm-knockout-scroll,
    .shaysport-mondial-page .ssm-knockout-tree,
    .shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-round,
    .shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-matches,
    .shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match,
    .shaysport-mondial-page .ssm-knockout-tree .ssm-bracket-match--empty {
        /* intentionally identical to desktop. Mobile uses horizontal scroll only. */
    }
}


/* v1.3.19 - wider desktop container and mobile uses the same grid row positions as desktop */
@media (min-width: 1024px) {
    .shaysport-mondial-page {
        max-width: min(1480px, calc(100% - 24px)) !important;
    }
}

#shaysport-mondial .ssm-knockout-scroll .ssm-bracket-match,
#shaysport-mondial .ssm-knockout-scroll .ssm-bracket-match--empty {
    grid-row: var(--ssm-row-start) / span var(--ssm-row-span) !important;
}

@media (max-width: 760px) {
    #shaysport-mondial .ssm-knockout-scroll .ssm-knockout-tree {
        display: grid !important;
        grid-template-columns: repeat(5, var(--round-w)) !important;
        column-gap: var(--round-gap) !important;
        min-width: calc((5 * var(--round-w)) + (4 * var(--round-gap)) + 36px) !important;
        width: max-content !important;
    }
    #shaysport-mondial .ssm-knockout-scroll .ssm-bracket-matches {
        display: grid !important;
        grid-template-rows: repeat(32, var(--unit)) !important;
        min-height: calc(32 * var(--unit)) !important;
        gap: 0 !important;
    }
    #shaysport-mondial .ssm-knockout-scroll .ssm-bracket-match,
    #shaysport-mondial .ssm-knockout-scroll .ssm-bracket-match--empty {
        grid-row: var(--ssm-row-start) / span var(--ssm-row-span) !important;
        align-self: center !important;
    }
}


/* v1.4.1 public UX refinements */
.shaysport-mondial-page .ssm-title-card {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    text-align: center;
    padding: 24px 28px;
    margin-bottom: 18px;
}
.shaysport-mondial-page .ssm-title-card h1 {
    margin: 0;
    color: #061b38;
    font-size: clamp(1.7rem, 4vw, 3.05rem);
    line-height: 1.18;
    font-weight: 900;
}
.shaysport-mondial-page .ssm-title-logo {
    display: inline-flex;
    width: 74px;
    height: 74px;
    border-radius: 999px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 20px rgba(8,26,51,.12);
    flex: 0 0 auto;
}
.shaysport-mondial-page .ssm-title-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.shaysport-mondial-page .ssm-game-promo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 720px;
    margin-top: 12px;
    padding: 14px 18px;
    border-radius: 18px;
    background: #0a77b8;
    color: #fff;
    font-weight: 900;
    line-height: 1.45;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(10,119,184,.24);
}
.shaysport-mondial-page .ssm-game-promo:hover,
.shaysport-mondial-page .ssm-game-promo:focus {
    color: #fff;
    transform: translateY(-1px);
}
.shaysport-mondial-page .ssm-main-tabs .ssm-data-source-badge {
    margin: 0 8px 12px 0;
}
.shaysport-mondial-page .ssm-broadcast-link {
    font-weight: 900;
    color: #0a77b8;
    text-decoration: none;
}
.shaysport-mondial-page .ssm-broadcast-link:hover,
.shaysport-mondial-page .ssm-broadcast-link:focus {
    text-decoration: underline;
}
@media (max-width: 620px) {
    .shaysport-mondial-page .ssm-title-card {
        flex-direction: column;
        gap: 10px;
        padding: 18px 14px;
    }
    .shaysport-mondial-page .ssm-title-logo {
        width: 58px;
        height: 58px;
    }
    .shaysport-mondial-page .ssm-tab-buttons {
        gap: 4px !important;
        flex-wrap: nowrap !important;
        overflow-x: visible !important;
        padding: 6px !important;
    }
    .shaysport-mondial-page .ssm-tab-button {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        padding: 8px 5px !important;
        font-size: clamp(10px, 3.05vw, 12px) !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
    }
    .shaysport-mondial-page .ssm-game-promo {
        font-size: .88rem;
        padding: 12px 14px;
        border-radius: 16px;
    }
}

/* v1.4.2 - hero title and footer data source placement */
.shaysport-mondial-page .ssm-hero__title-row {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    text-align: center;
    padding: 0 4px 10px;
}
.shaysport-mondial-page .ssm-hero__title-row h1 {
    margin: 0;
    color: #061b38;
    font-size: clamp(1.75rem, 4vw, 3.05rem);
    line-height: 1.18;
    font-weight: 900;
}
.shaysport-mondial-page .ssm-hero__title-row .ssm-title-logo {
    width: 82px;
    height: 82px;
    background: #fff;
    border: 1px solid rgba(8,26,51,.08);
}
.shaysport-mondial-page .ssm-hero__title-row .ssm-title-logo img {
    object-fit: contain;
}
.shaysport-mondial-page .ssm-data-source-footer {
    display: flex;
    justify-content: flex-start;
    margin: 12px 0 0;
}
.shaysport-mondial-page .ssm-data-source-footer .ssm-data-source-badge {
    margin: 0;
}
@media (max-width: 620px) {
    .shaysport-mondial-page .ssm-hero__title-row {
        gap: 10px;
        padding-bottom: 6px;
    }
    .shaysport-mondial-page .ssm-hero__title-row h1 {
        font-size: clamp(1.24rem, 6vw, 1.75rem);
    }
    .shaysport-mondial-page .ssm-hero__title-row .ssm-title-logo {
        width: 54px;
        height: 54px;
    }
}

/* v1.4.3: richer public hero with rotating facts and video ticker. */
#shaysport-mondial .ssm-hero{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(320px,1.2fr)!important;grid-template-areas:"title title" "facts copy" "videos videos"!important;gap:22px 28px!important;align-items:center!important;padding:30px!important}
#shaysport-mondial .ssm-hero__title-row{grid-area:title!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;text-align:center!important;margin:0!important}
#shaysport-mondial .ssm-hero__title-row h1{margin:0!important;font-size:clamp(30px,4vw,52px)!important;line-height:1.05!important;color:#061b38!important;text-shadow:none!important}
#shaysport-mondial .ssm-title-logo{width:78px!important;height:78px!important;border-radius:999px!important;background:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 10px 24px rgba(8,26,51,.18)!important;flex:0 0 auto!important}
#shaysport-mondial .ssm-title-logo img{width:70px!important;height:70px!important;object-fit:contain!important;border-radius:999px!important}
#shaysport-mondial .ssm-hero__copy{grid-area:copy!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important}
#shaysport-mondial .ssm-hero__factbox{grid-area:facts!important;position:relative!important;min-height:168px!important;border-radius:26px!important;background:#061b38!important;color:#fff!important;box-shadow:0 18px 42px rgba(8,26,51,.18)!important;overflow:hidden!important;padding:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
#shaysport-mondial .ssm-hero__fact{position:absolute!important;inset:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:22px!important;opacity:0!important;transform:translateY(8px)!important;transition:opacity .45s ease,transform .45s ease!important;pointer-events:none!important}
#shaysport-mondial .ssm-hero__fact.is-active{opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important}
#shaysport-mondial .ssm-hero__fact-number{font-size:clamp(42px,6vw,68px)!important;line-height:.9!important;font-weight:950!important;color:#d7a53a!important}
#shaysport-mondial .ssm-hero__fact-title{font-size:20px!important;font-weight:950!important;color:#fff!important}
#shaysport-mondial .ssm-hero__fact-note{font-size:13px!important;color:#d9e5ef!important;line-height:1.45!important;max-width:330px!important}
#shaysport-mondial .ssm-hero__fact--game{background:linear-gradient(135deg,#0a77b8,#061b38)!important}
#shaysport-mondial .ssm-hero__fact--game .ssm-hero__fact-number{font-size:24px!important;line-height:1.2!important;color:#fff!important}
#shaysport-mondial .ssm-hero__fact--game a{color:#fff!important;text-decoration:none!important}
#shaysport-mondial .ssm-game-promo{display:none!important}
#shaysport-mondial .ssm-video-ticker{grid-area:videos!important;margin-top:2px!important;border-radius:20px!important;background:rgba(255,255,255,.65)!important;border:1px solid rgba(8,26,51,.09)!important;padding:12px 16px!important;overflow:hidden!important;display:flex!important;align-items:center!important;gap:14px!important}
#shaysport-mondial .ssm-video-ticker__label{font-weight:950!important;color:#061b38!important;white-space:nowrap!important}
#shaysport-mondial .ssm-video-ticker__track{display:flex!important;gap:12px!important;overflow:hidden!important;white-space:nowrap!important;flex:1!important}
#shaysport-mondial .ssm-video-ticker__item{display:inline-flex!important;align-items:center!important;gap:8px!important;border-radius:999px!important;background:#fff!important;color:#061b38!important;text-decoration:none!important;font-weight:850!important;padding:8px 12px!important;box-shadow:0 4px 12px rgba(8,26,51,.08)!important;animation:ssmTickerMove 36s linear infinite!important}
#shaysport-mondial .ssm-video-ticker__item:before{content:"YouTube"!important;font-size:10px!important;color:#0a77b8!important}
@keyframes ssmTickerMove{0%{transform:translateX(-10%)}100%{transform:translateX(110%)}}
@media (max-width:760px){#shaysport-mondial .ssm-hero{grid-template-columns:1fr!important;grid-template-areas:"title" "facts" "videos"!important;padding:20px!important;gap:16px!important}#shaysport-mondial .ssm-hero__title-row{gap:10px!important;flex-direction:row!important}#shaysport-mondial .ssm-hero__title-row h1{font-size:clamp(25px,7.2vw,34px)!important}#shaysport-mondial .ssm-title-logo{width:58px!important;height:58px!important}#shaysport-mondial .ssm-title-logo img{width:52px!important;height:52px!important}#shaysport-mondial .ssm-hero__factbox{min-height:150px!important}#shaysport-mondial .ssm-video-ticker{padding:10px!important;gap:8px!important}#shaysport-mondial .ssm-video-ticker__label{font-size:12px!important}.ssm-video-ticker__item{font-size:12px!important}}


/* v1.4.6: stable hero layout with two equal desktop cards and safe mobile stacking. */
#shaysport-mondial .ssm-hero{display:flex!important;flex-direction:column!important;gap:22px!important;align-items:stretch!important;padding:30px!important;min-height:0!important;overflow:hidden!important}
#shaysport-mondial .ssm-hero__title-row{display:flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;text-align:center!important;margin:0!important;width:100%!important;grid-area:auto!important;min-width:0!important;flex-wrap:nowrap!important}
#shaysport-mondial .ssm-hero__title-row h1{margin:0!important;font-size:clamp(30px,4vw,52px)!important;line-height:1.08!important;color:#061b38!important;text-shadow:none!important;max-width:100%!important;overflow:visible!important;white-space:normal!important}
#shaysport-mondial .ssm-title-logo{width:78px!important;height:78px!important;border-radius:999px!important;background:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 10px 24px rgba(8,26,51,.18)!important;flex:0 0 78px!important;grid-area:auto!important}
#shaysport-mondial .ssm-title-logo img{width:70px!important;height:70px!important;object-fit:contain!important;border-radius:999px!important}
#shaysport-mondial .ssm-hero__copy{display:none!important}
#shaysport-mondial .ssm-hero__cards{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-areas:none!important;gap:22px!important;align-items:stretch!important;width:100%!important;min-width:0!important;direction:rtl!important}
#shaysport-mondial .ssm-hero__cards>*{grid-area:auto!important;min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;writing-mode:horizontal-tb!important}
#shaysport-mondial .ssm-hero__factbox{grid-area:auto!important;position:relative!important;min-height:250px!important;border-radius:26px!important;background:#061b38!important;color:#fff!important;box-shadow:0 18px 42px rgba(8,26,51,.18)!important;overflow:hidden!important;padding:24px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;direction:rtl!important}
#shaysport-mondial .ssm-hero__fact{position:absolute!important;inset:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:22px!important;opacity:0!important;transform:translateY(8px)!important;transition:opacity .45s ease,transform .45s ease!important;pointer-events:none!important;min-width:0!important;width:100%!important;writing-mode:horizontal-tb!important}
#shaysport-mondial .ssm-hero__fact.is-active{opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important}
#shaysport-mondial .ssm-hero__fact-number{display:block!important;width:100%!important;max-width:100%!important;font-size:clamp(42px,6vw,68px)!important;line-height:.95!important;font-weight:950!important;color:#d7a53a!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;writing-mode:horizontal-tb!important}
#shaysport-mondial .ssm-hero__fact-title{font-size:20px!important;font-weight:950!important;color:#fff!important;white-space:normal!important}
#shaysport-mondial .ssm-hero__fact-note{font-size:13px!important;color:#d9e5ef!important;line-height:1.45!important;max-width:330px!important;white-space:normal!important}
#shaysport-mondial .ssm-hero__fact--game{background:linear-gradient(135deg,#0a77b8,#061b38)!important}
#shaysport-mondial .ssm-hero__fact--game .ssm-hero__fact-number{font-size:clamp(24px,3vw,34px)!important;line-height:1.2!important;color:#fff!important;max-width:92%!important;margin:0 auto!important}
#shaysport-mondial .ssm-hero__fact--game a{color:#fff!important;text-decoration:none!important;display:inline-block!important;max-width:100%!important;white-space:normal!important}
#shaysport-mondial .ssm-video-panel{grid-area:auto!important;min-height:250px!important;border-radius:26px!important;background:#061b38!important;color:#fff!important;box-shadow:0 18px 42px rgba(8,26,51,.18)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;position:relative!important;width:100%!important;direction:rtl!important}
#shaysport-mondial .ssm-video-panel__head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:12px 14px!important;background:rgba(255,255,255,.08)!important;min-height:52px!important}
#shaysport-mondial .ssm-video-panel__title{font-weight:950!important;font-size:15px!important;color:#fff!important;line-height:1.25!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;min-width:0!important;text-align:right!important}
#shaysport-mondial .ssm-video-panel__controls{display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;direction:ltr!important}
#shaysport-mondial .ssm-video-panel__btn{border:1px solid rgba(255,255,255,.28)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px!important;padding:7px 10px!important;font-weight:850!important;cursor:pointer!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important}
#shaysport-mondial .ssm-video-panel__btn:hover{background:rgba(255,255,255,.22)!important}
#shaysport-mondial .ssm-video-panel__frame{position:relative!important;flex:1 1 auto!important;min-height:190px!important;background:#000!important;overflow:hidden!important}
#shaysport-mondial .ssm-video-panel__frame iframe,#shaysport-mondial .ssm-video-panel__mount{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important}
#shaysport-mondial .ssm-video-panel__frame iframe{pointer-events:none!important}
#shaysport-mondial .ssm-video-panel__pause-cover{position:absolute!important;inset:0!important;background:rgba(0,0,0,.78)!important;color:#fff!important;display:none!important;align-items:center!important;justify-content:center!important;text-align:center!important;font-weight:950!important;font-size:18px!important;padding:18px!important;z-index:2!important}
#shaysport-mondial .ssm-video-panel.is-paused .ssm-video-panel__pause-cover{display:flex!important}
#shaysport-mondial .ssm-video-panel__empty{grid-area:auto!important;min-height:250px!important;border-radius:26px!important;background:rgba(255,255,255,.58)!important;border:1px dashed rgba(8,26,51,.18)!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:18px!important;font-weight:850!important;color:#061b38!important}
@media (max-width:760px){#shaysport-mondial .ssm-hero{padding:18px!important;gap:16px!important;overflow:hidden!important}#shaysport-mondial .ssm-hero__title-row{gap:10px!important;flex-wrap:nowrap!important;align-items:center!important}#shaysport-mondial .ssm-hero__title-row h1{font-size:clamp(25px,7.4vw,38px)!important;line-height:1.08!important;text-align:right!important;max-width:calc(100% - 66px)!important}#shaysport-mondial .ssm-title-logo{width:58px!important;height:58px!important;flex-basis:58px!important}#shaysport-mondial .ssm-title-logo img{width:52px!important;height:52px!important}#shaysport-mondial .ssm-hero__cards{grid-template-columns:1fr!important;gap:16px!important}#shaysport-mondial .ssm-hero__factbox,#shaysport-mondial .ssm-video-panel{min-height:220px!important}#shaysport-mondial .ssm-hero__fact--game .ssm-hero__fact-number{font-size:clamp(24px,8vw,34px)!important}#shaysport-mondial .ssm-video-panel__head{padding:10px!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;min-height:86px!important}#shaysport-mondial .ssm-video-panel__title{font-size:13px!important;white-space:normal!important;text-align:right!important;line-height:1.3!important;max-height:40px!important}#shaysport-mondial .ssm-video-panel__controls{justify-content:flex-start!important}#shaysport-mondial .ssm-video-panel__btn{font-size:11px!important;padding:7px 8px!important}}
@media (max-width:420px){#shaysport-mondial .ssm-hero__title-row{flex-direction:column!important}#shaysport-mondial .ssm-hero__title-row h1{max-width:100%!important;text-align:center!important}#shaysport-mondial .ssm-hero__factbox,#shaysport-mondial .ssm-video-panel{min-height:210px!important}}


.shaysport-mondial-page .ssm-flag,
.shaysport-mondial-page .ssm-match-card-flag,
.shaysport-mondial-page .ssm-standing-card-flag,
.shaysport-mondial-page .ssm-bracket-team-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
}

.shaysport-mondial-page .ssm-flag-img {
    width: 24px;
    height: 18px;
    object-fit: cover;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, .12);
}

.shaysport-mondial-page .ssm-match-card-flag .ssm-flag-img,
.shaysport-mondial-page .ssm-standing-card-flag .ssm-flag-img {
    width: 28px;
    height: 21px;
}


/* v1.7.18 - temporary disable all floating public objects until the UX is redesigned */
body .ssm-floating-tools,
body .shaysport-global-branding,
body .shaysport-global-qr,
body .shaysport-global-toast{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* v1.15.1 bilingual frontend refinements */
#shaysport-mondial[dir="ltr"]{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-hero__cards,
#shaysport-mondial[dir="ltr"] .ssm-hero__factbox,
#shaysport-mondial[dir="ltr"] .ssm-video-panel,
#shaysport-mondial[dir="ltr"] .ssm-match-card,
#shaysport-mondial[dir="ltr"] .ssm-match-inline-details,
#shaysport-mondial[dir="ltr"] .ssm-ko-inline-details{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-knockout-scroll{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-knockout-tree{direction:ltr!important;margin-left:0!important;margin-right:auto!important}
#shaysport-mondial[dir="ltr"] .ssm-bracket-team span:not(.ssm-bracket-team-flag):not(.ssm-match-card-score):not(.ssm-score-penalties):not(.ssm-score-goals){text-align:left!important;direction:ltr!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-team{direction:ltr!important;text-align:left!important;flex-direction:row!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-score{margin-inline-start:auto!important;margin-inline-end:0!important}
#shaysport-mondial[dir="ltr"] .ssm-match-result-modal__dialog,
#shaysport-mondial[dir="ltr"] .ssm-match-result-modal__grid,
#shaysport-mondial[dir="ltr"] .ssm-match-events-block{direction:ltr!important;text-align:left!important}
#shaysport-mondial .ssm-match-result-modal__line span{font-size:16px!important;font-weight:950!important;line-height:1!important}
body .ssm-match-result-modal__line span{font-size:16px!important;font-weight:950!important;line-height:1!important}
@media(max-width:760px){#shaysport-mondial .ssm-match-result-modal__line span,body .ssm-match-result-modal__line span{font-size:14px!important;font-weight:950!important}}


/* v1.15.1 English frontend cleanup */
#shaysport-mondial[dir="ltr"] .ssm-hero__title-row{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-hero__copy{display:none!important}
#shaysport-mondial[dir="ltr"] .ssm-video-panel,#shaysport-mondial[dir="ltr"] .ssm-video-panel__head,#shaysport-mondial[dir="ltr"] .ssm-video-panel__controls,#shaysport-mondial[dir="ltr"] .ssm-video-panel__menu,#shaysport-mondial[dir="ltr"] .ssm-video-panel__menu button{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-video-panel__controls{justify-content:flex-start!important}
#shaysport-mondial[dir="ltr"] .ssm-video-panel__menu{left:0!important;right:auto!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-team{direction:ltr!important;flex-direction:row!important;justify-content:flex-start!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-name{order:2!important;text-align:left!important;direction:ltr!important;margin-left:8px!important;margin-right:0!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-flag{order:1!important}
#shaysport-mondial[dir="ltr"] .ssm-match-card-score{order:3!important;margin-left:auto!important;margin-right:0!important;font-weight:950!important}
#shaysport-mondial[dir="ltr"] .ssm-standing-card,#shaysport-mondial[dir="ltr"] .ssm-standing-card-team,#shaysport-mondial[dir="ltr"] .ssm-standing-inline-details,#shaysport-mondial[dir="ltr"] .ssm-team-inline-details,#shaysport-mondial[dir="ltr"] .ssm-public-team-card,#shaysport-mondial[dir="ltr"] .ssm-public-team-main{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-standing-card-team,#shaysport-mondial[dir="ltr"] .ssm-public-team-main{flex-direction:row!important;justify-content:flex-start!important;gap:10px!important}
#shaysport-mondial[dir="ltr"] .ssm-standing-card-name,#shaysport-mondial[dir="ltr"] .ssm-public-team-name{text-align:left!important;direction:ltr!important}
#shaysport-mondial[dir="ltr"] .ssm-public-team-filter{direction:ltr!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-bracket-team{direction:ltr!important;flex-direction:row!important;justify-content:flex-start!important;text-align:left!important}
#shaysport-mondial[dir="ltr"] .ssm-bracket-team-flag{order:1!important}
#shaysport-mondial[dir="ltr"] .ssm-bracket-team>span:not(.ssm-bracket-team-flag){order:2!important;text-align:left!important;direction:ltr!important}
html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal,html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal__dialog,html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal__grid,html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-event-row{direction:ltr!important;text-align:left!important}
html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal__line{direction:ltr!important;text-align:left!important;justify-content:flex-end!important;gap:10px!important}
html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal__line strong{margin:0!important;text-align:right!important}
html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-result-modal__line span{font-weight:950!important;text-align:right!important}
html:has(#shaysport-mondial[dir="ltr"]) body .ssm-match-events-title{text-align:left!important;direction:ltr!important}
