html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    height: 100%;
    margin: 0;
    background: #070B14;
    background-image: none;
    color: #E5E7EB;
}

body, #app, .app, .page {
    min-height: 100%;
    background: #070B14;
    background-image: none;
}

main, article, .content, .main-content {
    background: transparent;
}

* {
    box-sizing: border-box;
}

a, .btn-link {
    color: #006bb7;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: none;
}

.content {
    padding-top: 0;
}

h1:focus {
    outline: none;
}

/* QUITAR outlines globales agresivos */
.valid.modified:not([type=checkbox]) {
    outline: none;
}

.invalid {
    outline: none;
}

.validation-message {
    color: #ff7b7b;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtdG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PC9zdmc+) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred.";
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}



/*ESTILO PARA EL TOAST GLOBAL*/


.erp-toast {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .75rem 1.2rem;
    border-radius: 12px;
    font-size: .9rem;
    font-weight: 600;
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(0,0,0,.35);
    animation: fadeIn .25s ease;
}
.erp-toast--success {
    background: rgba(16,185,129,.15);
    border: 1px solid rgba(16,185,129,.35);
    color: #34D399;
}

.erp-toast--error {
    background: rgba(239,68,68,.15);
    border: 1px solid rgba(239,68,68,.35);
    color: #F87171;
}

.erp-toast--warning {
    background: rgba(245,158,11,.15);
    border: 1px solid rgba(245,158,11,.35);
    color: #FBBF24;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 768px) {
    .erp-toast {
        top: 10px;
        width: calc(100% - 20px);
        left: 10px;
        transform: none;
        justify-content: center;
    }
}