/* ── Google Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap');

/* ── Zero estilos Blazor default que causam problemas de layout ── */
html, body {
    margin: 0;
    padding: 0;
    font-family: 'DM Sans', 'Segoe UI', Helvetica, Arial, sans-serif;
    background: #f0f2f7;
    -webkit-font-smoothing: antialiased;
}

/* Remove o padding do article/.content que vem do template padrão */
.content { padding: 0 !important; }

a { color: #3b82f6; }
a:hover { color: #1d4ed8; }

.btn-link {
    color: #3b82f6;
    background: none; border: none;
    cursor: pointer; padding: 0;
    font-family: inherit; font-size: inherit;
}

/* Blazor validation */
.valid.modified:not([type=checkbox]) { outline: 1px solid #1a9e6f; }
.invalid { outline: 1px solid #c0392b; }
.validation-message { color: #c0392b; font-size: 12px; }

/* Blazor error boundary */
.blazor-error-boundary {
    background: #fef2f2;
    padding: 1rem 1rem 1rem 3.7rem;
    color: #7f1d1d;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    margin: 16px;
}
.blazor-error-boundary::after { content: "Ocorreu um erro inesperado."; }
