/* Progress Bar Styling */
.progress-bar-container {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    width: 50px;
    vertical-align: middle;
}

.progress-bar-container .progress-text {
    font-size: 11px;
    font-weight: 700;
    color: #3f4254;
    line-height: 1.2;
    margin-bottom: 4px;
}

[data-bs-theme="dark"] .progress-bar-container .progress-text {
    color: #cdcdde;
}

.progress-bar-container .progress-text-empty {
    color: #b5b5c3;
}

[data-bs-theme="dark"] .progress-bar-container .progress-text-empty {
    color: #474761;
}

.progress-bar-track {
    width: 100%;
    height: 5px;
    background-color: #e1e3ea;
    border-radius: 5px;
    overflow: hidden;
}

[data-bs-theme="dark"] .progress-bar-track {
    background-color: #2b2b40;
}

.progress-bar-fill-boys {
    height: 100%;
    border-radius: 5px;
    background-color: #16a35a; /* Forest green from HT column */
    transition: width 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-bs-theme="dark"] .progress-bar-fill-boys {
    background-color: #16a35a; /* Brighter emerald green for dark mode readability */
}

.progress-bar-fill-girls {
    height: 100%;
    border-radius: 5px;
    background-color: #16a35a; /* Lime green from TT column */
    transition: width 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-bs-theme="dark"] .progress-bar-fill-girls {
    background-color: #16a35a; /* Brighter lime/light green for dark mode readability */
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-fill-boys,
    .progress-bar-fill-girls {
        transition: none;
    }
}

/* Merged Participant & Team Buttons */
.this_category_participants, .this_category_team_participants, .kt-participant-btn {
    width: 55px !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Bracket Buttons */
.sp-bracket-btn {
    width: 55px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
}

/* Event status badges: transparent background with outline/border */
.event-status-badge.badge-light-success {
    background-color: rgba(80, 205, 137, 0.08) !important;
    color: #50cd89 !important;
    border: 1px solid rgba(80, 205, 137, 0.2) !important;
}
html[data-bs-theme="dark"] .event-status-badge.badge-light-success {
    background-color: rgba(80, 205, 137, 0.06) !important;
    color: #50cd89 !important;
    border: 1px solid rgba(80, 205, 137, 0.15) !important;
}

.event-status-badge.badge-light-warning {
    background-color: rgba(241, 180, 46, 0.08) !important;
    color: #f1b42e !important;
    border: 1px solid rgba(241, 180, 46, 0.2) !important;
}
html[data-bs-theme="dark"] .event-status-badge.badge-light-warning {
    background-color: rgba(241, 180, 46, 0.06) !important;
    color: #f1b42e !important;
    border: 1px solid rgba(241, 180, 46, 0.15) !important;
}

/* Shared competition-day navigation for both category tables */
.sp-event-day-nav {
    max-width: 100%;
    overflow-x: auto;
    padding-bottom: 0.25rem;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.sp-event-day-nav--initializing {
    visibility: hidden;
}

.sp-event-day-nav::-webkit-scrollbar {
    display: none;
}

.sp-event-day-filter {
    flex: 0 0 auto;
    min-height: 44px;
    white-space: nowrap;
    scroll-snap-align: start;
}

.sp-event-day-filter .badge {
    flex-shrink: 0;
}

.sp-category-day-badge {
    font-size: 10px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
}

@media (max-width: 1199.98px) {
    .sp-event-day-nav {
        width: 100%;
    }
}

