.table-responsive {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    min-width: 100%;
}

.table {
    width: 100% !important;
}

.overlay-loading-wrapper {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    height: 100vh;
    width: 100vw;
    background: rgba(55, 125, 255, 0.18) !important;
    z-index: 9999;
    top: 0;
}

.avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    background-color: #e8eaf3;
}

.content.container-fluid {
    min-height: calc(100vh - 10rem);
}

/* Application toast */
.app-toast {
    width: min(390px, calc(100vw - 2rem));
    border-radius: 1rem;
    background: rgba(255, 255, 255, .98);
    backdrop-filter: blur(12px);
    overflow: hidden;
}
.app-toast::before {
    content: '';
    display: block;
    height: 4px;
    width: 100%;
}
.app-toast-success::before { background: linear-gradient(90deg, #00a389, #36c98f); }
.app-toast-error::before { background: linear-gradient(90deg, #ed4c78, #ff7b72); }
.app-toast-warning::before { background: linear-gradient(90deg, #f5ca99, #f0a202); }
.app-toast-info::before { background: linear-gradient(90deg, #377dff, #6f42c1); }
.app-toast-success .app-toast-icon { color: #00a389; }
.app-toast-error .app-toast-icon { color: #ed4c78; }
.app-toast-warning .app-toast-icon { color: #c98400; }
.app-toast-info .app-toast-icon { color: #377dff; }

/* Softer, less empty application canvas */
main.main.bg-light {
    background:
        radial-gradient(circle at 0 0, rgba(55, 125, 255, .08), transparent 26rem),
        radial-gradient(circle at 100% 12%, rgba(111, 66, 193, .06), transparent 24rem),
        #f7f9fc !important;
}
.card {
    border-color: rgba(30, 32, 34, .06);
}
