/* Estilo minimo, funcional. A linguagem de desenho real (paleta,
   tipografia, cabecalho) do MailCHK/DnsCHK/Holidays fica para alinhar
   quando o dashboard estiver mais avancado - por agora, clareza acima de
   polimento visual. */
body {
    font-family: system-ui, sans-serif;
    max-width: 48rem;
    margin: 3rem auto;
    padding: 0 1rem;
    color: #1a1a1a;
}
h1 {
    font-size: 1.25rem;
}
form {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 28rem;
}
label {
    font-size: 0.9rem;
}
input {
    padding: 0.5rem;
    font-size: 1rem;
}
button {
    padding: 0.6rem;
    font-size: 1rem;
    cursor: pointer;
    max-width: 12rem;
}
.error {
    color: #a30000;
    font-size: 0.9rem;
}
table {
    border-collapse: collapse;
    width: 100%;
    margin: 1rem 0;
}
th, td {
    text-align: left;
    padding: 0.5rem;
    border-bottom: 1px solid #ddd;
}
.chart {
    max-width: 100%;
}
.chart svg {
    width: 100%;
    height: auto;
}
.chart-empty {
    color: #666;
    font-style: italic;
}
pre {
    background: #f2f2f2;
    padding: 0.75rem;
    overflow-x: auto;
}
