h1:focus {
    outline: none;
}

.validation-message {
    color: var(--danger);
    font-size: 0.8rem;
}

.blazor-error-boundary {
    background: rgba(224, 81, 81, 0.15);
    border: 1px solid rgba(224, 81, 81, 0.4);
    border-radius: var(--glass-radius-sm);
    padding: 1rem;
    color: var(--text-primary);
}

.blazor-error-boundary::after {
    content: "Si è verificato un errore.";
}

#blazor-error-ui {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0.8rem 1.2rem;
    background: var(--bg-surface-200);
    border-top: 1px solid var(--glass-border);
    color: var(--text-primary);
    z-index: 1000;
}

.card-link { cursor: pointer; }
.card-link:hover { border-color: var(--glass-border-hover); }

.secret-box {
    font-family: var(--font-mono);
    word-break: break-all;
    background: var(--input-bg);
    border: 1px solid var(--input-border);
    border-radius: var(--glass-radius-sm);
    padding: 0.6rem 0.8rem;
    margin: 0.5rem 0;
}

.alert {
    border-radius: var(--glass-radius-sm);
    padding: 0.6rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
}

.alert-danger { background: rgba(224, 81, 81, 0.12); border-color: rgba(224, 81, 81, 0.3); color: var(--danger); }
.alert-success { background: rgba(28, 214, 133, 0.12); border-color: rgba(28, 214, 133, 0.3); color: var(--success); }
.alert-warning { background: rgba(229, 179, 100, 0.12); border-color: rgba(229, 179, 100, 0.3); color: var(--warning); }

.inline-form { display: flex; gap: var(--space-sm); align-items: flex-end; flex-wrap: wrap; }
.inline-form .form-group { margin-bottom: 0; }
.form-check { display: flex; align-items: center; gap: 0.4rem; font-size: 0.85rem; color: var(--text-secondary); }
.muted-small { font-size: 0.75rem; color: var(--text-muted); }
.kpi-row { display: flex; gap: var(--space-lg); flex-wrap: wrap; }
.kpi-row > div { min-width: 7rem; }
.glass-table td a { color: var(--primary-light); }
.row-link { cursor: pointer; }
