body { font-size: .92rem; }
.metric-card { min-width: 140px; }
.metric-card .h3 { margin: 0; }
table td, table th { vertical-align: middle; }
.err-cell { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.badge-SENT{background:#198754}.badge-PENDING{background:#0d6efd}.badge-RETRYING{background:#fd7e14}.badge-DEAD_LETTER{background:#dc3545}

/* Everything clickable shows the hand (C1). */
a, button, .btn, .nav-link, [data-tab], select, [role="button"] { cursor: pointer; }
button:disabled, .btn:disabled { cursor: not-allowed; }

/* Local login page (COP-211). */
.login-body { background: #f1f3f5; }
.login-wrap { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 1rem; }
.login-card { width: 100%; max-width: 26rem; }
.login-divider { display: flex; align-items: center; gap: .75rem; color: #6c757d; font-size: .8rem;
                 text-transform: uppercase; letter-spacing: .05em; }
.login-divider::before, .login-divider::after { content: ""; flex: 1; border-top: 1px solid #dee2e6; }

/* Emergency password card in Impostazioni. */
.emergency-card { max-width: 34rem; }

/* Operational console (COP-265): search results under a picker. */
.picker-results { max-height: 14rem; overflow-y: auto; }
