body.acesso-tv { margin: 0; padding: 32px 16px; background: #f4f5f7; color: #252525; font: 16px/1.5 Arial, sans-serif; }
.acesso-card { box-sizing: border-box; max-width: 620px; margin: 0 auto; padding: 32px; background: white; border: 1px solid #e1dfdb; border-radius: 12px; text-align: center; }
.acesso-marca { color: #c21b24; font-size: 12px; font-weight: bold; letter-spacing: 2px; }
.acesso-card h1 { margin: 14px 0 4px; font-size: 28px; }
.acesso-card h2 { margin-bottom: 4px; font-size: 22px; }
.acesso-card h1 + p, .acesso-card h2 + p { margin-top: 0; }
.acesso-card .login-button {
    display: inline-block;
    margin: 12px 0;
    padding: 12px 24px;
    border-radius: 4px;
    background: #c21b24;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}
.acesso-card .login-button:hover { background: #a5161d; }
.acesso-card .login-button:focus-visible { outline: 3px solid #252525; outline-offset: 3px; }
.acesso-paineis { margin-top: 20px; padding-top: 12px; border-top: 1px solid #e1dfdb; }
.qr-imagem { display: block; max-width: 100%; height: auto; margin: 12px auto; }
.qr-status, .qr-mensagem { font-size: 14px; }
.qr-status { margin: 8px 0 0; }
.acesso-nota { color: #666; font-size: 13px; margin: 4px 0 0; }
@media (max-width: 480px) { .acesso-card { padding: 24px 16px; } .acesso-card h1 { font-size: 24px; } }
