/* Tabler Icon Size Custom Classes */
.icon-size-sm {
    font-size: 10px
}

.icon-size-md {
    font-size: 16px
}

.icon-size-lg {
    font-size: 22px
}

.icon-size-xl {
    font-size: 28px
}

/* Toast Notifications Animations */
.toast {
    opacity: 0;
    transform: translateX(100%);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.toast.show {
    opacity: 1;
    transform: translateX(0);
}

.toast-enter {
    opacity: 0;
    transform: translateX(100%);
}

.toast-enter-active {
    opacity: 1;
    transform: translateX(0);
}

.toast-exit {
    opacity: 1;
    transform: translateX(0);
}

.toast-exit-active {
    opacity: 0;
    transform: translateX(100%);
}

/* Toast Header Colors */
.toast-header.bg-success {
    background-color: var(--tblr-success) !important;
}

.toast-header.bg-danger {
    background-color: var(--tblr-danger) !important;
}

.toast-header.bg-warning {
    background-color: var(--tblr-warning) !important;
}

.toast-header.bg-info {
    background-color: var(--tblr-info) !important;
}

/* DotVVM Validation Styles */
.is-invalid {
    border-color: var(--tblr-danger) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--tblr-danger-rgb), 0.25);
}

.is-invalid:focus {
    border-color: var(--tblr-danger) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--tblr-danger-rgb), 0.25);
}

/* DotVVM ValidationSummary - hide bullet points */
.validation-summary-errors ul,
.validation-summary-valid ul {
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 0;
}

.validation-summary-errors li {
    margin-bottom: 0.25rem;
}

.small.validation-summary-errors {
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

