.lm-match-slider {
    position: relative;
    width: 100%;
    background: #f4f4f4;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    overflow: hidden;
    font-family: inherit;
}

.lm-match-slider,
.lm-match-slider * {
    box-sizing: border-box;
}

.lm-match-slider-viewport {
    width: 100%;
    overflow: hidden;
}

.lm-match-slider-track {
    display: flex;
    align-items: stretch;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.lm-match-slider-track::-webkit-scrollbar {
    display: none;
}

.lm-match-card {
    flex: 0 0 calc(100% / var(--lm-visible, 6));
    min-width: 0;
    min-height: 150px;
    padding: 18px 26px 16px;
    background: #f7f7f7;
    border-right: 1px solid #d7d7d7;
    text-align: center;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.lm-match-card-league {
    margin-bottom: 13px;
    color: #111;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lm-match-card-status {
    min-height: 16px;
    margin-bottom: 14px;
    color: #d40000;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.lm-match-card-status.is-live {
    animation: lmLivePulse 1.35s infinite;
}

@keyframes lmLivePulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .45; }
}

.lm-match-card-scoreline,
.lm-match-card-fixture {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 14px;
    min-height: 38px;
}

.lm-match-card-team {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: #111;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.01em;
    text-transform: uppercase;
}

.lm-match-card-team-home {
    justify-content: flex-end;
}

.lm-match-card-team-away {
    justify-content: flex-start;
}

.lm-match-card-logo {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    object-fit: contain;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lm-match-card-logo-fallback {
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0;
}

.lm-match-card-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 76px;
    padding: 0 6px;
    color: #111;
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
}

.lm-match-card-score strong,
.lm-match-card-score span {
    display: inline-block;
    color: inherit;
    font: inherit;
}

.lm-match-card-score-separator {
    margin: 0 -2px;
}

.lm-match-card-date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 78px;
    color: #222;
    line-height: 1.05;
    text-transform: uppercase;
}

.lm-match-card-date strong {
    display: block;
    margin-bottom: 3px;
    color: #222;
    font-size: 12px;
    font-weight: 900;
}

.lm-match-card-date span {
    display: block;
    color: #222;
    font-size: 12px;
    font-weight: 900;
}

.lm-match-card-meta {
    margin-top: 11px;
    color: #666;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lm-match-slider-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid #e3e3e3;
    border-radius: 50%;
    background: #fff;
    color: #111;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.lm-match-slider-arrow span {
    display: block;
    margin-top: -2px;
    font-size: 30px;
    font-weight: 300;
    line-height: 1;
}

.lm-match-slider-arrow:hover {
    transform: translateY(-50%) scale(1.04);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .16);
}

.lm-match-slider-arrow.is-disabled {
    opacity: .35;
    pointer-events: none;
}

.lm-match-slider-prev {
    left: 16px;
}

.lm-match-slider-next {
    right: 16px;
}

.lm-match-slider::before,
.lm-match-slider::after {
    content: "";
    position: absolute;
    top: 0;
    z-index: 5;
    width: 88px;
    height: 100%;
    pointer-events: none;
}

.lm-match-slider::before {
    left: 0;
    background: linear-gradient(90deg, #f4f4f4 0%, rgba(244,244,244,0) 100%);
}

.lm-match-slider::after {
    right: 0;
    background: linear-gradient(270deg, #f4f4f4 0%, rgba(244,244,244,0) 100%);
}

.lm-match-slider-empty {
    padding: 18px 20px;
    background: #f7f7f7;
    border: 1px solid #e5e5e5;
    color: #666;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

@media (max-width: 1180px) {
    .lm-match-card {
        flex-basis: calc(100% / 3);
    }
}

@media (max-width: 767px) {
    .lm-match-card {
        flex-basis: 84%;
        padding: 18px 22px 16px;
    }

    .lm-match-slider-prev {
        left: 10px;
    }

    .lm-match-slider-next {
        right: 10px;
    }

    .lm-match-slider-arrow {
        width: 42px;
        height: 42px;
    }

    .lm-match-slider::before,
    .lm-match-slider::after {
        width: 56px;
    }
}

/* League Manager Elementor homepage widgets */
.lm-home-widget,
.lm-home-widget * {
    box-sizing: border-box;
}

.lm-home-widget {
    width: 100%;
    font-family: inherit;
}

.lm-home-widget-empty {
    padding: 24px;
    border: 1px solid #e8e8e8;
    background: #fff;
    color: #777;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.lm-home-widget-empty.is-inside {
    border: 0;
    padding: 18px;
    background: #fafafa;
}

.lm-widget-kicker,
.lm-widget-head span {
    display: block;
    color: #d50000;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.02em;
    text-transform: uppercase;
}

.lm-widget-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid #ededed;
}

.lm-widget-head h3 {
    margin: 6px 0 0;
    color: #101010;
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.04em;
    text-transform: uppercase;
}

.lm-widget-head a {
    color: #d50000;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.lm-widget-head-compact {
    padding: 20px 22px 16px;
}

.lm-widget-head-compact h3 {
    font-size: 18px;
}

.lm-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0;
}

/* Next Match */
.lm-next-match-widget {
    position: relative;
    min-height: 380px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 8px;
    background: #090909;
    color: #fff;
    box-shadow: 0 18px 45px rgba(0,0,0,.08);
}

.lm-next-match-bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 50% 90%, rgba(213,0,0,.45), rgba(213,0,0,0) 44%),
        linear-gradient(145deg, rgba(213,0,0,.25), rgba(8,8,8,.65) 42%, rgba(8,8,8,.98)),
        repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 1px, transparent 1px 18px);
    opacity: .95;
}

.lm-next-match-widget::after {
    content: "";
    position: absolute;
    left: 8%;
    right: 8%;
    bottom: 42px;
    height: 90px;
    border-top: 1px solid rgba(255,255,255,.14);
    border-radius: 50% 50% 0 0;
    opacity: .5;
    pointer-events: none;
}

.lm-next-match-widget > *:not(.lm-next-match-bg) {
    position: relative;
    z-index: 2;
}

.lm-next-match-week {
    margin-top: 36px;
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

.lm-next-match-grid {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 30px;
    margin-top: 30px;
}

.lm-next-match-team {
    min-width: 0;
    text-align: center;
}

.lm-next-match-logo {
    width: 96px;
    height: 96px;
    object-fit: contain;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lm-next-match-team strong {
    display: block;
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -0.05em;
}

.lm-next-match-team span {
    display: block;
    margin-top: 7px;
    color: rgba(255,255,255,.65);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.lm-next-match-center {
    min-width: 125px;
    text-align: center;
}

.lm-next-match-vs,
.lm-next-match-score {
    margin-bottom: 16px;
    color: #fff;
    font-size: 34px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.06em;
    text-transform: uppercase;
}

.lm-next-match-center strong,
.lm-next-match-center span {
    display: block;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.15;
    text-transform: uppercase;
}

.lm-next-match-center span {
    margin-top: 4px;
}

.lm-next-match-live {
    display: inline-flex !important;
    width: auto;
    margin: 0 auto 12px !important;
    padding: 6px 9px;
    border-radius: 999px;
    background: #d50000;
    color: #fff !important;
    font-size: 11px !important;
}

.lm-next-match-venue {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 34px;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
}

.lm-next-match-button {
    display: table;
    margin: 24px auto 0;
    padding: 15px 24px;
    border-radius: 6px;
    background: #d50000;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    transition: transform .2s ease, background .2s ease;
}

.lm-next-match-button:hover {
    transform: translateY(-1px);
    background: #f00000;
    color: #fff;
}

.lm-next-match-button.is-static {
    cursor: default;
}

/* Standings */
.lm-standings-widget,
.lm-results-schedule-widget {
    overflow: hidden;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 42px rgba(0,0,0,.05);
}

.lm-standings-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.lm-standings-table {
    width: 100%;
    min-width: 660px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    background: #fff;
}

.lm-standings-table th,
.lm-standings-table td {
    padding: 17px 14px;
    border: 0;
    border-bottom: 1px solid #ededed;
    color: #111;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
}

.lm-standings-table th {
    color: #555;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.lm-standings-table tbody tr:last-child td {
    border-bottom: 0;
}

.lm-standings-team {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 180px;
    text-align: left !important;
}

.lm-standings-team strong {
    color: #111;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: -0.02em;
}

.lm-standings-logo {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    object-fit: contain;
}

.lm-form-badges {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    white-space: nowrap;
}

.lm-form-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
}

.lm-form-w { background: #19b91f; }
.lm-form-d { background: #999; }
.lm-form-l { background: #f1162a; }
.lm-form-empty { color: #999; font-weight: 900; }

/* Results + upcoming */
.lm-results-schedule-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.lm-results-box {
    border-right: 1px solid #e8e8e8;
}

.lm-home-match-list {
    display: flex;
    flex-direction: column;
}

.lm-home-match-row {
    display: grid;
    grid-template-columns: 130px minmax(240px, 1fr) 170px;
    align-items: center;
    gap: 18px;
    min-height: 84px;
    padding: 15px 22px;
    border-top: 1px solid #ededed;
    background: #fff;
}

.lm-home-match-date strong,
.lm-home-match-date span {
    display: block;
    color: #111;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
}

.lm-home-match-date span {
    margin-top: 5px;
    color: #555;
    font-weight: 700;
    text-transform: none;
}

.lm-home-match-teams {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.lm-home-match-team {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: #111;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.lm-home-match-team-home {
    justify-content: flex-end;
}

.lm-home-match-team-away {
    justify-content: flex-start;
}

.lm-home-match-logo {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    object-fit: contain;
}

.lm-home-match-score {
    min-width: 64px;
    color: #111;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    letter-spacing: -0.04em;
}

.lm-home-match-score.is-vs {
    font-size: 13px;
    text-transform: uppercase;
}

.lm-home-match-venue {
    color: #555;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    text-align: right;
}

@media (max-width: 1024px) {
    .lm-results-schedule-grid {
        grid-template-columns: 1fr;
    }

    .lm-results-box {
        border-right: 0;
        border-bottom: 1px solid #e8e8e8;
    }
}

@media (max-width: 767px) {
    .lm-widget-head {
        padding: 18px 18px 14px;
    }

    .lm-widget-head h3 {
        font-size: 18px;
    }

    .lm-next-match-widget {
        padding: 22px 18px;
        min-height: auto;
    }

    .lm-next-match-grid {
        grid-template-columns: 1fr;
        gap: 22px;
        margin-top: 24px;
    }

    .lm-next-match-center {
        order: -1;
    }

    .lm-next-match-logo {
        width: 78px;
        height: 78px;
    }

    .lm-next-match-team strong {
        font-size: 19px;
    }

    .lm-home-match-row {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 16px 18px;
    }

    .lm-home-match-date,
    .lm-home-match-venue {
        text-align: center;
    }

    .lm-home-match-teams {
        grid-template-columns: 1fr auto 1fr;
    }

    .lm-standings-table {
        min-width: 620px;
    }
}

/* League Manager homepage refinements - v1.1.8 */
:root {
    --lm-red: #c80000;
}

.lm-widget-kicker,
.lm-widget-head span,
.lm-card-simple-head h3,
.lm-card-simple-head a,
.lm-card-simple-head span,
.lm-standings-footer a,
.lm-standings-footer span {
    color: var(--lm-red);
}

.lm-featured-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    align-items: stretch;
}

.lm-featured-overview-grid > .lm-home-widget {
    height: 100%;
}

.lm-featured-overview-grid .lm-next-match-widget,
.lm-featured-overview-grid .lm-standings-widget {
    min-height: 390px;
    height: 100%;
}

.lm-card-simple-head {
    min-height: 64px;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #eeeeee;
    display: flex;
    align-items: center;
}

.lm-card-simple-head-row {
    justify-content: space-between;
    gap: 18px;
}

.lm-card-simple-head h3 {
    margin: 0;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.03em;
    text-transform: uppercase;
}

.lm-card-simple-head a,
.lm-card-simple-head span,
.lm-standings-footer a,
.lm-standings-footer span {
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.lm-card-simple-head a:hover,
.lm-standings-footer a:hover {
    color: #ff0000;
}

/* Stadium background and venue SVG */
.lm-next-match-widget {
    border-radius: 8px;
    border: 0;
    background: #050505;
    box-shadow: 0 16px 42px rgba(0,0,0,.12);
}

.lm-next-match-bg {
    background-image:
        linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.82)),
        radial-gradient(circle at 50% 72%, rgba(200,0,0,.36), rgba(0,0,0,0) 42%),
        url("stadium-night.png");
    background-size: cover;
    background-position: center;
    opacity: 1;
}

.lm-next-match-widget::after {
    left: 11%;
    right: 11%;
    bottom: 56px;
    height: 78px;
    border-color: rgba(255,255,255,.10);
}

.lm-next-match-widget .lm-widget-kicker {
    color: var(--lm-red);
}

.lm-next-match-button {
    border-radius: 5px;
    background: var(--lm-red);
}

.lm-next-match-button:hover {
    background: #e30000;
}

.lm-next-match-venue {
    gap: 8px;
}

.lm-venue-icon {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    color: #ffffff;
}

/* Standings card like the reference image */
.lm-standings-widget {
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    border: 1px solid #e7e7e7;
    box-shadow: 0 14px 38px rgba(0,0,0,.06);
}

.lm-standings-table-wrap {
    flex: 1 1 auto;
}

.lm-standings-table {
    min-width: 560px;
}

.lm-standings-table th,
.lm-standings-table td {
    padding: 16px 11px;
    font-size: 12px;
}

.lm-standings-table th {
    font-size: 10px;
    color: #484848;
}

.lm-standings-team {
    min-width: 150px;
    gap: 8px;
}

.lm-standings-team strong {
    font-size: 12px;
}

.lm-standings-logo {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
}

.lm-form-badge {
    width: 20px;
    height: 20px;
    font-size: 9px;
}

.lm-standings-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    padding: 16px 20px 20px;
    border-top: 1px solid #f2f2f2;
}

/* Latest results / upcoming matches should be two separate clean cards */
.lm-results-schedule-widget {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.lm-results-schedule-grid {
    gap: 24px;
    align-items: stretch;
}

.lm-results-box,
.lm-schedule-box {
    overflow: hidden;
    border: 1px solid #e7e7e7;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(0,0,0,.045);
}

.lm-results-box {
    border-right: 1px solid #e7e7e7;
}

.lm-home-match-row {
    grid-template-columns: 110px minmax(245px, 1fr) 150px;
    min-height: 92px;
    padding: 16px 22px;
    border-top: 1px solid #eeeeee;
}

.lm-home-match-date strong {
    font-size: 10px;
    color: #111;
}

.lm-home-match-date span {
    font-size: 10px;
    color: #505050;
}

.lm-home-match-team {
    gap: 9px;
    font-size: 12px;
    text-transform: none;
}

.lm-home-match-team span {
    overflow: hidden;
    color: #111;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lm-home-match-logo {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
}

.lm-home-match-score {
    min-width: 72px;
    color: #111;
    font-size: 20px;
    letter-spacing: -0.05em;
}

.lm-home-match-score.is-vs {
    min-width: 38px;
    font-size: 12px;
    letter-spacing: 0;
    text-transform: uppercase;
}

.lm-home-match-venue {
    color: #505050;
    font-size: 10px;
    line-height: 1.25;
}

@media (max-width: 1024px) {
    .lm-featured-overview-grid {
        grid-template-columns: 1fr;
    }

    .lm-featured-overview-grid .lm-next-match-widget,
    .lm-featured-overview-grid .lm-standings-widget {
        min-height: auto;
    }

    .lm-results-schedule-grid {
        grid-template-columns: 1fr;
    }

    .lm-results-box {
        border-right: 1px solid #e7e7e7;
        border-bottom: 1px solid #e7e7e7;
    }
}

@media (max-width: 767px) {
    .lm-card-simple-head {
        padding: 18px 18px 14px;
    }

    .lm-card-simple-head h3 {
        font-size: 14px;
    }

    .lm-card-simple-head a,
    .lm-card-simple-head span {
        font-size: 10px;
    }

    .lm-home-match-row {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .lm-home-match-teams {
        grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    }

    .lm-home-match-team {
        font-size: 11px;
    }
}


/* League Manager homepage refinements - v1.1.9 */
.lm-featured-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    align-items: stretch;
}

.lm-featured-overview-grid > .lm-home-widget,
.lm-featured-overview-grid .lm-next-match-widget,
.lm-featured-overview-grid .lm-standings-widget {
    width: 100%;
    height: 100%;
}

.lm-featured-overview-grid .lm-next-match-widget,
.lm-featured-overview-grid .lm-standings-widget {
    min-height: 390px;
}

.lm-next-match-bg {
    background-image:
        linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.38) 40%, rgba(0,0,0,.88) 100%),
        radial-gradient(circle at 50% 76%, rgba(200,0,0,.42), rgba(200,0,0,.10) 37%, rgba(0,0,0,0) 64%),
        url("stadium-night.png");
    background-size: cover;
    background-position: center center;
}

@media (max-width: 1024px) {
    .lm-featured-overview-grid {
        grid-template-columns: 1fr;
    }

    .lm-featured-overview-grid .lm-next-match-widget,
    .lm-featured-overview-grid .lm-standings-widget {
        min-height: auto;
    }
}


/* League Manager public pages and clickable cards - v1.2.1 */
.lm-team-public-link,
.lm-match-card-score,
.lm-match-card-date,
.lm-home-match-score {
    color: inherit;
    text-decoration: none !important;
}

.lm-next-match-team.lm-team-public-link {
    display: block;
    color: inherit;
    text-decoration: none !important;
}

.lm-next-match-team.lm-team-public-link:hover strong,
.lm-match-public-team:hover strong {
    color: #ffffff;
}

.lm-match-card-team:hover span,
.lm-home-match-team:hover span,
.lm-standings-team-link:hover strong {
    color: var(--lm-red);
}

.lm-match-card {
    position: relative;
}

.lm-match-card-cover-link,
.lm-row-cover-link {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    text-indent: -9999px;
    overflow: hidden;
}

.lm-match-card > *:not(.lm-match-card-cover-link),
.lm-home-match-row > *:not(.lm-row-cover-link) {
    position: relative;
    z-index: 2;
}

.lm-match-card .lm-team-public-link,
.lm-match-card .lm-match-card-score,
.lm-match-card .lm-match-card-date,
.lm-home-match-row .lm-team-public-link,
.lm-home-match-row .lm-home-match-score {
    position: relative;
    z-index: 4;
}

.lm-match-card-score:hover,
.lm-match-card-date:hover,
.lm-home-match-score:hover {
    color: var(--lm-red);
}

.lm-home-match-row {
    position: relative;
    transition: background .2s ease, box-shadow .2s ease;
}

.lm-home-match-row:hover {
    background: #fafafa;
}

.lm-venue-icon {
    display: inline-block;
    vertical-align: -3px;
}

/* Public team/match pages */
.lm-public-page,
.lm-public-page * {
    box-sizing: border-box;
}

.lm-public-page {
    width: min(1180px, calc(100% - 40px));
    margin: 42px auto 70px;
    font-family: inherit;
    color: #111;
}

.lm-public-empty {
    padding: 28px;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
    color: #666;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

.lm-public-empty.is-inside {
    border: 0;
    border-radius: 0;
    background: #fafafa;
}

.lm-public-hero {
    display: grid;
    align-items: center;
    gap: 28px;
    min-height: 260px;
    margin-bottom: 24px;
    padding: 34px;
    overflow: hidden;
    border-radius: 10px;
    background:
        linear-gradient(135deg, rgba(0,0,0,.92), rgba(35,0,0,.86)),
        url("stadium-night.png");
    background-size: cover;
    background-position: center;
    color: #fff;
    box-shadow: 0 18px 50px rgba(0,0,0,.14);
}

.lm-team-hero {
    grid-template-columns: auto 1fr auto;
}

.lm-match-hero {
    grid-template-columns: 1fr 1.1fr 1fr;
    text-align: center;
}

.lm-public-hero-logo,
.lm-match-public-team {
    min-width: 0;
}

.lm-public-team-logo {
    width: 112px;
    height: 112px;
    object-fit: contain;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lm-public-hero-content h1,
.lm-match-public-center h1 {
    margin: 8px 0 0;
    color: #fff;
    font-size: clamp(36px, 5vw, 64px);
    font-weight: 950;
    line-height: .95;
    letter-spacing: -0.07em;
    text-transform: uppercase;
}

.lm-public-kicker {
    display: inline-flex;
    color: var(--lm-red);
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.lm-public-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 18px;
}

.lm-public-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.82);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.lm-public-hero-side {
    min-width: 150px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    background: rgba(255,255,255,.08);
    text-align: center;
}

.lm-public-hero-side > span,
.lm-public-metric > span,
.lm-public-team-mini > span {
    display: block;
    color: #666;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.lm-public-hero-side > span {
    color: rgba(255,255,255,.68);
}

.lm-public-hero-side strong {
    display: block;
    margin-top: 10px;
    color: #fff;
    font-size: 38px;
    font-weight: 950;
    line-height: 1;
}

.lm-public-metrics,
.lm-public-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.lm-public-stat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
}

.lm-public-metric {
    min-height: 94px;
    padding: 18px;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(0,0,0,.045);
}

.lm-public-metric strong {
    display: block;
    margin-top: 12px;
    color: #111;
    font-size: 30px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.06em;
}

.lm-public-metric .lm-form-badges {
    justify-content: flex-start;
}

.lm-public-grid {
    display: grid;
    gap: 24px;
    margin-bottom: 24px;
}

.lm-public-grid-2 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.lm-public-card {
    overflow: hidden;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(0,0,0,.045);
}

.lm-public-card-head {
    min-height: 64px;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #eeeeee;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lm-public-card-head h2 {
    margin: 0;
    color: var(--lm-red);
    font-size: 15px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-public-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.lm-public-table {
    width: 100%;
    min-width: 680px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
}

.lm-public-table th,
.lm-public-table td {
    padding: 16px 18px;
    border: 0;
    border-bottom: 1px solid #eeeeee;
    color: #111;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.2;
    text-align: left;
}

.lm-public-table th {
    color: #555;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-public-table tbody tr:last-child td {
    border-bottom: 0;
}

.lm-public-table-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) repeat(6, auto);
    align-items: center;
    gap: 12px;
    padding: 24px;
}

.lm-public-table-row span,
.lm-public-table-row strong {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    background: #f5f5f5;
    color: #111;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.lm-public-table-row strong {
    background: transparent;
    font-size: 18px;
}

.lm-public-match-list {
    display: flex;
    flex-direction: column;
}

.lm-public-match-item {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr) 180px;
    align-items: center;
    gap: 18px;
    min-height: 78px;
    padding: 16px 22px;
    border-top: 1px solid #eeeeee;
    color: inherit;
    text-decoration: none !important;
}

.lm-public-match-item:first-child {
    border-top: 0;
}

.lm-public-match-item:hover {
    background: #fafafa;
}

.lm-public-match-item span,
.lm-public-match-item em {
    color: #555;
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
}

.lm-public-match-item strong {
    color: #111;
    font-size: 14px;
    font-weight: 950;
    text-align: center;
}

.lm-public-match-item em {
    text-align: right;
}

.lm-match-public-team {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    text-decoration: none !important;
}

.lm-match-public-team strong {
    display: block;
    margin-top: 14px;
    color: #fff;
    font-size: 24px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.05em;
}

.lm-match-public-team span {
    display: block;
    margin-top: 8px;
    color: rgba(255,255,255,.62);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-match-public-center strong,
.lm-match-public-center span,
.lm-match-public-center small {
    display: block;
    color: rgba(255,255,255,.85);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.35;
    text-transform: uppercase;
}

.lm-match-public-center h1 {
    margin-bottom: 18px;
}

.lm-match-public-center small {
    margin-top: 16px;
    color: rgba(255,255,255,.72);
}

.lm-match-public-center small .lm-venue-icon {
    margin-right: 6px;
}

.lm-public-team-mini {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 14px 18px;
    padding: 24px;
}

.lm-public-team-mini > strong {
    color: #111;
    font-size: 24px;
    font-weight: 950;
    line-height: 1;
}

.lm-public-events {
    display: flex;
    flex-direction: column;
}

.lm-public-event-row {
    display: grid;
    grid-template-columns: 60px 160px 1fr 1fr auto;
    align-items: center;
    gap: 16px;
    min-height: 64px;
    padding: 14px 22px;
    border-top: 1px solid #eeeeee;
}

.lm-public-event-row:first-child {
    border-top: 0;
}

.lm-public-event-row span,
.lm-public-event-row em,
.lm-public-event-row small {
    color: #555;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.lm-public-event-row strong {
    color: #111;
    font-size: 13px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-compare-board {
    padding: 18px 24px 26px;
}

.lm-compare-teams {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 12px;
}

.lm-compare-teams strong {
    color: #111;
    font-size: 13px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-compare-teams strong:last-child {
    text-align: right;
}

.lm-compare-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) 56px;
    align-items: center;
    gap: 18px;
    padding: 13px 0;
}

.lm-compare-value {
    color: #111;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
}

.lm-compare-right-value {
    text-align: right;
}

.lm-compare-bars span {
    display: block;
    margin-bottom: 9px;
    color: #111;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

.lm-compare-bar-line {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    align-items: center;
}

.lm-compare-left-bar,
.lm-compare-right-bar {
    height: 24px;
    border-radius: 5px;
}

.lm-compare-left-bar {
    margin-left: auto;
    background: var(--lm-red);
}

.lm-compare-right-bar {
    margin-right: auto;
    background: #d9cfba;
}

@media (max-width: 900px) {
    .lm-public-page {
        width: min(100% - 24px, 1180px);
        margin-top: 24px;
    }

    .lm-team-hero,
    .lm-match-hero,
    .lm-public-grid-2,
    .lm-public-metrics,
    .lm-public-stat-grid {
        grid-template-columns: 1fr;
    }

    .lm-public-hero {
        text-align: center;
        padding: 28px 20px;
    }

    .lm-public-meta {
        justify-content: center;
    }

    .lm-public-hero-side {
        width: 100%;
    }

    .lm-public-table-row,
    .lm-public-match-item,
    .lm-public-event-row {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .lm-public-match-item strong,
    .lm-public-match-item em {
        text-align: center;
    }

    .lm-compare-row {
        grid-template-columns: 40px minmax(0, 1fr) 40px;
        gap: 10px;
    }
}


.lm-standings-team-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: inherit;
    text-decoration: none !important;
}


/* League Manager refinements - v1.2.2 */
.lm-public-page {
    width: min(1440px, calc(100% - 40px));
    margin-top: 32px;
}

.lm-public-grid,
.lm-public-metrics,
.lm-public-card,
.lm-match-summary-grid,
.lm-team-profile-layout,
.lm-team-profile-main {
    margin-bottom: 24px;
}

/* Slider click behavior: whole match card leads to match, team links stay above */
.lm-match-card-cover-link {
    z-index: 3;
    cursor: pointer;
}

.lm-match-card > *:not(.lm-match-card-cover-link) {
    z-index: 2;
}

.lm-match-card .lm-team-public-link,
.lm-match-card .lm-match-card-score,
.lm-match-card .lm-match-card-date {
    z-index: 5;
}

.lm-match-card-league,
.lm-match-card-status,
.lm-match-card-meta {
    pointer-events: none;
}

.lm-match-card {
    cursor: pointer;
}

/* Latest results / upcoming: no full-row click, only teams and score/v */
.lm-home-match-row {
    cursor: default;
}

.lm-home-match-row .lm-home-match-date,
.lm-home-match-row .lm-home-match-venue {
    pointer-events: none;
}

/* Match summary section below match hero */
.lm-match-summary-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.lm-match-summary-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 24px;
    padding: 22px 24px;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(0,0,0,.045);
}

.lm-match-summary-team {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #111;
    text-decoration: none !important;
    min-width: 0;
}

.lm-match-summary-team:hover strong {
    color: var(--lm-red);
}

.lm-match-summary-logo {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    object-fit: contain;
}

.lm-match-summary-team strong {
    display: block;
    color: #111;
    font-size: 22px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.04em;
}

.lm-match-summary-team span {
    display: block;
    margin-top: 7px;
    color: #777;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-match-summary-stats {
    display: grid;
    grid-template-columns: repeat(3, auto);
    align-items: center;
    gap: 12px;
}

.lm-match-summary-stats > div {
    min-width: 104px;
    min-height: 74px;
    padding: 14px 16px;
    border-radius: 7px;
    background: #f7f7f7;
    text-align: center;
}

.lm-match-summary-stats > div > span {
    display: block;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-match-summary-stats > div > strong {
    display: block;
    margin-top: 10px;
    color: #111;
    font-size: 25px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.05em;
}

.lm-match-summary-stats .lm-form-badges {
    margin-top: 10px;
}

/* Team profile page redesigned */
.lm-team-profile-layout {
    display: grid;
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.lm-team-profile-sidebar {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.lm-team-profile-card {
    position: relative;
    min-height: 260px;
    padding: 28px;
    overflow: hidden;
    border-radius: 16px;
    background: var(--lm-red);
    color: #fff;
    box-shadow: 0 18px 45px rgba(200,0,0,.16);
}

.lm-team-profile-card-bg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,0) 42%),
        repeating-linear-gradient(45deg, rgba(255,255,255,.06) 0 34px, rgba(255,255,255,0) 34px 70px);
    opacity: .8;
}

.lm-team-profile-card > *:not(.lm-team-profile-card-bg) {
    position: relative;
    z-index: 2;
}

.lm-team-profile-logo {
    width: 92px;
    height: 92px;
    object-fit: contain;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lm-team-profile-card h1 {
    margin: 24px 0 0;
    color: #fff;
    font-size: 42px;
    font-weight: 950;
    line-height: .95;
    letter-spacing: -0.06em;
}

.lm-team-profile-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

.lm-team-profile-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255,255,255,.9);
    font-size: 13px;
    font-weight: 850;
}

.lm-team-profile-meta .lm-venue-icon {
    width: 15px;
    height: 15px;
}

.lm-team-position-card {
    border-radius: 16px;
}

.lm-team-position-big {
    padding: 28px;
}

.lm-team-position-big strong {
    display: block;
    color: #111;
    font-size: 64px;
    font-weight: 950;
    line-height: .85;
    letter-spacing: -0.08em;
}

.lm-team-position-big > span,
.lm-team-position-big > em {
    display: block;
    margin-top: 12px;
    color: #555;
    font-size: 12px;
    font-style: normal;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-team-position-big .lm-form-badges {
    justify-content: flex-start;
    margin-top: 18px;
}

.lm-team-profile-main {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.lm-team-profile-main > * {
    margin-bottom: 0;
}

.lm-team-tabs-visual {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    min-height: 42px;
    align-items: center;
    border-bottom: 1px solid #e6e6e6;
}

.lm-team-tabs-visual span {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    color: #777;
    font-size: 14px;
    font-weight: 800;
}

.lm-team-tabs-visual span.is-active {
    color: #111;
    font-weight: 950;
}

.lm-team-tabs-visual span.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    border-radius: 999px;
    background: var(--lm-red);
}

.lm-team-profile-metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
}

.lm-team-matches-grid {
    margin: 0;
}

.lm-team-stat-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 24px;
}

.lm-table-team-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #111;
    text-decoration: none !important;
}

.lm-table-team-link:hover strong {
    color: var(--lm-red);
}

.lm-table-team-logo {
    width: 26px;
    height: 26px;
    flex: 0 0 26px;
    object-fit: contain;
}

.lm-team-table-snapshot tr.is-current-team td {
    background: #fff5f5;
}

.lm-team-table-snapshot tr.is-current-team td:first-child {
    border-left: 4px solid var(--lm-red);
}

.lm-public-match-item {
    grid-template-columns: 130px minmax(0, 1fr) 160px;
}

.lm-public-match-item span {
    text-transform: uppercase;
}

.lm-public-match-item span::first-line {
    font-weight: 950;
}

/* Cleaner spacing for match page */
.lm-match-public-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.lm-match-public-page > * {
    margin-bottom: 0;
}

@media (max-width: 1100px) {
    .lm-team-profile-layout,
    .lm-match-summary-grid {
        grid-template-columns: 1fr;
    }

    .lm-team-profile-sidebar {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .lm-match-summary-card {
        grid-template-columns: 1fr;
    }

    .lm-match-summary-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .lm-public-page {
        width: min(100% - 24px, 1440px);
    }

    .lm-team-profile-sidebar,
    .lm-team-profile-metrics,
    .lm-team-stat-grid,
    .lm-match-summary-stats {
        grid-template-columns: 1fr;
    }

    .lm-team-profile-card h1 {
        font-size: 34px;
    }

    .lm-public-match-item {
        grid-template-columns: 1fr;
    }
}


.lm-public-match-item > span {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.lm-public-match-item > span strong {
    color: #111;
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-public-match-item > span small {
    color: #666;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
}


/* CSS isolation fixes - v1.2.3
   Keep generic section label selectors from overriding form badges. */
.lm-public-page .lm-form-badges,
.lm-home-widget .lm-form-badges,
.lm-standings-widget .lm-form-badges,
.lm-match-summary-stats .lm-form-badges,
.lm-public-metric .lm-form-badges,
.lm-public-team-mini .lm-form-badges,
.lm-team-position-big .lm-form-badges {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    white-space: nowrap;
}

.lm-public-page .lm-form-badge,
.lm-home-widget .lm-form-badge,
.lm-standings-widget .lm-form-badge,
.lm-match-summary-stats .lm-form-badge,
.lm-public-metric .lm-form-badge,
.lm-public-team-mini .lm-form-badge,
.lm-team-position-big .lm-form-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    min-width: 22px;
    min-height: 22px;
    padding: 0;
    border-radius: 50%;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.lm-public-page .lm-form-w,
.lm-home-widget .lm-form-w,
.lm-standings-widget .lm-form-w {
    background: #19b91f;
}

.lm-public-page .lm-form-d,
.lm-home-widget .lm-form-d,
.lm-standings-widget .lm-form-d {
    background: #999;
}

.lm-public-page .lm-form-l,
.lm-home-widget .lm-form-l,
.lm-standings-widget .lm-form-l {
    background: #f1162a;
}


/* League Manager refinements - v1.2.4 */
.lm-team-profile-card-compact {
    min-height: 170px;
    padding: 22px;
    border-radius: 12px;
}

.lm-team-profile-head {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
}

.lm-team-profile-head > div {
    min-width: 0;
}

.lm-team-profile-head span {
    display: block;
    margin-bottom: 7px;
    color: rgba(255,255,255,.72);
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-team-profile-card-compact .lm-team-profile-logo {
    width: 66px;
    height: 66px;
    flex: 0 0 66px;
}

.lm-team-profile-card-compact h1 {
    margin: 0;
    color: #fff;
    font-size: 28px;
    font-weight: 950;
    line-height: .98;
    letter-spacing: -0.055em;
}

.lm-team-profile-card-compact .lm-team-profile-meta {
    position: relative;
    z-index: 2;
    margin-top: 18px;
    gap: 10px;
}

.lm-team-profile-card-compact .lm-team-profile-meta span {
    font-size: 11px;
}

/* Real clickable team tabs */
.lm-team-tabs-visual {
    gap: 10px;
    border-bottom: 0;
}

.lm-team-tabs-visual button {
    position: relative;
    appearance: none;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #e8e8e8;
    border-radius: 999px;
    background: #fff;
    color: #666;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.lm-team-tabs-visual button:hover {
    border-color: #d8d8d8;
    color: #111;
}

.lm-team-tabs-visual button.is-active {
    border-color: var(--lm-red);
    background: var(--lm-red);
    color: #fff;
    box-shadow: 0 10px 26px rgba(200,0,0,.16);
}

.lm-team-tabs-visual button.is-active::after {
    display: none;
}

.lm-team-tab-panel {
    display: none;
}

.lm-team-tab-panel.is-active {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Overview metric cards */
.lm-team-overview-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.lm-team-overview-metric {
    min-height: 96px;
    padding: 18px;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(200,0,0,.045), rgba(255,255,255,0) 48%),
        #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,.04);
}

.lm-team-overview-metric span {
    display: block;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-team-overview-metric strong {
    display: block;
    margin-top: 13px;
    color: #111;
    font-size: 34px;
    font-weight: 950;
    line-height: .95;
    letter-spacing: -0.07em;
}

.lm-team-overview-metric.is-primary {
    border-color: rgba(200,0,0,.22);
    background:
        linear-gradient(135deg, rgba(200,0,0,.11), rgba(255,255,255,0) 55%),
        #fff;
}

.lm-team-overview-metric.is-primary strong {
    color: var(--lm-red);
}

.lm-team-overview-match-card {
    margin: 0;
}

/* Keep overview flow clean */
.lm-team-profile-main {
    gap: 24px;
}

.lm-team-profile-main > .lm-team-tab-panel,
.lm-team-tab-panel > * {
    margin-bottom: 0;
}

/* Game events order is controlled by PHP; keep spacing consistent */
.lm-match-public-page > .lm-public-card,
.lm-match-public-page > .lm-match-summary-grid {
    margin-bottom: 0;
}

@media (max-width: 1100px) {
    .lm-team-overview-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .lm-team-profile-card-compact h1 {
        font-size: 24px;
    }

    .lm-team-profile-head {
        align-items: flex-start;
    }

    .lm-team-overview-stats {
        grid-template-columns: 1fr;
    }

    .lm-team-tabs-visual button {
        flex: 1 1 auto;
        justify-content: center;
    }
}


/* League Manager team page polish - v1.2.5 */
.lm-team-profile-card-compact {
    min-height: 118px;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(200,0,0,.10);
}

.lm-team-profile-card-compact .lm-team-profile-logo {
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    max-width: 60px;
    max-height: 60px;
}

.lm-team-profile-card-compact h1 {
    font-size: 24px;
    line-height: 1;
    letter-spacing: -0.045em;
}

.lm-team-profile-head {
    gap: 14px;
}

.lm-team-profile-head span {
    margin-bottom: 6px;
    font-size: 10px;
}

/* Hide old meta if a cached template still outputs it */
.lm-team-profile-card-compact .lm-team-profile-meta {
    display: none;
}

/* Softer position card, aligned with the rest of the website */
.lm-team-position-modern-card {
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-team-position-modern {
    padding: 20px;
}

.lm-team-position-rank {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid #eeeeee;
}

.lm-team-position-rank span,
.lm-team-position-details span {
    display: block;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-team-position-rank strong {
    color: var(--lm-red);
    font-size: 42px;
    font-weight: 950;
    line-height: .85;
    letter-spacing: -0.08em;
}

.lm-team-position-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.lm-team-position-details > div {
    min-height: 72px;
    padding: 14px;
    border-radius: 8px;
    background: #f7f7f7;
}

.lm-team-position-details > div:last-child {
    grid-column: 1 / -1;
}

.lm-team-position-details strong {
    display: block;
    margin-top: 10px;
    color: #111;
    font-size: 24px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.055em;
}

.lm-team-position-details .lm-form-badges {
    justify-content: flex-start;
    margin-top: 11px;
}

/* Team page previous / next matches: use homepage-like rows, full width */
.lm-public-home-match-list .lm-home-match-row {
    grid-template-columns: 135px minmax(320px, 1fr) 210px;
    min-height: 92px;
    padding: 16px 22px;
}

.lm-public-home-match-list .lm-home-match-row:first-child {
    border-top: 0;
}

.lm-public-home-match-list .lm-home-match-team {
    text-transform: none;
}

.lm-public-home-match-list .lm-home-match-date strong {
    font-size: 10px;
}

.lm-public-home-match-list .lm-home-match-date span {
    font-size: 10px;
}

.lm-public-home-match-list .lm-home-match-logo {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
}

.lm-public-home-match-list .lm-home-match-score {
    min-width: 76px;
    font-size: 21px;
}

.lm-team-overview-match-card {
    width: 100%;
}

@media (max-width: 1100px) {
    .lm-public-home-match-list .lm-home-match-row {
        grid-template-columns: 120px minmax(240px, 1fr) 160px;
    }
}

@media (max-width: 767px) {
    .lm-team-profile-card-compact {
        min-height: auto;
    }

    .lm-team-profile-card-compact h1 {
        font-size: 22px;
    }

    .lm-public-home-match-list .lm-home-match-row {
        grid-template-columns: 1fr;
    }

    .lm-team-position-details {
        grid-template-columns: 1fr;
    }

    .lm-team-position-details > div:last-child {
        grid-column: auto;
    }
}


/* League Manager team page fixes - v1.2.6 */
.lm-team-profile-card-compact {
    min-height: 96px;
    padding: 16px 18px;
    box-shadow: 0 6px 16px rgba(200,0,0,.08);
}

.lm-team-profile-card-compact img.lm-team-profile-logo,
.lm-team-profile-card-compact .lm-team-profile-logo,
.lm-team-profile-head img.lm-team-profile-logo,
.lm-team-profile-head .lm-team-profile-logo {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    flex: 0 0 60px !important;
    object-fit: contain;
}

.lm-team-profile-card-compact h1 {
    font-size: 23px;
}

.lm-team-profile-card-compact .lm-team-profile-head {
    gap: 13px;
}

/* Matchweek tab layout */
.lm-team-matchweek-card {
    width: 100%;
}

.lm-team-matchweek-list {
    display: flex;
    flex-direction: column;
}

.lm-team-matchweek-row {
    display: grid;
    grid-template-columns: 150px minmax(320px, 1fr) 220px;
    align-items: center;
    gap: 18px;
    min-height: 96px;
    padding: 16px 22px;
    border-top: 1px solid #eeeeee;
    background: #fff;
}

.lm-team-matchweek-row:first-child {
    border-top: 0;
}

.lm-team-matchweek-row:hover {
    background: #fafafa;
}

.lm-team-matchweek-label strong,
.lm-team-matchweek-label span,
.lm-team-matchweek-label small {
    display: block;
    color: #111;
    font-size: 10px;
    font-weight: 950;
    line-height: 1.15;
    text-transform: uppercase;
}

.lm-team-matchweek-label span {
    margin-top: 7px;
    color: #555;
    font-weight: 800;
    text-transform: none;
}

.lm-team-matchweek-label small {
    margin-top: 4px;
    color: #555;
    font-weight: 800;
}

.lm-team-matchweek-row .lm-home-match-team {
    text-transform: none;
}

.lm-team-matchweek-row .lm-home-match-logo {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
}

.lm-team-matchweek-row .lm-home-match-score {
    min-width: 76px;
    font-size: 21px;
}

/* Stats tab should match overview stat cards */
.lm-team-stats-tab-grid {
    padding: 24px;
}

@media (max-width: 1100px) {
    .lm-team-matchweek-row {
        grid-template-columns: 130px minmax(240px, 1fr) 170px;
    }
}

@media (max-width: 767px) {
    .lm-team-matchweek-row {
        grid-template-columns: 1fr;
    }

    .lm-team-matchweek-label,
    .lm-team-matchweek-row .lm-home-match-venue {
        text-align: center;
    }
}


/* League Manager small visual polish - v1.2.7 */
.lm-team-profile-card-compact {
    min-height: 80px;
}

.lm-team-position-rank strong {
    font-size: 36px;
}

.lm-team-overview-metric {
    background: #fff;
}

.lm-team-overview-metric.is-primary {
    background: #fff;
}


/* Sticky team profile sidebar - v1.2.8 */
@media (min-width: 1101px) {
    .lm-team-profile-sidebar {
        position: sticky;
        top: 24px;
        align-self: start;
        z-index: 3;
    }

    body.admin-bar .lm-team-profile-sidebar {
        top: 56px;
    }
}


/* League Manager tabs shadow polish - v1.2.10 */
.lm-team-tabs-visual button.is-active {
    box-shadow: 0 6px 16px rgba(200,0,0,.08);
}

.lm-team-tabs-visual button {
    box-shadow: none;
}


/* League Manager auto pages - v1.2.11 */
.lm-league-page {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.lm-league-page > * {
    margin-bottom: 0;
}

.lm-league-page-header {
    min-height: 190px;
    padding: 34px;
    border-radius: 10px;
    background:
        linear-gradient(135deg, rgba(0,0,0,.92), rgba(35,0,0,.86)),
        url("stadium-night.png");
    background-size: cover;
    background-position: center;
    color: #fff;
    box-shadow: 0 14px 36px rgba(0,0,0,.10);
}

.lm-league-page-header span {
    display: inline-flex;
    color: var(--lm-red);
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-league-page-header h1 {
    margin: 12px 0 0;
    color: #fff;
    font-size: clamp(42px, 6vw, 76px);
    font-weight: 950;
    line-height: .92;
    letter-spacing: -0.075em;
    text-transform: uppercase;
}

.lm-league-page-header p {
    max-width: 620px;
    margin: 18px 0 0;
    color: rgba(255,255,255,.72);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.55;
}

.lm-league-list-card {
    width: 100%;
}

.lm-full-standings-table th,
.lm-full-standings-table td {
    text-align: center;
}

.lm-full-standings-table th:nth-child(2),
.lm-full-standings-table td:nth-child(2) {
    text-align: left;
}

.lm-full-standings-table tbody tr:hover td {
    background: #fafafa;
}

.lm-teams-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.lm-team-grid-card {
    display: flex;
    flex-direction: column;
    min-height: 255px;
    padding: 24px;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    background: #fff;
    color: inherit;
    text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.lm-team-grid-card:hover {
    transform: translateY(-2px);
    border-color: rgba(200,0,0,.24);
    box-shadow: 0 12px 30px rgba(0,0,0,.06);
}

.lm-team-grid-logo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    margin-bottom: 18px;
}

.lm-team-grid-logo {
    width: 76px;
    height: 76px;
    max-width: 76px;
    max-height: 76px;
    object-fit: contain;
}

.lm-team-grid-content {
    text-align: center;
}

.lm-team-grid-content span {
    display: block;
    color: var(--lm-red);
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-team-grid-content strong {
    display: block;
    margin-top: 9px;
    color: #111;
    font-size: 21px;
    font-weight: 950;
    line-height: 1.05;
    letter-spacing: -0.045em;
}

.lm-team-grid-content em {
    display: block;
    margin-top: 9px;
    color: #666;
    font-size: 12px;
    font-style: normal;
    font-weight: 750;
}

.lm-team-grid-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: auto;
    padding-top: 22px;
}

.lm-team-grid-stats div {
    min-height: 58px;
    padding: 11px 8px;
    border-radius: 8px;
    background: #f7f7f7;
    text-align: center;
}

.lm-team-grid-stats span {
    display: block;
    color: #666;
    font-size: 9px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-team-grid-stats strong {
    display: block;
    margin-top: 8px;
    color: #111;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
}

@media (max-width: 1180px) {
    .lm-teams-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .lm-teams-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .lm-league-page-header {
        min-height: 160px;
        padding: 28px 22px;
    }
}

@media (max-width: 560px) {
    .lm-teams-grid {
        grid-template-columns: 1fr;
    }
}


/* League Manager grouped matchweeks + softer page title - v1.2.13 */
.lm-league-page-header {
    min-height: 132px;
    padding: 26px 30px;
    border-radius: 10px;
}

.lm-league-page-header h1 {
    margin-top: 10px;
    font-size: clamp(32px, 4.2vw, 52px);
    letter-spacing: -0.055em;
}

.lm-league-page-header p {
    max-width: 560px;
    margin-top: 12px;
    font-size: 13px;
}

.lm-team-matchweek-grouped-list {
    gap: 22px;
}

.lm-matchweek-group {
    overflow: hidden;
    border: 1px solid #eeeeee;
    border-radius: 10px;
    background: #fff;
}

.lm-matchweek-group-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 22px;
    border-bottom: 1px solid #eeeeee;
    background: #f7f7f7;
}

.lm-matchweek-group-head span {
    color: #111;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.04em;
    text-transform: uppercase;
}

.lm-matchweek-group-head strong {
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-matchweek-group-matches .lm-team-matchweek-row {
    border-top: 1px solid #eeeeee;
}

.lm-matchweek-group-matches .lm-team-matchweek-row:first-child {
    border-top: 0;
}

.lm-matchweek-group-matches .lm-team-matchweek-label strong {
    font-size: 10px;
    color: #111;
}

.lm-matchweek-group-matches .lm-team-matchweek-label span {
    margin-top: 6px;
    color: #555;
}

@media (max-width: 767px) {
    .lm-league-page-header {
        min-height: 118px;
        padding: 22px;
    }

    .lm-matchweek-group-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .lm-matchweek-group-head span {
        font-size: 16px;
    }
}


/* League Manager schedule/results direct matchweek spacing - v1.2.14 */
.lm-schedule-page > .lm-team-matchweek-grouped-list,
.lm-results-page > .lm-team-matchweek-grouped-list {
    gap: 24px;
}

.lm-schedule-page .lm-matchweek-group,
.lm-results-page .lm-matchweek-group {
    margin: 0;
}

.lm-schedule-page,
.lm-results-page {
    gap: 24px;
}


/* Generated stadium background image - v1.2.15 */
.lm-next-match-bg {
    background-image:
        linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.42) 42%, rgba(0,0,0,.90) 100%),
        radial-gradient(circle at 50% 76%, rgba(200,0,0,.36), rgba(200,0,0,.08) 38%, rgba(0,0,0,0) 64%),
        url("stadium-night.png");
    background-size: cover;
    background-position: center center;
}

.lm-public-hero,
.lm-league-page-header {
    background-image:
        linear-gradient(135deg, rgba(0,0,0,.90), rgba(32,0,0,.82)),
        url("stadium-night.png");
    background-size: cover;
    background-position: center center;
}

.lm-match-hero {
    background-position: center center;
}


/* League Manager public enhancements - v1.2.17 */
.lm-season-filter-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 18px 20px;
    border: 1px solid #e9e9e9;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-season-filter-current span,
.lm-season-filter-form label {
    display: block;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-season-filter-current strong {
    display: block;
    margin-top: 7px;
    color: #111;
    font-size: 22px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.045em;
}

.lm-season-filter-form {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
}

.lm-season-select-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lm-season-select-wrap select {
    min-width: 190px;
    height: 42px;
    padding: 0 40px 0 14px;
    border: 1px solid #dedede;
    border-radius: 999px;
    background: #f8f8f8;
    color: #111;
    font-size: 13px;
    font-weight: 850;
    outline: none;
}

.lm-season-select-wrap select:focus {
    border-color: var(--lm-red);
    background: #fff;
}

.lm-season-select-wrap button {
    height: 42px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    background: var(--lm-red);
    color: #fff;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    cursor: pointer;
}

/* Top scorers */
.lm-top-scorers-table th,
.lm-top-scorers-table td {
    text-align: center;
}

.lm-top-scorers-table th:nth-child(2),
.lm-top-scorers-table td:nth-child(2),
.lm-top-scorers-table th:nth-child(3),
.lm-top-scorers-table td:nth-child(3) {
    text-align: left;
}

.lm-scorer-player {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.lm-scorer-player > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
}

.lm-scorer-player strong,
.lm-scorer-player em {
    display: block;
}

.lm-scorer-player strong {
    color: #111;
    font-size: 13px;
    font-weight: 950;
}

.lm-scorer-player em {
    margin-top: 4px;
    color: #666;
    font-size: 11px;
    font-style: normal;
    font-weight: 750;
}

/* Match timeline */
.lm-match-timeline-card {
    overflow: hidden;
}

.lm-match-timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 26px;
}

.lm-match-timeline::before {
    content: "";
    position: absolute;
    top: 26px;
    bottom: 26px;
    left: 50%;
    width: 2px;
    background: #ededed;
    transform: translateX(-50%);
}

.lm-timeline-event {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 42px 1fr;
    align-items: center;
    gap: 18px;
}

.lm-timeline-event.is-home .lm-timeline-content {
    grid-column: 1;
    text-align: right;
}

.lm-timeline-event.is-home .lm-timeline-minute {
    grid-column: 2;
    grid-row: 1;
}

.lm-timeline-event.is-home .lm-timeline-dot {
    grid-column: 2;
    grid-row: 1;
}

.lm-timeline-event.is-away .lm-timeline-content {
    grid-column: 3;
    text-align: left;
}

.lm-timeline-event.is-away .lm-timeline-minute,
.lm-timeline-event.is-away .lm-timeline-dot {
    grid-column: 2;
    grid-row: 1;
}

.lm-timeline-minute {
    position: relative;
    z-index: 2;
    justify-self: center;
    margin-top: -42px;
    color: #666;
    font-size: 11px;
    font-weight: 950;
}

.lm-timeline-dot {
    position: relative;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    width: 42px;
    height: 42px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 12px;
    font-weight: 950;
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
}

.lm-timeline-event.event-goal .lm-timeline-dot,
.lm-timeline-event.event-penalty_goal .lm-timeline-dot {
    background: var(--lm-red);
}

.lm-timeline-event.event-yellow_card .lm-timeline-dot {
    background: #f0b400;
    color: #111;
}

.lm-timeline-event.event-red_card .lm-timeline-dot {
    background: #f1162a;
}

.lm-timeline-content {
    min-height: 84px;
    padding: 16px;
    border: 1px solid #ececec;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-timeline-event-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.lm-timeline-event.is-home .lm-timeline-event-head {
    flex-direction: row-reverse;
}

.lm-timeline-event-head strong {
    color: #111;
    font-size: 13px;
    font-weight: 950;
}

.lm-timeline-event-head span {
    color: var(--lm-red);
    font-size: 10px;
    font-weight: 950;
    text-transform: uppercase;
}

.lm-timeline-content p {
    margin: 10px 0 0;
    color: #111;
    font-size: 15px;
    font-weight: 950;
}

.lm-timeline-content em {
    display: block;
    margin-top: 7px;
    color: #666;
    font-size: 12px;
    font-style: normal;
    font-weight: 750;
}

/* Team form preview */
.lm-team-form-preview-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    padding: 20px;
}

.lm-team-form-preview-item {
    display: grid;
    grid-template-columns: auto 38px 1fr;
    align-items: center;
    gap: 10px;
    min-height: 78px;
    padding: 12px;
    border: 1px solid #ececec;
    border-radius: 10px;
    background: #fff;
    color: inherit;
    text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.03);
}

.lm-team-form-result {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #999;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
}

.result-w .lm-team-form-result {
    background: #19b91f;
}

.result-d .lm-team-form-result {
    background: #999;
}

.result-l .lm-team-form-result {
    background: #f1162a;
}

.lm-team-form-opponent-logo {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.lm-team-form-preview-item strong,
.lm-team-form-preview-item em {
    display: block;
}

.lm-team-form-preview-item strong {
    color: #111;
    font-size: 14px;
    font-weight: 950;
}

.lm-team-form-preview-item em {
    margin-top: 4px;
    color: #666;
    font-size: 11px;
    font-style: normal;
    font-weight: 750;
}

/* Social share */
.lm-social-share-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
}

.lm-social-share-card span {
    display: block;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-social-share-card strong {
    display: block;
    margin-top: 7px;
    color: #111;
    font-size: 18px;
    font-weight: 950;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

.lm-social-share-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.lm-social-share-links a,
.lm-social-share-links button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #e4e4e4;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 11px;
    font-weight: 950;
    text-decoration: none !important;
    text-transform: uppercase;
    cursor: pointer;
}

.lm-social-share-links a:hover,
.lm-social-share-links button:hover {
    border-color: var(--lm-red);
    color: var(--lm-red);
}

@media (max-width: 1100px) {
    .lm-team-form-preview-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lm-match-timeline::before {
        left: 21px;
    }

    .lm-timeline-event {
        grid-template-columns: 42px 1fr;
    }

    .lm-timeline-event.is-home .lm-timeline-content,
    .lm-timeline-event.is-away .lm-timeline-content {
        grid-column: 2;
        text-align: left;
    }

    .lm-timeline-event.is-home .lm-timeline-minute,
    .lm-timeline-event.is-home .lm-timeline-dot,
    .lm-timeline-event.is-away .lm-timeline-minute,
    .lm-timeline-event.is-away .lm-timeline-dot {
        grid-column: 1;
    }

    .lm-timeline-event.is-home .lm-timeline-event-head {
        flex-direction: row;
    }
}

@media (max-width: 767px) {
    .lm-season-filter-card,
    .lm-season-filter-form,
    .lm-season-select-wrap,
    .lm-social-share-card {
        align-items: stretch;
        flex-direction: column;
    }

    .lm-season-select-wrap select,
    .lm-season-select-wrap button {
        width: 100%;
    }

    .lm-team-form-preview-list {
        grid-template-columns: 1fr;
    }
}


/* Timeline minute visibility + remove share block spacing - v1.2.19 */
.lm-timeline-event {
    padding-top: 22px;
}

.lm-timeline-minute {
    position: absolute !important;
    left: 50%;
    top: 0;
    z-index: 8;
    min-width: 42px;
    margin: 0 !important;
    padding: 5px 9px;
    border: 1px solid #e5e5e5;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    text-align: center;
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
    transform: translate(-50%, -50%);
}

.lm-timeline-dot {
    margin-top: 8px;
}

@media (max-width: 1100px) {
    .lm-timeline-minute {
        left: 21px;
    }
}


/* Team matches tab grouped layout - v1.2.20 */
.lm-team-matches-panel > .lm-team-matchweek-grouped-list {
    gap: 24px;
}

.lm-team-matches-panel .lm-matchweek-group {
    margin: 0;
}


/* Timeline minute alignment fix - v1.2.21 */
.lm-timeline-event {
    display: grid;
    grid-template-columns: 1fr 56px 1fr;
    grid-template-rows: auto auto;
    align-items: start;
    gap: 12px 18px;
    padding-top: 0;
}

.lm-timeline-event.is-home .lm-timeline-content {
    grid-column: 1;
    grid-row: 2;
    text-align: right;
}

.lm-timeline-event.is-away .lm-timeline-content {
    grid-column: 3;
    grid-row: 2;
    text-align: left;
}

.lm-timeline-minute {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    z-index: 8;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center;
    align-self: end;
    min-width: 42px;
    margin: 0 !important;
    margin-bottom: -4px !important;
    padding: 5px 9px;
    border: 1px solid #e5e5e5;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    text-align: center;
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
    transform: none !important;
}

.lm-timeline-dot {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: center;
    align-self: start;
    margin-top: 0 !important;
}

@media (max-width: 1100px) {
    .lm-timeline-event {
        grid-template-columns: 56px 1fr;
        grid-template-rows: auto auto;
    }

    .lm-timeline-event.is-home .lm-timeline-content,
    .lm-timeline-event.is-away .lm-timeline-content {
        grid-column: 2;
        grid-row: 2;
        text-align: left;
    }

    .lm-timeline-minute {
        left: auto !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .lm-timeline-dot {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }
}


/* Timeline dot vertical centering with minute above - v1.2.22 */
.lm-timeline-event {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 56px 1fr;
    grid-template-rows: auto;
    align-items: center !important;
    gap: 18px;
    min-height: 112px;
    padding-top: 24px !important;
}

.lm-timeline-event.is-home .lm-timeline-content {
    grid-column: 1;
    grid-row: 1;
    text-align: right;
}

.lm-timeline-event.is-away .lm-timeline-content {
    grid-column: 3;
    grid-row: 1;
    text-align: left;
}

.lm-timeline-minute {
    position: absolute !important;
    left: 50% !important;
    top: 0 !important;
    z-index: 8;
    min-width: 42px;
    margin: 0 !important;
    padding: 5px 9px;
    border: 1px solid #e5e5e5;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    text-align: center;
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
    transform: translate(-50%, -50%) !important;
}

.lm-timeline-dot {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center;
    align-self: center !important;
    margin: 0 !important;
}

@media (max-width: 1100px) {
    .lm-timeline-event {
        grid-template-columns: 56px 1fr;
        min-height: 98px;
    }

    .lm-timeline-event.is-home .lm-timeline-content,
    .lm-timeline-event.is-away .lm-timeline-content {
        grid-column: 2;
        grid-row: 1;
        text-align: left;
    }

    .lm-timeline-minute {
        left: 28px !important;
    }

    .lm-timeline-dot {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }
}


/* Timeline stable central column fix - v1.2.23 */
.lm-match-timeline {
    align-items: stretch;
}

.lm-timeline-event {
    width: 100%;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    gap: 6px 18px !important;
    min-height: 118px;
    padding-top: 0 !important;
}

.lm-timeline-event.is-home .lm-timeline-content {
    grid-column: 1 !important;
    grid-row: 2 !important;
    text-align: right;
}

.lm-timeline-event.is-away .lm-timeline-content {
    grid-column: 3 !important;
    grid-row: 2 !important;
    text-align: left;
}

.lm-timeline-minute {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    z-index: 8;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: end !important;
    min-width: 42px;
    margin: 0 !important;
    padding: 5px 9px !important;
    border: 1px solid #e5e5e5;
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 12px;
    font-weight: 950;
    line-height: 1;
    text-align: center;
    box-shadow: 0 8px 18px rgba(0,0,0,.10);
    transform: none !important;
}

.lm-timeline-dot {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: center !important;
    align-self: center !important;
    margin: 0 !important;
}

.lm-match-timeline::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
}

@media (max-width: 1100px) {
    .lm-timeline-event {
        grid-template-columns: 56px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        min-height: 104px;
    }

    .lm-timeline-event.is-home .lm-timeline-content,
    .lm-timeline-event.is-away .lm-timeline-content {
        grid-column: 2 !important;
        grid-row: 2 !important;
        text-align: left;
    }

    .lm-timeline-minute {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .lm-timeline-dot {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }

    .lm-match-timeline::before {
        left: 28px !important;
    }
}


/* Homepage expansion widgets and news page - v1.2.25 */
.lm-featured-matchweek-widget,
.lm-top-goalscorers-widget,
.lm-latest-news-widget {
    overflow: hidden;
    border: 1px solid #e7e7e7;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-featured-matchweek-widget .lm-card-simple-head,
.lm-top-goalscorers-widget .lm-card-simple-head,
.lm-latest-news-widget .lm-card-simple-head {
    padding: 22px 24px;
}

.lm-card-simple-head .lm-widget-kicker {
    display: block;
    margin-bottom: 7px;
    color: var(--lm-red);
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-featured-matchweek-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 24px;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    background: #f8f8f8;
}

.lm-featured-matchweek-label strong {
    color: #111;
    font-size: 22px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -0.045em;
    text-transform: uppercase;
}

.lm-featured-matchweek-label span {
    color: #666;
    font-size: 11px;
    font-weight: 850;
    text-align: right;
}

.lm-featured-matchweek-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lm-featured-matchweek-list .lm-home-match-row {
    border-top: 0;
    border-bottom: 1px solid #eeeeee;
}

.lm-featured-matchweek-list .lm-home-match-row:nth-child(odd) {
    border-right: 1px solid #eeeeee;
}

.lm-top-goalscorers-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid #eeeeee;
}

.lm-goalscorer-card {
    position: relative;
    display: grid;
    grid-template-columns: auto 46px 1fr;
    align-items: center;
    gap: 13px;
    min-height: 108px;
    padding: 22px;
    border-right: 1px solid #eeeeee;
    color: inherit;
    text-decoration: none !important;
    transition: background .2s ease;
}

.lm-goalscorer-card:last-child {
    border-right: 0;
}

.lm-goalscorer-card:hover {
    background: #fafafa;
}

.lm-goalscorer-rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--lm-red);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
}

.lm-goalscorer-team-logo {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.lm-goalscorer-info strong,
.lm-goalscorer-info em {
    display: block;
}

.lm-goalscorer-info strong {
    color: #111;
    font-size: 15px;
    font-weight: 950;
    line-height: 1.1;
}

.lm-goalscorer-info em {
    margin-top: 5px;
    color: #666;
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
}

.lm-goalscorer-numbers {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 6px;
}

.lm-goalscorer-numbers div {
    padding: 10px;
    border-radius: 8px;
    background: #f7f7f7;
    text-align: center;
}

.lm-goalscorer-numbers strong,
.lm-goalscorer-numbers span {
    display: block;
}

.lm-goalscorer-numbers strong {
    color: #111;
    font-size: 22px;
    font-weight: 950;
    line-height: 1;
}

.lm-goalscorer-numbers span {
    margin-top: 6px;
    color: #666;
    font-size: 9px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

/* News cards */
.lm-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.lm-news-card {
    overflow: hidden;
    border: 1px solid #e7e7e7;
    border-radius: 10px;
    background: #fff;
    color: inherit;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-news-card-image {
    display: block;
    min-height: 210px;
    background-size: cover;
    background-position: center;
    text-decoration: none !important;
}

.lm-news-card-body {
    padding: 20px;
}

.lm-news-card-body > span {
    display: block;
    color: var(--lm-red);
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-news-card-body h3 {
    margin: 10px 0 0;
    color: #111;
    font-size: 22px;
    font-weight: 950;
    line-height: 1.05;
    letter-spacing: -0.045em;
}

.lm-news-card-body h3 a {
    color: inherit;
    text-decoration: none !important;
}

.lm-news-card-body p {
    margin: 12px 0 0;
    color: #666;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.55;
}

.lm-news-card-read {
    display: inline-flex;
    margin-top: 16px;
    color: var(--lm-red);
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    text-decoration: none !important;
    text-transform: uppercase;
}

/* News slider */
.lm-news-slider-shell {
    position: relative;
    border-top: 1px solid #eeeeee;
}

.lm-news-slider-track {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    padding: 22px 24px 26px;
    scrollbar-width: none;
}

.lm-news-slider-track::-webkit-scrollbar {
    display: none;
}

.lm-news-card-slider {
    flex: 0 0 calc((100% - 64px) / 5);
    min-width: 210px;
    scroll-snap-align: start;
}

.lm-news-card-slider .lm-news-card-image {
    min-height: 135px;
}

.lm-news-card-slider .lm-news-card-body {
    padding: 16px;
}

.lm-news-card-slider .lm-news-card-body h3 {
    font-size: 16px;
    line-height: 1.12;
}

.lm-news-card-slider .lm-news-card-body p {
    display: none;
}

.lm-news-slider-arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid #e6e6e6;
    border-radius: 50%;
    background: #fff;
    color: #111;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 12px 30px rgba(0,0,0,.10);
    cursor: pointer;
    transform: translateY(-50%);
}

.lm-news-slider-prev {
    left: 10px;
}

.lm-news-slider-next {
    right: 10px;
}

.lm-news-slider-arrow.is-disabled {
    opacity: .35;
    pointer-events: none;
}

@media (max-width: 1180px) {
    .lm-featured-matchweek-list,
    .lm-top-goalscorers-grid,
    .lm-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lm-news-card-slider {
        flex-basis: calc((100% - 32px) / 3);
    }
}

@media (max-width: 767px) {
    .lm-featured-matchweek-label {
        align-items: flex-start;
        flex-direction: column;
    }

    .lm-featured-matchweek-label span {
        text-align: left;
    }

    .lm-featured-matchweek-list,
    .lm-top-goalscorers-grid,
    .lm-news-grid {
        grid-template-columns: 1fr;
    }

    .lm-featured-matchweek-list .lm-home-match-row:nth-child(odd),
    .lm-goalscorer-card {
        border-right: 0;
    }

    .lm-news-card-slider {
        flex-basis: 82%;
    }
}


/* Featured matchweek + news slider polish - v1.2.26 */
.lm-featured-matchweek-widget .lm-card-simple-head {
    border-bottom: 1px solid #eeeeee;
}

.lm-featured-matchweek-widget .lm-card-simple-head h3 {
    margin: 0;
}

.lm-featured-matchweek-label {
    display: none !important;
}

.lm-featured-matchweek-list {
    display: flex !important;
    flex-direction: column;
}

.lm-featured-matchweek-list .lm-home-match-row {
    width: 100%;
    border-right: 0 !important;
    border-bottom: 1px solid #eeeeee;
}

.lm-featured-matchweek-list .lm-home-match-row:last-child {
    border-bottom: 0;
}

.lm-latest-news-widget .lm-card-simple-head {
    padding: 24px 28px;
    border-bottom: 1px solid #eeeeee;
}

.lm-news-slider-track {
    gap: 18px;
    padding: 28px;
}

.lm-news-card-slider {
    flex: 0 0 calc((100% - 54px) / 4);
    min-width: 245px;
}

.lm-news-card-slider .lm-news-card-image {
    min-height: 150px;
}

.lm-news-card-slider .lm-news-card-body {
    padding: 18px;
}

.lm-news-card-slider .lm-news-card-body h3 {
    font-size: 17px;
    line-height: 1.12;
}

.lm-news-card-slider .lm-news-card-body p {
    display: -webkit-box !important;
    margin-top: 10px;
    color: #666;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.lm-news-card-slider .lm-news-card-read {
    margin-top: 14px;
}

@media (max-width: 1180px) {
    .lm-news-card-slider {
        flex-basis: calc((100% - 36px) / 3);
    }
}

@media (max-width: 767px) {
    .lm-news-slider-track {
        padding: 20px;
    }

    .lm-news-card-slider {
        flex-basis: 82%;
    }
}


/* Top goalscorers header + news spacing polish - v1.2.27 */
.lm-top-goalscorers-widget .lm-card-simple-head h3 {
    margin: 0;
}

.lm-latest-news-widget {
    overflow: hidden;
}

.lm-news-slider-shell {
    padding: 0 18px 0 18px;
}

.lm-news-slider-track {
    padding: 28px 34px 30px !important;
    gap: 20px;
}

.lm-news-slider-prev {
    left: 22px;
}

.lm-news-slider-next {
    right: 22px;
}

@media (max-width: 767px) {
    .lm-news-slider-shell {
        padding: 0 10px;
    }

    .lm-news-slider-track {
        padding: 22px 28px 24px !important;
    }

    .lm-news-slider-prev {
        left: 14px;
    }

    .lm-news-slider-next {
        right: 14px;
    }
}


/* Top goalscorers rows + news arrows match slider - v1.2.28 */
.lm-top-goalscorers-grid {
    display: flex !important;
    flex-direction: column;
    border-top: 1px solid #eeeeee;
}

.lm-goalscorer-card {
    display: grid !important;
    grid-template-columns: 42px 54px minmax(0, 1fr) 250px;
    align-items: center;
    gap: 16px;
    min-height: 92px;
    padding: 18px 24px;
    border-right: 0 !important;
    border-bottom: 1px solid #eeeeee;
}

.lm-goalscorer-card:last-child {
    border-bottom: 0;
}

.lm-goalscorer-rank {
    width: 36px;
    height: 36px;
}

.lm-goalscorer-team-logo {
    width: 46px;
    height: 46px;
}

.lm-goalscorer-info strong {
    font-size: 16px;
}

.lm-goalscorer-numbers {
    grid-column: 4 !important;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 0;
}

.lm-goalscorer-numbers div {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.lm-news-slider-arrow {
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid #e3e3e3;
    background: #fff;
    color: #111;
    box-shadow: 0 8px 24px rgba(0,0,0,.12);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.lm-news-slider-arrow span {
    display: block;
    margin-top: -2px;
    font-size: 30px;
    font-weight: 300;
    line-height: 1;
}

.lm-news-slider-arrow:hover {
    transform: translateY(-50%) scale(1.04);
    box-shadow: 0 10px 30px rgba(0,0,0,.16);
}

@media (max-width: 900px) {
    .lm-goalscorer-card {
        grid-template-columns: 38px 48px minmax(0, 1fr);
    }

    .lm-goalscorer-numbers {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 560px) {
    .lm-goalscorer-card {
        padding: 16px;
    }
}


/* Public suspensions page - v1.2.29 */
.lm-suspensions-table th,
.lm-suspensions-table td {
    text-align: left;
}

.lm-suspensions-table th:nth-child(4),
.lm-suspensions-table th:nth-child(5),
.lm-suspensions-table td:nth-child(4),
.lm-suspensions-table td:nth-child(5) {
    text-align: center;
}

.lm-suspension-player {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.lm-suspension-player > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--lm-red);
    color: #fff;
    font-size: 10px;
    font-weight: 950;
}

.lm-suspension-player strong,
.lm-suspension-player em {
    display: block;
}

.lm-suspension-player strong {
    color: #111;
    font-size: 13px;
    font-weight: 950;
}

.lm-suspension-player em {
    margin-top: 4px;
    color: #666;
    font-size: 11px;
    font-style: normal;
    font-weight: 750;
}

.lm-suspensions-notice {
    padding: 22px 24px;
    border: 1px solid rgba(200,0,0,.18);
    border-radius: 10px;
    background: #fff7f7;
    color: #111;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.65;
}

.lm-suspensions-notice strong {
    color: var(--lm-red);
    font-weight: 950;
}


/* Suspensions remove reason column - v1.2.30 */
.lm-suspensions-table th:nth-child(3),
.lm-suspensions-table th:nth-child(4),
.lm-suspensions-table td:nth-child(3),
.lm-suspensions-table td:nth-child(4) {
    text-align: center;
}


/* Suspensions status column - v1.2.32 */
.lm-suspensions-table th:nth-child(5),
.lm-suspensions-table td:nth-child(5) {
    text-align: center;
}

.lm-suspension-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: #f1f1f1;
    color: #444;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-suspension-status.status-active {
    background: #fff2f2;
    color: var(--lm-red);
}

.lm-suspension-status.status-served {
    background: #eef9ef;
    color: #15921c;
}

.lm-suspension-status.status-cancelled {
    background: #f4f4f4;
    color: #777;
}


/* Public call-up players page - v1.2.33 */
.lm-call-up-notice {
    padding: 22px 24px;
    border: 1px solid rgba(200,0,0,.18);
    border-radius: 10px;
    background: #fff7f7;
    color: #111;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.65;
}

.lm-call-up-notice strong {
    color: var(--lm-red);
    font-weight: 950;
}

.lm-call-up-table th,
.lm-call-up-table td {
    text-align: left;
}

.lm-call-up-table th:nth-child(2),
.lm-call-up-table th:nth-child(3),
.lm-call-up-table th:nth-child(4),
.lm-call-up-table td:nth-child(2),
.lm-call-up-table td:nth-child(3),
.lm-call-up-table td:nth-child(4) {
    text-align: center;
}

.lm-call-up-player-name {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.lm-call-up-player-name span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--lm-red);
    color: #fff;
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
}

.lm-call-up-player-name strong {
    color: #111;
    font-size: 14px;
    font-weight: 950;
}

.lm-call-up-age {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 74px;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: #f1f1f1;
    color: #444;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-call-up-age.is-under {
    background: #eef9ef;
    color: #15921c;
}

.lm-call-up-age.is-not-under {
    background: #fff2f2;
    color: var(--lm-red);
}


/* AI win probability on match page - v1.2.35 */
.lm-ai-probability-card {
    overflow: hidden;
}

.lm-ai-probability-head {
    align-items: center;
}

.lm-ai-probability-head > div span {
    display: block;
    margin-bottom: 7px;
    color: #666;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-ai-probability-head h2 {
    margin: 0;
}

.lm-ai-probability-head em {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: #f7f7f7;
    color: #111;
    font-size: 10px;
    font-style: normal;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.lm-ai-probability-body {
    padding: 24px;
}

.lm-ai-probability-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lm-ai-probability-team {
    min-height: 168px;
    padding: 20px;
    border: 1px solid #ececec;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}

.lm-ai-probability-team a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #111;
    text-decoration: none !important;
}

.lm-ai-probability-team > span,
.lm-ai-probability-team a span {
    color: #111;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.15;
}

.lm-ai-probability-logo {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.lm-ai-probability-team > strong {
    display: block;
    margin-top: 22px;
    color: #111;
    font-size: clamp(38px, 6vw, 58px);
    font-weight: 950;
    line-height: .88;
    letter-spacing: -0.075em;
}

.lm-ai-probability-team.is-home > strong {
    color: var(--lm-red);
}

.lm-ai-probability-team.is-away > strong {
    color: #111;
}

.lm-ai-probability-team.is-draw {
    background: #fafafa;
}

.lm-ai-probability-team.is-draw > span {
    display: block;
    text-transform: uppercase;
}

.lm-ai-mini-bar {
    overflow: hidden;
    height: 8px;
    margin-top: 20px;
    border-radius: 999px;
    background: #eeeeee;
}

.lm-ai-mini-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #111;
}

.lm-ai-probability-team.is-home .lm-ai-mini-bar span {
    background: var(--lm-red);
}

.lm-ai-probability-team.is-draw .lm-ai-mini-bar span {
    background: #999;
}

.lm-ai-probability-stack {
    display: flex;
    overflow: hidden;
    height: 14px;
    margin-top: 20px;
    border-radius: 999px;
    background: #eeeeee;
}

.lm-ai-probability-stack span {
    display: block;
    height: 100%;
}

.lm-ai-probability-stack .is-home {
    background: var(--lm-red);
}

.lm-ai-probability-stack .is-draw {
    background: #999;
}

.lm-ai-probability-stack .is-away {
    background: #111;
}

.lm-ai-probability-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 18px;
}

.lm-ai-probability-footer p {
    max-width: 650px;
    margin: 0;
    color: #666;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.55;
}

.lm-ai-probability-footer div {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}

.lm-ai-probability-footer span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border-radius: 999px;
    background: #f5f5f5;
    color: #111;
    font-size: 9px;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

@media (max-width: 900px) {
    .lm-ai-probability-grid {
        grid-template-columns: 1fr;
    }

    .lm-ai-probability-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .lm-ai-probability-footer div {
        justify-content: flex-start;
    }
}


/* AI probability cleanup + alignment - v1.2.36 */
.lm-ai-probability-team {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.lm-ai-probability-team a,
.lm-ai-probability-team.is-draw > span {
    min-height: 42px;
    align-items: center;
}

.lm-ai-probability-team.is-draw > span {
    display: inline-flex;
}

.lm-ai-probability-team > strong {
    margin-top: 18px;
}

.lm-ai-probability-stack {
    margin-top: 18px;
}

.lm-ai-probability-footer {
    display: none !important;
}


/* Hide large AI probability combined bar - v1.2.37 */
.lm-ai-probability-stack {
    display: none !important;
}


/* Remove AI probability confidence badge - v1.2.38 */
.lm-ai-probability-head em {
    display: none !important;
}


/* Team of the Week frontend - premium 4-3-3 layout - v1.2.40 */
.lm-tow-page .lm-tow-filter-card {
    margin-bottom: 24px !important;
}

.lm-tow-page .lm-tow-stage-card {
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.lm-tow-page .lm-totw2 {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    max-width: 1040px !important;
    margin: 0 auto !important;
    padding: 38px 30px 42px !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 50% -5%, rgba(255,255,255,.16), transparent 34%),
        radial-gradient(circle at 14% 38%, rgba(61,136,228,.20), transparent 30%),
        linear-gradient(180deg, #104782 0%, #082c66 46%, #041c46 100%) !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow: 0 24px 70px rgba(7,27,62,.26) !important;
}

.lm-tow-page .lm-totw2::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -2 !important;
    background:
        linear-gradient(135deg, transparent 0%, transparent 47%, rgba(255,255,255,.035) 50%, transparent 53%, transparent 100%),
        linear-gradient(45deg, transparent 0%, transparent 78%, rgba(255,255,255,.025) 82%, transparent 86%, transparent 100%) !important;
}

.lm-tow-page .lm-totw2::after {
    content: "" !important;
    position: absolute !important;
    left: -15% !important;
    right: -15% !important;
    top: 145px !important;
    height: 390px !important;
    z-index: -1 !important;
    border: 1px solid rgba(255,255,255,.06) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
}

.lm-tow-page .lm-totw2-head {
    position: relative !important;
    z-index: 5 !important;
    text-align: center !important;
    margin: 0 0 18px !important;
}

.lm-tow-page .lm-totw2-league-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 66px !important;
    height: 66px !important;
    margin: 0 auto 14px !important;
}

.lm-tow-page .lm-totw2-league-logo img {
    width: 66px !important;
    height: 66px !important;
    object-fit: contain !important;
}

.lm-tow-page .lm-totw2-head h2 {
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(40px, 6.2vw, 78px) !important;
    font-weight: 950 !important;
    line-height: .92 !important;
    letter-spacing: -.058em !important;
    text-transform: uppercase !important;
    text-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
}

.lm-tow-page .lm-totw2-head p {
    margin: 13px 0 0 !important;
    color: rgba(255,255,255,.88) !important;
    font-size: clamp(13px, 1.6vw, 22px) !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
}

.lm-tow-page .lm-totw2-field {
    position: relative !important;
    z-index: 3 !important;
    width: 100% !important;
    max-width: 980px !important;
    height: 760px !important;
    margin: 0 auto !important;
}

.lm-tow-page .lm-totw2-lines {
    position: absolute !important;
    inset: 24px 0 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
}

.lm-tow-page .lm-totw2-lines path,
.lm-tow-page .lm-totw2-lines line,
.lm-tow-page .lm-totw2-lines circle {
    fill: none !important;
    stroke: url(#lmTotwLineGradient) !important;
    stroke-width: 2.1 !important;
    vector-effect: non-scaling-stroke !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.lm-tow-page .lm-totw2-player {
    position: absolute !important;
    z-index: 6 !important;
    width: 138px !important;
    transform: translate(-50%, -50%) !important;
    text-align: center !important;
}

.lm-tow-page .lm-totw2-player.is-empty {
    display: none !important;
}

.lm-tow-page .lm-totw2-badge {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 98px !important;
    height: 98px !important;
    margin: 0 auto 10px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.18) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.09)) !important;
    box-shadow:
        0 14px 28px rgba(0,0,0,.14),
        inset 0 1px 0 rgba(255,255,255,.26),
        inset 0 -8px 18px rgba(255,255,255,.04) !important;
    backdrop-filter: blur(7px) !important;
    -webkit-backdrop-filter: blur(7px) !important;
}

.lm-tow-page .lm-totw2-logo {
    display: block !important;
    width: 78px !important;
    height: 78px !important;
    padding: 9px !important;
    border-radius: 50% !important;
    object-fit: contain !important;
    background: rgba(255,255,255,.92) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.38) !important;
}

.lm-tow-page .lm-totw2-player strong {
    display: block !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 850 !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
    text-shadow: 0 4px 14px rgba(0,0,0,.30) !important;
}

/* 4-3-3 placement */
.lm-tow-page .lm-totw2-player.is-slot-fw1 { left: 25% !important; top: 20% !important; }
.lm-tow-page .lm-totw2-player.is-slot-fw2 { left: 50% !important; top: 15% !important; }
.lm-tow-page .lm-totw2-player.is-slot-fw3 { left: 75% !important; top: 20% !important; }

.lm-tow-page .lm-totw2-player.is-slot-mid1 { left: 31% !important; top: 43% !important; }
.lm-tow-page .lm-totw2-player.is-slot-mid2 { left: 50% !important; top: 52% !important; }
.lm-tow-page .lm-totw2-player.is-slot-mid3 { left: 69% !important; top: 43% !important; }

.lm-tow-page .lm-totw2-player.is-slot-def1 { left: 16% !important; top: 72% !important; }
.lm-tow-page .lm-totw2-player.is-slot-def2 { left: 38% !important; top: 77% !important; }
.lm-tow-page .lm-totw2-player.is-slot-def3 { left: 62% !important; top: 77% !important; }
.lm-tow-page .lm-totw2-player.is-slot-def4 { left: 84% !important; top: 72% !important; }

.lm-tow-page .lm-totw2-player.is-slot-gk { left: 50% !important; top: 93% !important; }

@media (max-width: 1024px) {
    .lm-tow-page .lm-totw2 {
        padding: 32px 16px 34px !important;
    }

    .lm-tow-page .lm-totw2-field {
        height: 680px !important;
    }

    .lm-tow-page .lm-totw2-player {
        width: 118px !important;
    }

    .lm-tow-page .lm-totw2-badge {
        width: 84px !important;
        height: 84px !important;
    }

    .lm-tow-page .lm-totw2-logo {
        width: 66px !important;
        height: 66px !important;
        padding: 8px !important;
    }

    .lm-tow-page .lm-totw2-player strong {
        font-size: 14px !important;
    }
}

@media (max-width: 680px) {
    .lm-tow-page .lm-totw2 {
        padding: 24px 8px 26px !important;
        border-radius: 18px !important;
    }

    .lm-tow-page .lm-totw2-head {
        margin-bottom: 14px !important;
    }

    .lm-tow-page .lm-totw2-head p {
        letter-spacing: .08em !important;
    }

    .lm-tow-page .lm-totw2-field {
        height: 535px !important;
    }

    .lm-tow-page .lm-totw2-player {
        width: 86px !important;
    }

    .lm-tow-page .lm-totw2-badge {
        width: 64px !important;
        height: 64px !important;
        margin-bottom: 6px !important;
        border-width: 2px !important;
    }

    .lm-tow-page .lm-totw2-logo {
        width: 52px !important;
        height: 52px !important;
        padding: 6px !important;
    }

    .lm-tow-page .lm-totw2-player strong {
        font-size: 11px !important;
    }
}


/* Team of the Week small polish - central line + header sizing - v1.2.41 */
.lm-tow-page .lm-totw2-field::before {
    content: "" !important;
    position: absolute !important;
    z-index: 2 !important;
    left: 11.5% !important;
    right: 11.5% !important;
    top: 52.5% !important;
    height: 2px !important;
    background: rgba(171, 211, 255, .72) !important;
    box-shadow: 0 0 10px rgba(120, 176, 255, .12) !important;
    pointer-events: none !important;
}

.lm-tow-page .lm-totw2-lines {
    z-index: 1 !important;
}

.lm-tow-page .lm-totw2-league-logo {
    width: 78px !important;
    height: 78px !important;
    margin-bottom: 12px !important;
}

.lm-tow-page .lm-totw2-league-logo img {
    width: 78px !important;
    height: 78px !important;
}

.lm-tow-page .lm-totw2-head h2 {
    font-size: clamp(36px, 5.55vw, 70px) !important;
}

.lm-tow-page .lm-totw2-head p {
    font-size: clamp(11px, 1.22vw, 17px) !important;
    letter-spacing: .15em !important;
    margin-top: 10px !important;
}

@media (max-width: 680px) {
    .lm-tow-page .lm-totw2-field::before {
        left: 10% !important;
        right: 10% !important;
        top: 52.5% !important;
    }

    .lm-tow-page .lm-totw2-league-logo,
    .lm-tow-page .lm-totw2-league-logo img {
        width: 64px !important;
        height: 64px !important;
    }

    .lm-tow-page .lm-totw2-head h2 {
        font-size: clamp(32px, 9vw, 46px) !important;
    }

    .lm-tow-page .lm-totw2-head p {
        font-size: 10px !important;
        letter-spacing: .07em !important;
    }
}


/* Team of the Week header polish - v1.2.42 */
.lm-tow-page .lm-totw2-league-logo {
    width: 86px !important;
    height: 86px !important;
    margin-bottom: 10px !important;
}

.lm-tow-page .lm-totw2-league-logo img {
    width: 86px !important;
    height: 86px !important;
    filter: drop-shadow(0 8px 16px rgba(0,0,0,.16)) !important;
}

.lm-tow-page .lm-totw2-head h2 {
    background: linear-gradient(180deg, #ffffff 0%, #ffffff 48%, #e9f2ff 72%, #ffffff 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    text-shadow: 0 8px 18px rgba(0,0,0,.16), 0 0 18px rgba(255,255,255,.08) !important;
}

.lm-tow-page .lm-totw2-head p {
    color: rgba(255,255,255,.72) !important;
    text-shadow: 0 4px 10px rgba(0,0,0,.12) !important;
}

@media (max-width: 680px) {
    .lm-tow-page .lm-totw2-league-logo,
    .lm-tow-page .lm-totw2-league-logo img {
        width: 70px !important;
        height: 70px !important;
    }
}


/* Disciplinary page - v1.2.44 */
.lm-disciplinary-page .lm-disciplinary-card {
    overflow: hidden;
    padding: 0;
}

.lm-disciplinary-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px 38px;
    background:
        radial-gradient(circle at 92% 10%, rgba(255,255,255,.16), transparent 24%),
        linear-gradient(135deg, #064fb2 0%, #073f93 48%, #052c6d 100%);
    color: #fff;
}

.lm-disciplinary-hero span {
    display: inline-flex;
    margin-bottom: 10px;
    color: rgba(255,255,255,.78);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.lm-disciplinary-hero h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(32px, 4.5vw, 58px);
    font-weight: 950;
    line-height: .95;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.lm-disciplinary-hero p {
    max-width: 640px;
    margin: 14px 0 0;
    color: rgba(255,255,255,.86);
    font-size: 17px;
    line-height: 1.55;
}

.lm-disciplinary-hero .lm-totw2-league-logo,
.lm-disciplinary-hero .lm-tow-league-logo {
    flex: 0 0 auto;
    width: 92px !important;
    height: 92px !important;
    margin: 0 !important;
}

.lm-disciplinary-hero .lm-totw2-league-logo img,
.lm-disciplinary-hero .lm-tow-league-logo img {
    width: 92px !important;
    height: 92px !important;
    object-fit: contain;
}

.lm-disciplinary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding: 34px 38px 40px;
    background: #fff;
}

.lm-disciplinary-grid article {
    padding: 22px 28px;
    border-bottom: 1px solid rgba(10,35,72,.08);
}

.lm-disciplinary-grid article:nth-child(odd) {
    border-right: 1px solid rgba(10,35,72,.08);
}

.lm-disciplinary-grid article:nth-last-child(-n+2) {
    border-bottom: 0;
}

.lm-disciplinary-grid h3 {
    margin: 0 0 12px;
    color: #071d3f;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
}

.lm-disciplinary-grid h4 {
    margin: 18px 0 8px;
    color: #071d3f;
    font-size: 15px;
    font-weight: 900;
}

.lm-disciplinary-grid p,
.lm-disciplinary-grid li {
    color: #1b2b42;
    font-size: 15.5px;
    line-height: 1.62;
}

.lm-disciplinary-grid p {
    margin: 0 0 12px;
}

.lm-disciplinary-grid ul {
    margin: 0 0 12px 20px;
    padding: 0;
}

.lm-disciplinary-grid strong {
    color: #071d3f;
    font-weight: 900;
}

@media (max-width: 900px) {
    .lm-disciplinary-hero {
        align-items: flex-start;
        padding: 30px 24px;
    }

    .lm-disciplinary-grid {
        grid-template-columns: 1fr;
        padding: 18px 22px 28px;
    }

    .lm-disciplinary-grid article,
    .lm-disciplinary-grid article:nth-child(odd),
    .lm-disciplinary-grid article:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid rgba(10,35,72,.08);
        padding: 20px 0;
    }

    .lm-disciplinary-grid article:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 640px) {
    .lm-disciplinary-hero {
        flex-direction: column;
        gap: 18px;
    }

    .lm-disciplinary-hero .lm-totw2-league-logo,
    .lm-disciplinary-hero .lm-tow-league-logo,
    .lm-disciplinary-hero .lm-totw2-league-logo img,
    .lm-disciplinary-hero .lm-tow-league-logo img {
        width: 74px !important;
        height: 74px !important;
    }
}


/* Disciplinary fatal-safe polish - v1.2.46 */
.lm-disciplinary-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}


/* Complete mobile polish for all League Manager widgets and public pages - v1.2.47 */
@media (max-width: 1024px) {
    .lm-featured-overview-grid,
    .lm-results-schedule-grid,
    .lm-news-grid,
    .lm-ai-probability-grid {
        grid-template-columns: 1fr !important;
    }

    .lm-teams-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    .lm-featured-matchweek-list {
        grid-template-columns: 1fr !important;
    }

    .lm-featured-matchweek-list .lm-home-match-row:nth-child(odd) {
        border-right: 0 !important;
    }

    .lm-top-goalscorers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .lm-results-box {
        border-right: 0 !important;
        border-bottom: 1px solid #e8e8e8 !important;
    }

    .lm-public-hero,
    .lm-team-hero,
    .lm-match-hero {
        grid-template-columns: 1fr !important;
        text-align: center !important;
    }

    .lm-public-meta {
        justify-content: center !important;
    }

    .lm-match-public-team {
        justify-content: center !important;
    }

    .lm-ai-probability-team {
        min-height: 140px !important;
    }
}

@media (max-width: 767px) {
    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .lm-match-slider {
        border-top: 0 !important;
        border-bottom: 1px solid #e7e7e7 !important;
        background: #ffffff !important;
    }

    .lm-match-slider-viewport {
        overflow: hidden !important;
    }

    .lm-match-slider-track {
        gap: 0 !important;
        padding: 0 !important;
        scroll-snap-type: x mandatory !important;
    }

    .lm-match-card {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
        min-height: 150px !important;
        padding: 18px 50px 16px !important;
        border-right: 0 !important;
        border-bottom: 0 !important;
        background: #f7f7f7 !important;
    }

    .lm-match-card-league {
        max-width: 100% !important;
        margin-bottom: 10px !important;
        font-size: 11px !important;
        letter-spacing: .02em !important;
    }

    .lm-match-card-status {
        margin-bottom: 12px !important;
        font-size: 10px !important;
    }

    .lm-match-card-scoreline,
    .lm-match-card-fixture {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        gap: 9px !important;
        min-height: 38px !important;
    }

    .lm-match-card-team {
        gap: 6px !important;
        font-size: 10px !important;
        line-height: 1.05 !important;
        white-space: normal !important;
    }

    .lm-match-card-team span,
    .lm-match-card-team strong {
        max-width: 82px !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    .lm-match-card-logo {
        width: 25px !important;
        height: 25px !important;
        flex-basis: 25px !important;
    }

    .lm-match-card-score {
        min-width: 58px !important;
        gap: 6px !important;
        font-size: 20px !important;
        padding: 0 !important;
    }

    .lm-match-card-date {
        margin-top: 12px !important;
        font-size: 11px !important;
    }

    .lm-match-slider-arrow {
        width: 36px !important;
        height: 52px !important;
        background: rgba(255,255,255,.92) !important;
        box-shadow: 0 8px 18px rgba(0,0,0,.08) !important;
    }

    .lm-match-slider-arrow span {
        font-size: 28px !important;
    }

    .lm-public-page {
        width: calc(100% - 24px) !important;
        margin: 26px auto 44px !important;
    }

    .lm-public-hero,
    .lm-league-page-header {
        min-height: 0 !important;
        padding: 24px 18px !important;
        border-radius: 12px !important;
    }

    .lm-public-hero-content h1,
    .lm-match-public-center h1,
    .lm-league-page-header h1 {
        font-size: clamp(32px, 11vw, 52px) !important;
        letter-spacing: -.06em !important;
        line-height: .95 !important;
    }

    .lm-public-team-logo {
        width: 86px !important;
        height: 86px !important;
    }

    .lm-public-card,
    .lm-home-widget,
    .lm-standings-widget,
    .lm-results-schedule-widget,
    .lm-featured-matchweek-widget,
    .lm-top-goalscorers-widget,
    .lm-latest-news-widget {
        border-radius: 12px !important;
        box-shadow: 0 8px 22px rgba(0,0,0,.035) !important;
    }

    .lm-public-card-head,
    .lm-card-simple-head,
    .lm-widget-head {
        min-height: 0 !important;
        padding: 17px 16px 14px !important;
        gap: 12px !important;
    }

    .lm-public-card-head h2,
    .lm-card-simple-head h3,
    .lm-widget-head h3 {
        font-size: 14px !important;
        line-height: 1.1 !important;
    }

    .lm-standings-table-wrap,
    .lm-public-table-wrap,
    .lm-public-card:has(table),
    .lm-league-list-card,
    .lm-match-timeline-card,
    .lm-ai-probability-card {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .lm-standings-table,
    .lm-public-table,
    .lm-top-scorers-table,
    .lm-suspensions-table,
    .lm-call-up-table,
    .lm-full-standings-table {
        min-width: 680px !important;
    }

    .lm-standings-table th,
    .lm-standings-table td,
    .lm-public-table th,
    .lm-public-table td {
        padding: 13px 12px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
    }

    .lm-standings-team,
    .lm-scorer-player,
    .lm-suspension-player,
    .lm-call-up-player-name {
        min-width: 170px !important;
    }

    .lm-season-filter-card {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 16px !important;
        padding: 16px !important;
    }

    .lm-season-filter-form,
    .lm-season-select-wrap {
        width: 100% !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
    }

    .lm-season-select-wrap select,
    .lm-season-select-wrap button {
        width: 100% !important;
        min-width: 0 !important;
    }

    .lm-season-filter-current strong {
        font-size: 20px !important;
    }

    .lm-next-match-widget {
        padding: 22px 16px !important;
        min-height: 0 !important;
        border-radius: 12px !important;
    }

    .lm-next-match-week {
        margin-top: 24px !important;
        font-size: 12px !important;
    }

    .lm-next-match-grid {
        grid-template-columns: 1fr auto 1fr !important;
        gap: 10px !important;
        margin-top: 22px !important;
    }

    .lm-next-match-logo {
        width: 58px !important;
        height: 58px !important;
        margin-bottom: 10px !important;
    }

    .lm-next-match-team strong {
        font-size: 14px !important;
        line-height: 1.1 !important;
    }

    .lm-next-match-team span {
        font-size: 10px !important;
    }

    .lm-next-match-center {
        min-width: 74px !important;
    }

    .lm-next-match-vs,
    .lm-next-match-score {
        font-size: 24px !important;
        margin-bottom: 10px !important;
    }

    .lm-next-match-meta,
    .lm-next-match-venue {
        font-size: 11px !important;
        line-height: 1.35 !important;
    }

    .lm-next-match-button {
        width: 100% !important;
        justify-content: center !important;
        margin-top: 20px !important;
    }

    .lm-home-match-row {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 16px !important;
        text-align: center !important;
    }

    .lm-home-match-date,
    .lm-home-match-venue {
        text-align: center !important;
    }

    .lm-home-match-teams {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .lm-home-match-team {
        justify-content: center !important;
        font-size: 10px !important;
        line-height: 1.1 !important;
        white-space: normal !important;
    }

    .lm-home-match-team span,
    .lm-home-match-team strong {
        max-width: 86px !important;
        overflow-wrap: anywhere !important;
    }

    .lm-home-match-logo {
        width: 26px !important;
        height: 26px !important;
        flex-basis: 26px !important;
    }

    .lm-home-match-score {
        min-width: 48px !important;
        font-size: 16px !important;
    }

    .lm-results-schedule-grid {
        grid-template-columns: 1fr !important;
    }

    .lm-featured-matchweek-label {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
        padding: 16px !important;
    }

    .lm-featured-matchweek-label span {
        text-align: left !important;
    }

    .lm-featured-matchweek-list {
        grid-template-columns: 1fr !important;
    }

    .lm-top-goalscorers-grid {
        grid-template-columns: 1fr !important;
    }

    .lm-goalscorer-card {
        grid-template-columns: auto 42px minmax(0, 1fr) !important;
        min-height: 92px !important;
        padding: 16px !important;
        border-right: 0 !important;
        border-bottom: 1px solid #eeeeee !important;
    }

    .lm-news-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .lm-news-card-image {
        min-height: 185px !important;
    }

    .lm-news-card-body {
        padding: 17px !important;
    }

    .lm-news-card-body h3 {
        font-size: 20px !important;
    }

    .lm-news-slider-track {
        padding: 18px 16px 22px !important;
        gap: 14px !important;
    }

    .lm-news-card-slider {
        flex-basis: 82% !important;
        min-width: 240px !important;
    }

    .lm-teams-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .lm-team-grid-card {
        min-height: 0 !important;
        padding: 20px !important;
    }

    .lm-team-grid-logo-wrap {
        min-height: 74px !important;
        margin-bottom: 14px !important;
    }

    .lm-team-grid-logo {
        width: 66px !important;
        height: 66px !important;
    }

    .lm-public-match-item {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        padding: 15px 16px !important;
        text-align: center !important;
    }

    .lm-public-match-item strong,
    .lm-public-match-item em {
        text-align: center !important;
    }

    .lm-public-table-row {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        padding: 16px !important;
    }

    .lm-public-table-row strong {
        grid-column: 1 / -1 !important;
        justify-content: center !important;
        font-size: 16px !important;
    }

    .lm-public-team-mini {
        grid-template-columns: 1fr !important;
        text-align: center !important;
        padding: 18px !important;
    }

    .lm-public-event-row {
        min-width: 760px !important;
    }

    .lm-match-timeline {
        min-width: 0 !important;
        padding: 18px 16px !important;
    }

    .lm-match-timeline::before {
        left: 20px !important;
        transform: none !important;
    }

    .lm-timeline-event,
    .lm-timeline-event.is-home,
    .lm-timeline-event.is-away {
        grid-template-columns: 40px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    .lm-timeline-event.is-home .lm-timeline-content,
    .lm-timeline-event.is-away .lm-timeline-content {
        grid-column: 2 !important;
        text-align: left !important;
    }

    .lm-timeline-event.is-home .lm-timeline-minute,
    .lm-timeline-event.is-away .lm-timeline-minute,
    .lm-timeline-event.is-home .lm-timeline-dot,
    .lm-timeline-event.is-away .lm-timeline-dot {
        grid-column: 1 !important;
    }

    .lm-ai-probability-grid {
        grid-template-columns: 1fr !important;
    }

    .lm-ai-probability-body {
        padding: 16px !important;
    }

    .lm-ai-probability-team {
        min-height: 132px !important;
        padding: 16px !important;
    }

    .lm-ai-probability-team > strong {
        margin-top: 16px !important;
        font-size: 42px !important;
    }

    .lm-call-up-notice,
    .lm-suspensions-notice {
        padding: 17px !important;
        font-size: 13px !important;
    }

    .lm-disciplinary-hero {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 26px 20px !important;
        gap: 18px !important;
    }

    .lm-disciplinary-hero h2 {
        font-size: clamp(30px, 10vw, 46px) !important;
    }

    .lm-disciplinary-hero p {
        font-size: 14px !important;
    }

    .lm-disciplinary-grid {
        grid-template-columns: 1fr !important;
        padding: 18px 20px 26px !important;
    }

    .lm-disciplinary-grid article,
    .lm-disciplinary-grid article:nth-child(odd),
    .lm-disciplinary-grid article:nth-last-child(-n+2) {
        padding: 18px 0 !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(10,35,72,.08) !important;
    }

    .lm-disciplinary-grid article:last-child {
        border-bottom: 0 !important;
    }

    .lm-tow-page .lm-totw2 {
        max-width: 100% !important;
    }
}

@media (max-width: 430px) {
    .lm-match-card {
        padding-left: 42px !important;
        padding-right: 42px !important;
    }

    .lm-match-card-team span,
    .lm-match-card-team strong,
    .lm-home-match-team span,
    .lm-home-match-team strong {
        max-width: 72px !important;
    }

    .lm-match-card-score {
        min-width: 50px !important;
        font-size: 18px !important;
    }

    .lm-home-match-score {
        min-width: 42px !important;
    }

    .lm-public-page {
        width: calc(100% - 18px) !important;
    }

    .lm-public-card-head,
    .lm-card-simple-head,
    .lm-widget-head {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}


/* Focused responsive fixes - slider, next match, match page, team page - v1.2.48 */
.lm-match-slider-arrow {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 999px !important;
    padding: 0 !important;
}

.lm-match-slider-arrow span {
    margin: 0 !important;
    line-height: 1 !important;
    transform: translateY(-1px) !important;
}

.lm-next-match-grid {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
}

.lm-next-match-grid > .lm-next-match-team:first-child {
    order: 1 !important;
}

.lm-next-match-center {
    order: 2 !important;
}

.lm-next-match-grid > .lm-next-match-team:last-child {
    order: 3 !important;
}

.lm-next-match-button,
.lm-next-match-button.is-static {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.15 !important;
}

.lm-match-public-page .lm-match-hero {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 26px 30px !important;
    gap: 22px !important;
    text-align: center !important;
    align-items: center !important;
}

.lm-match-public-page .lm-match-public-team {
    min-width: 0 !important;
}

.lm-match-public-page .lm-public-team-logo {
    width: 78px !important;
    height: 78px !important;
}

.lm-match-public-page .lm-match-public-team strong {
    margin-top: 10px !important;
    font-size: 18px !important;
    line-height: 1.05 !important;
}

.lm-match-public-page .lm-match-public-team span {
    margin-top: 5px !important;
    font-size: 10px !important;
}

.lm-match-public-page .lm-match-public-center h1 {
    margin: 6px 0 10px !important;
    font-size: clamp(34px, 5vw, 58px) !important;
    line-height: .9 !important;
}

.lm-match-public-page .lm-match-public-center strong,
.lm-match-public-page .lm-match-public-center span,
.lm-match-public-page .lm-match-public-center small {
    font-size: 11px !important;
    line-height: 1.3 !important;
}

.lm-team-public-page,
.lm-team-public-page * {
    max-width: 100%;
}

.lm-team-public-page {
    overflow-x: hidden !important;
}

.lm-team-profile-layout,
.lm-team-profile-sidebar,
.lm-team-profile-main,
.lm-team-tab-panel,
.lm-team-tab-panel > *,
.lm-team-public-page .lm-public-card {
    min-width: 0 !important;
    max-width: 100% !important;
}

@media (max-width: 767px) {
    .lm-match-slider-arrow {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        border-radius: 999px !important;
    }

    .lm-match-slider-prev {
        left: 8px !important;
    }

    .lm-match-slider-next {
        right: 8px !important;
    }

    .lm-next-match-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr) !important;
        gap: 8px !important;
        align-items: center !important;
    }

    .lm-next-match-grid > .lm-next-match-team:first-child {
        order: 1 !important;
    }

    .lm-next-match-center {
        order: 2 !important;
        min-width: 0 !important;
    }

    .lm-next-match-grid > .lm-next-match-team:last-child {
        order: 3 !important;
    }

    .lm-next-match-button,
    .lm-next-match-button.is-static {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .lm-match-public-page .lm-match-hero {
        grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr) !important;
        padding: 18px 10px !important;
        gap: 8px !important;
        border-radius: 12px !important;
    }

    .lm-match-public-page .lm-public-team-logo {
        width: 52px !important;
        height: 52px !important;
    }

    .lm-match-public-page .lm-match-public-team strong {
        margin-top: 7px !important;
        font-size: 12px !important;
        line-height: 1.05 !important;
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
    }

    .lm-match-public-page .lm-match-public-team span {
        font-size: 9px !important;
    }

    .lm-match-public-page .lm-match-public-center h1 {
        margin: 2px 0 6px !important;
        font-size: 26px !important;
        letter-spacing: -.05em !important;
    }

    .lm-match-public-page .lm-match-public-center .lm-public-kicker {
        display: none !important;
    }

    .lm-match-public-page .lm-match-public-center strong,
    .lm-match-public-page .lm-match-public-center span,
    .lm-match-public-page .lm-match-public-center small {
        font-size: 9px !important;
        line-height: 1.25 !important;
        word-break: break-word !important;
    }

    .lm-team-public-page {
        width: calc(100% - 18px) !important;
        overflow-x: hidden !important;
    }

    .lm-team-profile-layout {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 16px !important;
        overflow: hidden !important;
    }

    .lm-team-profile-sidebar {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 14px !important;
    }

    .lm-team-profile-main {
        width: 100% !important;
        overflow: hidden !important;
    }

    .lm-team-tabs-visual {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        gap: 8px !important;
        padding: 0 0 4px !important;
    }

    .lm-team-tabs-visual button {
        flex: 0 0 auto !important;
        min-width: max-content !important;
        padding: 0 14px !important;
    }

    .lm-team-profile-card-compact,
    .lm-team-position-modern-card,
    .lm-team-public-page .lm-public-card {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .lm-team-profile-head {
        min-width: 0 !important;
    }

    .lm-team-profile-head > div {
        min-width: 0 !important;
    }

    .lm-team-profile-card-compact h1 {
        font-size: 22px !important;
        line-height: 1.05 !important;
        overflow-wrap: anywhere !important;
    }

    .lm-team-overview-stats,
    .lm-team-stats-tab-grid,
    .lm-team-position-details {
        grid-template-columns: 1fr !important;
    }

    .lm-team-matchweek-grouped-list,
    .lm-team-matchweek-list,
    .lm-public-home-match-list,
    .lm-team-matches-panel,
    .lm-team-tab-panel {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .lm-team-matchweek-row,
    .lm-matchweek-group-matches .lm-team-matchweek-row,
    .lm-public-home-match-list .lm-home-match-row {
        grid-template-columns: 1fr !important;
        min-width: 0 !important;
        width: 100% !important;
        gap: 10px !important;
        text-align: center !important;
        padding: 14px !important;
    }

    .lm-team-matchweek-label,
    .lm-team-matchweek-row .lm-home-match-venue {
        text-align: center !important;
    }

    .lm-team-matchweek-row .lm-home-match-teams,
    .lm-public-home-match-list .lm-home-match-teams {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .lm-team-matchweek-row .lm-home-match-team,
    .lm-public-home-match-list .lm-home-match-team {
        justify-content: center !important;
        min-width: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    .lm-team-public-page .lm-public-table-wrap,
    .lm-team-public-page .lm-standings-table-wrap {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        max-width: 100% !important;
    }
}


/* Team + match detail layout polish - v1.2.49 */
.lm-team-profile-card-compact {
    display: flex !important;
    align-items: center !important;
    min-height: 104px !important;
}

.lm-team-profile-card-compact .lm-team-profile-head {
    width: 100% !important;
    align-items: center !important;
}

.lm-team-profile-card-compact h1 {
    margin: 0 !important;
}

/* Team page: table position compact 50/50 + form full width */
.lm-team-position-details {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.lm-team-position-details > div {
    min-width: 0 !important;
    min-height: 64px !important;
    padding: 12px !important;
}

.lm-team-position-details > div:last-child {
    grid-column: 1 / -1 !important;
    min-height: 58px !important;
}

.lm-team-position-details .lm-form-badges {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
}

/* Team page stats: 3 per row */
.lm-team-overview-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.lm-team-overview-metric {
    min-height: 78px !important;
    padding: 14px !important;
}

.lm-team-overview-metric strong {
    margin-top: 10px !important;
    font-size: 28px !important;
}

/* Match page: position/points 50/50 + form full width */
.lm-match-summary-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.lm-match-summary-stats > div {
    min-width: 0 !important;
    min-height: 64px !important;
    padding: 12px !important;
}

.lm-match-summary-stats > div:nth-child(3) {
    grid-column: 1 / -1 !important;
    min-height: 58px !important;
}

.lm-match-summary-stats .lm-form-badges {
    justify-content: center !important;
    flex-wrap: wrap !important;
}

/* Avoid Team of the Week auto-created page surprise when user keeps it trashed.
   The PHP activation logic now respects a trashed /team-of-the-week/ page. */

@media (max-width: 767px) {
    .lm-team-profile-card-compact {
        min-height: 96px !important;
    }

    .lm-team-profile-card-compact .lm-team-profile-head {
        align-items: center !important;
    }

    .lm-team-position-details {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .lm-team-position-details > div:last-child {
        grid-column: 1 / -1 !important;
    }

    .lm-team-overview-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .lm-team-overview-metric {
        min-height: 68px !important;
        padding: 10px !important;
    }

    .lm-team-overview-metric span {
        font-size: 9px !important;
    }

    .lm-team-overview-metric strong {
        font-size: 23px !important;
    }

    .lm-match-summary-card {
        gap: 14px !important;
        padding: 16px !important;
    }

    .lm-match-summary-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
    }

    .lm-match-summary-stats > div:nth-child(3) {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 430px) {
    .lm-team-overview-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .lm-team-overview-metric {
        padding: 9px 7px !important;
    }

    .lm-team-overview-metric strong {
        font-size: 21px !important;
    }
}


/* Postponed matches - v1.2.54 */
.lm-postponed-admin-box {
    margin: 16px 0;
    padding: 16px;
    border: 1px solid rgba(200,0,0,.18);
    border-radius: 8px;
    background: #fff7f7;
}

.lm-postponed-admin-box h3 {
    margin: 0 0 12px;
    color: #111;
    font-size: 14px;
    font-weight: 900;
    text-transform: uppercase;
}

.lm-home-match-row.is-postponed,
.lm-team-matchweek-row.is-postponed {
    background: #fffafa;
}

.lm-home-match-score.is-postponed {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 11px;
    border-radius: 999px;
    background: var(--lm-red);
    color: #fff !important;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .06em;
}

.lm-postponed-note {
    display: block;
    color: var(--lm-red);
    font-size: 11px;
    font-weight: 950;
    line-height: 1.25;
}

.lm-home-match-venue small {
    display: block;
    margin-top: 5px;
    color: #666;
    font-size: 10px;
    font-weight: 750;
    line-height: 1.35;
}

.lm-postponed-matches-widget {
    border-color: rgba(200,0,0,.18);
}

.lm-postponed-matches-widget .lm-card-simple-head h3 {
    color: var(--lm-red);
}

.lm-match-card-postponed .lm-match-card-status {
    color: var(--lm-red);
}


/* Postponed reason text clamp - v1.2.55 */
.lm-match-public-center .lm-postponed-reason {
    display: -webkit-box !important;
    width: 100% !important;
    max-width: 560px !important;
    margin: 10px auto 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    color: rgba(255,255,255,.82) !important;
    line-height: 1.35 !important;
    text-align: center !important;
    text-transform: none !important;
    overflow-wrap: anywhere !important;
}

.lm-match-public-center .lm-postponed-reason::after {
    content: "";
}

.lm-home-match-venue {
    min-width: 0 !important;
    overflow: hidden !important;
}

.lm-home-match-venue .lm-postponed-reason {
    display: -webkit-box !important;
    max-width: 280px !important;
    margin: 5px 0 0 auto !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    color: #666 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    text-overflow: ellipsis !important;
    overflow-wrap: anywhere !important;
}

.lm-featured-matchweek-list .lm-home-match-venue .lm-postponed-reason,
.lm-postponed-matches-widget .lm-home-match-venue .lm-postponed-reason {
    max-width: 240px !important;
}

.lm-home-match-row.is-postponed .lm-home-match-venue,
.lm-team-matchweek-row.is-postponed .lm-home-match-venue {
    max-width: 100% !important;
}

@media (max-width: 767px) {
    .lm-match-public-center .lm-postponed-reason {
        max-width: 92vw !important;
        font-size: 11px !important;
    }

    .lm-home-match-venue .lm-postponed-reason {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }
}


/* Postponed homepage widget visual alignment + real ellipsis - v1.2.56 */
.lm-postponed-matches-widget {
    overflow: hidden !important;
    border: 1px solid #e7e7e7 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.035) !important;
}

.lm-postponed-matches-widget .lm-card-simple-head {
    min-height: 64px !important;
    padding: 22px 24px !important;
    border-bottom: 1px solid #eeeeee !important;
    background: #fff !important;
}

.lm-postponed-matches-widget .lm-card-simple-head h3 {
    color: var(--lm-red) !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    letter-spacing: -0.03em !important;
}

.lm-postponed-matches-widget .lm-card-simple-head a {
    color: var(--lm-red) !important;
}

.lm-postponed-matches-widget .lm-home-match-list {
    background: #fff !important;
}

.lm-postponed-matches-widget .lm-home-match-row {
    grid-template-columns: 135px minmax(320px, 1fr) 230px !important;
    min-height: 92px !important;
    padding: 16px 22px !important;
    border-top: 0 !important;
    border-bottom: 1px solid #eeeeee !important;
    background: #fffafa !important;
}

.lm-postponed-matches-widget .lm-home-match-row:last-child {
    border-bottom: 0 !important;
}

.lm-postponed-matches-widget .lm-home-match-score.is-postponed {
    min-width: 72px !important;
    min-height: 36px !important;
    border-radius: 999px !important;
}

.lm-postponed-reason {
    position: relative !important;
    overflow: hidden !important;
}

.lm-postponed-reason::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 26px;
    height: 1.35em;
    pointer-events: none;
}

.lm-home-match-venue .lm-postponed-reason::after {
    background: linear-gradient(90deg, rgba(255,250,250,0), #fffafa 74%);
}

.lm-match-public-center .lm-postponed-reason::after {
    background: linear-gradient(90deg, rgba(0,0,0,0), rgba(20,0,0,.92) 74%);
}

@media (max-width: 767px) {
    .lm-postponed-matches-widget .lm-card-simple-head {
        padding: 17px 16px 14px !important;
    }

    .lm-postponed-matches-widget .lm-home-match-row {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 16px !important;
        text-align: center !important;
    }

    .lm-postponed-matches-widget .lm-home-match-venue {
        text-align: center !important;
    }
}


/* Postponed text: ellipsis only, no fade - v1.2.57 */
.lm-postponed-reason::after,
.lm-home-match-venue .lm-postponed-reason::after,
.lm-match-public-center .lm-postponed-reason::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

.lm-match-public-center .lm-postponed-reason-full {
    display: block !important;
    width: 100% !important;
    max-width: 780px !important;
    margin: 10px auto 0 !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    color: rgba(255,255,255,.86) !important;
    line-height: 1.45 !important;
    text-align: center !important;
    text-transform: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}
