/* BEERLEAGUE Stats component presentation fixes */
.bl-stats-logo {
    width: min(420px, 72vw);
    margin: 0 auto 1rem;
    display: block;
    filter: drop-shadow(0 18px 28px rgba(0, 0, 0, .45));
}

.bl-btn-small {
    min-height: 32px !important;
    padding: .35rem .65rem !important;
    margin-top: .45rem;
    font-size: .72rem;
}

.bl-stats-nav .active {
    outline: 2px solid rgba(255, 255, 255, .4);
    background: linear-gradient(180deg, #0faf78 0%, #087a55 100%);
}

.bl-stats-shell .bl-stat-table-wrap {
    width: 100%;
    max-width: 100%;
    overflow: visible;
}

.bl-stats-shell .bl-stat-table {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
}

.bl-stats-shell .bl-stat-table th,
.bl-stats-shell .bl-stat-table td {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    white-space: normal;
    vertical-align: middle;
}

.bl-stat-table-topplayers th:nth-child(1),
.bl-stat-table-topplayers td:nth-child(1) { width: 5%; }
.bl-stat-table-topplayers th:nth-child(2),
.bl-stat-table-topplayers td:nth-child(2) { width: 14%; }
.bl-stat-table-topplayers th:nth-child(3),
.bl-stat-table-topplayers td:nth-child(3) { width: 15%; }

/* Player Match Stats now uses readable cards instead of a squeezed table. */
.bl-player-match-list {
    width: min(1320px, 96vw);
    margin: 1.5rem auto 0;
    display: grid;
    gap: 1rem;
}

.bl-player-match-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .28);
    border-radius: 22px;
    background:
        radial-gradient(circle at top left, rgba(0, 214, 143, .13), transparent 34rem),
        linear-gradient(180deg, rgba(10, 24, 18, .98), rgba(3, 10, 8, .98));
    box-shadow: 0 18px 55px rgba(0, 0, 0, .35);
}

.bl-player-match-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: #0faf78;
}

.bl-player-match-card-win::before { background: #00d68f; }
.bl-player-match-card-loss::before { background: #ff5a5f; }
.bl-player-match-card-abandoned::before { background: #ffd34d; }

.bl-pm-topline {
    display: grid;
    grid-template-columns: minmax(130px, .75fr) minmax(220px, 1.35fr) auto;
    gap: 1rem;
    align-items: center;
    padding: 1.1rem 1.2rem .85rem;
}

.bl-pm-match-block,
.bl-pm-player-block,
.bl-pm-outcome-block {
    min-width: 0;
}

.bl-eyebrow {
    display: block;
    margin-bottom: .25rem;
    color: rgba(255, 255, 255, .58);
    font-size: .72rem;
    line-height: 1.1;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 900;
}

.bl-pm-match-title,
.bl-pm-player-name {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    color: #fff !important;
    text-decoration: none !important;
    font-size: clamp(1.05rem, 1.5vw, 1.35rem);
    line-height: 1.15;
    font-weight: 950;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .45);
}

.bl-pm-match-title:hover,
.bl-pm-player-name:hover,
.bl-pm-steam:hover {
    color: #00d68f !important;
}

.bl-pm-map {
    display: inline-flex;
    margin-left: .65rem;
    padding: .28rem .58rem;
    border: 1px solid rgba(0, 214, 143, .28);
    border-radius: 999px;
    color: #00d68f;
    background: rgba(0, 214, 143, .09);
    font-size: .78rem;
    font-weight: 900;
}

.bl-pm-steam {
    display: block;
    width: max-content;
    max-width: 100%;
    margin-top: .28rem;
    color: #00d68f !important;
    text-decoration: none !important;
    font-size: .82rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
    font-weight: 800;
}

.bl-pm-outcome-block {
    justify-self: end;
}

.bl-outcome-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 132px;
    padding: .55rem .85rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: .78rem;
    line-height: 1.1;
    letter-spacing: .04em;
    text-align: center;
    text-transform: uppercase;
    font-weight: 950;
    white-space: normal;
    word-break: normal !important;
}

.bl-outcome-win {
    color: #001c12;
    border-color: rgba(0, 214, 143, .55);
    background: linear-gradient(180deg, #00d68f, #0c9e70);
}

.bl-outcome-loss {
    color: #fff;
    border-color: rgba(255, 90, 95, .55);
    background: linear-gradient(180deg, rgba(255, 90, 95, .92), rgba(139, 18, 32, .95));
}

.bl-outcome-abandoned {
    color: #161000;
    border-color: rgba(255, 211, 77, .65);
    background: linear-gradient(180deg, #ffd34d, #c99000);
}

.bl-pm-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    padding: 0 1.2rem 1rem;
    color: rgba(255, 255, 255, .74);
    font-size: .82rem;
}

.bl-pm-meta-row span {
    display: inline-flex;
    gap: .35rem;
    align-items: center;
    padding: .38rem .62rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 999px;
    background: rgba(255, 255, 255, .045);
}

.bl-pm-meta-row strong {
    color: #00d68f;
    text-transform: uppercase;
    font-size: .68rem;
    letter-spacing: .08em;
}

.bl-pm-stat-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1px;
    border-top: 1px solid rgba(0, 214, 143, .18);
    background: rgba(0, 214, 143, .12);
}

.bl-pm-stat {
    min-width: 0;
    padding: .9rem .8rem 1rem;
    background: rgba(1, 8, 6, .78);
    text-align: center;
}

.bl-pm-stat span {
    display: block;
    margin-bottom: .25rem;
    color: rgba(255, 255, 255, .56);
    font-size: .68rem;
    letter-spacing: .1em;
    line-height: 1.1;
    text-transform: uppercase;
    font-weight: 900;
}

.bl-pm-stat strong {
    display: block;
    color: #fff;
    font-size: clamp(1rem, 1.45vw, 1.35rem);
    line-height: 1.15;
    font-weight: 950;
}

.bl-pm-stat-score strong,
.bl-pm-stat-kad strong {
    color: #00d68f;
}

@media (max-width: 1100px) {
    .bl-pm-topline {
        grid-template-columns: 1fr 1.4fr;
    }

    .bl-pm-outcome-block {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .bl-pm-stat-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .bl-player-match-list {
        width: min(100%, 94vw);
    }

    .bl-pm-topline {
        grid-template-columns: 1fr;
        gap: .85rem;
    }

    .bl-pm-outcome-block {
        justify-self: stretch;
    }

    .bl-outcome-badge {
        width: 100%;
    }

    .bl-pm-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .bl-stat-table-topplayers th,
    .bl-stat-table-topplayers td {
        width: auto !important;
    }
}


/* v1.0.3: keep Player Match cards inside Joomla content columns/sidebar layouts. */
.bl-stats-shell,
.bl-stats-shell * {
    box-sizing: border-box;
}

.bl-stats-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden;
}

.bl-stats-shell .bl-stats-header,
.bl-stats-shell .bl-stats-search,
.bl-stats-shell .bl-stats-nav,
.bl-stats-shell .bl-player-match-list,
.bl-stats-shell .bl-player-match-card {
    max-width: 100%;
}

.bl-stats-shell .bl-player-match-list {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.bl-stats-shell .bl-player-match-card {
    width: 100%;
    min-width: 0;
}

.bl-stats-shell .bl-pm-topline,
.bl-stats-shell .bl-pm-meta-row,
.bl-stats-shell .bl-pm-stat-grid {
    min-width: 0;
}

.bl-stats-shell .bl-pm-topline > *,
.bl-stats-shell .bl-pm-meta-row > *,
.bl-stats-shell .bl-pm-stat > * {
    min-width: 0;
}

/* Sidebar layouts can make the content column much narrower than the viewport.
   Collapse the Player Match card earlier so it stays readable without covering modules. */
@media (max-width: 1250px) {
    .bl-stats-shell .bl-pm-topline {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
    }

    .bl-stats-shell .bl-pm-outcome-block {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .bl-stats-shell .bl-pm-stat-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-pm-topline {
        grid-template-columns: minmax(0, 1fr);
    }

    .bl-stats-shell .bl-pm-outcome-block {
        justify-self: stretch;
    }

    .bl-stats-shell .bl-outcome-badge {
        width: 100%;
        min-width: 0;
    }

    .bl-stats-shell .bl-pm-meta-row span {
        width: 100%;
        justify-content: space-between;
        border-radius: 14px;
    }

    .bl-stats-shell .bl-pm-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* v1.0.4: sortable stats and multi-server display. */
.bl-sort-controls {
    width: 100%;
    max-width: 100%;
    margin: 1rem 0 1.1rem;
    padding: .8rem;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: .75rem;
    border: 1px solid rgba(0, 214, 143, .22);
    border-radius: 18px;
    background: rgba(255, 255, 255, .045);
}

.bl-sort-controls label {
    min-width: min(260px, 100%);
    display: grid;
    gap: .35rem;
    margin: 0;
}

.bl-sort-controls label span {
    color: rgba(255, 255, 255, .68);
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 900;
}

.bl-sort-controls select {
    width: 100%;
    min-height: 42px;
    padding: .45rem .8rem;
    border: 1px solid rgba(0, 214, 143, .35);
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: #06120e;
    font-weight: 800;
}

.bl-sort-controls button {
    min-height: 42px;
    padding: .45rem 1.1rem;
    border: 1px solid rgba(0, 214, 143, .45);
    border-radius: 999px;
    background: linear-gradient(180deg, #0faf78 0%, #087a55 100%);
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-weight: 950;
}

.bl-stat-table th .bl-sort-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    color: #00d68f !important;
    text-decoration: none !important;
    line-height: 1.2;
}

.bl-stat-table th .bl-sort-link:hover,
.bl-stat-table th .bl-sort-link.active {
    color: #fff !important;
    text-shadow: 0 0 14px rgba(0, 214, 143, .55);
}

.bl-stat-table th .bl-sort-link span {
    color: #ffd34d;
    font-size: .72rem;
}

.bl-stat-table .bl-pill {
    white-space: normal;
}


/* v1.0.5: full player profile page with Steam avatar/profile rendering. */
.bl-player-profile,
.bl-player-profile * {
    box-sizing: border-box;
}

.bl-player-profile {
    width: 100%;
    max-width: 100%;
    display: grid;
    gap: 1.15rem;
    margin-top: 1.25rem;
}

.bl-player-hero-card,
.bl-player-list-card,
.bl-player-metric-card,
.bl-player-section-card {
    border: 1px solid rgba(0, 214, 143, .25);
    border-radius: 22px;
    background:
        radial-gradient(circle at top left, rgba(0, 214, 143, .13), transparent 30rem),
        linear-gradient(180deg, rgba(6, 20, 15, .96), rgba(2, 9, 7, .96));
    box-shadow: 0 18px 55px rgba(0, 0, 0, .32);
}

.bl-player-hero-card {
    display: grid;
    grid-template-columns: minmax(140px, 180px) minmax(0, 1fr) minmax(150px, 210px);
    gap: 1.25rem;
    align-items: center;
    padding: 1.15rem;
}

.bl-player-avatar-wrap {
    min-width: 0;
    display: grid;
    justify-items: center;
    gap: .55rem;
}

.bl-player-avatar {
    width: min(150px, 100%);
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border: 2px solid rgba(255, 255, 255, .75);
    border-radius: 8px;
    background: #020907;
    box-shadow: 0 14px 35px rgba(0, 0, 0, .45);
}

.bl-player-avatar-fallback {
    display: grid;
    place-items: center;
    color: #00d68f;
    font-size: 4rem;
    font-weight: 950;
}

.bl-steam-profile-link,
.bl-player-steamid-main,
.bl-player-list-card a,
.bl-section-heading-row a,
.bl-mini-match a {
    color: #00d68f !important;
    text-decoration: none !important;
    font-weight: 900;
}

.bl-steam-profile-link:hover,
.bl-player-list-card a:hover,
.bl-section-heading-row a:hover,
.bl-mini-match a:hover {
    color: #fff !important;
}

.bl-player-steamid-main {
    max-width: 100%;
    overflow-wrap: anywhere;
    color: #ff5a5f !important;
    font-size: .82rem;
    text-align: center;
}

.bl-player-main-info {
    min-width: 0;
}

.bl-player-main-info h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(1.85rem, 4vw, 3rem);
    line-height: 1.03;
    letter-spacing: .015em;
    text-shadow: 0 3px 0 rgba(0, 0, 0, .45);
}

.bl-player-known-as {
    margin: .35rem 0 0;
    color: rgba(255, 255, 255, .72);
}

.bl-player-quick-pills {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1rem;
}

.bl-player-quick-pills span,
.bl-player-rank-card,
.bl-player-metric-row,
.bl-compact-record {
    border: 1px solid rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .045);
}

.bl-player-quick-pills span {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-width: 0;
    max-width: 100%;
    padding: .42rem .66rem;
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    overflow-wrap: anywhere;
}

.bl-player-quick-pills strong {
    color: #00d68f;
    text-transform: uppercase;
    font-size: .68rem;
    letter-spacing: .08em;
}

.bl-player-rank-card {
    justify-self: stretch;
    padding: 1rem;
    border-radius: 18px;
    text-align: center;
}

.bl-player-rank-card span,
.bl-player-metric-row span,
.bl-mini-match span,
.bl-compact-record span,
.bl-player-list-card small {
    color: rgba(255, 255, 255, .58);
}

.bl-player-rank-card span {
    display: block;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: .72rem;
    font-weight: 950;
}

.bl-player-rank-card strong {
    display: block;
    margin: .25rem 0;
    color: #00d68f;
    font-size: clamp(2rem, 5vw, 3.25rem);
    line-height: 1;
    font-weight: 950;
}

.bl-player-rank-card small {
    color: #fff;
    font-weight: 800;
}

.bl-player-lists-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.bl-player-list-card {
    padding: 1rem;
}

.bl-player-list-card h3,
.bl-player-metric-card h3,
.bl-player-section-card h3 {
    margin: 0;
    color: #fff;
    font-size: 1rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.bl-player-list-card ul {
    display: grid;
    gap: .35rem;
    margin: .8rem 0 0;
    padding: 0;
    list-style: none;
}

.bl-player-list-card li {
    min-width: 0;
    overflow-wrap: anywhere;
    color: #fff;
    font-weight: 800;
}

.bl-muted {
    color: rgba(255, 255, 255, .56);
}

.bl-player-metric-groups {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.bl-player-metric-card {
    overflow: hidden;
}

.bl-player-metric-card h3 {
    padding: .95rem 1rem;
    border-bottom: 1px solid rgba(0, 214, 143, .18);
    background: rgba(0, 214, 143, .08);
}

.bl-player-metric-list {
    display: grid;
}

.bl-player-metric-row {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto;
    gap: .45rem .8rem;
    align-items: center;
    padding: .7rem .9rem;
    border-width: 0 0 1px;
}

.bl-player-metric-row:last-child {
    border-bottom-width: 0;
}

.bl-player-metric-row span {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: .82rem;
    font-weight: 800;
}

.bl-player-metric-row strong {
    color: #00d68f;
    font-size: 1.05rem;
    font-weight: 950;
    text-align: right;
}

.bl-player-metric-row small {
    grid-column: 1 / -1;
    color: rgba(255, 255, 255, .64);
    font-size: .75rem;
}

.bl-player-section-card {
    padding: 1rem;
    overflow: hidden;
}

.bl-section-heading-row {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem 1rem;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .9rem;
}

.bl-section-heading-row a {
    font-size: .8rem;
}

.bl-player-recent-matches,
.bl-compact-records {
    display: grid;
    gap: .65rem;
}

.bl-mini-match {
    position: relative;
    display: grid;
    grid-template-columns: minmax(150px, 1.2fr) repeat(3, minmax(70px, .55fr)) auto;
    gap: .6rem;
    align-items: center;
    padding: .75rem .85rem .75rem 1rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-left: 5px solid #0faf78;
    border-radius: 16px;
    background: rgba(255, 255, 255, .04);
}

.bl-mini-match-win { border-left-color: #00d68f; }
.bl-mini-match-loss { border-left-color: #ff5a5f; }
.bl-mini-match-abandoned { border-left-color: #ffd34d; }

.bl-mini-match div {
    min-width: 0;
}

.bl-mini-match strong,
.bl-compact-record strong {
    display: block;
    color: #fff;
    font-weight: 950;
    overflow-wrap: anywhere;
}

.bl-mini-match span {
    display: block;
    font-size: .74rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.bl-compact-record {
    display: grid;
    gap: .2rem;
    padding: .75rem .85rem;
    border-radius: 14px;
    color: #fff;
}

.bl-compact-record small {
    color: rgba(255, 255, 255, .72);
}

.bl-empty-records {
    margin: 0;
    padding: 1.4rem;
    border: 1px dashed rgba(255, 90, 95, .35);
    border-radius: 16px;
    color: #ff5a5f;
    text-align: center;
    text-transform: uppercase;
    font-weight: 900;
}

@media (max-width: 1180px) {
    .bl-player-hero-card {
        grid-template-columns: minmax(125px, 160px) minmax(0, 1fr);
    }

    .bl-player-rank-card {
        grid-column: 1 / -1;
    }

    .bl-player-metric-groups {
        grid-template-columns: 1fr;
    }

    .bl-mini-match {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .bl-player-hero-card,
    .bl-player-lists-grid,
    .bl-mini-match {
        grid-template-columns: minmax(0, 1fr);
    }

    .bl-player-main-info h2,
    .bl-player-known-as {
        text-align: center;
    }

    .bl-player-quick-pills span {
        width: 100%;
        justify-content: space-between;
        border-radius: 14px;
    }

    .bl-section-heading-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* v1.0.7: Match Stats and Top Player Stats card layouts to match Player Match Stats. */
.bl-stat-card-list {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 1rem 0 0;
    display: grid;
    gap: .9rem;
}

.bl-match-card-list,
.bl-top-player-list {
    overflow: visible;
}

.bl-match-stat-card,
.bl-top-player-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.bl-match-stat-card::before {
    background: #ffd34d;
}

.bl-top-player-card::before {
    background: #00d68f;
}

.bl-match-topline,
.bl-top-player-topline {
    grid-template-columns: minmax(120px, .7fr) minmax(220px, 1.4fr) auto;
}

.bl-rank-block .bl-pm-match-title {
    font-size: clamp(1.35rem, 2.1vw, 1.85rem);
}

.bl-match-stat-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.bl-top-player-stat-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.bl-match-stat-card .bl-pm-stat strong,
.bl-top-player-card .bl-pm-stat strong {
    overflow-wrap: anywhere;
}

.bl-match-stat-card .bl-pm-stat a,
.bl-top-player-card .bl-pm-stat a,
.bl-pm-meta-row a {
    color: #00d68f !important;
    text-decoration: none !important;
    font-weight: 950;
}

.bl-match-stat-card .bl-pm-stat a:hover,
.bl-top-player-card .bl-pm-stat a:hover,
.bl-pm-meta-row a:hover {
    color: #fff !important;
}

.bl-top-player-card .bl-outcome-badge {
    min-width: 150px;
}

@media (max-width: 1250px) {
    .bl-stats-shell .bl-match-topline,
    .bl-stats-shell .bl-top-player-topline {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
    }

    .bl-stats-shell .bl-match-stat-grid,
    .bl-stats-shell .bl-top-player-stat-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-match-topline,
    .bl-stats-shell .bl-top-player-topline {
        grid-template-columns: minmax(0, 1fr);
    }

    .bl-stats-shell .bl-match-stat-grid,
    .bl-stats-shell .bl-top-player-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* v1.0.8: upgraded title treatment and more modern card rhythm. */
.bl-stats-shell .bl-stats-header {
    text-align: left !important;
}

.bl-stats-titlebar {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: .65rem 0 1rem;
    padding: .95rem 1.05rem .95rem 1.25rem;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .28);
    border-left: 6px solid #00d68f;
    border-radius: 20px;
    background:
        linear-gradient(90deg, rgba(0, 214, 143, .14), rgba(255, 166, 0, .08) 42%, rgba(0, 0, 0, 0) 100%),
        radial-gradient(circle at 2rem 0, rgba(0, 214, 143, .22), transparent 22rem),
        rgba(0, 0, 0, .22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 12px 32px rgba(0, 0, 0, .18);
}

.bl-stats-titlebar::after {
    content: "";
    position: absolute;
    right: -5rem;
    top: -6rem;
    width: 16rem;
    height: 16rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 166, 0, .18), transparent 66%);
    pointer-events: none;
}

.bl-stats-kicker {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin: 0 0 .38rem;
    color: #ffa600;
    font-size: .68rem;
    line-height: 1;
    letter-spacing: .16em;
    text-transform: uppercase;
    font-weight: 950;
}

.bl-stats-kicker::before {
    content: "";
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    background: #00d68f;
    box-shadow: 0 0 16px rgba(0, 214, 143, .75);
}

.bl-stats-shell .bl-stats-title {
    margin: 0 !important;
    color: #fff !important;
    text-align: left !important;
    font-size: clamp(1.8rem, 3.1vw, 3.1rem) !important;
    line-height: .98 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-shadow: 0 3px 0 rgba(0, 0, 0, .55), 0 0 22px rgba(0, 214, 143, .18) !important;
}

.bl-stats-subtitle {
    max-width: 760px;
    margin: .45rem 0 0 !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: .9rem;
    line-height: 1.45;
}

.bl-stats-titlebar-matches { border-left-color: #ffa600; }
.bl-stats-titlebar-topplayers { border-left-color: #00d68f; }
.bl-stats-titlebar-sliceislife { border-left-color: #ffa600; }
.bl-stats-titlebar-playermatches { border-left-color: #00d68f; }
.bl-stats-titlebar-bans { border-left-color: #ff5a5f; }
.bl-stats-titlebar-player { border-left-color: #8fd35b; }

.bl-stat-card-list,
.bl-player-match-list {
    gap: .78rem;
}

.bl-player-match-card {
    border-radius: 18px;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.bl-player-match-card:hover {
    transform: translateY(-1px);
    border-color: rgba(0, 214, 143, .48);
    box-shadow: 0 20px 58px rgba(0, 0, 0, .42), 0 0 0 1px rgba(0, 214, 143, .08);
}

.bl-pm-topline {
    padding: .98rem 1.1rem .76rem;
}

.bl-pm-meta-row {
    padding: 0 1.1rem .9rem;
}

.bl-pm-stat {
    padding: .75rem .7rem .85rem;
}

.bl-sort-controls {
    align-items: center;
    justify-content: flex-start;
    margin: .8rem 0 1rem;
    padding: .62rem .7rem;
    border-radius: 16px;
    background:
        linear-gradient(90deg, rgba(0, 214, 143, .09), rgba(255, 166, 0, .045)),
        rgba(255, 255, 255, .035);
}

.bl-sort-controls::before {
    content: "Sort View";
    color: #ffa600;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-size: .68rem;
    font-weight: 950;
    margin-right: .2rem;
}

.bl-sort-controls label {
    min-width: min(210px, 100%);
}

.bl-sort-controls select,
.bl-sort-controls button {
    min-height: 36px;
}

.bl-sort-controls button {
    box-shadow: 0 10px 22px rgba(0, 0, 0, .26);
}

.bl-match-stat-card .bl-pm-match-title,
.bl-top-player-card .bl-pm-match-title {
    color: #ffa600 !important;
}

.bl-top-player-card .bl-pm-player-name,
.bl-match-stat-card .bl-pm-player-name {
    font-size: clamp(1rem, 1.3vw, 1.22rem);
}

.bl-match-stat-card .bl-pm-map,
.bl-top-player-card .bl-pm-map {
    border-color: rgba(255, 166, 0, .35);
    color: #ffa600;
    background: rgba(255, 166, 0, .08);
}

.bl-match-stat-card .bl-pm-stat-score strong,
.bl-top-player-card .bl-pm-stat-score strong {
    color: #ffa600;
}

@media (max-width: 760px) {
    .bl-stats-titlebar {
        padding: .85rem .9rem .9rem 1rem;
        border-radius: 16px;
    }

    .bl-stats-shell .bl-stats-title {
        font-size: clamp(1.55rem, 9vw, 2.35rem) !important;
        letter-spacing: .045em !important;
    }

    .bl-stats-subtitle {
        font-size: .82rem;
    }

    .bl-sort-controls::before {
        width: 100%;
    }
}


/* v1.0.9 compact squared component pass.
   Compresses Match Stats, Player Match Stats, Top Player Stats, and Player pages vertically. */
.bl-stats-shell {
    --bl-card-radius: 6px;
}

.bl-stats-shell .bl-stats-header {
    text-align: left;
    margin-bottom: .45rem !important;
}

.bl-stats-logo {
    width: min(300px, 58vw) !important;
    margin: 0 0 .55rem !important;
}

.bl-stats-title {
    position: relative;
    display: inline-block;
    margin: 0 0 .48rem !important;
    padding-left: .55rem;
    font-size: clamp(1.18rem, 1.65vw, 1.55rem) !important;
    line-height: 1.05 !important;
    letter-spacing: .045em;
}

.bl-stats-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: .08em;
    bottom: .08em;
    width: 3px;
    background: #d88900;
}

.bl-stats-shell .bl-stats-search {
    margin: .35rem 0 .5rem !important;
    padding: .35rem .45rem !important;
    gap: .35rem !important;
    border-radius: 6px !important;
}

.bl-stats-shell .bl-stats-search form {
    flex-basis: 175px !important;
    gap: .32rem !important;
}

.bl-stats-shell .bl-stats-search input[type="search"],
.bl-stats-shell .bl-stats-search input[type="text"] {
    height: 33px !important;
    min-height: 33px !important;
    padding: .34rem .58rem !important;
    border-radius: 4px !important;
    font-size: .8rem !important;
}

.bl-stats-shell .bl-stats-search button,
.bl-stats-shell .bl-stats-search input[type="submit"] {
    height: 33px !important;
    min-height: 33px !important;
    padding: .34rem .55rem !important;
    border-radius: 4px !important;
    font-size: .7rem !important;
}

.bl-stats-shell .bl-stats-nav {
    justify-content: flex-start !important;
    gap: .34rem !important;
    margin: .35rem 0 .65rem !important;
}

.bl-stats-shell .bl-stats-nav .bl-btn,
.bl-stats-shell .bl-btn {
    min-height: 31px !important;
    padding: .38rem .68rem !important;
    border-radius: 4px !important;
    font-size: .72rem !important;
}

.bl-sort-controls {
    margin: .45rem 0 .65rem !important;
    padding: .5rem !important;
    gap: .45rem !important;
    border-radius: 6px !important;
}

.bl-sort-controls label {
    gap: .22rem !important;
    min-width: min(210px, 100%) !important;
}

.bl-sort-controls label span {
    font-size: .64rem !important;
}

.bl-sort-controls select,
.bl-sort-controls button {
    min-height: 33px !important;
    height: 33px !important;
    padding: .34rem .6rem !important;
    border-radius: 4px !important;
    font-size: .76rem !important;
}

.bl-player-match-list,
.bl-stat-card-list,
.bl-player-profile,
.bl-player-lists-grid,
.bl-player-metric-groups,
.bl-player-recent-matches,
.bl-compact-records {
    gap: .55rem !important;
}

.bl-player-match-list,
.bl-stat-card-list {
    margin-top: .55rem !important;
}

.bl-player-match-card,
.bl-player-hero-card,
.bl-player-list-card,
.bl-player-metric-card,
.bl-player-section-card,
.bl-mini-match,
.bl-compact-record,
.bl-empty-records {
    border-radius: 6px !important;
}

.bl-player-match-card {
    box-shadow: 0 10px 28px rgba(0, 0, 0, .28) !important;
}

.bl-player-match-card::before {
    width: 4px !important;
}

.bl-pm-topline,
.bl-match-topline,
.bl-top-player-topline {
    gap: .55rem !important;
    padding: .68rem .75rem .48rem !important;
}

.bl-eyebrow {
    margin-bottom: .16rem !important;
    font-size: .62rem !important;
    letter-spacing: .1em !important;
}

.bl-pm-match-title,
.bl-pm-player-name {
    font-size: clamp(.98rem, 1.25vw, 1.18rem) !important;
    line-height: 1.08 !important;
}

.bl-rank-block .bl-pm-match-title {
    font-size: clamp(1.18rem, 1.65vw, 1.48rem) !important;
}

.bl-pm-map {
    margin-left: .4rem !important;
    padding: .18rem .4rem !important;
    border-radius: 4px !important;
    font-size: .68rem !important;
}

.bl-pm-steam {
    margin-top: .18rem !important;
    font-size: .72rem !important;
    line-height: 1.18 !important;
}

.bl-outcome-badge {
    min-width: 112px !important;
    padding: .38rem .58rem !important;
    border-radius: 4px !important;
    font-size: .68rem !important;
}

.bl-top-player-card .bl-outcome-badge {
    min-width: 125px !important;
}

.bl-pm-meta-row {
    gap: .34rem !important;
    padding: 0 .75rem .58rem !important;
    font-size: .72rem !important;
}

.bl-pm-meta-row span {
    padding: .24rem .42rem !important;
    border-radius: 4px !important;
}

.bl-pm-meta-row strong {
    font-size: .6rem !important;
}

.bl-pm-stat-grid {
    border-top-width: 1px !important;
}

.bl-pm-stat {
    padding: .54rem .42rem .58rem !important;
}

.bl-pm-stat span {
    margin-bottom: .14rem !important;
    font-size: .58rem !important;
    letter-spacing: .085em !important;
}

.bl-pm-stat strong {
    font-size: clamp(.9rem, 1.1vw, 1.08rem) !important;
}

/* Compact player profile page. */
.bl-player-profile {
    margin-top: .55rem !important;
}

.bl-player-hero-card {
    gap: .75rem !important;
    padding: .75rem !important;
    grid-template-columns: minmax(105px, 132px) minmax(0, 1fr) minmax(120px, 165px) !important;
}

.bl-player-avatar {
    width: min(112px, 100%) !important;
    border-radius: 4px !important;
}

.bl-player-main-info h2 {
    font-size: clamp(1.35rem, 3vw, 2.1rem) !important;
}

.bl-player-known-as {
    margin-top: .25rem !important;
    font-size: .82rem !important;
}

.bl-player-quick-pills {
    gap: .34rem !important;
    margin-top: .55rem !important;
}

.bl-player-quick-pills span {
    padding: .26rem .45rem !important;
    border-radius: 4px !important;
    font-size: .75rem !important;
}

.bl-player-quick-pills strong,
.bl-player-rank-card span {
    font-size: .58rem !important;
}

.bl-player-rank-card {
    padding: .65rem !important;
    border-radius: 6px !important;
}

.bl-player-rank-card strong {
    margin: .16rem 0 !important;
    font-size: clamp(1.45rem, 3vw, 2.35rem) !important;
}

.bl-player-list-card,
.bl-player-section-card {
    padding: .7rem !important;
}

.bl-player-list-card h3,
.bl-player-metric-card h3,
.bl-player-section-card h3 {
    font-size: .86rem !important;
}

.bl-player-list-card ul {
    gap: .22rem !important;
    margin-top: .5rem !important;
}

.bl-player-list-card li {
    font-size: .82rem !important;
}

.bl-player-metric-card h3 {
    padding: .62rem .72rem !important;
}

.bl-player-metric-row {
    padding: .46rem .62rem !important;
    gap: .28rem .5rem !important;
}

.bl-player-metric-row span {
    font-size: .74rem !important;
}

.bl-player-metric-row strong {
    font-size: .92rem !important;
}

.bl-section-heading-row {
    margin-bottom: .55rem !important;
    gap: .4rem .65rem !important;
}

.bl-mini-match {
    padding: .52rem .62rem .52rem .72rem !important;
    gap: .38rem !important;
    border-left-width: 4px !important;
}

.bl-mini-match span {
    font-size: .62rem !important;
}

.bl-compact-record {
    gap: .12rem !important;
    padding: .48rem .6rem !important;
}

.bl-empty-records {
    padding: .85rem !important;
}

.bl-pagination {
    margin-top: .65rem !important;
    gap: .3rem !important;
}

.bl-pagination a,
.bl-pagination span {
    min-width: 30px !important;
    min-height: 30px !important;
    padding: .25rem .45rem !important;
    border-radius: 4px !important;
}

@media (max-width: 1180px) {
    .bl-player-hero-card {
        grid-template-columns: minmax(100px, 120px) minmax(0, 1fr) !important;
    }
}

@media (max-width: 760px) {
    .bl-player-hero-card {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .bl-pm-map {
        margin-left: 0 !important;
        margin-top: .28rem !important;
    }
    .bl-pm-meta-row span,
    .bl-player-quick-pills span {
        border-radius: 4px !important;
    }
}

/* v1.0.10 - Steam identity icon next to player names */
.bl-player-name-with-icon {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-width: 0;
    max-width: 100%;
    vertical-align: middle;
}

.bl-player-name-text {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bl-steam-inline-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.08em;
    height: 1.08em;
    flex: 0 0 1.08em;
    border: 1px solid rgba(0, 214, 143, .48);
    border-radius: 3px;
    color: #fff;
    background: linear-gradient(135deg, #111820 0%, #0b301f 100%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.06), 0 0 10px rgba(0,214,143,.16);
}

.bl-steam-inline-icon svg {
    display: block;
    width: .86em;
    height: .86em;
    fill: currentColor;
}

.bl-pm-player-name:hover .bl-steam-inline-icon,
.bl-table-player-name:hover .bl-steam-inline-icon {
    border-color: rgba(255, 166, 0, .72);
    color: #ffa600;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 0 12px rgba(255,166,0,.2);
}

.bl-player-profile-name {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    color: #fff;
    font: inherit;
}

.bl-player-profile-name .bl-steam-inline-icon {
    width: .9em;
    height: .9em;
    flex-basis: .9em;
    border-color: rgba(255, 166, 0, .64);
    background: linear-gradient(135deg, #101010 0%, #0b3b28 100%);
}

.bl-player-known-as-name,
.bl-player-list-name,
.bl-table-player-name {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    color: inherit;
    text-decoration: none;
    font-weight: 800;
}

.bl-table-player-name {
    color: #072819 !important;
}

.bl-stat-table td .bl-table-player-name {
    width: 100%;
}

.bl-player-known-as-name .bl-steam-inline-icon,
.bl-player-list-name .bl-steam-inline-icon,
.bl-table-player-name .bl-steam-inline-icon {
    width: .92em;
    height: .92em;
    flex-basis: .92em;
}

.bl-player-list-card li .bl-player-name-with-icon {
    max-width: 100%;
}

@media (max-width: 640px) {
    .bl-player-name-with-icon {
        gap: .32rem;
    }

    .bl-steam-inline-icon {
        width: 1em;
        height: 1em;
        flex-basis: 1em;
    }
}


/* v1.0.12 - Steam avatar player identity and simplified BEERLEAGUE labels. */
.bl-stats-titlebar {
    display: block !important;
    border-radius: 6px !important;
}

.bl-stats-kicker {
    display: flex !important;
    width: max-content;
    margin: 0 0 .3rem !important;
}

.bl-stats-shell .bl-stats-title {
    display: block !important;
    width: 100%;
}

.bl-match-stat-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.bl-player-steamid-link {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    color: #00d68f !important;
    text-decoration: none !important;
    font-weight: 850;
}

.bl-player-steamid-link:hover {
    color: #ffa600 !important;
}

.bl-player-steamid-link .bl-steam-inline-icon {
    width: .95em;
    height: .95em;
    flex-basis: .95em;
}

@media (max-width: 1250px) {
    .bl-stats-shell .bl-match-stat-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-match-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* v1.0.12 - Larger Steam profile avatars beside player names. */
.bl-player-name-with-icon {
    gap: .5rem !important;
}

.bl-steam-inline-avatar,
.bl-steam-inline-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    border: 1px solid rgba(0, 214, 143, .55) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    background: #07110d !important;
    box-shadow: 0 0 0 1px rgba(255,255,255,.05), 0 5px 14px rgba(0,0,0,.25) !important;
}

.bl-steam-inline-avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.bl-steam-inline-icon svg {
    width: 17px !important;
    height: 17px !important;
}

.bl-pm-player-name:hover .bl-steam-inline-avatar,
.bl-table-player-name:hover .bl-steam-inline-avatar,
.bl-player-steamid-link:hover .bl-steam-inline-avatar {
    border-color: rgba(255, 166, 0, .85) !important;
    box-shadow: 0 0 0 1px rgba(255,166,0,.16), 0 6px 16px rgba(0,0,0,.28) !important;
}

.bl-player-profile-name .bl-steam-inline-avatar,
.bl-player-profile-name .bl-steam-inline-icon {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
}

.bl-player-profile-name .bl-steam-inline-icon svg {
    width: 22px !important;
    height: 22px !important;
}

.bl-player-known-as-name .bl-steam-inline-avatar,
.bl-player-known-as-name .bl-steam-inline-icon,
.bl-player-list-name .bl-steam-inline-avatar,
.bl-player-list-name .bl-steam-inline-icon,
.bl-table-player-name .bl-steam-inline-avatar,
.bl-table-player-name .bl-steam-inline-icon,
.bl-player-steamid-link .bl-steam-inline-avatar,
.bl-player-steamid-link .bl-steam-inline-icon {
    width: 22px !important;
    height: 22px !important;
    flex-basis: 22px !important;
}

.bl-player-known-as-name .bl-steam-inline-icon svg,
.bl-player-list-name .bl-steam-inline-icon svg,
.bl-table-player-name .bl-steam-inline-icon svg,
.bl-player-steamid-link .bl-steam-inline-icon svg {
    width: 15px !important;
    height: 15px !important;
}

@media (max-width: 640px) {
    .bl-steam-inline-avatar,
    .bl-steam-inline-icon {
        width: 22px !important;
        height: 22px !important;
        flex-basis: 22px !important;
    }
}


/* v1.0.13 - map thumbnails and taller Steam avatars beside player identity blocks. */
.bl-player-identity-block {
    display: inline-flex;
    align-items: center;
    gap: .58rem;
    max-width: 100%;
    min-width: 0;
    vertical-align: middle;
}

.bl-player-identity-block > .bl-steam-inline-avatar,
.bl-player-identity-block > .bl-steam-inline-icon {
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    border-radius: 4px !important;
}

.bl-player-identity-block > .bl-steam-inline-icon svg {
    width: 28px !important;
    height: 28px !important;
}

.bl-player-identity-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    max-width: 100%;
    line-height: 1.08;
}

.bl-player-identity-copy .bl-pm-player-name {
    margin: 0 !important;
}

.bl-player-identity-copy .bl-pm-steam {
    margin-top: .28rem !important;
    width: auto !important;
}

.bl-map-name-with-pic {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-width: 0;
    max-width: 100%;
    vertical-align: middle;
}

.bl-map-name-with-pic img {
    display: block;
    width: 34px;
    height: 24px;
    flex: 0 0 34px;
    object-fit: cover;
    border: 1px solid rgba(0, 214, 143, .46);
    border-radius: 3px;
    background: #07110d;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .24);
}

.bl-map-name-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bl-pm-map .bl-map-name-with-pic img {
    width: 38px;
    height: 26px;
    flex-basis: 38px;
}

.bl-map-stat-value {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    color: #fff;
}

.bl-map-stat-value .bl-map-name-with-pic {
    justify-content: center;
}

.bl-map-stat-value .bl-map-name-with-pic img,
.bl-map-name-large img {
    width: 56px;
    height: 34px;
    flex-basis: 56px;
}

.bl-mini-map {
    display: inline-flex;
    margin-top: .18rem;
    color: rgba(255, 255, 255, .76);
    font-size: .72rem;
    font-weight: 850;
}

.bl-mini-map .bl-map-name-with-pic img {
    width: 30px;
    height: 20px;
    flex-basis: 30px;
}

.bl-table-map {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    font-weight: 850;
    color: inherit;
}

.bl-table-map .bl-map-name-with-pic img {
    width: 42px;
    height: 28px;
    flex-basis: 42px;
}

.bl-pm-stat-map strong {
    font-size: clamp(.9rem, 1.15vw, 1.05rem) !important;
}

@media (max-width: 640px) {
    .bl-player-identity-block > .bl-steam-inline-avatar,
    .bl-player-identity-block > .bl-steam-inline-icon {
        width: 38px !important;
        height: 38px !important;
        flex-basis: 38px !important;
    }

    .bl-map-name-with-pic img,
    .bl-pm-map .bl-map-name-with-pic img {
        width: 32px;
        height: 22px;
        flex-basis: 32px;
    }
}

/* v1.0.14 - align player label with name/SteamID, enlarge map thumbnails, and trim Match Stats map duplication. */
.bl-stats-shell .bl-pm-topline {
    align-items: flex-start !important;
}

.bl-stats-shell .bl-pm-match-block,
.bl-stats-shell .bl-pm-player-block,
.bl-stats-shell .bl-pm-outcome-block {
    padding-top: .05rem;
}

.bl-pm-player-identity-block-wrap {
    display: flex;
    align-items: flex-start;
    min-width: 0;
}

.bl-pm-player-identity-block-wrap .bl-player-identity-block {
    align-items: flex-start;
}

.bl-player-identity-label {
    margin: 0 0 .18rem !important;
}

.bl-player-identity-block > .bl-steam-inline-avatar,
.bl-player-identity-block > .bl-steam-inline-icon {
    width: 52px !important;
    height: 52px !important;
    flex: 0 0 52px !important;
}

.bl-player-identity-block > .bl-steam-inline-icon svg {
    width: 32px !important;
    height: 32px !important;
}

.bl-player-identity-copy {
    justify-content: flex-start !important;
    padding-top: 0 !important;
}

.bl-map-name-with-pic img {
    width: 52px !important;
    height: 34px !important;
    flex: 0 0 52px !important;
}

.bl-pm-map {
    align-items: center !important;
    padding: .18rem .42rem !important;
    border-radius: 5px !important;
}

.bl-pm-map .bl-map-name-with-pic img {
    width: 62px !important;
    height: 40px !important;
    flex-basis: 62px !important;
}

.bl-mini-map .bl-map-name-with-pic img {
    width: 48px !important;
    height: 30px !important;
    flex-basis: 48px !important;
}

.bl-table-map .bl-map-name-with-pic img {
    width: 56px !important;
    height: 36px !important;
    flex-basis: 56px !important;
}

.bl-match-stat-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (max-width: 900px) {
    .bl-match-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .bl-player-identity-block > .bl-steam-inline-avatar,
    .bl-player-identity-block > .bl-steam-inline-icon {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }

    .bl-pm-map .bl-map-name-with-pic img,
    .bl-map-name-with-pic img {
        width: 44px !important;
        height: 29px !important;
        flex-basis: 44px !important;
    }
}

/* v1.0.15 - larger map identity block to the left of Match #, plus tighter Match Stats sorting. */
.bl-pm-match-identity-block-wrap {
    display: flex;
    align-items: flex-start;
    min-width: 0;
}

.bl-match-identity-block {
    display: inline-flex;
    align-items: flex-start;
    gap: .68rem;
    min-width: 0;
    max-width: 100%;
    vertical-align: top;
}

.bl-match-map-avatar {
    display: inline-flex;
    width: 82px;
    height: 54px;
    flex: 0 0 82px;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .55);
    border-radius: 5px;
    background: #07110d;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .32);
}

.bl-match-map-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bl-match-identity-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    min-width: 0;
    max-width: 100%;
    padding-top: .02rem;
    line-height: 1.05;
}

.bl-match-identity-label {
    margin: 0 0 .18rem !important;
}

.bl-match-identity-copy .bl-pm-match-title {
    margin: 0 !important;
    font-size: clamp(1.16rem, 1.55vw, 1.45rem) !important;
    line-height: 1.05 !important;
}

.bl-match-map-name {
    display: inline-flex;
    margin-top: .26rem;
    max-width: 100%;
    color: #00d68f;
    font-size: .8rem;
    line-height: 1.1;
    font-weight: 900;
    letter-spacing: .015em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bl-stats-shell .bl-pm-topline:not(.bl-top-player-topline) {
    grid-template-columns: minmax(250px, .95fr) minmax(230px, 1.2fr) auto !important;
}

@media (max-width: 960px) {
    .bl-stats-shell .bl-pm-topline:not(.bl-top-player-topline) {
        grid-template-columns: 1fr !important;
    }
    .bl-pm-outcome-block {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .bl-match-map-avatar {
        width: 68px;
        height: 45px;
        flex-basis: 68px;
    }
    .bl-match-identity-copy .bl-pm-match-title {
        font-size: 1.08rem !important;
    }
}


/* v1.0.16 - integrated match score strip and compact sorter. */
.bl-stats-shell .bl-sort-controls {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .45rem !important;
    width: auto !important;
    max-width: 100% !important;
    margin: .35rem 0 .72rem !important;
    padding: .32rem .42rem !important;
    border: 1px solid rgba(0, 214, 143, .26) !important;
    border-left: 3px solid #ffa600 !important;
    border-radius: 5px !important;
    background: linear-gradient(90deg, rgba(0, 214, 143, .07), rgba(255, 166, 0, .035)) !important;
    box-shadow: none !important;
}

.bl-stats-shell .bl-sort-controls::before {
    content: "Sort" !important;
    margin: 0 .18rem 0 .08rem !important;
    color: #ffa600 !important;
    font-size: .64rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.bl-stats-shell .bl-sort-controls label {
    display: inline-flex !important;
    align-items: center !important;
    gap: .3rem !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.bl-stats-shell .bl-sort-controls label span {
    font-size: .58rem !important;
    line-height: 1 !important;
    letter-spacing: .06em !important;
    color: rgba(255, 255, 255, .56) !important;
}

.bl-stats-shell .bl-sort-controls select,
.bl-stats-shell .bl-sort-controls button {
    min-height: 27px !important;
    height: 27px !important;
    padding: .18rem .45rem !important;
    border-radius: 4px !important;
    font-size: .68rem !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

.bl-stats-shell .bl-sort-controls select {
    max-width: 170px !important;
    border-color: rgba(0, 214, 143, .3) !important;
    background-color: rgba(255, 255, 255, .055) !important;
}

.bl-stats-shell .bl-sort-controls button {
    border-color: rgba(255, 166, 0, .55) !important;
    background: linear-gradient(180deg, #ffa600, #c77d00) !important;
    color: #07110d !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
}

.bl-match-stat-card .bl-pm-topline {
    border-bottom: 1px solid rgba(0, 214, 143, .2) !important;
    padding-bottom: .65rem !important;
}

.bl-match-summary-strip {
    display: grid;
    grid-template-columns: minmax(180px, auto) 1fr auto;
    align-items: center;
    gap: .72rem;
    padding: .58rem .85rem .62rem;
    border-top: 1px solid rgba(255, 255, 255, .04);
    background: linear-gradient(90deg, rgba(0, 214, 143, .055), rgba(0, 0, 0, .04));
}

.bl-match-scoreline {
    display: inline-flex;
    align-items: stretch;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .34);
    border-radius: 5px;
    background: rgba(0, 0, 0, .22);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.bl-match-team {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    padding: .34rem .62rem;
}

.bl-match-team span {
    color: rgba(255, 255, 255, .56);
    font-size: .58rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.bl-match-team strong {
    margin-top: .16rem;
    font-size: 1.34rem;
    line-height: 1;
    font-weight: 950;
}

.bl-match-team-one strong { color: #ff5a70; }
.bl-match-team-two strong { color: #45d9ff; }

.bl-match-versus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    padding: 0 .38rem;
    border-left: 1px solid rgba(0, 214, 143, .2);
    border-right: 1px solid rgba(0, 214, 143, .2);
    color: #ffa600;
    font-size: .62rem;
    font-weight: 950;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bl-match-detail-pills {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .38rem;
    min-width: 0;
}

.bl-match-detail-pills span {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    min-height: 25px;
    padding: .26rem .48rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 4px;
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .74);
    font-size: .7rem;
    line-height: 1.1;
}

.bl-match-detail-pills strong {
    color: #00d68f;
    font-size: .62rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.bl-match-view-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: .38rem .7rem;
    border: 1px solid rgba(255, 166, 0, .55);
    border-radius: 5px;
    background: rgba(255, 166, 0, .11);
    color: #ffa600 !important;
    font-size: .72rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .055em;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap;
}

.bl-match-view-button:hover,
.bl-match-view-button:focus-visible {
    background: #ffa600;
    color: #07110d !important;
    border-color: #ffa600;
}

.bl-match-stat-card .bl-match-stat-grid,
.bl-match-stat-card .bl-pm-stat-grid {
    display: none !important;
}

@media (max-width: 960px) {
    .bl-match-summary-strip {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .bl-match-view-button {
        justify-self: start;
    }
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-sort-controls {
        display: flex !important;
        width: 100% !important;
        flex-wrap: wrap !important;
    }

    .bl-stats-shell .bl-sort-controls select {
        max-width: 100% !important;
    }
}

/* v1.0.17 - tuck Match Stats sorting into the title card and remove the duplicate Sort label. */
.bl-stats-shell .bl-sort-controls::before {
    content: none !important;
    display: none !important;
}

.bl-stats-shell .bl-sort-controls select,
.bl-stats-shell .bl-sort-controls select option {
    color: #ffffff !important;
    background-color: #06140f !important;
}

.bl-stats-shell .bl-sort-controls label span {
    color: rgba(255, 255, 255, .72) !important;
}

.bl-titlebar-sort {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: .55rem;
    position: relative;
    z-index: 2;
}

.bl-stats-titlebar-matches .bl-titlebar-sort .bl-sort-controls {
    margin: 0 !important;
    padding: .28rem .36rem !important;
    border: 1px solid rgba(255, 166, 0, .28) !important;
    border-left: 3px solid #ffa600 !important;
    border-radius: 4px !important;
    background: rgba(0, 0, 0, .22) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

.bl-stats-titlebar-matches .bl-titlebar-sort .bl-sort-controls select,
.bl-stats-titlebar-matches .bl-titlebar-sort .bl-sort-controls button {
    height: 26px !important;
    min-height: 26px !important;
    font-size: .66rem !important;
}

.bl-stats-titlebar-matches .bl-titlebar-sort .bl-sort-controls button {
    padding-inline: .58rem !important;
}

@media (min-width: 820px) {
    .bl-stats-titlebar-matches {
        padding-right: 1.05rem !important;
        padding-bottom: 2.75rem !important;
    }

    .bl-stats-titlebar-matches .bl-titlebar-sort {
        position: absolute;
        right: .95rem;
        bottom: .72rem;
        margin-top: 0;
    }
}

@media (max-width: 640px) {
    .bl-titlebar-sort {
        justify-content: flex-start;
    }

    .bl-stats-shell .bl-sort-controls {
        width: 100% !important;
    }
}


/* v1.0.18 - dedicated Match Overview page for View Match Stats. */
.bl-stats-titlebar-match {
    border-left-color: #ffa600;
}

.bl-match-overview {
    display: grid;
    gap: .72rem;
}

.bl-match-overview-hero {
    margin-bottom: .15rem;
}

.bl-match-overview-strip {
    grid-template-columns: minmax(176px, auto) 1fr;
}

.bl-match-scoreboard-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: .75rem;
    margin: .4rem 0 .05rem;
    padding: .45rem .55rem .25rem;
    border-left: 3px solid #ffa600;
}

.bl-match-scoreboard-heading h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: .04em;
    text-shadow: 0 2px 0 rgba(0, 0, 0, .45);
}

.bl-match-player-list {
    display: grid;
    gap: .55rem;
}

.bl-match-player-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(230px, 1.1fr) minmax(160px, .8fr) minmax(320px, 1.65fr);
    gap: .65rem;
    align-items: center;
    padding: .62rem .72rem .62rem .9rem;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .22);
    border-left: 4px solid rgba(0, 214, 143, .72);
    border-radius: 5px;
    background:
        radial-gradient(circle at top left, rgba(0, 214, 143, .10), transparent 22rem),
        linear-gradient(180deg, rgba(9, 24, 18, .98), rgba(3, 10, 8, .98));
    box-shadow: 0 10px 30px rgba(0, 0, 0, .22);
}

.bl-match-player-card-loss {
    border-left-color: #ff5a5f;
}

.bl-match-player-card-abandoned {
    border-left-color: #ffd34d;
}

.bl-match-player-main {
    display: flex;
    align-items: center;
    gap: .72rem;
    min-width: 0;
}

.bl-match-player-main .bl-player-identity-block {
    flex: 1 1 auto;
    min-width: 0;
}

.bl-match-player-main .bl-outcome-badge {
    flex: 0 0 auto;
    min-width: 104px;
    padding: .42rem .58rem;
    font-size: .66rem;
    border-radius: 4px;
}

.bl-match-player-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .32rem;
}

.bl-match-player-meta span {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    min-height: 23px;
    padding: .22rem .42rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 4px;
    background: rgba(255, 255, 255, .045);
    color: rgba(255, 255, 255, .72);
    font-size: .66rem;
    line-height: 1.1;
}

.bl-match-player-meta strong {
    color: #00d68f;
    font-size: .58rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.bl-match-player-stats {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .16);
    border-radius: 4px;
    background: rgba(0, 214, 143, .16);
}

.bl-match-player-stats div {
    min-width: 0;
    padding: .35rem .35rem .38rem;
    background: rgba(1, 8, 6, .72);
    text-align: center;
}

.bl-match-player-stats span {
    display: block;
    margin-bottom: .12rem;
    color: rgba(255, 255, 255, .55);
    font-size: .54rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.bl-match-player-stats strong {
    display: block;
    color: #fff;
    font-size: .78rem;
    line-height: 1.05;
    font-weight: 950;
}

.bl-match-player-stats div:first-child strong,
.bl-match-player-stats div:nth-child(2) strong {
    color: #00d68f;
}

@media (max-width: 1120px) {
    .bl-match-player-card {
        grid-template-columns: 1fr;
    }
    .bl-match-player-main {
        justify-content: space-between;
    }
}

@media (max-width: 720px) {
    .bl-match-overview-strip {
        grid-template-columns: 1fr;
    }
    .bl-match-player-main {
        align-items: flex-start;
        flex-direction: column;
    }
    .bl-match-player-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* v1.0.21 - Match Overview side-by-side teams with compact headers. */
.bl-match-team-board {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .72rem;
    align-items: start;
}

.bl-match-team-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .26);
    border-radius: 5px;
    background:
        radial-gradient(circle at top left, rgba(0, 214, 143, .10), transparent 22rem),
        linear-gradient(180deg, rgba(3, 27, 19, .96), rgba(1, 8, 6, .98));
    box-shadow: 0 12px 34px rgba(0, 0, 0, .22);
}

.bl-match-team-panel-winner {
    border-color: rgba(0, 214, 143, .58);
    box-shadow: 0 0 0 1px rgba(0, 214, 143, .14), 0 15px 38px rgba(0, 0, 0, .28);
}

.bl-match-team-panel-loser {
    border-color: rgba(255, 91, 91, .34);
    background:
        radial-gradient(circle at top left, rgba(255, 91, 91, .08), transparent 20rem),
        linear-gradient(180deg, rgba(3, 27, 19, .94), rgba(1, 8, 6, .98));
}

.bl-match-team-panel-other {
    grid-column: 1 / -1;
    border-color: rgba(255, 166, 0, .32);
}

.bl-match-team-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .58rem .68rem;
    border-bottom: 1px solid rgba(0, 214, 143, .20);
    background:
        linear-gradient(90deg, rgba(0, 214, 143, .18), rgba(255, 166, 0, .08)),
        rgba(0, 0, 0, .18);
}

.bl-match-team-title-wrap {
    display: flex;
    align-items: center;
    min-width: 0;
}

.bl-match-team-name {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: .22rem .5rem;
    border-left: 3px solid #ffa600;
    background: rgba(0, 0, 0, .34);
    color: #fff;
    font-size: .84rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .11em;
    text-transform: uppercase;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .5);
}

.bl-match-team-panel-winner .bl-match-team-name {
    border-left-color: #00d68f;
    box-shadow: inset 0 -1px 0 rgba(0, 214, 143, .18);
}

.bl-match-team-panel-loser .bl-match-team-name {
    border-left-color: #ff5b5b;
}

.bl-match-team-panel-meta {
    color: #ffa600;
    font-size: .64rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
    white-space: nowrap;
}

.bl-match-team-players {
    display: grid;
    gap: .46rem;
    padding: .55rem;
}

.bl-match-team-empty {
    margin: 0;
    padding: .65rem;
    border: 1px dashed rgba(255, 255, 255, .14);
    border-radius: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .8rem;
}

.bl-match-team-board .bl-match-player-card {
    display: block;
    padding: .56rem .62rem;
    border-left-width: 3px;
    border-radius: 4px;
    background:
        linear-gradient(180deg, rgba(6, 18, 14, .96), rgba(1, 8, 6, .98));
    box-shadow: none;
}

.bl-match-team-board .bl-match-player-card:hover {
    border-color: rgba(0, 214, 143, .42);
    transform: translateY(-1px);
}

.bl-match-team-board .bl-match-player-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .6rem;
}

.bl-match-team-board .bl-match-player-main .bl-outcome-badge {
    min-width: 92px;
    justify-content: center;
    padding: .34rem .48rem;
    font-size: .58rem;
}

.bl-match-team-board .bl-match-player-meta {
    margin-top: .42rem;
}

.bl-match-team-board .bl-match-player-meta span {
    min-height: 20px;
    padding: .18rem .34rem;
    font-size: .6rem;
}

.bl-match-team-board .bl-match-player-stats {
    margin-top: .45rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.bl-match-team-board .bl-match-player-stats div {
    padding: .28rem .25rem .3rem;
}

.bl-match-team-board .bl-match-player-stats span {
    font-size: .48rem;
}

.bl-match-team-board .bl-match-player-stats strong {
    font-size: .68rem;
}

@media (max-width: 700px) {
    .bl-match-team-board {
        grid-template-columns: 1fr;
    }

    .bl-match-team-board .bl-match-player-main {
        grid-template-columns: 1fr;
    }

    .bl-match-team-board .bl-match-player-main .bl-outcome-badge {
        width: max-content;
    }

    .bl-match-team-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .bl-match-team-board .bl-match-player-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* v1.0.22 - inline Match Stats preview and cleaner sub display. */
.bl-match-inline-details {
    border-top: 1px solid rgba(0, 214, 143, .18);
    background: linear-gradient(180deg, rgba(0, 214, 143, .045), rgba(0, 0, 0, .08));
}

.bl-match-inline-details summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    min-height: 32px;
    padding: .38rem .75rem;
    color: #ffa600;
    font-size: .7rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
    list-style: none;
    user-select: none;
}

.bl-match-inline-details summary::-webkit-details-marker {
    display: none;
}

.bl-match-inline-details summary::before {
    content: '▸';
    color: #00d68f;
    font-size: .86rem;
    line-height: 1;
    transition: transform .16s ease;
}

.bl-match-inline-details[open] summary::before {
    transform: rotate(90deg);
}

.bl-match-inline-board {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    padding: 0 .72rem .72rem;
}

.bl-match-inline-team {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 214, 143, .22);
    border-radius: 4px;
    background: rgba(0, 0, 0, .18);
}

.bl-match-inline-team-team2 {
    border-color: rgba(255, 91, 91, .24);
}

.bl-match-inline-team header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: .4rem .52rem;
    border-bottom: 1px solid rgba(0, 214, 143, .16);
    background: rgba(0, 214, 143, .08);
}

.bl-match-inline-team header strong {
    color: #fff;
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bl-match-inline-team header span {
    color: #ffa600;
    font-size: .58rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.bl-match-inline-player {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .55rem;
    padding: .42rem .52rem;
    border-bottom: 1px solid rgba(255, 255, 255, .055);
}

.bl-match-inline-player:last-child {
    border-bottom: 0;
}

.bl-match-inline-player .bl-player-identity-block {
    min-width: 0;
}

.bl-match-inline-player .bl-steam-inline-avatar,
.bl-match-inline-player .bl-steam-inline-icon {
    width: 34px;
    height: 34px;
}

.bl-match-inline-player .bl-pm-player-name {
    font-size: .78rem !important;
}

.bl-match-inline-player .bl-pm-steam {
    font-size: .62rem !important;
}

.bl-match-inline-kad {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .1rem;
    min-width: 62px;
}

.bl-match-inline-kad strong {
    color: #00d68f;
    font-size: .76rem;
    line-height: 1;
    font-weight: 950;
}

.bl-match-inline-kad small {
    color: rgba(255, 255, 255, .52);
    font-size: .5rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

@media (max-width: 760px) {
    .bl-match-inline-board {
        grid-template-columns: 1fr;
    }
}


/* v1.0.25 - user profile integration prompt and compact 2-row match quick view. */
.bl-steamid-prompt,
.bl-linked-user-banner,
.bl-linked-profile-empty {
    width: min(1320px, 96vw);
    margin: .7rem auto 0;
    border: 1px solid rgba(0, 214, 143, .26);
    border-radius: 4px;
    background: linear-gradient(180deg, rgba(0, 214, 143, .1), rgba(0, 0, 0, .22));
    color: #fff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .24);
}

.bl-steamid-prompt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    padding: .55rem .7rem;
}

.bl-steamid-prompt strong,
.bl-linked-user-banner strong,
.bl-linked-profile-empty h2 {
    color: #fff;
    font-weight: 950;
    letter-spacing: .02em;
}

.bl-steamid-prompt span,
.bl-linked-profile-empty p {
    display: block;
    color: rgba(255, 255, 255, .72);
    font-size: .82rem;
    line-height: 1.3;
}

.bl-steamid-prompt a,
.bl-linked-profile-empty .bl-btn {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: .35rem .65rem;
    border: 1px solid rgba(255, 166, 0, .42);
    border-radius: 3px;
    color: #111 !important;
    background: linear-gradient(180deg, #ffb72d, #d98200);
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
    text-decoration: none !important;
}

.bl-linked-user-banner {
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: .45rem .65rem;
}

.bl-linked-user-banner span {
    color: #ffa600;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bl-linked-profile-empty {
    padding: 1rem;
}

.bl-match-inline-player {
    grid-template-columns: 1fr !important;
    align-items: stretch;
    gap: .36rem;
}

.bl-match-inline-primary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .55rem;
    min-width: 0;
}

.bl-match-inline-stats {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .28rem;
    min-width: 0;
}

.bl-match-inline-stats span {
    min-width: 0;
    padding: .32rem .24rem;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 3px;
    background: rgba(255, 255, 255, .04);
    text-align: center;
}

.bl-match-inline-stats strong {
    display: block;
    color: #fff;
    font-size: .72rem;
    line-height: 1;
    font-weight: 950;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bl-match-inline-stats small {
    display: block;
    margin-top: .16rem;
    color: rgba(255, 255, 255, .54);
    font-size: .48rem;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    .bl-match-inline-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .bl-steamid-prompt {
        align-items: stretch;
        flex-direction: column;
    }
    .bl-match-inline-primary {
        grid-template-columns: 1fr;
    }
    .bl-match-inline-kad {
        align-items: flex-start;
    }
}

/* v1.0.26 - CSS-focused stat presentation updates. */
.bl-player-steamid-main {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    font-size: .74rem !important;
    letter-spacing: .01em;
}

.bl-match-player-card {
    grid-template-columns: minmax(230px, 1.05fr) minmax(150px, .7fr) minmax(390px, 2fr) !important;
}

.bl-match-player-stats.bl-match-player-stats-3row {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.bl-match-player-stats.bl-match-player-stats-3row div {
    min-height: 43px;
}

.bl-match-player-stats.bl-match-player-stats-3row span {
    white-space: normal;
    line-height: 1.05;
}

.bl-match-player-stats.bl-match-player-stats-3row strong {
    white-space: nowrap;
}

.bl-match-inline-stats {
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
}

.bl-match-inline-stats small {
    white-space: normal;
    line-height: 1.05;
}

.bl-top-player-stat-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

.bl-top-player-card .bl-pm-stat strong {
    overflow-wrap: normal;
    word-break: normal;
}

@media (max-width: 1220px) {
    .bl-match-player-card {
        grid-template-columns: 1fr !important;
    }
    .bl-match-player-stats.bl-match-player-stats-3row,
    .bl-top-player-stat-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
    .bl-match-inline-stats {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 720px) {
    .bl-match-player-stats.bl-match-player-stats-3row,
    .bl-top-player-stat-grid,
    .bl-match-inline-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* v1.0.29 - fixed search suggestions and condensed Top Player leaderboard cards. */
.bl-stats-shell .bl-top-player-list {
    gap: .55rem !important;
}

.bl-stats-shell .bl-top-player-card {
    padding: .62rem .72rem .55rem !important;
    border-radius: 5px !important;
    background: linear-gradient(90deg, rgba(0, 41, 24, .96), rgba(0, 19, 14, .94)) !important;
}

.bl-stats-shell .bl-top-player-card::before {
    width: 3px !important;
}

.bl-stats-shell .bl-top-player-topline {
    grid-template-columns: minmax(92px, .42fr) minmax(220px, 1.15fr) auto !important;
    gap: .55rem !important;
    align-items: center !important;
    margin-bottom: .45rem !important;
}

.bl-stats-shell .bl-top-player-card .bl-rank-block,
.bl-stats-shell .bl-top-player-card .bl-pm-player-block,
.bl-stats-shell .bl-top-player-card .bl-pm-outcome-block {
    min-height: 0 !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-match-title {
    font-size: 1.1rem !important;
    line-height: 1 !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-map,
.bl-stats-shell .bl-top-player-card .bl-eyebrow {
    font-size: .58rem !important;
    letter-spacing: .09em !important;
}

.bl-stats-shell .bl-top-player-card .bl-player-identity-block {
    gap: .45rem !important;
}

.bl-stats-shell .bl-top-player-card .bl-steam-inline-avatar,
.bl-stats-shell .bl-top-player-card .bl-steam-inline-icon {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-player-name {
    font-size: 1.02rem !important;
    line-height: 1.02 !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-steam {
    font-size: .66rem !important;
    white-space: nowrap !important;
}

.bl-stats-shell .bl-top-player-card .bl-outcome-badge {
    min-width: 0 !important;
    padding: .32rem .48rem !important;
    border-radius: 4px !important;
    font-size: .62rem !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-meta-row {
    margin: .35rem 0 .4rem !important;
    gap: .32rem !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-meta-row span {
    padding: .25rem .38rem !important;
    border-radius: 4px !important;
    font-size: .64rem !important;
}

.bl-stats-shell .bl-top-player-stat-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    gap: 1px !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-stat {
    padding: .34rem .3rem !important;
    min-height: 42px !important;
    border-radius: 0 !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-stat span {
    font-size: .53rem !important;
    letter-spacing: .075em !important;
    line-height: 1.05 !important;
}

.bl-stats-shell .bl-top-player-card .bl-pm-stat strong {
    font-size: .88rem !important;
    line-height: 1.05 !important;
}

.bl-stats-shell .bl-top-player-medal-gold {
    border-color: rgba(255, 194, 41, .68) !important;
    background: linear-gradient(90deg, rgba(80, 58, 0, .58), rgba(0, 24, 15, .95) 38%, rgba(0, 18, 13, .95)) !important;
}
.bl-stats-shell .bl-top-player-medal-gold::before { background: #ffc229 !important; }
.bl-stats-shell .bl-top-player-medal-gold .bl-pm-match-title,
.bl-stats-shell .bl-top-player-medal-gold .bl-pm-stat-score strong { color: #ffc229 !important; }

.bl-stats-shell .bl-top-player-medal-silver {
    border-color: rgba(207, 218, 224, .58) !important;
    background: linear-gradient(90deg, rgba(82, 91, 96, .45), rgba(0, 24, 15, .95) 38%, rgba(0, 18, 13, .95)) !important;
}
.bl-stats-shell .bl-top-player-medal-silver::before { background: #d8e0e4 !important; }
.bl-stats-shell .bl-top-player-medal-silver .bl-pm-match-title,
.bl-stats-shell .bl-top-player-medal-silver .bl-pm-stat-score strong { color: #d8e0e4 !important; }

.bl-stats-shell .bl-top-player-medal-bronze {
    border-color: rgba(205, 127, 50, .62) !important;
    background: linear-gradient(90deg, rgba(78, 38, 10, .50), rgba(0, 24, 15, .95) 38%, rgba(0, 18, 13, .95)) !important;
}
.bl-stats-shell .bl-top-player-medal-bronze::before { background: #cd7f32 !important; }
.bl-stats-shell .bl-top-player-medal-bronze .bl-pm-match-title,
.bl-stats-shell .bl-top-player-medal-bronze .bl-pm-stat-score strong { color: #cd7f32 !important; }

@media (max-width: 1220px) {
    .bl-stats-shell .bl-top-player-stat-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-top-player-topline {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .bl-stats-shell .bl-top-player-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* v1.0.30 - Player Leaderboard compact cards and dropdown stat drawer. */
.bl-stats-shell .bl-top-player-card {
    padding: .5rem .6rem !important;
}

.bl-stats-shell .bl-top-player-topline {
    grid-template-columns: minmax(86px, .34fr) minmax(220px, 1.2fr) auto !important;
    margin-bottom: .35rem !important;
}

.bl-stats-shell .bl-top-player-card .bl-rank-block .bl-pm-match-title {
    font-size: 1.55rem !important;
    line-height: .95 !important;
    letter-spacing: .015em !important;
}

.bl-stats-shell .bl-top-player-card.bl-top-player-medal-gold .bl-rank-block .bl-pm-match-title,
.bl-stats-shell .bl-top-player-card.bl-top-player-medal-silver .bl-rank-block .bl-pm-match-title,
.bl-stats-shell .bl-top-player-card.bl-top-player-medal-bronze .bl-rank-block .bl-pm-match-title {
    font-size: 1.7rem !important;
}

.bl-stats-shell .bl-top-player-details {
    margin-top: .35rem !important;
    border: 1px solid rgba(0, 214, 143, .24) !important;
    border-radius: 4px !important;
    background: rgba(0, 13, 9, .55) !important;
    overflow: hidden !important;
}

.bl-stats-shell .bl-top-player-details summary {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: .5rem !important;
    padding: .42rem .55rem !important;
    cursor: pointer !important;
    user-select: none !important;
    color: #ffa600 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .055em !important;
    font-size: .68rem !important;
    background: linear-gradient(90deg, rgba(0, 92, 63, .28), rgba(0, 25, 18, .88)) !important;
}

.bl-stats-shell .bl-top-player-details summary::marker,
.bl-stats-shell .bl-top-player-details summary::-webkit-details-marker {
    color: #ffa600 !important;
}

.bl-stats-shell .bl-top-player-details summary strong {
    color: #f6f3e8 !important;
    font-size: .68rem !important;
    white-space: nowrap !important;
}

.bl-stats-shell .bl-top-player-detail-inner {
    padding: .48rem !important;
}

.bl-stats-shell .bl-top-player-profile-link,
.bl-stats-shell .bl-top-player-server-list {
    display: inline-flex !important;
    align-items: center !important;
    gap: .3rem !important;
    margin: 0 .35rem .42rem 0 !important;
    padding: .28rem .42rem !important;
    border: 1px solid rgba(0, 214, 143, .28) !important;
    border-radius: 3px !important;
    background: rgba(255, 255, 255, .035) !important;
    color: #00e0a0 !important;
    font-size: .66rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .045em !important;
    text-decoration: none !important;
}

.bl-stats-shell .bl-top-player-server-list {
    color: #d9eee8 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.bl-stats-shell .bl-top-player-details:not([open]) + * {
    margin-top: 0 !important;
}

.bl-stats-shell .bl-top-player-details .bl-top-player-stat-grid {
    margin-top: 0 !important;
}

.bl-stats-shell .bl-top-player-details .bl-pm-stat {
    min-height: 38px !important;
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-top-player-details summary {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
}

/* v1.0.32 - Player Leaderboard drawer styling to match Match Stats quick view. */
.bl-stats-shell .bl-top-player-card:not(.bl-top-player-medal-gold):not(.bl-top-player-medal-silver):not(.bl-top-player-medal-bronze) .bl-rank-block .bl-pm-match-title {
    color: #b6c1bd !important;
    text-shadow: none !important;
}

.bl-stats-shell .bl-top-player-card:not(.bl-top-player-medal-gold):not(.bl-top-player-medal-silver):not(.bl-top-player-medal-bronze) .bl-rank-block .bl-pm-map {
    color: #c7d0cc !important;
    border-color: rgba(199, 208, 204, .30) !important;
    background: rgba(199, 208, 204, .08) !important;
}

.bl-stats-shell .bl-top-player-details {
    margin-top: .42rem !important;
    border: 0 !important;
    border-top: 1px solid rgba(0, 214, 143, .18) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(0, 214, 143, .045), rgba(0, 0, 0, .08)) !important;
    overflow: hidden !important;
}

.bl-stats-shell .bl-top-player-details summary {
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    min-height: 30px !important;
    padding: .36rem .75rem !important;
    color: #ffa600 !important;
    font-size: .7rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    list-style: none !important;
    user-select: none !important;
    background: transparent !important;
}

.bl-stats-shell .bl-top-player-details summary::-webkit-details-marker {
    display: none !important;
}

.bl-stats-shell .bl-top-player-details summary::marker {
    content: '' !important;
}

.bl-stats-shell .bl-top-player-details summary::before {
    content: '▸' !important;
    color: #00d68f !important;
    font-size: .86rem !important;
    line-height: 1 !important;
    transition: transform .16s ease !important;
}

.bl-stats-shell .bl-top-player-details[open] summary::before {
    transform: rotate(90deg) !important;
}

.bl-stats-shell .bl-top-player-detail-inner {
    padding: .12rem .48rem .52rem !important;
}

.bl-stats-shell .bl-top-player-profile-link {
    margin-top: .12rem !important;
}

@media (max-width: 760px) {
    .bl-stats-shell .bl-top-player-details summary {
        align-items: center !important;
        flex-direction: row !important;
        text-align: center !important;
    }
}


/* v1.0.33 - expandable drawers, per-page controls, and square Steam avatars. */
.bl-stats-shell .bl-sort-controls {
    flex-wrap: wrap !important;
}

.bl-stats-shell .bl-sort-controls label select[name="limit"] {
    max-width: 74px !important;
}

.bl-stats-shell .bl-sort-controls .bl-expand-all-button {
    border-color: rgba(0, 214, 143, .46) !important;
    background: rgba(0, 214, 143, .11) !important;
    color: #d9fff4 !important;
}

.bl-stats-shell .bl-sort-controls .bl-expand-all-button:hover,
.bl-stats-shell .bl-sort-controls .bl-expand-all-button:focus-visible {
    border-color: #00d68f !important;
    background: rgba(0, 214, 143, .22) !important;
    color: #ffffff !important;
}

.bl-stats-shell .bl-steam-inline-avatar,
.bl-stats-shell .bl-steam-inline-icon {
    aspect-ratio: 1 / 1 !important;
    max-width: none !important;
}

.bl-stats-shell .bl-steam-inline-avatar img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    max-width: none !important;
}

.bl-stats-shell .bl-top-player-card .bl-player-identity-block > .bl-steam-inline-avatar,
.bl-stats-shell .bl-top-player-card .bl-player-identity-block > .bl-steam-inline-icon {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
}

.bl-stats-shell .bl-match-inline-player .bl-player-identity-block > .bl-steam-inline-avatar,
.bl-stats-shell .bl-match-inline-player .bl-player-identity-block > .bl-steam-inline-icon {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
}

.bl-stats-shell .bl-top-player-details summary,
.bl-stats-shell .bl-match-inline-details summary {
    white-space: normal !important;
}

@media (min-width: 820px) {
    .bl-stats-titlebar-matches {
        padding-bottom: 3.15rem !important;
    }
}

/* v1.0.35 - move Slice is Life into its own standalone leaderboard. */
.bl-stats-titlebar-topplayers .bl-titlebar-sort .bl-sort-controls,
.bl-stats-titlebar-sliceislife .bl-titlebar-sort .bl-sort-controls {
    margin: 0 !important;
    padding: .28rem .36rem !important;
    border: 1px solid rgba(255, 166, 0, .28) !important;
    border-left: 3px solid #ffa600 !important;
    border-radius: 4px !important;
    background: rgba(0, 0, 0, .22) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

.bl-stats-titlebar-topplayers .bl-titlebar-sort .bl-sort-controls select,
.bl-stats-titlebar-topplayers .bl-titlebar-sort .bl-sort-controls button,
.bl-stats-titlebar-sliceislife .bl-titlebar-sort .bl-sort-controls select,
.bl-stats-titlebar-sliceislife .bl-titlebar-sort .bl-sort-controls button {
    height: 26px !important;
    min-height: 26px !important;
    font-size: .66rem !important;
}

.bl-stats-titlebar-topplayers .bl-titlebar-sort .bl-sort-controls button,
.bl-stats-titlebar-sliceislife .bl-titlebar-sort .bl-sort-controls button {
    padding-inline: .58rem !important;
}

@media (min-width: 820px) {
    .bl-stats-titlebar-topplayers,
    .bl-stats-titlebar-sliceislife {
        padding-right: 1.05rem !important;
        padding-bottom: 3.15rem !important;
    }

    .bl-stats-titlebar-topplayers .bl-titlebar-sort,
    .bl-stats-titlebar-sliceislife .bl-titlebar-sort {
        position: absolute;
        right: .95rem;
        bottom: .72rem;
        margin-top: 0;
    }
}

.bl-slice-leaderboard {
    border: 1px solid rgba(255, 166, 0, .16);
    border-left: 3px solid #ffa600;
    background: linear-gradient(135deg, rgba(5, 16, 12, .98), rgba(8, 29, 21, .94));
    box-shadow: 0 10px 22px rgba(0, 0, 0, .18);
    border-radius: 5px;
    padding: .72rem;
    margin: 0 0 .75rem;
}

.bl-slice-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .56rem;
}

.bl-slice-heading h2 {
    margin: .05rem 0 0;
    color: #fff;
    font-size: 1.05rem;
    line-height: 1.1;
    letter-spacing: .015em;
}

.bl-slice-heading small {
    color: rgba(255, 255, 255, .64);
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    white-space: nowrap;
}

.bl-slice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem;
}

.bl-slice-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas:
        "rank player"
        "stats stats";
    gap: .42rem .55rem;
    align-items: center;
    min-width: 0;
    border: 1px solid rgba(255, 255, 255, .10);
    background: rgba(0, 0, 0, .22);
    border-radius: 4px;
    padding: .52rem;
}

.bl-slice-card-gold { border-top: 2px solid #ffc229; }
.bl-slice-card-silver { border-top: 2px solid #d8e0e4; }
.bl-slice-card-bronze { border-top: 2px solid #cd7f32; }

.bl-slice-rank {
    grid-area: rank;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 32px;
    padding: 0 .28rem;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .06);
    color: #f2f5f3;
    font-weight: 950;
    font-size: .98rem;
    line-height: 1;
    border-radius: 3px;
}

.bl-slice-card-gold .bl-slice-rank { color: #ffc229; border-color: rgba(255, 194, 41, .38); }
.bl-slice-card-silver .bl-slice-rank { color: #d8e0e4; border-color: rgba(216, 224, 228, .34); }
.bl-slice-card-bronze .bl-slice-rank { color: #cd7f32; border-color: rgba(205, 127, 50, .38); }

.bl-slice-player {
    grid-area: player;
    min-width: 0;
}

.bl-slice-player .bl-player-identity-block > .bl-steam-inline-avatar,
.bl-slice-player .bl-player-identity-block > .bl-steam-inline-icon {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
}

.bl-slice-stats {
    grid-area: stats;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .35rem;
}

.bl-slice-stats span {
    display: block;
    min-width: 0;
    border: 1px solid rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .045);
    border-radius: 3px;
    padding: .32rem .36rem;
}

.bl-slice-stats strong,
.bl-slice-stats small {
    display: block;
    line-height: 1.08;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bl-slice-stats strong {
    color: #ffffff;
    font-size: .86rem;
    font-weight: 900;
}

.bl-slice-stats small {
    margin-top: .12rem;
    color: rgba(255, 255, 255, .56);
    font-size: .59rem;
    text-transform: uppercase;
    letter-spacing: .04em;
}

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

@media (max-width: 640px) {
    .bl-slice-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: .18rem;
    }

    .bl-slice-heading small {
        white-space: normal;
    }
}


.bl-stats-shell .bl-slice-standalone-card .bl-rank-block .bl-pm-match-title {
    color: #ffa600 !important;
}

.bl-stats-shell .bl-slice-standalone-card .bl-pm-stat-score strong {
    color: #ffa600 !important;
}

.bl-stats-shell .bl-slice-standalone-list .bl-top-player-card::before {
    background: #ffa600 !important;
}

/* v1.0.4 - Match Stats top player badge. */
.bl-match-summary-strip {
    grid-template-columns: minmax(180px, auto) minmax(220px, 1fr) minmax(230px, auto) auto;
}

.bl-match-top-player-pill {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .6rem;
    min-width: 220px;
    max-width: 360px;
    padding: .36rem .52rem;
    border: 1px solid rgba(255, 166, 0, .42);
    border-radius: 7px;
    background: linear-gradient(90deg, rgba(255, 166, 0, .12), rgba(0, 214, 143, .06));
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.bl-match-top-player-pill .bl-player-identity-block {
    min-width: 0;
    gap: .45rem;
}

.bl-match-top-player-pill .bl-player-identity-label {
    color: #ffa600 !important;
    font-size: .56rem !important;
}

.bl-match-top-player-pill .bl-pm-player-name {
    max-width: 190px;
    overflow: hidden;
    color: #fff !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bl-match-top-player-pill .bl-pm-steam {
    display: none !important;
}

.bl-match-top-player-pill .bl-player-identity-block > .bl-steam-inline-avatar,
.bl-match-top-player-pill .bl-player-identity-block > .bl-steam-inline-icon {
    width: 32px !important;
    height: 32px !important;
    flex: 0 0 32px !important;
    border-radius: 6px !important;
}

.bl-match-top-player-pill .bl-player-identity-block > .bl-steam-inline-icon svg {
    width: 18px !important;
    height: 18px !important;
}

.bl-match-top-player-kills {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    padding-left: .48rem;
    border-left: 1px solid rgba(255, 166, 0, .22);
    line-height: 1;
}

.bl-match-top-player-kills strong {
    color: #ffa600;
    font-size: 1.06rem;
    font-weight: 950;
}

.bl-match-top-player-kills small {
    margin-top: .12rem;
    color: rgba(255, 255, 255, .64);
    font-size: .52rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

@media (max-width: 1180px) {
    .bl-match-summary-strip {
        grid-template-columns: minmax(180px, auto) 1fr;
    }

    .bl-match-top-player-pill,
    .bl-match-view-button {
        justify-self: start;
    }
}

@media (max-width: 960px) {
    .bl-match-summary-strip {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .bl-match-top-player-pill {
        width: min(100%, 360px);
    }
}

/* v1.0.5 - place Match Stats top player directly to the right of score, before time pills. */
.bl-match-summary-strip > .bl-match-top-player-pill {
    justify-self: start;
}

.bl-match-summary-strip > .bl-match-detail-pills {
    justify-self: start;
}

.bl-match-overview-strip {
    grid-template-columns: minmax(180px, auto) minmax(220px, 1fr) minmax(230px, auto);
}


/* v1.0.6 - make User Stats Profile recent match map thumbnails larger and easier to see. */
.bl-player-profile .bl-player-recent-matches .bl-mini-match {
    grid-template-columns: minmax(210px, 1.35fr) repeat(3, minmax(70px, .55fr)) auto !important;
    align-items: center !important;
}

.bl-player-profile .bl-mini-match-map-cell {
    display: flex;
    align-items: center;
    gap: .65rem;
    min-width: 0;
}

.bl-player-profile .bl-mini-match-map-cell > strong {
    flex: 0 0 auto;
    min-width: 74px;
    line-height: 1.05;
}

.bl-player-profile .bl-profile-match-map {
    display: inline-flex !important;
    margin-top: 0 !important;
    min-width: 0;
}

.bl-player-profile .bl-profile-match-map .bl-map-name-with-pic {
    gap: .55rem !important;
}

.bl-player-profile .bl-profile-match-map .bl-map-name-with-pic img {
    width: 82px !important;
    height: 54px !important;
    flex: 0 0 82px !important;
    border-radius: 5px !important;
    border-color: rgba(0, 214, 143, .65) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .34) !important;
}

.bl-player-profile .bl-profile-match-map .bl-map-name-text {
    color: #00d68f;
    font-size: .76rem;
    font-weight: 950;
    letter-spacing: .02em;
    text-transform: uppercase;
}

@media (max-width: 1180px) {
    .bl-player-profile .bl-player-recent-matches .bl-mini-match {
        grid-template-columns: minmax(210px, 1fr) repeat(2, minmax(70px, .5fr)) !important;
    }
}

@media (max-width: 760px) {
    .bl-player-profile .bl-player-recent-matches .bl-mini-match {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .bl-player-profile .bl-mini-match-map-cell {
        align-items: flex-start;
    }
}

@media (max-width: 520px) {
    .bl-player-profile .bl-profile-match-map .bl-map-name-with-pic img {
        width: 68px !important;
        height: 45px !important;
        flex-basis: 68px !important;
    }
}
