﻿.fsh-center-text {
    text-align: center !important;
}

.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;
}

.mud-nav-link {
    white-space: normal !important;
    padding: 12px 16px 12px 38px;
}

    .mud-nav-link.active:not(.mud-nav-link-disabled) {
        border-right: 3px solid var(--mud-palette-primary);
        background-color: rgba(var(--mud-palette-primary-rgb), 0.1);
    }

.mud-table {
    padding: 20px !important;
    margin-bottom: 20px !important;
}

.mud-card {
    margin-bottom: 20px !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-header .mud-card-header-avatar {
    margin-inline-end: 10px !important;
}

.mud-nav-link {
    padding: 12px 16px 12px 15px !important;
}

.mud-dialog-content {
    max-height: 75vh !important;
    overflow: auto !important;
    overflow-x: hidden !important;
}

.mud-grid-spacing-xs-3 {
    margin: 0px !important;
    margin-left: -12px !important;
}

.mud-table-toolbar
{
    flex-wrap:wrap;
    margin-bottom:20px!important;
}

::-webkit-scrollbar {
    width: 2px!important;
    height: 6px!important;
}
.fsh-nav-child {
    padding-left: 10px !important;
}

/* Animaciones para OrderStatusBadge */
@keyframes pulse-warning {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.7;
    }
}

@keyframes pulse-primary {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.8;
    }
}

/* Animación sutil para cards de alerta en OrdersStatsCards */
@keyframes subtle-pulse {
    0%, 100% {
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

    50% {
        box-shadow: 0 4px 12px rgba(244, 67, 54, 0.2);
    }
}

/* Responsive para OrdersStatsCards */
@media (max-width: 600px) {
    .orders-stats-container .stats-card {
        min-height: 100px;
    }
}

/* Responsive para OrdersPage */
@media (max-width: 768px) {
    .page-header .d-flex {
        flex-direction: column;
        align-items: flex-start !important;
    }

        .page-header .d-flex > div:last-child {
            width: 100%;
            justify-content: flex-start;
            margin-top: 16px;
        }
}

/* Loading state para el botón de refresh */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Estilos para SedeSelector en header con fondo oscuro */
.white-select .mud-input-label,
.white-select .mud-select-input,
.white-select .mud-input-slot,
.white-select .mud-select,
.white-select .mud-icon-root {
    color: white !important;
}

.white-select .mud-select:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

.white-select .mud-input-outlined .mud-input-outlined-border {
    border-color: rgba(255, 255, 255, 0.5) !important;
}

.white-select .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: rgba(255, 255, 255, 0.8) !important;
}

.white-select .mud-input-outlined.mud-input-adorned-end .mud-input-outlined-border {
    border-color: rgba(255, 255, 255, 0.5) !important;
}

/* Reset global para eliminar estilos del body que interfieren con layouts */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    height: 100%;
    width: 100%;
    overflow-x: hidden;
}

body {
    display: block !important; /* Sobrescribe el flex del loading screen */
}

#app {
    min-height: 100vh;
}