﻿/* =========================================================
   GEDIAN SPORTS - PUBLIC MATCH DETAILS
   Arabic / RTL / Tajawal / Green + White
   ========================================================= */

.public-match-details-page {
    --green: #5B8C3B;
    --green-dark: #41672e;
    --green-soft: #eef6e9;
    --navy: #17283b;
    --text: #334155;
    --muted: #7b8792;
    --border: #e1e7df;
    --bg: #f5f8f3;
    --live: #c43d3d;
    --live-soft: #fff0f0;
    --gold: #b98a22;
    --gold-soft: #fff6dc;
    min-height: 100vh;
    padding: 12px 0 60px;
    background: radial-gradient( circle at 10% 0%, rgba(91,140,59,.055), transparent 26%), linear-gradient( 180deg, #fbfcfa 0%, var(--bg) 100%);
    color: var(--text);
    font-family: "Tajawal",sans-serif;
}

    .public-match-details-page .container {
        max-width: 1280px;
    }


/* =========================================================
   Back / unavailable
   ========================================================= */

.pmd-backbar {
    min-height: 38px;
    margin-bottom: 7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--muted);
    font-size: .61rem;
}

    .pmd-backbar > a {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        color: var(--green-dark);
        text-decoration: none;
        font-weight: 900;
    }

    .pmd-backbar > div {
        display: flex;
        align-items: center;
        gap: 6px;
    }

        .pmd-backbar > div > span {
            padding: 3px 7px;
            border: 1px solid var(--border);
            border-radius: 999px;
            background: #fff;
        }

.pmd-verified-mini {
    border-color: #d4e4ca !important;
    background: var(--green-soft) !important;
    color: var(--green-dark);
    font-weight: 900;
}

.pmd-unavailable {
    min-height: 380px;
    padding: 35px 20px;
    display: grid;
    place-items: center;
    align-content: center;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: #fff;
    text-align: center;
    box-shadow: 0 12px 32px rgba(15,23,42,.035);
}

.pmd-unavailable-icon {
    width: 72px;
    height: 72px;
    margin-bottom: 12px;
    display: grid;
    place-items: center;
    border-radius: 22px;
    background: var(--green-soft);
    font-size: 1.9rem;
}

.pmd-unavailable h1 {
    margin: 0;
    color: var(--navy);
    font-size: 1.25rem;
    font-weight: 900;
}

.pmd-unavailable p {
    max-width: 520px;
    margin: 8px 0 16px;
    color: var(--muted);
    font-size: .72rem;
}

.pmd-unavailable a {
    min-height: 38px;
    padding: 8px 15px;
    display: inline-flex;
    align-items: center;
    border-radius: 9px;
    background: var(--green);
    color: #fff;
    text-decoration: none;
    font-size: .68rem;
    font-weight: 900;
}


/* =========================================================
   Scoreboard
   ========================================================= */

.pmd-scoreboard {
    overflow: hidden;
    border: 1px solid #dce5d7;
    border-top: 4px solid var(--green);
    border-radius: 18px;
    background: radial-gradient( circle at 50% -20%, rgba(91,140,59,.11), transparent 45%), #fff;
    box-shadow: 0 12px 34px rgba(45,66,32,.07);
}

    .pmd-scoreboard.status-live {
        border-top-color: var(--live);
    }

    .pmd-scoreboard.status-problem {
        border-top-color: var(--gold);
    }

    .pmd-scoreboard.status-completed {
        border-top-color: #708078;
    }

.pmd-scoreboard-top {
    min-height: 55px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid #edf0eb;
}

.pmd-scoreboard-context {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.pmd-sport-pill {
    flex: 0 0 auto;
    min-height: 23px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: var(--green-soft);
    color: var(--green-dark);
    font-size: .47rem;
    font-weight: 900;
}

.pmd-scoreboard-context > div {
    min-width: 0;
}

.pmd-scoreboard-context strong,
.pmd-scoreboard-context small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pmd-scoreboard-context strong {
    color: var(--navy);
    font-size: .71rem;
    font-weight: 900;
}

.pmd-scoreboard-context small {
    margin-top: 2px;
    color: #96a09a;
    font-size: .47rem;
}

.pmd-scoreboard-flags {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 5px;
}

.pmd-status-pill,
.pmd-featured-pill {
    min-height: 24px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    font-size: .46rem;
    font-weight: 900;
}

    .pmd-status-pill.status-scheduled {
        background: var(--green-soft);
        color: var(--green-dark);
    }

    .pmd-status-pill.status-live {
        background: var(--live-soft);
        color: var(--live);
    }

    .pmd-status-pill.status-completed {
        background: #edf1ef;
        color: #596760;
    }

    .pmd-status-pill.status-problem {
        background: var(--gold-soft);
        color: #8a6616;
    }

    .pmd-status-pill.status-live i {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
        animation: pmd-live-pulse 1.2s infinite;
    }

.pmd-featured-pill {
    background: var(--gold-soft);
    color: #8a6616;
}

.pmd-competition-structure {
    padding: 6px 14px;
    border-bottom: 1px solid #f0f2ef;
    background: #fbfcfa;
    color: #849087;
    text-align: center;
    font-size: .48rem;
}


/* Main score area */

.pmd-scoreboard-main {
    min-height: 245px;
    padding: 23px 35px 18px;
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(160px,.7fr) minmax(0,1fr);
    align-items: center;
    gap: 24px;
}

.pmd-score-team {
    min-width: 0;
    display: grid;
    justify-items: center;
    text-align: center;
}

.pmd-team-logo {
    width: 104px;
    height: 104px;
    padding: 8px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid #dfe6db;
    border-radius: 28px;
    background: #fff;
    text-decoration: none;
    box-shadow: 0 7px 20px rgba(15,23,42,.055);
    transition: transform .18s ease, box-shadow .18s ease;
}

a.pmd-team-logo:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 26px rgba(54,77,41,.1);
}

.pmd-team-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pmd-team-logo > span {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    border-radius: 20px;
    background: linear-gradient( 145deg, var(--green-dark), var(--green));
    color: #fff;
    font-size: 2rem;
    font-weight: 900;
}

.pmd-side-label {
    margin-top: 8px;
    color: #9aa39e;
    font-size: .44rem;
    font-weight: 800;
}

.pmd-team-name {
    max-width: 100%;
    margin-top: 2px;
    overflow: hidden;
    color: var(--navy);
    text-decoration: none;
    font-size: .88rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

a.pmd-team-name:hover {
    color: var(--green-dark);
}

.pmd-team-short {
    margin-top: 2px;
    color: #929c96;
    font-size: .45rem;
}

.pmd-score-center {
    min-width: 0;
    display: grid;
    justify-items: center;
    align-content: center;
    text-align: center;
}

.pmd-live-state,
.pmd-match-date {
    min-height: 21px;
    color: #8d9791;
    font-size: .52rem;
    font-weight: 900;
}

.pmd-live-state {
    color: var(--live);
}

.pmd-main-score {
    margin: 4px 0;
    color: var(--navy);
    font-family: Arial,sans-serif;
    font-size: 2.2rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.03em;
}

.status-live .pmd-main-score {
    color: var(--live);
}

.pmd-kickoff-note,
.pmd-secondary-score,
.pmd-penalty-score,
.pmd-winner-line {
    margin-top: 4px;
    font-size: .45rem;
}

.pmd-kickoff-note {
    color: #9ba39e;
}

.pmd-secondary-score {
    color: #7d8982;
}

.pmd-penalty-score {
    padding: 3px 7px;
    border-radius: 999px;
    background: #f5f1e9;
    color: #725f43;
    font-weight: 900;
}

.pmd-winner-line {
    color: #6f7c74;
}

    .pmd-winner-line strong {
        color: var(--green-dark);
    }


/* Score facts */

.pmd-scoreboard-facts {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    border-top: 1px solid #e9ede7;
    background: #fbfcfa;
}

    .pmd-scoreboard-facts > div {
        min-width: 0;
        padding: 10px 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        border-inline-start: 1px solid #e9ede7;
    }

        .pmd-scoreboard-facts > div:first-child {
            border-inline-start: 0;
        }

        .pmd-scoreboard-facts > div > span {
            font-size: .85rem;
        }

    .pmd-scoreboard-facts p {
        min-width: 0;
        margin: 0;
    }

    .pmd-scoreboard-facts small,
    .pmd-scoreboard-facts strong {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .pmd-scoreboard-facts small {
        color: #9aa39e;
        font-size: .39rem;
    }

    .pmd-scoreboard-facts strong {
        margin-top: 1px;
        color: #536159;
        font-size: .51rem;
        font-weight: 900;
    }

.pmd-public-note {
    padding: 8px 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;
    border-top: 1px solid #edf0eb;
    color: #727f77;
    font-size: .48rem;
}

    .pmd-public-note span + span::before {
        content: "•";
        margin-inline-end: 7px;
        color: #bdc4bf;
    }

.pmd-broadcast-strip {
    min-height: 55px;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid #dce7d5;
    background: linear-gradient( 90deg, #eef6e9, #f9fbf7);
}

    .pmd-broadcast-strip > div {
        min-width: 0;
        display: flex;
        align-items: center;
        gap: 8px;
    }

        .pmd-broadcast-strip > div > span {
            font-size: 1rem;
        }

    .pmd-broadcast-strip p {
        min-width: 0;
        margin: 0;
    }

    .pmd-broadcast-strip small,
    .pmd-broadcast-strip strong,
    .pmd-broadcast-strip em {
        display: block;
    }

    .pmd-broadcast-strip small {
        color: #809177;
        font-size: .38rem;
    }

    .pmd-broadcast-strip strong {
        color: var(--green-dark);
        font-size: .55rem;
        font-weight: 900;
    }

    .pmd-broadcast-strip em {
        margin-top: 1px;
        color: #879184;
        font-size: .4rem;
        font-style: normal;
    }

    .pmd-broadcast-strip > a {
        flex: 0 0 auto;
        min-height: 30px;
        padding: 5px 10px;
        display: inline-flex;
        align-items: center;
        border-radius: 8px;
        background: var(--green);
        color: #fff;
        text-decoration: none;
        font-size: .52rem;
        font-weight: 900;
    }


/* =========================================================
   Tabs / panels
   ========================================================= */

.pmd-tabs {
    position: sticky;
    top: 8px;
    z-index: 20;
    margin-top: 9px;
    padding: 5px;
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 4px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 7px 24px rgba(15,23,42,.045);
    backdrop-filter: blur(9px);
}

.pmd-tab {
    min-height: 39px;
    padding: 5px 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #707d75;
    font-family: inherit;
    font-size: .55rem;
    font-weight: 900;
    cursor: pointer;
}

    .pmd-tab:hover {
        background: #f5f8f3;
        color: var(--green-dark);
    }

    .pmd-tab.is-active {
        background: var(--green);
        color: #fff;
    }

    .pmd-tab > span {
        font-size: .69rem;
    }

    .pmd-tab > b {
        min-width: 18px;
        height: 18px;
        padding: 0 4px;
        display: grid;
        place-items: center;
        border-radius: 999px;
        background: rgba(15,23,42,.08);
        font-size: .39rem;
    }

    .pmd-tab.is-active > b {
        background: rgba(255,255,255,.17);
    }

.pmd-panel {
    margin-top: 9px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(15,23,42,.025);
}

    .pmd-panel[hidden] {
        display: none !important;
    }

.pmd-section-heading {
    margin-bottom: 11px;
    padding-bottom: 9px;
    border-bottom: 1px solid #edf0ed;
}

    .pmd-section-heading > span {
        color: var(--green);
        font-size: .43rem;
        font-weight: 900;
    }

    .pmd-section-heading h1,
    .pmd-section-heading h2 {
        margin: 2px 0 0;
        color: var(--navy);
        font-weight: 900;
    }

    .pmd-section-heading h1 {
        font-size: .98rem;
    }

    .pmd-section-heading h2 {
        font-size: .88rem;
    }

    .pmd-section-heading p {
        max-width: 750px;
        margin: 4px 0 0;
        color: var(--muted);
        font-size: .5rem;
        line-height: 1.7;
    }

.pmd-section-message {
    padding: 9px 11px;
    border-radius: 9px;
    font-size: .55rem;
}

    .pmd-section-message.is-warning {
        border: 1px solid #eadfbf;
        background: #fff9e9;
        color: #886817;
    }


/* =========================================================
   Overview
   ========================================================= */

.pmd-overview-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 8px;
}

.pmd-info-card {
    min-width: 0;
    min-height: 102px;
    padding: 11px;
    display: flex;
    gap: 9px;
    border: 1px solid #e5e9e3;
    border-radius: 11px;
    background: #fbfcfa;
}

.pmd-info-card-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--green-soft);
    font-size: .9rem;
}

.pmd-info-card > div:last-child {
    min-width: 0;
}

.pmd-info-card span {
    color: #99a29d;
    font-size: .39rem;
}

.pmd-info-card h2 {
    margin: 1px 0 0;
    overflow: hidden;
    color: var(--navy);
    font-size: .59rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pmd-info-card p {
    margin: 3px 0 0;
    overflow: hidden;
    color: #6e7a73;
    font-size: .45rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pmd-info-card small {
    display: block;
    margin-top: 3px;
    color: #939d97;
    font-size: .39rem;
    line-height: 1.55;
}

.pmd-overview-two-columns {
    margin-top: 8px;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px;
}

.pmd-detail-card {
    padding: 11px;
    border: 1px solid #e5e9e3;
    border-radius: 11px;
}

.pmd-detail-card-heading {
    min-height: 40px;
    padding-bottom: 7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 1px solid #eef1ee;
}

    .pmd-detail-card-heading > div > span {
        color: #98a19c;
        font-size: .38rem;
    }

    .pmd-detail-card-heading h2 {
        margin: 1px 0 0;
        color: var(--navy);
        font-size: .61rem;
        font-weight: 900;
    }

.pmd-detail-list {
    margin: 0;
}

    .pmd-detail-list > div {
        min-height: 37px;
        padding: 6px 1px;
        display: grid;
        grid-template-columns: 145px minmax(0,1fr);
        align-items: center;
        gap: 10px;
        border-bottom: 1px solid #f0f2f0;
    }

        .pmd-detail-list > div:last-child {
            border-bottom: 0;
        }

    .pmd-detail-list dt {
        color: #909a94;
        font-size: .43rem;
    }

    .pmd-detail-list dd {
        margin: 0;
        color: #4e5c54;
        font-size: .49rem;
        font-weight: 900;
    }

        .pmd-detail-list dd.is-warning {
            color: #a2781c;
        }


/* =========================================================
   Lineup
   ========================================================= */

.pmd-formations-bar {
    min-height: 52px;
    margin-bottom: 9px;
    padding: 7px 12px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    border: 1px solid #deead7;
    border-radius: 10px;
    background: linear-gradient( 90deg, #f1f7ed, #fff, #f1f7ed);
}

    .pmd-formations-bar > div:first-child {
        text-align: right;
    }

    .pmd-formations-bar > div:last-child {
        text-align: left;
    }

    .pmd-formations-bar > div span,
    .pmd-formations-bar > div strong {
        display: block;
    }

    .pmd-formations-bar > div span {
        color: #69786e;
        font-size: .45rem;
    }

    .pmd-formations-bar > div strong {
        margin-top: 2px;
        color: var(--green-dark);
        font-size: .68rem;
    }

    .pmd-formations-bar > span {
        color: #98a29b;
        font-size: .38rem;
    }


/* Pitch */

.pmd-pitch-shell {
    margin-bottom: 10px;
    overflow: hidden;
    border: 1px solid #dce5d7;
    border-radius: 14px;
    background: #f7faf5;
}

.pmd-football-pitch {
    position: relative;
    width: min(100%, 740px);
    height: 690px;
    margin: 0 auto;
    overflow: hidden;
    border-inline: 2px solid rgba(255,255,255,.88);
    background: repeating-linear-gradient( 90deg, rgba(255,255,255,.055) 0, rgba(255,255,255,.055) 60px, rgba(0,0,0,.018) 60px, rgba(0,0,0,.018) 120px), linear-gradient( 180deg, #5c973e 0%, #4f8937 50%, #5c973e 100%);
}

    .pmd-football-pitch::before {
        content: "";
        position: absolute;
        inset: 12px;
        border: 2px solid rgba(255,255,255,.78);
        pointer-events: none;
    }

.pitch-half-line {
    position: absolute;
    top: 50%;
    right: 12px;
    left: 12px;
    height: 2px;
    background: rgba(255,255,255,.8);
}

.pitch-center-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 128px;
    height: 128px;
    border: 2px solid rgba(255,255,255,.8);
    border-radius: 50%;
    transform: translate(-50%,-50%);
}

    .pitch-center-circle::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: rgba(255,255,255,.9);
        transform: translate(-50%,-50%);
    }

.pitch-box,
.pitch-goal-box {
    position: absolute;
    left: 50%;
    border: 2px solid rgba(255,255,255,.78);
    transform: translateX(-50%);
}

.pitch-box {
    width: 56%;
    height: 105px;
}

.pitch-goal-box {
    width: 29%;
    height: 42px;
}

.pitch-box-top {
    top: 12px;
    border-top: 0;
}

.pitch-goal-box-top {
    top: 12px;
    border-top: 0;
}

.pitch-box-bottom {
    bottom: 12px;
    border-bottom: 0;
}

.pitch-goal-box-bottom {
    bottom: 12px;
    border-bottom: 0;
}

.pmd-pitch-player {
    position: absolute;
    z-index: 3;
    width: 72px;
    display: grid;
    justify-items: center;
    color: #fff;
    text-decoration: none;
    text-align: center;
    transform: translate(-50%,-50%);
}

a.pmd-pitch-player:hover {
    color: #fff;
    z-index: 5;
}

.pmd-pitch-photo {
    position: relative;
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border: 2px solid rgba(255,255,255,.92);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 13px rgba(0,0,0,.19);
}

    .pmd-pitch-photo img,
    .pmd-pitch-photo i {
        width: 100%;
        height: 100%;
        border-radius: 50%;
    }

    .pmd-pitch-photo img {
        object-fit: cover;
    }

    .pmd-pitch-photo i {
        display: grid;
        place-items: center;
        background: var(--navy);
        color: #fff;
        font-style: normal;
        font-size: .62rem;
        font-weight: 900;
    }

.pmd-pitch-player.is-away .pmd-pitch-photo i {
    background: #eee;
    color: var(--navy);
}

.pmd-pitch-photo b {
    position: absolute;
    bottom: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    padding-inline: 3px;
    display: grid;
    place-items: center;
    border: 2px solid #fff;
    border-radius: 999px;
    background: var(--green-dark);
    color: #fff;
    font-family: Arial,sans-serif;
    font-size: .35rem;
}

.pmd-pitch-player > strong {
    width: 82px;
    margin-top: 3px;
    overflow: hidden;
    padding: 2px 4px;
    border-radius: 4px;
    background: rgba(15,23,42,.72);
    color: #fff;
    font-size: .36rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pmd-pitch-player > small {
    margin-top: 1px;
    padding: 1px 3px;
    border-radius: 3px;
    background: rgba(255,255,255,.9);
    color: #33453a;
    font-size: .27rem;
    font-weight: 900;
}

.pmd-pitch-player > em {
    position: absolute;
    top: -2px;
    left: 11px;
    width: 17px;
    height: 17px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffd35a;
    color: #3f3924;
    font-family: Arial,sans-serif;
    font-size: .29rem;
    font-style: normal;
    font-weight: 900;
}

.pmd-pitch-empty {
    position: absolute;
    left: 50%;
    z-index: 2;
    width: 220px;
    padding: 7px 10px;
    border: 1px dashed rgba(255,255,255,.65);
    border-radius: 7px;
    background: rgba(20,48,31,.38);
    color: #fff;
    text-align: center;
    font-size: .47rem;
    transform: translateX(-50%);
}

    .pmd-pitch-empty.is-away {
        top: 23%;
    }

    .pmd-pitch-empty.is-home {
        bottom: 23%;
    }

.pmd-pitch-caption {
    min-height: 36px;
    padding: 6px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: #7d8981;
    font-size: .42rem;
}

    .pmd-pitch-caption strong {
        color: var(--green-dark);
    }


/* Player lists */

.pmd-lineup-columns {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px;
}

.pmd-lineup-team-card {
    overflow: hidden;
    border: 1px solid #e2e7e0;
    border-radius: 11px;
    background: #fff;
}

.pmd-lineup-team-heading {
    min-height: 57px;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background: #f8faf7;
    border-bottom: 1px solid #e7ebe5;
}

.pmd-lineup-team-card.is-home .pmd-lineup-team-heading {
    border-top: 3px solid var(--green);
}

.pmd-lineup-team-card.is-away .pmd-lineup-team-heading {
    border-top: 3px solid var(--navy);
}

.pmd-lineup-team-heading span {
    color: #96a098;
    font-size: .38rem;
}

.pmd-lineup-team-heading h3 {
    margin: 1px 0 0;
    color: var(--navy);
    font-size: .62rem;
    font-weight: 900;
}

.pmd-lineup-team-heading > strong {
    padding: 4px 8px;
    border-radius: 7px;
    background: #fff;
    color: var(--green-dark);
    font-size: .58rem;
}

.pmd-squad-subheading {
    min-height: 35px;
    padding: 6px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #edf0ed;
    color: #59665e;
    font-size: .46rem;
    font-weight: 900;
}

    .pmd-squad-subheading.is-sub {
        margin-top: 5px;
        border-top: 1px solid #edf0ed;
    }

    .pmd-squad-subheading b {
        min-width: 22px;
        height: 22px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--green-soft);
        color: var(--green-dark);
        font-size: .4rem;
    }

.pmd-player-list {
    padding: 4px 8px;
}

.pmd-player-row {
    min-height: 53px;
    padding: 5px 3px;
    display: grid;
    grid-template-columns: 38px 27px minmax(0,1fr) auto;
    align-items: center;
    gap: 6px;
    border-bottom: 1px solid #f0f2f0;
    color: inherit;
    text-decoration: none;
}

a.pmd-player-row:hover {
    color: inherit;
    background: #f8fbf6;
}

.pmd-player-row:last-child {
    border-bottom: 0;
}

.pmd-player-row-photo {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--green-soft);
}

    .pmd-player-row-photo img,
    .pmd-player-row-photo i {
        width: 100%;
        height: 100%;
    }

    .pmd-player-row-photo img {
        object-fit: cover;
    }

    .pmd-player-row-photo i {
        display: grid;
        place-items: center;
        color: var(--green-dark);
        font-style: normal;
        font-size: .55rem;
        font-weight: 900;
    }

.pmd-player-row-number {
    color: #76827a;
    font-family: Arial,sans-serif;
    font-size: .51rem;
    font-weight: 900;
    text-align: center;
}

.pmd-player-row-copy {
    min-width: 0;
}

    .pmd-player-row-copy strong,
    .pmd-player-row-copy small {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .pmd-player-row-copy strong {
        color: var(--navy);
        font-size: .49rem;
    }

    .pmd-player-row-copy small {
        margin-top: 1px;
        color: #98a099;
        font-size: .36rem;
    }

    .pmd-player-row-copy b,
    .pmd-player-row-copy em {
        margin-inline-start: 3px;
        padding: 1px 3px;
        border-radius: 3px;
        font-size: .27rem;
        font-style: normal;
    }

    .pmd-player-row-copy b {
        background: #ffe7a8;
        color: #775b0f;
    }

    .pmd-player-row-copy em {
        background: #e7edf4;
        color: #405469;
    }

.pmd-player-row-status {
    padding: 2px 5px;
    border-radius: 999px;
    background: #f1f4f1;
    color: #7c8780;
    font-size: .31rem;
    font-weight: 900;
}


/* =========================================================
   Events
   ========================================================= */

.pmd-event-summary {
    margin-bottom: 10px;
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 7px;
}

    .pmd-event-summary > div {
        min-height: 55px;
        padding: 7px 9px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        border: 1px solid #e5e9e3;
        border-radius: 9px;
        background: #fbfcfa;
    }

        .pmd-event-summary > div > span {
            font-size: .85rem;
        }

    .pmd-event-summary p {
        margin: 0;
    }

    .pmd-event-summary small,
    .pmd-event-summary strong {
        display: block;
    }

    .pmd-event-summary small {
        color: #929c96;
        font-size: .36rem;
    }

    .pmd-event-summary strong {
        color: var(--navy);
        font-family: Arial,sans-serif;
        font-size: .7rem;
    }

.pmd-events-timeline {
    position: relative;
    max-width: 860px;
    margin-inline: auto;
}

    .pmd-events-timeline::before {
        content: "";
        position: absolute;
        top: 9px;
        bottom: 9px;
        right: 83px;
        width: 2px;
        background: linear-gradient( 180deg, #d8e3d2, #edf0ed);
    }

.pmd-event-item {
    position: relative;
    min-height: 76px;
    display: grid;
    grid-template-columns: 68px 31px minmax(0,1fr);
    gap: 8px;
    align-items: center;
}

.pmd-event-time {
    text-align: left;
}

    .pmd-event-time strong,
    .pmd-event-time span {
        display: block;
    }

    .pmd-event-time strong {
        color: var(--navy);
        font-family: Arial,sans-serif;
        font-size: .64rem;
    }

    .pmd-event-time span {
        margin-top: 1px;
        color: #9aa39e;
        font-size: .29rem;
    }

.pmd-event-marker {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
}

    .pmd-event-marker > span {
        width: 29px;
        height: 29px;
        display: grid;
        place-items: center;
        border: 2px solid #fff;
        border-radius: 50%;
        background: var(--green);
        font-size: .59rem;
        box-shadow: 0 2px 7px rgba(15,23,42,.14);
    }

.pmd-event-item.is-red .pmd-event-marker > span,
.pmd-event-item.is-foul .pmd-event-marker > span {
    background: #c94a4a;
}

.pmd-event-item.is-yellow .pmd-event-marker > span {
    background: #e3b829;
}

.pmd-event-item.is-var .pmd-event-marker > span {
    background: #655b89;
}

.pmd-event-item.is-period .pmd-event-marker > span {
    background: #5d6b64;
}

.pmd-event-item.is-substitution .pmd-event-marker > span {
    background: #2f7990;
}

.pmd-event-copy {
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid #e6eae4;
    border-radius: 9px;
    background: #fff;
}

    .pmd-event-copy > div {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 7px;
    }

    .pmd-event-copy h3 {
        margin: 0;
        color: var(--navy);
        font-size: .5rem;
        font-weight: 900;
    }

    .pmd-event-copy > div > span {
        color: #8b9690;
        font-size: .34rem;
    }

    .pmd-event-copy p {
        margin: 3px 0 0;
        color: #66736b;
        font-size: .41rem;
        line-height: 1.55;
    }

    .pmd-event-copy small {
        display: block;
        margin-top: 3px;
        color: #a06c6c;
        font-size: .32rem;
    }

.pmd-event-item.is-not-counted {
    opacity: .68;
}


/* =========================================================
   Statistics / possession
   ========================================================= */

.pmd-possession-card,
.pmd-stat-table-card {
    max-width: 860px;
    margin-inline: auto;
    overflow: hidden;
    border: 1px solid #e3e8e1;
    border-radius: 11px;
    background: #fff;
}

.pmd-possession-card {
    margin-bottom: 9px;
}

.pmd-possession-heading {
    min-height: 54px;
    padding: 8px 11px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8faf7;
    border-bottom: 1px solid #e8ebe7;
}

    .pmd-possession-heading span {
        color: #97a099;
        font-size: .38rem;
    }

    .pmd-possession-heading h3 {
        margin: 1px 0 0;
        color: var(--navy);
        font-size: .59rem;
        font-weight: 900;
    }

    .pmd-possession-heading > span {
        width: 31px;
        height: 31px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--green-soft);
        color: var(--green-dark);
        font-family: Arial,sans-serif;
        font-size: .61rem;
        font-weight: 900;
    }

.pmd-possession-empty {
    min-height: 110px;
    display: grid;
    place-items: center;
    align-content: center;
    text-align: center;
}

    .pmd-possession-empty span {
        color: #637068;
        font-size: .53rem;
        font-weight: 900;
    }

    .pmd-possession-empty small {
        margin-top: 4px;
        color: #9aa39e;
        font-size: .39rem;
    }

.pmd-possession-numbers {
    padding: 15px 18px 9px;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}

    .pmd-possession-numbers > div:last-child {
        text-align: left;
    }

    .pmd-possession-numbers strong,
    .pmd-possession-numbers span {
        display: block;
    }

    .pmd-possession-numbers strong {
        color: var(--navy);
        font-family: Arial,sans-serif;
        font-size: 1.25rem;
        font-weight: 900;
    }

    .pmd-possession-numbers span {
        color: #69766e;
        font-size: .48rem;
        font-weight: 900;
    }

.pmd-possession-track {
    height: 12px;
    margin: 0 18px 18px;
    overflow: hidden;
    display: flex;
    border-radius: 999px;
    background: #edf0ed;
}

    .pmd-possession-track span {
        height: 100%;
    }

    .pmd-possession-track .is-home {
        background: var(--green);
    }

    .pmd-possession-track .is-away {
        background: var(--navy);
    }

.pmd-stat-team-head {
    min-height: 67px;
    padding: 8px 11px;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    align-items: center;
    gap: 8px;
    background: #f8faf7;
    border-bottom: 1px solid #e8ebe7;
}

    .pmd-stat-team-head > div {
        min-width: 0;
        display: flex;
        align-items: center;
        gap: 6px;
    }

        .pmd-stat-team-head > div:last-child {
            justify-content: flex-end;
        }

    .pmd-stat-team-head > span {
        color: #939d96;
        font-size: .35rem;
    }

    .pmd-stat-team-head strong {
        overflow: hidden;
        color: var(--navy);
        font-size: .47rem;
        font-weight: 900;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.pmd-stat-logo {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    padding: 3px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid #e1e6df;
    border-radius: 10px;
    background: #fff;
}

    .pmd-stat-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .pmd-stat-logo i {
        width: 100%;
        height: 100%;
        display: grid;
        place-items: center;
        border-radius: 7px;
        background: var(--green);
        color: #fff;
        font-style: normal;
        font-weight: 900;
    }

.pmd-stat-rows {
    padding: 5px 11px;
}

    .pmd-stat-rows > div {
        min-height: 39px;
        display: grid;
        grid-template-columns: 70px minmax(0,1fr) 70px;
        align-items: center;
        border-bottom: 1px solid #eef1ee;
        text-align: center;
    }

        .pmd-stat-rows > div:last-child {
            border-bottom: 0;
        }

    .pmd-stat-rows strong {
        color: var(--navy);
        font-family: Arial,sans-serif;
        font-size: .59rem;
        font-weight: 900;
    }

    .pmd-stat-rows span {
        color: #748078;
        font-size: .43rem;
    }

.pmd-stat-note {
    padding: 7px 11px;
    border-top: 1px solid #e8ebe7;
    background: #fbfcfa;
    color: #99a19c;
    text-align: center;
    font-size: .35rem;
}


/* =========================================================
   Officials / staff
   ========================================================= */

.pmd-official-block + .pmd-official-block {
    margin-top: 12px;
}

.pmd-block-heading {
    min-height: 47px;
    margin-bottom: 7px;
    padding: 5px 2px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 1px solid #edf0ed;
}

    .pmd-block-heading span {
        color: var(--green);
        font-size: .38rem;
        font-weight: 900;
    }

    .pmd-block-heading h3 {
        margin: 1px 0 0;
        color: var(--navy);
        font-size: .61rem;
        font-weight: 900;
    }

    .pmd-block-heading > b {
        min-width: 27px;
        height: 27px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--green-soft);
        color: var(--green-dark);
        font-size: .44rem;
    }

.pmd-referee-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 7px;
}

.pmd-referee-card {
    min-width: 0;
    min-height: 86px;
    padding: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e4e9e1;
    border-radius: 10px;
    background: #fbfcfa;
}

.pmd-referee-photo {
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--green-soft);
}

    .pmd-referee-photo img,
    .pmd-referee-photo span {
        width: 100%;
        height: 100%;
    }

    .pmd-referee-photo img {
        object-fit: cover;
    }

    .pmd-referee-photo span {
        display: grid;
        place-items: center;
        color: var(--green-dark);
        font-size: .7rem;
        font-weight: 900;
    }

.pmd-referee-card > div:last-child {
    min-width: 0;
}

    .pmd-referee-card > div:last-child > span {
        color: var(--green);
        font-size: .34rem;
        font-weight: 900;
    }

.pmd-referee-card h4 {
    margin: 1px 0 0;
    overflow: hidden;
    color: var(--navy);
    font-size: .5rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .pmd-referee-card h4 b {
        color: var(--green);
    }

.pmd-referee-card p {
    margin: 2px 0 0;
    overflow: hidden;
    color: #8b958f;
    font-size: .34rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pmd-staff-columns {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px;
}

    .pmd-staff-columns > article {
        overflow: hidden;
        border: 1px solid #e4e8e2;
        border-radius: 10px;
    }

.pmd-staff-team-title {
    min-height: 46px;
    padding: 7px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
    background: #f8faf7;
    border-bottom: 1px solid #e8ebe7;
}

    .pmd-staff-team-title span {
        color: #939e96;
        font-size: .35rem;
    }

    .pmd-staff-team-title strong {
        color: var(--navy);
        font-size: .51rem;
    }

.pmd-staff-list {
    padding: 4px 8px;
}

.pmd-staff-item {
    min-height: 54px;
    padding: 5px 2px;
    display: flex;
    align-items: center;
    gap: 7px;
    border-bottom: 1px solid #eef1ee;
}

    .pmd-staff-item:last-child {
        border-bottom: 0;
    }

    .pmd-staff-item > span {
        flex: 0 0 36px;
        width: 36px;
        height: 36px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--green-soft);
        color: var(--green-dark);
        font-size: .5rem;
        font-weight: 900;
    }

    .pmd-staff-item p {
        min-width: 0;
        margin: 0;
    }

    .pmd-staff-item strong,
    .pmd-staff-item small,
    .pmd-staff-item em {
        display: block;
    }

    .pmd-staff-item strong {
        color: var(--navy);
        font-size: .47rem;
    }

    .pmd-staff-item small {
        margin-top: 1px;
        color: #6f7b73;
        font-size: .37rem;
    }

    .pmd-staff-item em {
        margin-top: 1px;
        color: #9aa29d;
        font-size: .31rem;
        font-style: normal;
    }


/* =========================================================
   Empty / actions
   ========================================================= */

.pmd-empty-state {
    min-height: 180px;
    display: grid;
    place-items: center;
    align-content: center;
    text-align: center;
}

    .pmd-empty-state > span {
        font-size: 1.5rem;
    }

    .pmd-empty-state h3 {
        margin: 5px 0 0;
        color: var(--navy);
        font-size: .66rem;
    }

    .pmd-empty-state p {
        max-width: 500px;
        margin: 3px 0 0;
        color: var(--muted);
        font-size: .44rem;
    }

.pmd-empty-small {
    padding: 12px 9px;
    color: #98a19c;
    text-align: center;
    font-size: .42rem;
}

.pmd-bottom-actions {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

    .pmd-bottom-actions > a,
    .pmd-bottom-actions > button {
        min-height: 38px;
        padding: 7px 12px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        border-radius: 9px;
        font-family: inherit;
        font-size: .56rem;
        font-weight: 900;
        cursor: pointer;
    }

.pmd-back-button {
    border: 1px solid #dfe5dc;
    background: #fff;
    color: var(--green-dark);
    text-decoration: none;
}

    .pmd-back-button:hover {
        color: var(--green-dark);
        background: var(--green-soft);
    }

.pmd-share-button {
    border: 0;
    background: var(--green);
    color: #fff;
}


@keyframes pmd-live-pulse {
    0%,100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: .35;
        transform: scale(.86);
    }
}


/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1199px) {
    .pmd-overview-grid,
    .pmd-referee-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .pmd-scoreboard-main {
        padding-inline: 22px;
    }
}

@media (max-width: 991px) {
    .pmd-scoreboard-main {
        grid-template-columns: minmax(0,1fr) 145px minmax(0,1fr);
        gap: 13px;
    }

    .pmd-team-logo {
        width: 88px;
        height: 88px;
        border-radius: 24px;
    }

    .pmd-main-score {
        font-size: 1.8rem;
    }

    .pmd-scoreboard-facts {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

        .pmd-scoreboard-facts > div:nth-child(odd) {
            border-inline-start: 0;
        }

    .pmd-tabs {
        overflow-x: auto;
        display: flex;
        justify-content: flex-start;
        scrollbar-width: none;
    }

        .pmd-tabs::-webkit-scrollbar {
            display: none;
        }

    .pmd-tab {
        flex: 0 0 auto;
        min-width: 125px;
    }

    .pmd-football-pitch {
        height: 640px;
    }
}

@media (max-width: 767px) {
    .public-match-details-page {
        padding-top: 7px;
    }

    .pmd-featured-pill {
        display: none;
    }

    .pmd-scoreboard-main {
        min-height: 205px;
        padding: 18px 11px 14px;
        grid-template-columns: minmax(0,1fr) 110px minmax(0,1fr);
        gap: 7px;
    }

    .pmd-team-logo {
        width: 72px;
        height: 72px;
        border-radius: 20px;
    }

    .pmd-team-name {
        font-size: .67rem;
    }

    .pmd-main-score {
        font-size: 1.42rem;
    }

    .pmd-overview-grid,
    .pmd-overview-two-columns,
    .pmd-lineup-columns,
    .pmd-staff-columns {
        grid-template-columns: 1fr;
    }

    .pmd-event-summary {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .pmd-referee-grid {
        grid-template-columns: 1fr 1fr;
    }

    .pmd-football-pitch {
        height: 610px;
    }

    .pmd-pitch-player {
        width: 62px;
    }

        .pmd-pitch-player > strong {
            width: 68px;
            font-size: .31rem;
        }

    .pmd-pitch-photo {
        width: 38px;
        height: 38px;
    }
}

@media (max-width: 575px) {
    .public-match-details-page .container {
        padding-inline: 8px;
    }

    .pmd-backbar > div > span:first-child {
        display: none;
    }

    .pmd-scoreboard {
        border-radius: 13px;
    }

    .pmd-scoreboard-top {
        min-height: 49px;
        padding: 8px 9px;
    }

    .pmd-sport-pill {
        display: none;
    }

    .pmd-scoreboard-context strong {
        font-size: .61rem;
    }

    .pmd-scoreboard-main {
        min-height: 185px;
        padding: 14px 4px 11px;
        grid-template-columns: minmax(0,1fr) 88px minmax(0,1fr);
        gap: 3px;
    }

    .pmd-team-logo {
        width: 61px;
        height: 61px;
        border-radius: 17px;
    }

        .pmd-team-logo > span {
            font-size: 1.35rem;
        }

    .pmd-team-name {
        max-width: 120px;
        font-size: .58rem;
    }

    .pmd-main-score {
        font-size: 1.22rem;
    }

    .pmd-live-state,
    .pmd-match-date {
        font-size: .42rem;
    }

    .pmd-scoreboard-facts > div {
        padding: 8px;
    }

    .pmd-panel {
        margin-top: 7px;
        padding: 10px 8px;
        border-radius: 11px;
    }

    .pmd-tab {
        min-width: 105px;
        min-height: 36px;
        font-size: .49rem;
    }

    .pmd-detail-list > div {
        grid-template-columns: 112px minmax(0,1fr);
    }

    .pmd-formations-bar {
        grid-template-columns: 1fr 1fr;
    }

        .pmd-formations-bar > span {
            display: none;
        }

    .pmd-football-pitch {
        height: 560px;
    }

    .pmd-pitch-player {
        width: 55px;
    }

    .pmd-pitch-photo {
        width: 34px;
        height: 34px;
    }

    .pmd-pitch-player > strong {
        width: 59px;
        font-size: .27rem;
    }

    .pitch-center-circle {
        width: 105px;
        height: 105px;
    }

    .pmd-events-timeline::before {
        right: 59px;
    }

    .pmd-event-item {
        grid-template-columns: 45px 28px minmax(0,1fr);
        gap: 4px;
    }

    .pmd-event-time strong {
        font-size: .53rem;
    }

    .pmd-event-time span {
        display: none;
    }

    .pmd-event-copy {
        padding: 7px;
    }

        .pmd-event-copy > div > span {
            max-width: 90px;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

    .pmd-referee-grid {
        grid-template-columns: 1fr;
    }

    .pmd-stat-team-head {
        grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    }

        .pmd-stat-team-head > span {
            display: none;
        }

    .pmd-stat-rows > div {
        grid-template-columns: 55px minmax(0,1fr) 55px;
    }

    .pmd-bottom-actions {
        flex-direction: column;
        align-items: stretch;
    }

        .pmd-bottom-actions > a,
        .pmd-bottom-actions > button {
            width: 100%;
        }
}


/* =========================================================
   V2 MODERN READABILITY + PROFILE NAVIGATION
   2026-08-16
   ---------------------------------------------------------
   Purpose:
   - materially larger readable typography
   - modern spacing / elevation
   - larger tactical pitch
   - one team per pitch half
   - referee list rows
   - coaches beside lineups
   - full-row profile links
   ========================================================= */

.public-match-details-page {
    --pmd-surface: #ffffff;
    --pmd-surface-soft: #f7faf5;
    --pmd-shadow: 0 18px 50px rgba(30, 52, 23, .075);
    --pmd-shadow-soft: 0 8px 26px rgba(15, 23, 42, .055);
    --pmd-radius-xl: 22px;
    --pmd-radius-lg: 16px;
    --pmd-radius-md: 12px;
    padding-top: 18px;
    color: #304039;
    font-family: "Tajawal", "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.55;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

    .public-match-details-page a {
        text-underline-offset: 3px;
    }

/* Core readable text scale */
.pmd-backbar {
    min-height: 44px;
    font-size: .82rem;
}

.pmd-scoreboard {
    border-radius: var(--pmd-radius-xl);
    box-shadow: var(--pmd-shadow);
}

.pmd-scoreboard-top {
    min-height: 70px;
    padding: 14px 20px;
}

.pmd-sport-pill,
.pmd-featured-pill,
.pmd-status-pill {
    min-height: 30px;
    padding: 6px 11px;
    font-size: .74rem;
}

.pmd-scoreboard-context strong {
    font-size: 1rem;
}

.pmd-scoreboard-context small {
    font-size: .76rem;
}

.pmd-competition-structure {
    padding: 9px 18px;
    font-size: .78rem;
}

.pmd-scoreboard-main {
    min-height: 258px;
    padding: 24px 24px 20px;
}

.pmd-team-logo {
    width: 104px;
    height: 104px;
    border-radius: 25px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .12);
}

.pmd-side-label {
    margin-top: 10px;
    font-size: .72rem;
}

.pmd-team-name {
    margin-top: 3px;
    font-size: 1.06rem;
    line-height: 1.35;
}

.pmd-team-short {
    margin-top: 3px;
    font-size: .73rem;
}

.pmd-score-center > strong {
    font-size: 2.65rem;
    letter-spacing: .04em;
}

.pmd-score-center > span,
.pmd-score-center > small,
.pmd-score-center > em {
    font-size: .78rem;
}

.pmd-scoreboard-facts {
    background: linear-gradient(180deg, #fbfcfa, #f6f9f4);
}

    .pmd-scoreboard-facts > div {
        min-height: 78px;
        padding: 12px 14px;
    }

        .pmd-scoreboard-facts > div > span {
            font-size: 1.12rem;
        }

    .pmd-scoreboard-facts small {
        font-size: .7rem;
    }

    .pmd-scoreboard-facts strong {
        margin-top: 2px;
        font-size: .88rem;
    }

.pmd-public-note,
.pmd-broadcast-strip {
    font-size: .82rem;
}

/* Modern tabs */
.pmd-tabs {
    top: 10px;
    margin-top: 14px;
    padding: 7px;
    border-radius: 15px;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 10px 34px rgba(15, 23, 42, .07);
}

.pmd-tab {
    min-height: 48px;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: .82rem;
}

    .pmd-tab > span {
        font-size: .98rem;
    }

    .pmd-tab > b {
        min-width: 22px;
        height: 22px;
        font-size: .64rem;
    }

    .pmd-tab.is-active {
        box-shadow: 0 6px 18px rgba(91, 140, 59, .24);
    }

/* Panels */
.pmd-panel {
    margin-top: 12px;
    padding: 20px;
    border-radius: var(--pmd-radius-lg);
    box-shadow: var(--pmd-shadow-soft);
}

.pmd-section-heading {
    min-height: 82px;
    margin-bottom: 16px;
    padding-bottom: 13px;
}

    .pmd-section-heading > span {
        font-size: .72rem;
    }

    .pmd-section-heading h1,
    .pmd-section-heading h2 {
        margin-top: 3px;
        font-size: 1.28rem;
        line-height: 1.35;
    }

    .pmd-section-heading p {
        margin-top: 5px;
        font-size: .84rem;
        line-height: 1.7;
    }

.pmd-info-card {
    min-height: 118px;
    padding: 16px;
    border-radius: 14px;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .035);
}

.pmd-info-card-icon {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
    border-radius: 14px;
    font-size: 1.2rem;
}

.pmd-info-card span {
    font-size: .68rem;
}

.pmd-info-card h2 {
    margin-top: 3px;
    font-size: .98rem;
    line-height: 1.4;
}

.pmd-info-card p {
    margin-top: 4px;
    font-size: .78rem;
}

.pmd-info-card small {
    margin-top: 3px;
    font-size: .72rem;
}

.pmd-info-card-link {
    position: relative;
    display: flex;
    align-items: center;
    gap: 13px;
    color: inherit;
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

    .pmd-info-card-link:hover {
        color: inherit;
        border-color: #cdddc4;
        box-shadow: 0 11px 28px rgba(47, 78, 31, .09);
        transform: translateY(-2px);
    }

.pmd-card-chevron {
    margin-inline-start: auto;
    color: var(--green);
    font-size: 1rem;
    font-style: normal;
    font-weight: 900;
}

.pmd-inline-profile-link,
.pmd-detail-profile-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--green-dark);
    text-decoration: none;
    font-weight: 900;
}

    .pmd-inline-profile-link:hover,
    .pmd-detail-profile-link:hover {
        color: var(--green);
    }

    .pmd-inline-profile-link i {
        color: var(--green);
        font-size: .8rem;
        font-style: normal;
    }

    .pmd-detail-profile-link span {
        font-size: .78rem;
    }

.pmd-detail-card {
    border-radius: 14px;
}

.pmd-detail-card-heading {
    min-height: 62px;
    padding: 12px 14px;
}

    .pmd-detail-card-heading span {
        font-size: .7rem;
    }

    .pmd-detail-card-heading h2 {
        font-size: .98rem;
    }

.pmd-detail-list > div {
    min-height: 52px;
    padding: 10px 14px;
}

.pmd-detail-list dt {
    font-size: .76rem;
}

.pmd-detail-list dd {
    font-size: .84rem;
}

/* ---------------------------------------------------------
   Formations + substantially larger tactical pitch
   --------------------------------------------------------- */

.pmd-formations-bar {
    min-height: 66px;
    padding: 11px 16px;
    border-radius: 12px;
}

    .pmd-formations-bar > div span {
        font-size: .72rem;
    }

    .pmd-formations-bar > div strong {
        font-size: 1rem;
    }

    .pmd-formations-bar > span {
        font-size: .7rem;
    }

.pmd-pitch-shell {
    margin: 14px auto 18px;
    overflow: visible;
    border-radius: 20px;
    background: linear-gradient(180deg, #f7faf5, #eef5e9);
    box-shadow: inset 0 0 0 1px rgba(91, 140, 59, .05);
}

.pmd-football-pitch {
    width: min(100%, 920px);
    height: 840px;
    border: 4px solid rgba(255, 255, 255, .92);
    border-radius: 17px;
    box-shadow: 0 18px 42px rgba(26, 73, 30, .22);
    background: linear-gradient( 180deg, rgba(18, 52, 27, .035) 0, rgba(18, 52, 27, .035) 50%, rgba(255, 255, 255, .025) 50%, rgba(255, 255, 255, .025) 100%), repeating-linear-gradient( 90deg, rgba(255, 255, 255, .055) 0, rgba(255, 255, 255, .055) 72px, rgba(0, 0, 0, .018) 72px, rgba(0, 0, 0, .018) 144px), linear-gradient(180deg, #56903b 0%, #477e32 50%, #56903b 100%);
}

    .pmd-football-pitch::before {
        inset: 16px;
        border-width: 3px;
    }

.pitch-half-line {
    right: 16px;
    left: 16px;
    height: 3px;
}

.pitch-center-circle {
    width: 155px;
    height: 155px;
    border-width: 3px;
}

.pitch-box,
.pitch-goal-box {
    border-width: 3px;
}

.pitch-box {
    height: 128px;
}

.pitch-goal-box {
    height: 50px;
}

.pitch-box-top,
.pitch-goal-box-top {
    top: 16px;
}

.pitch-box-bottom,
.pitch-goal-box-bottom {
    bottom: 16px;
}

.pmd-pitch-half-label {
    position: absolute;
    left: 50%;
    z-index: 2;
    min-width: 150px;
    padding: 5px 10px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px;
    background: rgba(18, 55, 31, .28);
    color: rgba(255, 255, 255, .92);
    text-align: center;
    transform: translateX(-50%);
    backdrop-filter: blur(4px);
    pointer-events: none;
}

    .pmd-pitch-half-label.is-away {
        top: 2.7%;
    }

    .pmd-pitch-half-label.is-home {
        bottom: 2.7%;
    }

    .pmd-pitch-half-label span {
        margin-inline-end: 6px;
        font-size: .64rem;
        opacity: .75;
    }

    .pmd-pitch-half-label strong {
        font-size: .78rem;
    }

.pmd-pitch-player {
    width: 100px;
}

.pmd-pitch-photo {
    width: 55px;
    height: 55px;
    border-width: 3px;
    box-shadow: 0 7px 18px rgba(0, 0, 0, .25);
}

    .pmd-pitch-photo i {
        font-size: .9rem;
    }

    .pmd-pitch-photo b {
        min-width: 23px;
        height: 23px;
        bottom: -5px;
        right: -5px;
        font-size: .58rem;
    }

.pmd-pitch-player > strong {
    width: 108px;
    margin-top: 5px;
    padding: 4px 6px;
    border-radius: 7px;
    background: rgba(10, 25, 16, .76);
    font-size: .68rem;
    line-height: 1.15;
}

.pmd-pitch-player > small {
    margin-top: 2px;
    padding: 2px 5px;
    font-size: .58rem;
}

.pmd-pitch-player > em {
    left: 13px;
    width: 21px;
    height: 21px;
    font-size: .5rem;
}

.pmd-pitch-caption {
    min-height: 54px;
    padding: 10px 18px;
    border-radius: 0 0 18px 18px;
    font-size: .76rem;
}

    .pmd-pitch-caption strong {
        font-size: .86rem;
    }

.pmd-pitch-empty {
    width: 290px;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: .78rem;
}

/* ---------------------------------------------------------
   Coaches live with the lineup
   --------------------------------------------------------- */

.pmd-lineup-coaches {
    margin: 18px 0;
    padding: 14px;
    border: 1px solid #dfe7dc;
    border-radius: 15px;
    background: radial-gradient(circle at 50% 0%, rgba(91, 140, 59, .06), transparent 20rem), #fbfcfa;
}

.pmd-coach-columns {
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

    .pmd-coach-columns > article,
    .pmd-staff-columns > article {
        overflow: hidden;
        border: 1px solid #e1e7df;
        border-radius: 13px;
        background: #fff;
    }

.pmd-block-heading {
    min-height: 58px;
    padding: 8px 2px 11px;
}

    .pmd-block-heading span {
        font-size: .72rem;
    }

    .pmd-block-heading h3 {
        margin-top: 2px;
        font-size: 1rem;
    }

    .pmd-block-heading > b {
        min-width: 32px;
        height: 32px;
        font-size: .72rem;
    }

.pmd-staff-team-title {
    min-height: 56px;
    padding: 10px 13px;
}

    .pmd-staff-team-title span {
        font-size: .7rem;
    }

    .pmd-staff-team-title strong,
    .pmd-staff-team-title a {
        color: var(--navy);
        text-decoration: none;
        font-size: .9rem;
        font-weight: 900;
    }

        .pmd-staff-team-title a:hover {
            color: var(--green);
        }

.pmd-staff-profile-list {
    padding: 5px 10px;
}

.pmd-staff-profile-row {
    min-height: 76px;
    padding: 9px 4px;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #edf1ed;
    color: inherit;
    text-decoration: none;
    transition: background .14s ease, transform .14s ease;
}

    .pmd-staff-profile-row:last-child {
        border-bottom: 0;
    }

a.pmd-staff-profile-row:hover {
    color: inherit;
    background: #f6faf4;
    transform: translateX(-2px);
}

.pmd-staff-profile-row.is-unlinked {
    background: #fcfdfc;
}

.pmd-staff-profile-photo {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--green-soft);
    box-shadow: 0 3px 12px rgba(15, 23, 42, .09);
}

    .pmd-staff-profile-photo img,
    .pmd-staff-profile-photo i {
        width: 100%;
        height: 100%;
        border-radius: 50%;
    }

    .pmd-staff-profile-photo img {
        object-fit: cover;
    }

    .pmd-staff-profile-photo i {
        display: grid;
        place-items: center;
        color: var(--green-dark);
        font-size: .9rem;
        font-style: normal;
        font-weight: 900;
    }

.pmd-staff-profile-copy {
    min-width: 0;
}

    .pmd-staff-profile-copy strong,
    .pmd-staff-profile-copy small,
    .pmd-staff-profile-copy em {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .pmd-staff-profile-copy strong {
        color: var(--navy);
        font-size: .88rem;
        font-weight: 900;
    }

        .pmd-staff-profile-copy strong b {
            color: var(--green);
        }

    .pmd-staff-profile-copy small {
        margin-top: 2px;
        color: #65736a;
        font-size: .76rem;
    }

    .pmd-staff-profile-copy em {
        margin-top: 2px;
        color: #96a099;
        font-size: .68rem;
        font-style: normal;
    }

.pmd-profile-chevron {
    color: var(--green);
    font-size: 1rem;
    font-weight: 900;
}

.pmd-profile-unavailable {
    max-width: 94px;
    padding: 4px 7px;
    border-radius: 7px;
    background: #f1eee6;
    color: #8b7a58;
    font-size: .62rem;
    line-height: 1.35;
    text-align: center;
}

/* Larger full squad list */
.pmd-lineup-team-card {
    border-radius: 14px;
}

.pmd-lineup-team-heading {
    min-height: 62px;
    padding: 11px 14px;
}

    .pmd-lineup-team-heading span,
    .pmd-squad-subheading span {
        font-size: .72rem;
    }

    .pmd-lineup-team-heading h3 {
        font-size: 1rem;
    }

    .pmd-lineup-team-heading > strong {
        font-size: .92rem;
    }

.pmd-squad-subheading {
    min-height: 46px;
    padding: 8px 12px;
}

    .pmd-squad-subheading b {
        min-width: 25px;
        height: 25px;
        font-size: .68rem;
    }

.pmd-player-row {
    min-height: 70px;
    padding: 8px 7px;
}

.pmd-player-row-photo {
    width: 48px;
    height: 48px;
}

.pmd-player-row-number {
    font-size: .8rem;
}

.pmd-player-row-copy strong {
    font-size: .86rem;
}

.pmd-player-row-copy small {
    margin-top: 2px;
    font-size: .72rem;
}

.pmd-player-row-status {
    font-size: .68rem;
}

/* Events / statistics */
.pmd-event-summary > div {
    min-height: 72px;
    padding: 10px 13px;
}

.pmd-event-summary small {
    font-size: .68rem;
}

.pmd-event-summary strong {
    font-size: .92rem;
}

.pmd-event-row,
.pmd-event-item {
    font-size: .82rem;
}

.pmd-stat-team-head strong,
.pmd-stat-table strong {
    font-size: .9rem;
}

.pmd-stat-table span,
.pmd-stat-note {
    font-size: .76rem;
}

/* ---------------------------------------------------------
   Referee list: list, not grid; every row is clickable
   --------------------------------------------------------- */

.pmd-official-block {
    padding: 14px;
    border-radius: 15px;
}

.pmd-referee-list {
    margin-top: 7px;
    overflow: hidden;
    border: 1px solid #e0e6de;
    border-radius: 13px;
    background: #fff;
}

.pmd-referee-list-row {
    min-height: 82px;
    padding: 10px 13px;
    display: grid;
    grid-template-columns: 36px 58px 145px minmax(0, 1fr) 190px 24px;
    align-items: center;
    gap: 11px;
    border-bottom: 1px solid #edf0ed;
    color: inherit;
    text-decoration: none;
    transition: background .14s ease, transform .14s ease;
}

    .pmd-referee-list-row:last-child {
        border-bottom: 0;
    }

    .pmd-referee-list-row:hover {
        color: inherit;
        background: linear-gradient(90deg, #fbfdf9, #f3f8f0);
    }

.pmd-referee-order {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: #f0f4ee;
    color: #738078;
    font-family: Arial, sans-serif;
    font-size: .72rem;
    font-weight: 900;
}

.pmd-referee-list-row .pmd-referee-photo {
    width: 56px;
    height: 56px;
    flex: none;
    border: 2px solid #fff;
    box-shadow: 0 4px 14px rgba(15, 23, 42, .09);
}

    .pmd-referee-list-row .pmd-referee-photo img,
    .pmd-referee-list-row .pmd-referee-photo i {
        width: 100%;
        height: 100%;
        border-radius: 50%;
    }

    .pmd-referee-list-row .pmd-referee-photo i {
        display: grid;
        place-items: center;
        color: var(--green-dark);
        font-size: .95rem;
        font-style: normal;
        font-weight: 900;
    }

.pmd-referee-role {
    color: var(--green-dark);
    font-size: .78rem;
    font-weight: 900;
}

.pmd-referee-identity,
.pmd-referee-meta {
    min-width: 0;
}

    .pmd-referee-identity strong,
    .pmd-referee-identity small,
    .pmd-referee-meta strong,
    .pmd-referee-meta small {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .pmd-referee-identity strong {
        color: var(--navy);
        font-size: .96rem;
    }

        .pmd-referee-identity strong b {
            color: var(--green);
        }

    .pmd-referee-identity small {
        margin-top: 2px;
        color: #929d96;
        font-size: .7rem;
    }

    .pmd-referee-meta strong {
        color: #536158;
        font-size: .78rem;
    }

    .pmd-referee-meta small {
        margin-top: 2px;
        color: #929d96;
        font-size: .7rem;
    }

.pmd-block-note {
    margin: -2px 0 10px;
    color: #7c8981;
    font-size: .76rem;
    line-height: 1.7;
}

/* Messages / empty states / actions */
.pmd-section-message,
.pmd-empty-small {
    font-size: .78rem;
    line-height: 1.6;
}

.pmd-empty-state h3 {
    font-size: 1rem;
}

.pmd-empty-state p {
    font-size: .8rem;
}

.pmd-bottom-actions > a,
.pmd-bottom-actions > button,
.pmd-back-button,
.pmd-share-button {
    min-height: 44px;
    padding: 9px 15px;
    border-radius: 10px;
    font-size: .82rem;
}

/* ---------------------------------------------------------
   Responsive modern pitch / referee list
   --------------------------------------------------------- */

@media (max-width: 1199.98px) {
    .pmd-football-pitch {
        width: min(100%, 830px);
        height: 790px;
    }

    .pmd-referee-list-row {
        grid-template-columns: 32px 54px 125px minmax(0, 1fr) 150px 22px;
    }
}

@media (max-width: 991.98px) {
    .pmd-scoreboard-main {
        min-height: 230px;
    }

    .pmd-team-logo {
        width: 88px;
        height: 88px;
    }

    .pmd-score-center > strong {
        font-size: 2.25rem;
    }

    .pmd-panel {
        padding: 16px;
    }

    .pmd-football-pitch {
        width: min(100%, 760px);
        height: 735px;
    }

    .pmd-pitch-player {
        width: 88px;
    }

        .pmd-pitch-player > strong {
            width: 96px;
            font-size: .62rem;
        }

    .pmd-referee-list-row {
        grid-template-columns: 32px 54px 115px minmax(0, 1fr) 24px;
    }

    .pmd-referee-meta {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .public-match-details-page {
        padding-top: 8px;
    }

    .pmd-scoreboard {
        border-radius: 16px;
    }

    .pmd-scoreboard-top {
        min-height: 62px;
        padding: 11px 13px;
    }

    .pmd-scoreboard-context strong {
        font-size: .9rem;
    }

    .pmd-scoreboard-main {
        min-height: 215px;
        padding: 18px 10px;
    }

    .pmd-team-logo {
        width: 76px;
        height: 76px;
        border-radius: 20px;
    }

    .pmd-team-name {
        font-size: .88rem;
    }

    .pmd-score-center > strong {
        font-size: 1.9rem;
    }

    .pmd-scoreboard-facts > div {
        min-height: 68px;
        padding: 9px;
    }

    .pmd-tabs {
        top: 5px;
    }

    .pmd-tab {
        min-width: 128px;
        min-height: 44px;
        font-size: .76rem;
    }

    .pmd-section-heading h1,
    .pmd-section-heading h2 {
        font-size: 1.12rem;
    }

    .pmd-football-pitch {
        width: 100%;
        height: 700px;
        border-radius: 14px;
    }

    .pmd-pitch-player {
        width: 76px;
    }

    .pmd-pitch-photo {
        width: 47px;
        height: 47px;
    }

    .pmd-pitch-player > strong {
        width: 82px;
        padding: 3px 4px;
        font-size: .57rem;
    }

    .pmd-pitch-player > small {
        font-size: .51rem;
    }

    .pmd-coach-columns,
    .pmd-staff-columns {
        grid-template-columns: 1fr;
    }

    .pmd-referee-list-row {
        min-height: 76px;
        grid-template-columns: 48px 100px minmax(0, 1fr) 22px;
        gap: 8px;
    }

    .pmd-referee-order {
        display: none;
    }

    .pmd-referee-list-row .pmd-referee-photo {
        width: 48px;
        height: 48px;
    }

    .pmd-referee-role {
        font-size: .72rem;
    }

    .pmd-referee-identity strong {
        font-size: .86rem;
    }
}

@media (max-width: 575.98px) {
    .public-match-details-page .container {
        padding-inline: 8px;
    }

    .pmd-backbar {
        font-size: .74rem;
    }

    .pmd-scoreboard-top {
        align-items: flex-start;
    }

    .pmd-featured-pill {
        display: none;
    }

    .pmd-scoreboard-main {
        grid-template-columns: minmax(0, 1fr) 94px minmax(0, 1fr);
        min-height: 190px;
        gap: 5px;
    }

    .pmd-team-logo {
        width: 66px;
        height: 66px;
        border-radius: 17px;
    }

    .pmd-team-name {
        max-width: 125px;
        font-size: .79rem;
    }

    .pmd-score-center > strong {
        font-size: 1.55rem;
    }

    .pmd-score-center > span,
    .pmd-score-center > small,
    .pmd-score-center > em {
        font-size: .65rem;
    }

    .pmd-scoreboard-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

        .pmd-scoreboard-facts > div {
            border-bottom: 1px solid #e7ece5;
        }

    .pmd-panel {
        padding: 12px 9px;
        border-radius: 13px;
    }

    .pmd-info-card {
        min-height: 100px;
        padding: 12px;
    }

    .pmd-detail-list > div {
        grid-template-columns: 118px minmax(0, 1fr);
    }

    .pmd-formations-bar {
        padding: 9px;
    }

        .pmd-formations-bar > span {
            display: none;
        }

    .pmd-football-pitch {
        height: 660px;
    }

    .pmd-pitch-player {
        width: 66px;
    }

    .pmd-pitch-photo {
        width: 42px;
        height: 42px;
        border-width: 2px;
    }

        .pmd-pitch-photo b {
            min-width: 19px;
            height: 19px;
            font-size: .5rem;
        }

    .pmd-pitch-player > strong {
        width: 70px;
        font-size: .5rem;
    }

    .pmd-pitch-player > small {
        font-size: .46rem;
    }

    .pmd-pitch-half-label {
        min-width: 110px;
        padding: 3px 7px;
    }

        .pmd-pitch-half-label span {
            display: none;
        }

        .pmd-pitch-half-label strong {
            font-size: .62rem;
        }

    .pmd-lineup-coaches {
        padding: 10px 8px;
    }

    .pmd-referee-list-row {
        grid-template-columns: 46px minmax(0, 1fr) 22px;
        padding: 9px 8px;
    }

    .pmd-referee-role {
        display: none;
    }

    .pmd-referee-identity strong {
        font-size: .82rem;
    }

    .pmd-referee-identity small {
        font-size: .64rem;
    }

    .pmd-staff-profile-row {
        grid-template-columns: 46px minmax(0, 1fr) auto;
    }

    .pmd-staff-profile-photo {
        width: 44px;
        height: 44px;
    }

    .pmd-staff-profile-copy strong {
        font-size: .82rem;
    }

    .pmd-profile-unavailable {
        max-width: 74px;
        font-size: .55rem;
    }
}

/* Player rows: clickable records get a dedicated navigation chevron. */
.pmd-player-row {
    grid-template-columns: 48px 34px minmax(0, 1fr) auto;
    gap: 9px;
}

a.pmd-player-row {
    grid-template-columns: 48px 34px minmax(0, 1fr) auto 22px;
}

.pmd-player-row-chevron {
    align-self: center;
}

@media (max-width: 575.98px) {
    .pmd-player-row {
        grid-template-columns: 44px 30px minmax(0, 1fr) auto;
        gap: 6px;
    }

    a.pmd-player-row {
        grid-template-columns: 44px 30px minmax(0, 1fr) auto 18px;
    }
}
