@keyframes slide {
    0% {
        transform: translateX(-25%);
    }

    100% {
        transform: translateX(25%);
    }
}

.mud-button-filled {
    box-shadow: 0 3px 1px -2px rgb(0 0 0 / 30%), 0 2px 2px 0 rgb(0 0 0 / 0), 0 1px 5px 0 rgb(0 0 0 / 10%) !important;
}

.mud-dialog {
    box-shadow: 0 3px 1px -2px rgb(0 0 0 / 10%), 0 2px 2px 0 rgb(0 0 0 / 0), 0 10px 10px 0 rgb(0 0 0 / 5%) !important;
}

#blazor-error-ui {
    color: var(--mud-palette-drawer-text);
    background: var(--mud-palette-drawer-background);
}

.mud-overlay-dark {
    backdrop-filter: blur(2px);
}

.mud-card {
    display: flex;
    flex-direction: column;
}

.mud-card-header {
    padding: 1vh !important;
}

.mud-card-content {
    height: 100%;
    padding: 0 1vh 1vh 1vh !important;
}

.mud-card-header .mud-card-header-avatar {
    display: flex;
    margin-inline-end: 1vh !important;
    margin-inline-start: 1vh !important;
}

.mud-card-header .mud-card-header-actions {
    margin-top: unset !important;
    margin-right: unset !important;
    margin-inline-end: unset !important;
    margin-inline-start: unset !important;
}

.mud-dialog-content {
    max-height: 75vh !important;
    overflow: auto !important;
}

.mud-grid-spacing-xs-3 {
    margin: 0 !important;
    width: 100% !important;
}

.mud-table-toolbar {
    flex-wrap: wrap;
    margin-bottom: 20px !important;
}

::-webkit-scrollbar {
    width: 2px !important;
    height: 6px !important;
}

.mud-card-actions {
    padding: 0 1vh 1vh 1vh;
}

* {
    box-sizing: border-box !important;
}

body, .full-page {
    display: flex;
    flex-direction: column;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute !important;
}

.flex-vertical {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    height: 100%;
    flex: 1 1 auto;
    overflow: auto;
}

.container-row {
    display: flex;
    flex-direction: row;
    max-width: 100%;
    height: 100%;
    flex: 1 1 auto;
    overflow: hidden;
}

.mud-tabs {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    overflow: hidden;
    height: 100%;
    width: 100%;
}

.mud-tabs-panels {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    height: calc(100% - 48px);
    flex: 1 1 auto;
}

.mud-table {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    height: 100%;
    flex: 1 1 0;
    overflow: hidden;
}

.mud-table-container {
    flex: 1;
    overflow: auto;
}

.mud-table-pagination {
    flex: 0 0 auto;
}

.nav-bar-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.5vh;
    height: var(--mud-appbar-height);
    width: var(--mud-drawer-width, var(--mud-drawer-width-left));
}

.nav-bar-footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1vh;
    height: var(--mud-appbar-height);
    width: var(--mud-drawer-width, var(--mud-drawer-width-left));
}

.nav-bar-footer .mud-typography {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
    display: block;
    text-align: center;
}

.nav-bar-footer .mud-typography:hover {
    text-overflow: clip;
    white-space: normal;
    word-break: break-all;
}

.mud-input>input.mud-input-root, div.mud-input-slot.mud-input-root {
    height: unset !important; /* Todo like a bug ? */
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.spin-animation {
    animation: spin 2s linear infinite;
}

.mud-form {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 1vh;
}
