.gap-attendance-box{box-sizing:border-box;max-width:620px;margin:24px auto;padding:24px;border:1px solid #d8dee8;border-radius:12px;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.05);font-family:inherit}.gap-attendance-box h3{margin-top:0}.gap-attendance-box button{border:0;border-radius:5px;padding:12px 18px;background:#246b55;color:#fff;cursor:pointer}.gap-success{padding:12px;background:#e7f7ec;color:#14532d;border-radius:6px}.gap-error{padding:12px;background:#fff0f0;color:#9f1239;border-radius:6px}.gap-message{padding:14px;border-radius:6px}
.gap-qr-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;align-items:start}.gap-qr-card{box-sizing:border-box;padding:20px;border:1px solid #d8dee8;border-radius:10px;background:#fff;text-align:center;min-width:0}.gap-qr-card h3{margin:0 0 8px}.gap-qr-course{font-size:14px;opacity:.75;margin:0 0 14px}.gap-public-qr{display:flex;justify-content:center;align-items:center;margin:0 auto;max-width:100%;overflow:hidden}.gap-public-qr img,.gap-public-qr canvas{max-width:100%;height:auto!important}.gap-qr-url{font-size:12px;overflow-wrap:anywhere;margin-top:12px}

/* Posicionamento automático do cartão de presença conforme a área visual da imagem de fundo. */
.gap-qr-list.gap-auto-position{box-sizing:border-box;display:flex;align-items:center;gap:20px;min-height:100vh;width:100%;padding:clamp(24px,4vw,64px);}
.gap-qr-list.gap-auto-position .gap-qr-card{width:min(420px,34vw);max-width:100%;flex:0 1 420px;box-shadow:0 12px 38px rgba(0,0,0,.24);}
.gap-qr-list.gap-auto-position.gap-position-left{justify-content:flex-start;}
.gap-qr-list.gap-auto-position.gap-position-right{justify-content:flex-end;}
.gap-qr-list.gap-auto-position.gap-position-center{justify-content:center;}
@media (max-width:700px){.gap-qr-list.gap-auto-position{min-height:100svh;justify-content:center!important;padding:18px;}.gap-qr-list.gap-auto-position .gap-qr-card{width:min(100%,420px);flex-basis:auto;}}
