.table td, .table th { vertical-align: middle; }
.qr-totp { display: inline-block; background: #fff; padding: 8px; border: 1px solid #dee2e6; border-radius: 4px; }
.qr-totp img { display: block; width: 200px; height: 200px; image-rendering: pixelated; }
.codigo-recuperacao { font-family: SFMono-Regular, Menlo, Consolas, monospace; font-size: 1.05rem; letter-spacing: .05em; }
.segredo-revelado { font-family: SFMono-Regular, Menlo, Consolas, monospace; user-select: all; }
pre.config { background: #1f2d3d; color: #e9ecef; padding: 12px; border-radius: 4px; font-size: .85rem; }
.matriz-modulo { border-left: 3px solid #007bff; padding-left: .75rem; margin-bottom: 1rem; }
.login-box { width: 400px; max-width: 94vw; }

/* Alertas */
.atg-alertas-menu { min-width: 340px; max-height: 70vh; overflow-y: auto; }
.atg-alerta-item { white-space: normal; border-bottom: 1px solid #f1f1f1; }
.atg-alerta-titulo { font-weight: 600; font-size: .9rem; }
.atg-toasts { position: fixed; right: 16px; bottom: 56px; z-index: 2000; display: flex; flex-direction: column; gap: 8px; max-width: 360px; }
.atg-toast { display: block; background: #fff; color: #212529 !important; border-left: 4px solid var(--atg-cor, #2563eb); border-radius: 6px; padding: 10px 14px; box-shadow: 0 6px 24px rgba(0,0,0,.18); text-decoration: none !important; animation: atg-entra .25s ease-out; transition: opacity .4s, transform .4s; }
.atg-toast.saindo { opacity: 0; transform: translateX(30px); }
@keyframes atg-entra { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.atg-destaque { outline: 3px solid rgba(37,99,235,.45); outline-offset: 4px; border-radius: 4px; transition: outline-color 1s; }
.atg-logo-menu { width: 33px; height: 33px; object-fit: contain; background: #fff; border-radius: 6px; padding: 2px; margin-left: .8rem; margin-right: .5rem; opacity: 1 !important; box-shadow: none !important; }
.atg-logo-login { max-height: 90px; max-width: 260px; margin-bottom: 8px; }
/* Manual */
.atg-manual h2 { font-size: 1.35rem; margin-top: 1.6rem; padding-bottom: .3rem; border-bottom: 1px solid #e9ecef; }
.atg-manual h2:first-child { margin-top: 0; }
.atg-manual h3 { font-size: 1.1rem; margin-top: 1.2rem; }
.atg-manual table { font-size: .92rem; }
.atg-manual li { margin-bottom: .2rem; }
