.atsrs-qr-dialog{
  position:fixed;
  inset:0;
  z-index:12000;
  display:grid;
  place-items:center;
  padding:20px;
}

.atsrs-qr-dialog.hidden{display:none!important;}

.atsrs-qr-dialog-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(7px);
}

.atsrs-qr-dialog-card{
  position:relative;
  width:min(100%,460px);
  max-height:calc(100vh - 40px);
  overflow:auto;
  border:1px solid var(--atsrs-ref-dark-line,#2a2f2d);
  border-radius:18px;
  background:var(--atsrs-ref-dark-card,#0c0f0e);
  color:var(--atsrs-ref-dark-text,#f4f6ef);
  box-shadow:0 24px 70px rgba(0,0,0,.44);
  padding:22px;
}

.atsrs-qr-dialog-head,
.atsrs-qr-dialog-actions,
.atsrs-qr-session-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.atsrs-qr-dialog-head h3{margin:8px 0 0;}
.atsrs-qr-dialog-card > .sub{margin:14px 0 16px;line-height:1.55;}
.atsrs-qr-icon-button{min-width:44px!important;width:44px!important;height:44px!important;padding:0!important;display:grid!important;place-items:center;}

.atsrs-qr-code{
  display:grid;
  place-items:center;
  width:min(100%,300px);
  aspect-ratio:1;
  margin:0 auto;
  padding:16px;
  border-radius:16px;
  background:#fff;
  border:1px solid #d7e0e9;
  overflow:hidden;
}

.atsrs-qr-code svg{display:block;width:100%;height:100%;}

.atsrs-qr-session-meta{
  margin:14px 0 0;
  color:var(--atsrs-ref-dark-muted,#aab5ae);
  font-size:12px;
  flex-wrap:wrap;
}

.atsrs-qr-session-meta span{display:inline-flex;align-items:center;gap:6px;}
.atsrs-qr-status{min-height:44px;margin:14px 0;padding:11px 12px;border:1px solid var(--atsrs-ref-dark-line,#2a2f2d);border-radius:12px;background:var(--atsrs-ref-dark-soft,#111414);line-height:1.45;}
.atsrs-qr-status.is-success{border-color:rgba(134,239,172,.48);color:#86efac;}
.atsrs-qr-status.is-error{border-color:rgba(248,113,113,.5);color:#fca5a5;}
.atsrs-qr-dialog-actions{justify-content:flex-end;flex-wrap:wrap;}
.atsrs-qr-dialog-actions button{min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;}

#certificatesPage .cert-mode-buttons button{min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;}
body.company-mode #certQrModeBtn{display:none!important;}

html[data-theme="light"] .atsrs-qr-dialog-backdrop{background:rgba(18,39,61,.35);}
html[data-theme="light"] .atsrs-qr-dialog-card{
  border-color:#c8d4de;
  background:#f8fbff;
  color:#172b3d;
  box-shadow:0 24px 70px rgba(35,64,91,.22);
}
html[data-theme="light"] .atsrs-qr-session-meta{color:#617386;}
html[data-theme="light"] .atsrs-qr-status{border-color:#c8d4de;background:#edf3fa;color:#29445d;}
html[data-theme="light"] .atsrs-qr-status.is-success{border-color:#8fb0ff;background:#e7efff;color:#1649c8;}

@media(max-width:520px){
  .atsrs-qr-dialog{padding:10px;}
  .atsrs-qr-dialog-card{max-height:calc(100dvh - 20px);padding:18px;}
  .atsrs-qr-dialog-actions button{flex:1 1 150px;}
  #certificatesPage .cert-mode-buttons{display:grid!important;grid-template-columns:1fr!important;}
  #certificatesPage .cert-mode-buttons button{width:100%!important;max-width:none!important;min-width:0!important;}
}

@media(prefers-reduced-motion:reduce){
  .atsrs-qr-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;}
}
