/* =================================================
   Road2Race – Competition Styles
   Shared stylesheet extracted from competition views.
   Generated 2026-05-13.
================================================= */

.competition-logo {
            margin-top: 14px;
            margin-bottom: 18px;
        }

        .competition-logo img {
            width: 300px;
            height: auto;
            display: block;
            text-align: center;
        }

        .leaderboard-intro {
            max-width: 760px;
            margin-top: 14px;
            margin-bottom: 26px;
            color: var(--text-muted);
            font-size: 15px;
            line-height: 1.55;
        }

        .leaderboard-summary-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 14px;
            margin-top: 10px;
            margin-bottom: 28px;
        }

        .leaderboard-summary-card {
            border-radius: 16px;
            padding: 18px;
            background: rgba(255,255,255,0.55);
            border: 1px solid var(--card-border);
        }

        .leaderboard-summary-label {
            font-size: 13px;
            color: var(--text-muted);
            margin-bottom: 6px;
        }

        .leaderboard-summary-value {
            font-size: 28px;
            font-weight: 700;
            color: var(--text-main);
        }

        .leaderboard-club-list {
            display: flex;
            flex-direction: column;
            gap: 12px;
            margin-top: 10px;
        }

        .leaderboard-club-card {
            border-radius: 18px;
            padding: 18px;
            border: 1px solid var(--card-border);
            background: rgba(255,255,255,0.50);
        }

        .leaderboard-club-top {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 180px;
            gap: 18px;
            align-items: start;
        }

        .leaderboard-rank-wrap {
            display: flex;
            flex-direction: column;
            gap: 4px;
            align-items: flex-start;
        }

        .leaderboard-rank-number {
            font-size: 28px;
            font-weight: 700;
            color: var(--text-main);
            line-height: 1;
        }

        .leaderboard-inline-rank {
            color: #444444;
            font-weight: 800;
            margin-right: 8px;
            white-space: nowrap;
        }

        .leaderboard-rank-badge {
            font-size: 20px;
            line-height: 1;
        }

        .leaderboard-club-name {
            font-size: 26px;
            font-weight: 700;
            color: var(--text-main);
            line-height: 1.1;
            text-decoration: none;
        }

        .leaderboard-athlete-link,
        .leaderboard-club-link,
        .leaderboard-activity-link,
        .leaderboard-strava-link {
            color: var(--text-main);
            text-decoration: none;
        }

        .leaderboard-athlete-link:hover,
        .leaderboard-club-link:hover,
        .leaderboard-activity-link:hover,
        .leaderboard-strava-link:hover,
        .leaderboard-club-name:hover {
            text-decoration: underline;
        }

        .leaderboard-club-country {
            margin-top: 6px;
            color: var(--text-muted);
            font-size: 14px;
        }

        .leaderboard-gap {
            margin-top: 10px;
            font-size: 13px;
            color: var(--text-muted);
        }

        .leaderboard-score-box {
            text-align: right;
        }

        .leaderboard-score-label {
            font-size: 13px;
            color: var(--text-muted);
            margin-bottom: 4px;
        }

        .leaderboard-score-value {
            font-size: 34px;
            font-weight: 700;
            color: var(--text-main);
            line-height: 1;
        }

        .leaderboard-score-sub {
            margin-top: 6px;
            font-size: 13px;
            color: var(--text-muted);
        }

        .leaderboard-scoring-note {
            margin-top: 6px;
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.5;
        }

        .leaderboard-club-stats {
            margin-top: 18px;
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
        }

        .leaderboard-stat-chip {
            border-radius: 14px;
            padding: 14px;
            background: rgba(0,0,0,0.04);
        }

        .leaderboard-stat-chip-label {
            font-size: 18px;
            color: var(--text-muted);
            margin-bottom: 4px;
        }

        .leaderboard-stat-chip-value {
            font-size: 26px;
            font-weight: 700;
            color: var(--text-main);
            line-height: 1.1;
        }

        .leaderboard-participation-chip {
            position: relative;
            overflow: hidden;
        }

        .leaderboard-participation-value {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .leaderboard-battery {
            width: 35px;
            height: 14px;
            border-radius: 6px;
            border: 2px solid rgba(17,24,39,0.18);
            padding: 2px;
            position: relative;
            background: rgba(255,255,255,0.58);
            flex: 0 0 auto;
        }

        .leaderboard-battery::after {
            content: "";
            position: absolute;
            right: -5px;
            top: 50%;
            transform: translateY(-50%);
            width: 3px;
            height: 6px;
            border-radius: 0 3px 3px 0;
            background: rgba(17,24,39,0.18);
        }

        .leaderboard-battery-fill {
            display: block;
            height: 100%;
            border-radius: 3px;
            background: #86efac;
        }

        .participation-high { background: rgba(220,252,231,0.72) !important; }
        .participation-mid { background: rgba(254,249,195,0.72) !important; }
        .participation-low { background: rgba(252,231,243,0.72) !important; }
        .participation-zero { background: rgba(254,226,226,0.78) !important; }

        .participation-high .leaderboard-battery-fill { background: #22c55e; }
        .participation-mid .leaderboard-battery-fill { background: #eab308; }
        .participation-low .leaderboard-battery-fill { background: #f472b6; }
        .participation-zero .leaderboard-battery-fill { background: #ef4444; }

        .leaderboard-club-notes {
            margin-top: 16px;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .leaderboard-note {
            font-size: 14px;
            color: var(--text-muted);
        }

        .leaderboard-note-strong {
            color: var(--text-main);
            font-weight: 600;
        }

        .leaderboard-roster-warning {
            color: #b45309;
        }

        .leaderboard-momentum-note {
            color: #c2410c;
            font-weight: 600;
        }

        .leaderboard-top-athletes {
            margin-top: 40px;
        }

        .leaderboard-top-athletes-list {
            display: flex;
            flex-direction: column;
            gap: 12px;
            margin-top: 16px;
        }

        .leaderboard-top-athlete-card {
            display: flex;
            justify-content: space-between;
            gap: 16px;
            align-items: center;
            padding: 16px;
            border-radius: 14px;
            border: 1px solid var(--card-border);
            background: rgba(255,255,255,0.65);
        }

        .leaderboard-top-athlete-card.is-extra-athlete {
            display: none;
        }

        .leaderboard-top-athletes-list.show-all-athletes .leaderboard-top-athlete-card.is-extra-athlete {
            display: flex;
        }

        .leaderboard-view-all-button {
            appearance: none;
            border: 0;
            background: transparent;
            color: var(--text-main);
            font: inherit;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            padding: 0;
        }

        .leaderboard-view-all-button:hover {
            text-decoration: underline;
        }


        .leaderboard-pagination {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            margin-top: 14px;
            padding-top: 12px;
            border-top: 1px solid rgba(15,23,42,0.08);
        }

        .leaderboard-pagination-info {
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 600;
        }

        .leaderboard-pagination-actions {
            display: flex;
            gap: 8px;
            align-items: center;
        }

        .leaderboard-pagination-button {
            appearance: none;
            border: 1px solid rgba(15,23,42,0.12);
            background: rgba(255,255,255,0.7);
            color: var(--text-main);
            border-radius: 999px;
            font: inherit;
            font-size: 12px;
            font-weight: 700;
            padding: 7px 11px;
            cursor: pointer;
        }

        .leaderboard-pagination-button:disabled {
            opacity: .35;
            cursor: not-allowed;
        }

        .leaderboard-pagination-current {
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 700;
            min-width: 64px;
            text-align: center;
        }
        .leaderboard-pagination-hidden {
        display: none !important;
        }

        .leaderboard-top-athlete-left,
        .leaderboard-club-identity {
            display: flex;
            align-items: flex-start;
            gap: 12px;
            min-width: 0;
        }

        .leaderboard-top-athlete-left {
            align-items: center;
        }

        .leaderboard-list-avatar {
            width: 58px;
            height: 58px;
            border-radius: 50%;
            overflow: hidden;
            flex: 0 0 58px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(17,24,39,0.08);
            border: 2px solid rgba(255,255,255,0.8);
            color: var(--text-main);
            font-size: 18px;
            font-weight: 800;
            letter-spacing: 0.02em;
            text-transform: uppercase;
            box-shadow: 0 4px 10px rgba(0,0,0,0.08);
        }

        .leaderboard-list-avatar img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .leaderboard-club-identity-copy,
        .leaderboard-top-athlete-meta {
            min-width: 0;
        }

        .leaderboard-club-title-line,
        .leaderboard-athlete-title-line {
            display: flex;
            align-items: baseline;
            gap: 0;
            min-width: 0;
        }

        .leaderboard-top-athlete-meta {
            display: flex;
            flex-direction: column;
            gap: 6px;
            min-width: 0;
        }

        .leaderboard-top-athlete-name {
            font-size: 16px;
            font-weight: 700;
            color: var(--text-main);
        }

        .leaderboard-top-athlete-sub {
            font-size: 13px;
            color: var(--text-muted);
        }


        .leaderboard-filter-bar {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin: 8px 0 18px;
        }

        .leaderboard-filter-chip {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 34px;
            padding: 8px 12px;
            border-radius: 999px;
            border: 1px solid rgba(0,0,0,0.08);
            background: rgba(255,255,255,0.72);
            color: var(--text-main);
            font-size: 13px;
            font-weight: 600;
            text-decoration: none;
        }

        .leaderboard-filter-chip:hover {
            text-decoration: none;
            background: rgba(255,255,255,0.92);
        }

        .leaderboard-filter-chip.is-active {
            background: #111827;
            color: #ffffff;
            border-color: #111827;
        }

        .leaderboard-top-athlete-category {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            margin-top: 6px;
            font-size: 12px;
            color: var(--text-muted);
        }

        .leaderboard-top-athlete-pill {
            display: inline-flex;
            align-items: center;
            padding: 4px 8px;
            border-radius: 999px;
            background: rgba(0,0,0,0.05);
            color: var(--text-muted);
            font-weight: 600;
        }

        .leaderboard-reconnect-strava-pill {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin-left: 8px;
            padding: 4px 9px;
            border-radius: 999px;
            border: 1px solid rgba(252, 76, 2, 0.35);
            background: rgba(252, 76, 2, 0.10);
            color: #fc4c02;
            font-size: 11px;
            font-weight: 800;
            line-height: 1;
            text-decoration: none;
            white-space: nowrap;
        }

        .leaderboard-reconnect-strava-pill:hover {
            background: rgba(252, 76, 2, 0.18);
            color: #fc4c02;
            transform: translateY(-1px);
        }

        .leaderboard-top-athlete-score {
            text-align: right;
            white-space: nowrap;
        }

        .leaderboard-top-athlete-rank {
            font-size: 13px;
            color: var(--text-muted);
            margin-bottom: 4px;
        }

        .leaderboard-top-athlete-points {
            font-size: 22px;
            font-weight: 700;
            color: var(--text-main);
            line-height: 1;
        }

        .leaderboard-recent-activity-card {
            padding: 16px;
            border-radius: 14px;
            border: 1px solid var(--card-border);
            background: rgba(255,255,255,0.7);
        }

        .leaderboard-recent-activity-top {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            align-items: center;
            font-weight: 600;
            font-size: 15px;
        }

        .leaderboard-recent-activity-club {
            color: var(--text-muted);
            font-weight: 400;
        }

        .leaderboard-recent-activity-meta {
            font-size: 14px;
            color: var(--text-muted);
            margin-top: 6px;
        }

        .leaderboard-recent-activity-footer {
            display: flex;
            justify-content: space-between;
            gap: 12px;
            align-items: center;
            margin-top: 6px;
        }

        .leaderboard-recent-activity-date {
            font-size: 12px;
            color: var(--text-soft);
        }

        .leaderboard-back-link {
            margin-top: 28px;
        }

        .leaderboard-back-link a {
            color: var(--text-main);
            text-decoration: underline;
            font-size: 14px;
        }

        @media (max-width: 900px) {
            .leaderboard-summary-grid {
                grid-template-columns: 1fr;
            }

            .leaderboard-club-top {
                grid-template-columns: 1fr;
            }

            .leaderboard-score-box {
                text-align: left;
            }

            .leaderboard-club-stats {
                grid-template-columns: 1fr 1fr;
            }

            .leaderboard-top-athlete-card {
                flex-direction: column;
                align-items: flex-start;
            }

            .leaderboard-top-athlete-score {
                text-align: left;
            }

            .leaderboard-recent-activity-footer {
                flex-direction: column;
                align-items: flex-start;
            }
        }

        @media (max-width: 600px) {
            .leaderboard-club-stats {
                grid-template-columns: 1fr;
            }

            .leaderboard-club-name {
                font-size: 22px;
            }

            .leaderboard-score-value {
                font-size: 30px;
            }
        }
        .navbar {
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-bottom: 1px solid rgba(0,0,0,0.06) !important;
    opacity: 1 !important;
    z-index: 9999 !important;
}

.navbar a,
.navbar .nav-link,
.navbar .lang-switch a {
    color: #111 !important;
}

.navbar .brand,
.navbar .logo,
.navbar .site-title {
    color: #111 !important;
}
        /* =================================================
           REFINED COMPETITION LEADERBOARD HEADER / STATS
           Goal: compact, responsive, no duplicated event naming.
        ================================================= */
        .card {
            padding-top: clamp(22px, 3vw, 34px);
        }

        .competition-kicker {
            font-size: 8px !important;
            color:#333333;
            letter-spacing: 0.14em !important;
            margin-bottom: 8px !important;
        }

        .leaderboard-header h1 {
            max-width: 760px;
            margin: 0;
            font-size: clamp(30px, 3.2vw, 48px);
            line-height: 1.0;
            letter-spacing: -0.035em;
        }

        .competition-logo {
            margin-top: 14px;
            margin-bottom: 18px;
        }

        .competition-logo img {
            width: auto;
            height: clamp(54px, 4.8vw, 74px);
            max-width: min(280px, 78vw);
            object-fit: contain;
            display: block;
        }

        .leaderboard-subtitle,
        .leaderboard-scoring-note {
            display: none !important;
        }

        .leaderboard-summary-grid {
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: clamp(8px, 1.1vw, 12px);
            margin-top: clamp(12px, 1.6vw, 20px);
            margin-bottom: clamp(18px, 2.4vw, 28px);
        }

        .leaderboard-summary-card {
            min-height: 86px;
            padding: clamp(12px, 1.5vw, 16px);
            display: flex;
            flex-direction: column;
            justify-content: center;
            border-radius: 16px;
        }

        .leaderboard-summary-label {
            font-size: clamp(11px, 0.95vw, 13px);
            line-height: 1.15;
            margin-bottom: 6px;
        }

        .leaderboard-summary-value {
            font-size: clamp(25px, 2.6vw, 34px);
            line-height: 1;
        }

        @media (max-width: 900px) {
            .card {
                padding-top: 24px;
            }

            .leaderboard-header h1 {
                max-width: 620px;
                font-size: clamp(30px, 6.2vw, 30px);
            }

            .competition-logo img {
                height: 62px;
            }
        }

        @media (max-width: 640px) {
            .card {
                padding: 20px 16px;
                border-radius: 24px;
            }

            .competition-kicker {
                margin-bottom: 7px !important;
                font-size: 8px !important;
            }

            .leaderboard-header h1 {
                max-width: 100%;
                font-size: clamp(27px, 8.6vw, 36px);
                line-height: 1.0;
            }

            .competition-logo {
                margin-top: 12px;
                margin-bottom: 14px;
            }

            .competition-logo img {
                height: 50px;
                max-width: 300px;
            }

            .leaderboard-summary-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 7px;
                margin-top: 14px;
            }

            .leaderboard-summary-card {
                min-height: 68px;
                padding: 10px 8px;
                border-radius: 13px;
            }

            .leaderboard-summary-label {
                font-size: 9.5px;
                margin-bottom: 5px;
            }

            .leaderboard-summary-value {
                font-size: 22px;
            }
        }

        @media (max-width: 420px) {
            .leaderboard-summary-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .leaderboard-summary-card {
                min-height: 64px;
                padding: 9px 7px;
            }

            .leaderboard-summary-label {
                font-size: 9px;
            }

            .leaderboard-summary-value {
                font-size: 20px;
            }
        }

        /* =================================================
           LEADERBOARD 2026 — compact launch layout
           Desktop + mobile safe overrides
        ================================================= */
        .container {
            max-width: 1380px;
            padding-left: clamp(16px, 3vw, 32px);
            padding-right: clamp(16px, 3vw, 32px);
        }

        .card {
            max-width: 1280px;
            margin: 0 auto;
            padding: clamp(24px, 3.2vw, 42px) !important;
            border-radius: 30px;
            background: rgba(255,255,255,0.76);
            box-shadow: 0 22px 60px rgba(0,0,0,0.14);
        }

        .leaderboard-header {
            margin-bottom: 0;
        }

        .leaderboard-brand-row {
            display: grid;
            grid-template-columns: auto minmax(0, 1fr);
            gap: clamp(22px, 3vw, 38px);
            align-items: center;
            margin-bottom: clamp(18px, 2.4vw, 28px);
        }

        .leaderboard-brand-row h1 {
            max-width: 820px;
            margin: 0;
            font-size: clamp(26px, 2.55vw, 40px) !important;
            line-height: 1.04;
            letter-spacing: -0.035em;
            color: var(--text-main);
        }

        .competition-logo {
            margin: 0 !important;
        }

        .competition-logo img {
            width: auto !important;
            height: clamp(82px, 7vw, 112px) !important;
            max-width: min(390px, 40vw) !important;
            object-fit: contain;
        }

        .leaderboard-announcements {
            display: grid;
            grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.35fr);
            gap: 22px;
            align-items: stretch;
            margin: 8px 0 22px;
        }

        .test-mode-banner {
            margin: 0 !important;
            min-height: 92px;
            display: flex;
            align-items: center;
            gap: 14px;
            padding: 18px 20px !important;
            border-radius: 18px !important;
            background: rgba(238, 232, 255, 0.62) !important;
            border: 1px solid rgba(113, 95, 220, 0.28) !important;
            color: var(--text-main) !important;
            line-height: 1.38;
        }

        .test-mode-banner strong {
            color: #1f2bb8;
            letter-spacing: 0.04em;
            text-transform: uppercase;
            font-size: 14px;
        }

        .leaderboard-announcement-icon,
        .leaderboard-countdown-icon {
            width: 48px;
            height: 48px;
            border-radius: 16px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
            font-size: 24px;
        }

        .leaderboard-announcement-icon {
            background: rgba(113,95,220,0.11);
        }
        
        .is-live {
    background: linear-gradient(90deg, #dcfce7, #bbf7d0);
}

        .leaderboard-countdown-pill {
            min-height: 92px;
            display: grid;
            grid-template-columns: auto minmax(140px, 0.9fr) minmax(260px, 1.4fr);
            gap: 18px;
            align-items: center;
            padding: 18px 24px;
            border-radius: 18px;
            background: linear-gradient(90deg, rgba(236,253,245,0.85), rgba(240,253,244,0.62));
            border: 1px solid rgba(22,163,74,0.25);
            box-shadow: inset 0 0 0 1px rgba(255,255,255,0.45);
        }

        .leaderboard-countdown-icon {
            background: rgba(22,163,74,0.14);
            box-shadow: 0 6px 18px rgba(22,163,74,0.12);
        }

        .leaderboard-countdown-copy {
            display: flex;
            flex-direction: column;
            gap: 3px;
            min-width: 0;
        }

        .leaderboard-countdown-copy strong {
            color: #057a3d;
            font-size: clamp(16px, 1.7vw, 22px);
            line-height: 1;
            letter-spacing: -0.02em;
        }

        .leaderboard-countdown-copy span {
            color: #087b43;
            font-size: 12px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.04em;
        }

        .leaderboard-countdown-values {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
            align-items: center;
        }

        .leaderboard-countdown-values > div {
            position: relative;
            text-align: center;
        }

        .leaderboard-countdown-values > div:not(:last-child)::after {
            content: "";
            position: absolute;
            top: 8px;
            right: -6px;
            width: 1px;
            height: 42px;
            background: rgba(5,122,61,0.22);
        }

        .leaderboard-countdown-values strong {
            display: block;
            color: #057a3d;
            font-size: clamp(24px, 2.4vw, 36px);
            line-height: 0.95;
            letter-spacing: -0.04em;
        }

        .leaderboard-countdown-values span {
            display: block;
            margin-top: 7px;
            color: #087b43;
            font-size: 11px;
            font-weight: 800;
            letter-spacing: 0.04em;
        }

        .leaderboard-summary-grid {
            grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
            gap: 16px !important;
            margin: 20px 0 22px !important;
        }

        .leaderboard-summary-card {
            min-height: 92px !important;
            border-radius: 18px !important;
            padding: 18px 22px 18px 76px !important;
            position: relative;
            background: rgba(255,255,255,0.78) !important;
            box-shadow: 0 10px 26px rgba(0,0,0,0.08);
        }

        .leaderboard-summary-card::before {
            position: absolute;
            left: 22px;
            top: 50%;
            transform: translateY(-50%);
            width: 38px;
            height: 38px;
            border-radius: 14px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(113,95,220,0.10);
            color: #3538cd;
            font-size: 19px;
        }

        .leaderboard-summary-card:nth-child(1)::before { content: "👥"; }
        .leaderboard-summary-card:nth-child(2)::before { content: "🏃"; }
        .leaderboard-summary-card:nth-child(3)::before { content: "🏆"; }

        .leaderboard-summary-label {
            font-size: 13px !important;
        }

        .leaderboard-summary-value {
            font-size: clamp(28px, 2.6vw, 38px) !important;
            font-weight: 800 !important;
        }

        .leaderboard-spotlight-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
            gap: 22px;
            align-items: start;
            margin-top: 10px;
        }

        .leaderboard-spotlight-panel {
            min-width: 0;
            border-radius: 22px;
            padding: 18px;
            background: rgba(255,255,255,0.62);
            border: 1px solid var(--card-border);
            box-shadow: 0 10px 30px rgba(0,0,0,0.06);
        }

        .leaderboard-panel-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            margin-bottom: 12px;
        }

        .leaderboard-panel-header h2 {
            margin: 0;
            font-size: 16px;
            line-height: 1;
            text-transform: uppercase;
            text-align: center;
            letter-spacing: -0.01em;
            color: var(--text-main);
        }

        .leaderboard-panel-header a {
            color: #2563eb;
            font-size: 13px;
            font-weight: 700;
            text-decoration: none;
            white-space: nowrap;
        }

        .leaderboard-panel-header a:hover {
            text-decoration: underline;
        }

        .leaderboard-club-list,
        .leaderboard-top-athletes-list {
            gap: 8px !important;
            margin-top: 0 !important;
        }

        .leaderboard-club-card,
        .leaderboard-top-athlete-card {
            border-radius: 14px !important;
            padding: 12px 14px !important;
            background: rgba(255,255,255,0.82) !important;
            box-shadow: 0 4px 14px rgba(0,0,0,0.04);
        }

        .leaderboard-club-top {
            grid-template-columns: minmax(0, 1fr) minmax(135px, 0.38fr) !important;
            gap: 14px !important;
            align-items: center !important;
        }

        .leaderboard-rank-number {
            font-size: 20px !important;
        }

        .leaderboard-rank-badge {
            font-size: 14px !important;
        }

        .leaderboard-club-name {
            font-size: 20px !important;
            line-height: 1.1 !important;
        }

        .leaderboard-club-country,
        .leaderboard-gap,
        .leaderboard-note {
            font-size: 12px !important;
        }

        .leaderboard-momentum-note {
            font-size: 12px !important;
            margin-top: 6px !important;
        }

        .leaderboard-score-value {
            font-size: 22px !important;
        }

        .leaderboard-score-label,
        .leaderboard-score-sub {
            font-size: 11px !important;
        }

        .leaderboard-club-stats {
            grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
            gap: 8px !important;
            margin-top: 10px !important;
        }

        .leaderboard-stat-chip {
            border-radius: 12px !important;
            padding: 10px !important;
            background: rgba(0,0,0,0.035) !important;
        }

        .leaderboard-stat-chip-label {
            font-size: 10px !important;
        }

        .leaderboard-stat-chip-value {
            font-size: 22px !important;
        }

        .leaderboard-battery {
            width: 28px !important;
            height: 12px !important;
            border-width: 1.5px !important;
            padding: 1.5px !important;
        }

        .leaderboard-battery::after {
            right: -4px !important;
            width: 3px !important;
            height: 5px !important;
        }

        .leaderboard-club-notes {
            margin-top: 8px !important;
            gap: 5px !important;
        }

        .leaderboard-top-athletes {
            margin-top: 0 !important;
        }

        .leaderboard-filter-bar {
            margin: 0 0 12px !important;
            gap: 7px !important;
        }

        .leaderboard-filter-chip {
            min-height: 28px !important;
            padding: 6px 10px !important;
            font-size: 11px !important;
        }

        .leaderboard-top-athlete-card {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) minmax(120px, 0.34fr) !important;
            align-items: center !important;
            gap: 12px !important;
        }

        .leaderboard-top-athlete-name {
            font-size: 15px !important;
        }

        .leaderboard-top-athlete-sub {
            font-size: 12px !important;
        }

        .leaderboard-top-athlete-category {
            margin-top: 4px !important;
        }

        .leaderboard-top-athlete-pill {
            font-size: 10px !important;
            padding: 3px 7px !important;
        }

        .leaderboard-top-athlete-rank {
            font-size: 11px !important;
        }

        .leaderboard-top-athlete-points {
            font-size: 20px !important;
        }

        .leaderboard-recent-section {
            border-radius: 22px;
            padding: 18px;
            background: rgba(255,255,255,0.54);
            border: 1px solid var(--card-border);
        }

        .leaderboard-recent-section h2 {
            font-size: 18px;
            margin-bottom: 12px !important;
        }

        .leaderboard-recent-activity-card {
            padding: 13px 14px !important;
            border-radius: 14px !important;
            background: rgba(255,255,255,0.78) !important;
        }

        @media (max-width: 1080px) {
            .leaderboard-announcements,
            .leaderboard-spotlight-grid {
                grid-template-columns: 1fr;
            }

            .leaderboard-countdown-pill {
                grid-template-columns: auto minmax(120px, 1fr) minmax(230px, 1.2fr);
            }
        }

        @media (max-width: 760px) {
            .container {
                padding-left: 14px;
                padding-right: 14px;
            }

            .card {
                padding: 20px 16px !important;
                border-radius: 24px;
            }

            .leaderboard-brand-row {
                grid-template-columns: 1fr;
                gap: 12px;
                margin-bottom: 16px;
            }

            .competition-logo img {
                height: auto !important;
                width: min(280px, 78vw) !important;
                max-width: 100% !important;
            }

            .leaderboard-brand-row h1 {
                font-size: clamp(27px, 8vw, 34px) !important;
            }

            .leaderboard-announcements {
                gap: 12px;
                margin-bottom: 16px;
            }

            .test-mode-banner {
                min-height: 0;
                padding: 14px !important;
                align-items: flex-start;
            }

            .leaderboard-announcement-icon,
            .leaderboard-countdown-icon {
                width: 38px;
                height: 38px;
                border-radius: 13px;
                font-size: 19px;
            }

            .leaderboard-countdown-pill {
                grid-template-columns: 1fr;
                gap: 12px;
                padding: 15px;
            }

            .leaderboard-countdown-values {
                gap: 8px;
            }

            .leaderboard-countdown-values > div:not(:last-child)::after {
                height: 34px;
                top: 4px;
                right: -4px;
            }

            .leaderboard-countdown-values strong {
                font-size: 25px;
            }

            .leaderboard-countdown-values span {
                font-size: 9px;
            }

            .leaderboard-summary-grid {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }

            .leaderboard-summary-card {
                min-height: 76px !important;
                padding: 15px 16px 15px 66px !important;
            }

            .leaderboard-summary-card::before {
                left: 16px;
                width: 36px;
                height: 36px;
            }

            .leaderboard-spotlight-panel {
                padding: 14px;
                border-radius: 18px;
            }

            .leaderboard-panel-header h2 {
                font-size: 14px;
            }

            .leaderboard-club-top {
                grid-template-columns: minmax(0, 1fr) !important;
            }

            .leaderboard-score-box {
                grid-column: 1 / -1;
                display: grid;
                grid-template-columns: 1fr auto;
                align-items: end;
                gap: 8px;
                text-align: left !important;
                padding-top: 8px;
                border-top: 1px solid rgba(0,0,0,0.06);
            }

            .leaderboard-score-label {
                grid-column: 1;
            }

            .leaderboard-score-value {
                grid-column: 2;
                grid-row: 1 / span 2;
                align-self: center;
            }

            .leaderboard-score-sub {
                grid-column: 1;
                margin-top: 0 !important;
            }

            .leaderboard-club-stats {
                grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
            }

            .leaderboard-top-athlete-card {
                grid-template-columns: 1fr !important;
            }

            .leaderboard-top-athlete-score {
                display: flex;
                justify-content: space-between;
                width: 100%;
                text-align: left !important;
                padding-top: 8px;
                border-top: 1px solid rgba(0,0,0,0.06);
            }
        }


        /* =================================================
           HOTFIX — full-width alignment inside the main card
           Prevents the leaderboard content from staying compressed left.
        ================================================= */
        .leaderboard-header {
            display: block !important;
            width: 100% !important;
        }

        .leaderboard-header > div {
            width: 100% !important;
            max-width: none !important;
        }

        .leaderboard-brand-row,
        .leaderboard-announcements,
        .leaderboard-summary-grid,
        .leaderboard-spotlight-grid,
        .leaderboard-recent-section {
            width: 100% !important;
            max-width: none !important;
        }

        .leaderboard-brand-row {
            grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
        }

        .leaderboard-brand-row h1 {
            max-width: 760px !important;
        }

        .leaderboard-announcements {
            grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.45fr) !important;
        }

        .leaderboard-summary-grid {
            display: grid !important;
            grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        }

        .leaderboard-spotlight-grid {
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        }

        @media (max-width: 1080px) {
            .leaderboard-brand-row,
            .leaderboard-announcements,
            .leaderboard-spotlight-grid {
                grid-template-columns: 1fr !important;
            }
        }
        

        /* =================================================
           UX refinements requested 2026-05-12
        ================================================= */
        .leaderboard-header *,
        .leaderboard-spotlight-grid *,
        .leaderboard-recent-section * {
            line-height: 1 !important;
        }

        .leaderboard-quote-kicker {
            max-width: 980px;
            text-transform: none !important;
            letter-spacing: 0.01em !important;
            line-height: 1 !important;
            color: rgba(17,24,39,0.68) !important;
        }

        .leaderboard-brand-row {
            grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.45fr) !important;
            align-items: center !important;
        }

        .competition-logo img {
            height: clamp(116px, 10vw, 154px) !important;
            max-width: min(430px, 34vw) !important;
        }

        .leaderboard-brand-row h1 {
            max-width: 860px !important;
            font-size: clamp(31px, 3.05vw, 50px) !important;
            line-height: 1 !important;
        }

        .leaderboard-country-ribbon {
            margin: 0 !important;
            min-height: 92px;
            padding: 16px 18px !important;
            border-radius: 18px !important;
            background: rgba(238, 232, 255, 0.62) !important;
            border: 1px solid rgba(113, 95, 220, 0.28) !important;
            color: var(--text-main) !important;
        }

        .leaderboard-country-ribbon-title {
            margin-bottom: 12px;
            font-size: 11px;
            line-height: 1 !important;
            font-weight: 800;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: rgba(17,24,39,0.56);
        }

        .leaderboard-country-strip {
            display: flex;
            flex-wrap: wrap;
            gap: 10px 12px;
            align-items: flex-start;
        }

        .leaderboard-country-item {
            width: 54px;
            text-align: center;
        }

        .leaderboard-country-flag {
            display: block;
            font-size: 24px;
            line-height: 1 !important;
        }

        .leaderboard-country-name {
            display: block;
            margin-top: 4px;
            font-size: 8.5px;
            line-height: 1 !important;
            color: rgba(17,24,39,0.58);
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .leaderboard-club-title-line {
            display: flex;
            flex-wrap: wrap;
            align-items: baseline;
            gap: 6px;
        }

        .leaderboard-club-flag {
            font-size: 18px;
            line-height: 1 !important;
        }

        .leaderboard-club-country {
            display: none !important;
        }

        .leaderboard-momentum-note {
            margin-top: 7px !important;
        }

        @media (max-width: 1080px) {
            .leaderboard-brand-row {
                grid-template-columns: 1fr !important;
                gap: 14px !important;
            }

            .competition-logo img {
                height: clamp(82px, 16vw, 120px) !important;
                max-width: min(420px, 82vw) !important;
            }
        }

        @media (max-width: 760px) {
            .leaderboard-brand-row h1 {
                font-size: clamp(29px, 8.4vw, 40px) !important;
            }

            .leaderboard-country-ribbon {
                min-height: auto;
                padding: 14px !important;
            }

            .leaderboard-country-strip {
                gap: 9px 8px;
            }

            .leaderboard-country-item {
                width: 47px;
            }

            .leaderboard-country-flag {
                font-size: 21px;
            }

            .leaderboard-country-name {
                font-size: 7.5px;
            }
        }
        
    .join-pill {
    display: inline;
    padding: 6px 12px;
    font-size: 12px;
    text-align: center;
    border-radius: 999px;
    background: white;
    color: #000000;
    font-weight: 600;
    text-decoration: none;
}

    

        /* =================================================
           HEADER + SUMMARY CAPSULES TUNING — 2026-05-12
           Applied over current version without changing layout logic.
        ================================================= */
        .leaderboard-brand-row {
            grid-template-columns: minmax(260px, 0.78fr) minmax(0, 1.35fr) !important;
            gap: 22px !important;
            align-items: center !important;
        }

        .competition-logo img {
            height: clamp(150px, 13.2vw, 198px) !important;
            width: auto !important;
            max-width: min(520px, 40vw) !important;
            object-fit: contain !important;
        }

        .leaderboard-brand-row h1 {
            font-size: clamp(29px, 2.55vw, 43px) !important;
            line-height: 0.98 !important;
            letter-spacing: -0.055em !important;
            max-width: 780px !important;
        }

        .leaderboard-summary-card {
            min-height: 96px !important;
            padding: 16px 18px 16px 72px !important;
            display: flex !important;
            flex-direction: column !important;
            justify-content: center !important;
            gap: 5px !important;
            overflow: hidden !important;
        }

        .leaderboard-summary-card::before {
            left: 20px !important;
            width: 36px !important;
            height: 36px !important;
            font-size: 17px !important;
        }

        .leaderboard-summary-card:nth-child(1)::before { content: "🛡️" !important; }
        .leaderboard-summary-card:nth-child(2)::before { content: "🏃" !important; }
        .leaderboard-summary-card:nth-child(3)::before { content: "⏱️" !important; }

        .leaderboard-summary-label {
            order: 1 !important;
            margin: 0 !important;
            font-size: clamp(11px, 1.05vw, 14px) !important;
            line-height: 1 !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        .leaderboard-summary-value {
            order: 2 !important;
            margin: 0 !important;
            font-size: clamp(34px, 3.25vw, 47px) !important;
            line-height: 0.9 !important;
            letter-spacing: -0.06em !important;
            white-space: nowrap !important;
            max-width: 100% !important;
        }

        @media (max-width: 1080px) {
            .leaderboard-brand-row {
                grid-template-columns: 1fr !important;
                gap: 10px !important;
            }

            .competition-logo {
                margin-top: 8px !important;
                margin-bottom: 10px !important;
            }

            .competition-logo img {
                height: clamp(126px, 27vw, 176px) !important;
                max-width: min(520px, 90vw) !important;
            }

            .leaderboard-brand-row h1 {
                font-size: clamp(31px, 7.3vw, 44px) !important;
                max-width: 100% !important;
            }
        }

        @media (max-width: 760px) {
            .leaderboard-brand-row {
                gap: 8px !important;
            }

            .competition-logo img {
                height: clamp(118px, 31vw, 158px) !important;
                max-width: min(440px, 88vw) !important;
            }

            .leaderboard-brand-row h1 {
                font-size: clamp(30px, 8vw, 38px) !important;
                line-height: 0.98 !important;
            }

            .leaderboard-summary-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
                gap: 8px !important;
            }

            .leaderboard-summary-card {
                min-height: 86px !important;
                padding: 12px 9px 12px 9px !important;
                align-items: center !important;
                text-align: center !important;
                gap: 5px !important;
            }

            .leaderboard-summary-card::before {
                position: static !important;
                transform: none !important;
                width: 30px !important;
                height: 30px !important;
                border-radius: 11px !important;
                font-size: 15px !important;
                margin-bottom: 2px !important;
                flex: 0 0 auto !important;
            }

            .leaderboard-summary-label {
                font-size: 11px !important;
                width: 100% !important;
            }

            .leaderboard-summary-value {
                font-size: clamp(29px, 9.2vw, 40px) !important;
                letter-spacing: -0.07em !important;
            }
        }

        @media (max-width: 390px) {
            .leaderboard-summary-card {
                padding-left: 7px !important;
                padding-right: 7px !important;
            }

            .leaderboard-summary-label {
                font-size: 10px !important;
            }

            .leaderboard-summary-value {
                font-size: clamp(27px, 8.6vw, 36px) !important;
            }
        }


        /* =================================================
           FINAL MOBILE HEADER + LIVE CARD REFINEMENTS
           Quote, CTA language, compact live card.
        ================================================= */
        .leaderboard-quote-kicker,
        .competition-kicker.leaderboard-quote-kicker {
            display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 auto clamp(14px, 2vw, 22px) !important;
            text-align: center !important;
            text-transform: uppercase !important;
            font-size: clamp(10px, 1.15vw, 16px) !important;
            line-height: 1 !important;
            letter-spacing: 0.045em !important;
            font-weight: 500 !important;
            color: rgba(17,24,39,0.5) !important;
        }

        .leaderboard-countdown-pill {
            grid-template-columns: auto minmax(0, 1fr) minmax(260px, 1.35fr) !important;
            gap: clamp(12px, 1.7vw, 20px) !important;
            align-items: center !important;
        }

        .leaderboard-countdown-copy {
            align-self: center !important;
            justify-content: center !important;
            gap: 4px !important;
        }

        .leaderboard-countdown-copy strong,
        .leaderboard-countdown-copy span {
            line-height: 1 !important;
        }

        .join-pill {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: fit-content !important;
            max-width: 100% !important;
            min-height: 28px !important;
            margin-top: 8px !important;
            padding: 7px 18px !important;
            border-radius: 999px !important;
            background: rgba(255,255,255,0.92) !important;
            color: #101010 !important;
            font-size: 13px !important;
            line-height: 1 !important;
            font-weight: 800 !important;
            text-decoration: none !important;
            white-space: nowrap !important;
            box-shadow: 0 8px 20px rgba(0,0,0,0.05) !important;
        }

        @media (max-width: 760px) {
            .leaderboard-quote-kicker,
            .competition-kicker.leaderboard-quote-kicker {
                font-size: 13px !important;
                letter-spacing: 0.035em !important;
                padding: 0 4px !important;
                margin-bottom: 18px !important;
            }

            .leaderboard-countdown-pill {
                display: grid !important;
                grid-template-columns: 48px minmax(0, 1fr) !important;
                grid-template-areas:
                    "icon copy"
                    "values values" !important;
                gap: 14px 12px !important;
                padding: 16px !important;
                min-height: 0 !important;
            }

            .leaderboard-countdown-icon {
                grid-area: icon !important;
                align-self: center !important;
                width: 48px !important;
                height: 48px !important;
                border-radius: 16px !important;
                font-size: 23px !important;
            }

            .leaderboard-countdown-copy {
                grid-area: copy !important;
                min-width: 0 !important;
                align-self: center !important;
                text-align: left !important;
            }

            .leaderboard-countdown-copy strong {
                font-size: 21px !important;
            }

            .leaderboard-countdown-copy span {
                font-size: 12px !important;
            }

            .join-pill {
                width: fit-content !important;
                margin-top: 9px !important;
                padding: 8px 18px !important;
                font-size: 13px !important;
            }

            .leaderboard-countdown-values {
                grid-area: values !important;
                margin-top: 2px !important;
                width: 100% !important;
            }
        }


        /* Summary keyfacts: clubs / athletes / countries / activities */
        .leaderboard-summary-grid {
            grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        }

        .leaderboard-summary-card:nth-child(1)::before { content: "🛡️" !important; }
        .leaderboard-summary-card:nth-child(2)::before { content: "🏃" !important; }
        .leaderboard-summary-card:nth-child(3)::before { content: "🌎" !important; }
        .leaderboard-summary-card:nth-child(4)::before { content: "⏱️" !important; }

        @media (max-width: 640px) {
            .leaderboard-summary-grid {
                grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
                gap: 8px !important;
            }

            .leaderboard-summary-card {
                min-width: 0 !important;
                padding: 12px 6px !important;
            }

            .leaderboard-summary-label {
                font-size: 12px !important;
                line-height: 1 !important;
                white-space: nowrap !important;
            }

            .leaderboard-summary-value {
                font-size: clamp(30px, 8.5vw, 44px) !important;
                line-height: 1 !important;
            }

            .leaderboard-summary-card::before {
                font-size: 20px !important;
                width: 38px !important;
                height: 38px !important;
                margin-bottom: 8px !important;
            }
        }



        /* =================================================
           FINAL HEADER BALANCE FIX 2026-05-12
           Fix logo/title overlap and reduce oversized quote.
           Appended at the end of the style block to override prior rules.
        ================================================= */
        .leaderboard-quote-kicker,
        .competition-kicker.leaderboard-quote-kicker {
            display: block !important;
            width: 100% !important;
            max-width: 1180px !important;
            margin: 0 auto clamp(16px, 1.8vw, 24px) !important;
            padding: 0 clamp(8px, 1.5vw, 18px) !important;
            text-align: center !important;
            text-transform: uppercase !important;
            font-size: clamp(9px, 0.72vw, 12px) !important;
            line-height: 1 !important;
            letter-spacing: 0.055em !important;
            font-weight: 700 !important;
            color: rgba(17,24,39,0.56) !important;
        }

        .leaderboard-brand-row {
            display: grid !important;
            grid-template-columns: minmax(250px, 0.42fr) minmax(0, 0.58fr) !important;
            gap: clamp(26px, 3.4vw, 58px) !important;
            align-items: center !important;
            width: 100% !important;
        }

        .leaderboard-brand-row .competition-logo {
            width: 100% !important;
            max-width: 470px !important;
            margin: 0 !important;
            justify-self: start !important;
        }

        .leaderboard-brand-row .competition-logo img,
        .competition-logo img {
            display: block !important;
            width: 100% !important;
            height: auto !important;
            max-width: 470px !important;
            max-height: none !important;
            object-fit: contain !important;
        }

        .leaderboard-brand-row h1 {
            min-width: 0 !important;
            max-width: 720px !important;
            margin: 0 !important;
            font-size: clamp(30px, 2.35vw, 44px) !important;
            line-height: 1 !important;
            letter-spacing: -0.04em !important;
            text-wrap: balance;
            justify-self: start !important;
        }

        @media (max-width: 980px) {
            .leaderboard-brand-row {
                grid-template-columns: 1fr !important;
                gap: 18px !important;
            }

            .leaderboard-brand-row .competition-logo {
                max-width: min(520px, 88vw) !important;
                justify-self: start !important;
            }

            .leaderboard-brand-row .competition-logo img,
            .competition-logo img {
                max-width: min(520px, 88vw) !important;
            }

            .leaderboard-brand-row h1 {
                max-width: 100% !important;
                font-size: clamp(38px, 8vw, 58px) !important;
            }
        }

        @media (max-width: 640px) {
            .leaderboard-quote-kicker,
            .competition-kicker.leaderboard-quote-kicker {
                font-size: 10px !important;
                letter-spacing: 0.04em !important;
                margin-bottom: 18px !important;
            }

            .leaderboard-brand-row {
                gap: 16px !important;
            }

            .leaderboard-brand-row .competition-logo,
            .leaderboard-brand-row .competition-logo img,
            .competition-logo img {
                max-width: 92vw !important;
            }

            .leaderboard-brand-row h1 {
                font-size: clamp(38px, 11vw, 56px) !important;
                line-height: 0.98 !important;
            }
        }

/* Shared legal footer small refinements */
.r2r-footer { line-height: 1; }
.r2r-footer-links { display:flex; justify-content:center; align-items:center; gap:12px; flex-wrap:wrap; }
.r2r-footer-links a { line-height:1; }
.leaderboard-last-update { margin: 10px 0 24px; text-align:center; color: rgba(100,100,100,.9); font-size: 11px; line-height:1; letter-spacing:.04em; text-transform:uppercase; }
@media (max-width: 640px){ .leaderboard-last-update{font-size:10px; margin-top:8px;} }

/* Suite Sponsors — Mobile hard fix */
@media (max-width: 640px) {
    .leaderboard-brand-sponsors-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px !important;
        width: 100% !important;
    }

    .leaderboard-sponsors-right {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        overflow: hidden !important;
    }

    .leaderboard-sponsors-right .r2r-sponsors-strip {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .leaderboard-sponsors-right .r2r-sponsors-list {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .leaderboard-sponsors-right .r2r-sponsor-card {
        width: auto !important;
        max-width: 92px !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 7px 9px !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .leaderboard-sponsors-right .r2r-sponsor-link {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    .leaderboard-sponsors-right .r2r-sponsor-logo,
    .leaderboard-sponsors-right .r2r-sponsor-link img,
    .leaderboard-sponsors-right .r2r-sponsor-card img {
        display: block !important;
        width: auto !important;
        height: auto !important;
        max-width: 72px !important;
        max-height: 24px !important;
        object-fit: contain !important;
    }
}

@media (max-width: 420px) {
    .leaderboard-sponsors-right .r2r-sponsor-card {
        max-width: 86px !important;
        min-height: 40px !important;
        padding: 6px 8px !important;
    }

    .leaderboard-sponsors-right .r2r-sponsor-logo,
    .leaderboard-sponsors-right .r2r-sponsor-link img,
    .leaderboard-sponsors-right .r2r-sponsor-card img {
        max-width: 66px !important;
        max-height: 22px !important;
    }
}
@media (max-width: 640px) {
    body {
        outline: 10px solid red !important;
    }
}
