.dashboard .counter {
    color: #666;
    text-align: center;
    width: 300px;
    height: 200px;
    padding: 0 20px 20px 0;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.dashboard .counter:before,
.dashboard .counter:after {
    content: "";
    background: linear-gradient(#ff4d4d, #D21000);
    position: absolute;
    top: 10px;
    left: 10px;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.dashboard .counter:after {
    background: transparent;
    border: 2px dashed rgba(255, 255, 255, 0.5);
    top: 20px;
    left: 20px;
    right: 10px;
    bottom: 10px;
}

.dashboard .counter .counter-content {
    background-color: antiquewhite;
    height: 100%;
    padding: 23px 15px;
    position: relative;
}

.dashboard .counter .counter-content:hover {
    box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.25);
}

.dashboard .counter .counter-content:before,
.dashboard .counter .counter-content:after {
    content: '';
    background: linear-gradient(to top right, #ad3a05 50%, transparent 52%);
    height: 10px;
    width: 10px;
    position: absolute;
    right: -10px;
    top: 0;
}

.dashboard .counter .counter-content:after {
    transform: rotate(180deg);
    top: auto;
    bottom: -10px;
    right: auto;
    left: 0;
}

.dashboard .counter .counter-icon {
    font-size: 35px;
    line-height: 35px;
    margin: 0 0 15px;
    color: #D21000;
}

.dashboard .counter h3 {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 20px;
    text-transform: uppercase;
    margin: 0 0 7px;
}

.dashboard .counter .counter-value {
    font-size: 16px;
    font-weight: 600;
    display: block;
}

/* The switch - the box around the slider */
.switch-block {
    display: block !important;
}

/* TAPTM logo: light/dark by system preference (theme-guest pages) */
.taptm-logo-light {
    display: block;
}
.taptm-logo-dark {
    display: none;
}
@media (prefers-color-scheme: dark) {
    .taptm-logo-light {
        display: none;
    }
    .taptm-logo-dark {
        display: block;
    }
}

/* Auth pages: dark card with logo */
.auth-card-dark.card {
    background: #0f0f0f !important;
    border: 0;
}
.auth-card-dark .body {
    background: #0f0f0f !important;
}
.auth-card-dark .auth_brand .lead,
.auth-card-dark .form-auth-small label,
.auth-card-dark .helper-text {
    color: #e5e5e5 !important;
}
.auth-card-dark .auth_brand .lead {
    margin-bottom: 1.5rem;
}
.auth-card-dark .form-control {
    background-color: #1a1a1a !important;
    border-color: #333 !important;
    color: #fff !important;
}
.auth-card-dark .form-control::placeholder {
    color: #888;
}
.auth-card-dark .form-control:focus {
    background-color: #1a1a1a;
    border-color: #00D974;
    color: #fff;
}
.auth-card-dark .small a,
.auth-card-dark .bottom a {
    color: #00D974 !important;
}
.auth-card-dark .fancy-checkbox span {
    color: #e5e5e5;
}
.auth-card-dark .btn-primary {
    background-color: #00D974 !important;
    border-color: #00D974 !important;
    color: #0f0f0f !important;
}

/* Welcome page: larger card, bigger logo (no TAPTM text) */
.auth-main--welcome .auth_div {
    width: 520px;
}
@media (max-width: 575px) {
    .auth-main--welcome .auth_div {
        width: 92%;
        max-width: 400px;
    }
}
.auth-main--welcome .auth_brand--welcome__logo {
    height: 120px;
    width: auto;
}
.auth-main--welcome .card .body {
    padding: 2.5rem 2rem;
}
.auth-main--welcome .card .body h4 {
    font-size: 1.75rem;
}
.auth-main--welcome .card .body .lead {
    font-size: 1.1rem;
}
.auth-main--welcome .card .body .btn {
    padding: 0.65rem 1.25rem;
    font-size: 1.05rem;
}

.auth-card-dark .alert-info {
    background-color: rgba(0, 217, 116, 0.15);
    border-color: #00D974;
    color: #e5e5e5;
}
.auth-card-dark .invalid-feedback {
    color: #f87171;
}