body {
    background-color: #f5f6f8;
}
.card {
    border: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.table td, .table th {
    vertical-align: middle;
}
.login-wrapper {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.login-card {
    max-width: 400px;
    width: 100%;
}
.settlement-logo {
    height: 28px;
    width: 28px;
    object-fit: contain;
    border-radius: 4px;
    background: #fff;
}
.user-card {
    border: 2px solid transparent;
    transition: box-shadow .15s ease, transform .15s ease;
}
.user-card:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}
.user-card-debt {
    border-color: #dc3545;
}
.ajax-block.ajax-loading {
    opacity: .5;
    pointer-events: none;
    transition: opacity .1s ease;
}
.pass-card {
    border: 1px solid rgba(0, 0, 0, 0.08);
}
.pass-card-deactivated {
    border-left: 3px solid #dc3545;
}
/* Multivisitor pass-type badge — Bootstrap has no built-in purple. */
.badge-purple {
    background-color: #6f42c1;
    color: #fff;
}
