/* ============================================================
   ZITORIA — tokens de marca (única fuente de verdad en CSS).
   Mismos HEX que ZitoriaTheme.cs (MudBlazor). Cambios de paleta:
   ajustar AQUÍ y en ZitoriaTheme.cs, nunca por página.
   ============================================================ */
:root {
    /* Paleta oficial */
    --zit-primary: #4F46E5;        /* Índigo Zitoria: botones, enlaces, activo */
    --zit-primary-hover: #4338CA;  /* hover/darken del primario */
    --zit-primary-soft: #EEF2FF;   /* fondo suave índigo (chips, hover de fila) */
    --zit-navy: #1E1B4B;           /* Azul noche: texto principal, títulos, dark */
    --zit-amber: #F59E0B;          /* Ámbar Zitoria: acento moderado */
    --zit-amber-soft: #FEF3C7;     /* fondo suave del acento */
    --zit-bg: #F3F4F6;             /* fondo general */
    --zit-white: #FFFFFF;          /* cards y áreas de contenido */

    /* Estados semánticos (suaves) */
    --zit-success: #10B981;
    --zit-success-soft: #D1FAE5;
    --zit-warning: #F59E0B;
    --zit-warning-soft: #FEF3C7;
    --zit-danger: #EF4444;
    --zit-danger-soft: #FEE2E2;

    /* Tokens derivados */
    --zit-border: #E5E7EB;
    --zit-focus-ring: 0 0 0 3px rgba(79, 70, 229, 0.35);
    --zit-radius: 10px;
}

html, body {
    font-family: 'Poppins', 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background-color: var(--zit-bg);
    color: var(--zit-navy);
}

a, .btn-link {
    color: var(--zit-primary);
}

    a:hover, .btn-link:hover {
        color: var(--zit-primary-hover);
    }

.btn-primary {
    color: var(--zit-white);
    background-color: var(--zit-primary);
    border-color: var(--zit-primary-hover);
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: var(--zit-focus-ring);
}

.content {
    padding-top: 1.1rem;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid var(--zit-success);
}

.invalid {
    outline: 1px solid var(--zit-danger);
}

.validation-message {
    color: var(--zit-danger);
}

/* Errores de Blazor (sin marca, color semántico) */
.blazor-error-boundary {
    background: var(--zit-danger);
    padding: 1rem;
    color: white;
    border-radius: var(--zit-radius);
}

    .blazor-error-boundary::after {
        content: "Ocurrió un error.";
    }

.darker-border-checkbox.form-check-input {
    border-color: var(--zit-border);
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
