.page-bg {
    background: url("../img/rink-bg.af32eb633e16.svg") no-repeat center center;
    background-size: cover;
    background-color: #0b0b0d;
    width: 100%;
}

@media (max-width: 767.98px) {
    .page-bg {
        background-image: url("../img/rink-bg-mobile.9fbe32814f15.svg");
    }
}

.navbar-dark .nav-link {
    color: #fff;
}

.navbar-dark .nav-link:hover,
.navbar-dark .nav-link:focus {
    color: #fff;
    opacity: 0.85;
}

/* Red accent theme for primary buttons, replacing Bootstrap's default blue. */
.btn-primary {
    --bs-btn-bg: #c8102e;
    --bs-btn-border-color: #c8102e;
    --bs-btn-hover-bg: #a30d25;
    --bs-btn-hover-border-color: #a30d25;
    --bs-btn-active-bg: #8c0b20;
    --bs-btn-active-border-color: #8c0b20;
    --bs-btn-focus-shadow-rgb: 200, 16, 46;
}

.auth-card {
    background: rgba(0, 0, 0, 0.75);
    color: #f8f9fa;
    padding: 2rem;
    border-radius: 0.75rem;
    border: 1px solid rgba(200, 16, 46, 0.35);
    backdrop-filter: blur(3px);
    text-align: center;
}

.auth-card .row {
    justify-content: center;
}

.auth-card-compact {
    padding: 1.25rem;
}

.auth-card .list-group-item {
    text-align: left;
}

.auth-card h1,
.auth-card label {
    color: #f8f9fa;
}

.auth-card a:not(.btn) {
    color: #ff6b6b;
}

.auth-card .btn-primary {
    color: #fff;
}

.auth-card .btn-outline-light {
    color: #fff;
}

.badge.bg-warning {
    background-color: #c8102e !important;
    color: #fff !important;
}

.avatar-sm {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border-radius: 50%;
}

.avatar-lg {
    width: 140px;
    height: 140px;
    object-fit: cover;
    border-radius: 50%;
}

.avatar-picker {
    cursor: pointer;
    display: inline-block;
    border-radius: 50%;
    transition: opacity 0.15s ease-in-out;
}

.avatar-picker:hover {
    opacity: 0.8;
}

.avatar-placeholder {
    background: #2b0a0a;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    font-weight: bold;
}
