.kdb-civilian-track-list {
    position: relative;
    z-index: 8;
    width: calc(100% - 36px);
    max-width: 1880px;
    margin: -1px auto 0;
    border: 1px solid rgba(69, 188, 229, .42);
    background: linear-gradient(108deg, rgba(2, 18, 30, .98), rgba(4, 29, 44, .96));
    box-shadow: 0 10px 24px rgba(0, 8, 15, .2);
    color: #edf5f8;
}

.kdb-civilian-track-list__toggle {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 8px 16px;
    border: 0;
    color: inherit;
    background: transparent;
    cursor: pointer;
    text-align: left;
    text-transform: uppercase;
}

.kdb-civilian-track-list__summary {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
}

.kdb-civilian-track-list__summary b {
    color: #28c8f3;
    font: italic 800 24px/1 KDBDisplay, Oswald, sans-serif;
}

.kdb-civilian-track-list__summary > span,
.kdb-civilian-track-list__hint {
    color: #8ca1ad;
    font: 700 9px/1 KDBText, GolosText, sans-serif;
    letter-spacing: .08em;
}

.kdb-civilian-track-list__hint::after {
    content: none;
    display: none;
}

.kdb-civilian-track-list__names {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    border-top: 1px solid rgba(79, 187, 226, .18);
}

.kdb-civilian-track-list__names[hidden] {
    display: none !important;
}

.kdb-civilian-track-list__row {
    min-width: 0;
    padding: 9px 16px;
    border-right: 1px solid rgba(79, 187, 226, .14);
    color: #c8d8df;
    font: 650 10px/1.25 KDBText, GolosText, sans-serif;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Legacy selector kept only to avoid an old cached rule affecting the new block. */
.kdb-civilian-hero-indicator {
    display: none !important;
}

/* The old hero placement is intentionally disabled. */
.hero.hero--single-banner .kdb-civilian-hero-indicator {
    display: none !important;
}

/* Keep the panel hidden only while the browser is loading the page. */
.kdb-civilian-track-list[hidden] {
    display: none !important;
}

/* Shared legacy declarations no longer control the layout. */
.kdb-civilian-home-indicator {
    pointer-events: auto;
    text-transform: none;
    white-space: normal;
}

/* Remove the former compact hero geometry. */
.kdb-civilian-track-list {
    display: block;
    position: relative;
    left: auto;
    bottom: auto;
}

/*
 * Kept below the new block rules so the list grows by one row per participant.
 */
.kdb-civilian-track-list__names i {
    font-style: normal;
}

/* Old declarations end here. */
/*
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 7px;
    align-items: baseline;
    min-width: 178px;
    max-width: min(360px, calc(100% - 44px));
    padding: 8px 13px 8px 11px;
    border: 1px solid rgba(91, 201, 235, .42);
    background: linear-gradient(110deg, rgba(3, 24, 37, .92), rgba(3, 24, 37, .68));
*/

@media (max-width: 820px) {
    .kdb-civilian-track-list {
        width: calc(100% - 18px);
        margin: 0 auto 9px;
    }

    .kdb-civilian-track-list__toggle {
        min-height: 40px;
        padding: 7px 11px;
    }

    .kdb-civilian-track-list__row {
        padding: 8px 11px;
    }
}

/* Clickable dogs use the track ledge on desktop and the LIVE ledge on phones. */
.kdb-track-dogs {
    display: none;
}

.kdb-track-dogs--desktop {
    position: absolute;
    z-index: 11;
    top: -24px;
    right: 0;
    left: 0;
    height: 32px;
    pointer-events: none;
}

.kdb-track-dogs--mobile {
    position: absolute;
    z-index: 45;
    top: 4px;
    left: 0;
    width: 100%;
    height: 32px;
    visibility: hidden;
    pointer-events: none;
}

.kdb-track-dogs--mobile[data-positioned="1"] { visibility: visible; }

@media (min-width: 1024px) {
    .kdb-track-dogs--desktop { display: block; }
}

@media (max-width: 1023px) {
    .kdb-track-dogs--mobile { display: block; }
}

.kdb-track-dog {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 36px;
    height: 32px;
    pointer-events: auto;
    touch-action: manipulation;
    cursor: pointer;
}

.kdb-track-dog:focus-visible {
    outline: 2px solid #45d6fa;
    outline-offset: -2px;
}

.kdb-track-dog__sprite {
    position: absolute;
    top: 7px;
    left: 7px;
    display: block;
    width: 21px;
    height: 17px;
    background-image: url("../images/kdb-dogs-run-v1.845b1ebf8b1c.png");
    background-repeat: no-repeat;
    background-size: 84px 34px;
    image-rendering: pixelated;
    animation: kdb-dog-gait .44s steps(4, end) infinite;
    animation-play-state: paused;
}

.kdb-track-dog__sprite--pink { background-position-y: -17px; }

@keyframes kdb-dog-gait {
    from { background-position-x: 0; }
    to { background-position-x: -84px; }
}

@media (prefers-reduced-motion: reduce) {
    .kdb-track-dog__sprite { animation: none; }
}
