/* ============================================================
 *  Peerly — QR Panel & Scanner
 *  v2.0.0 — Material 3
 * ============================================================ */

.qr-panel { text-align: center; }

.qr-panel #qrcode-container {
  display: inline-block;
  padding: 16px;
  background: #fff;
  border-radius: var(--md-shape-large);
  margin: 16px auto;
  box-shadow: var(--md-elevation-1);
}

.qr-panel .qr-address {
  font-family: var(--md-font-mono);
  font-size: var(--md-label-medium-size);
  line-height: var(--md-label-medium-line);
  color: var(--md-on-surface-variant);
  word-break: break-all;
  background: var(--md-surface-container-high);
  padding: 10px 14px;
  border-radius: var(--md-shape-medium);
  margin: 12px 0;
}

.qr-panel .qr-actions {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 12px;
}

/* ---- Scanner ---- */
.qr-scanner-wrapper { width: 100%; }

#qr-scanner-container {
  width: 100%;
  min-height: 220px;
  border-radius: var(--md-shape-large);
  overflow: hidden;
  margin-bottom: 12px;
  background: #000;
  position: relative;
}
#qr-scanner-container video {
  width: 100% !important;
  height: auto !important;
  border-radius: var(--md-shape-large);
  display: block;
}
#qr-scanner-container img { display: none; }

.qr-scanner-status {
  font-family: var(--md-font-family);
  font-size: var(--md-body-small-size);
  line-height: var(--md-body-small-line);
  color: var(--md-on-surface-variant);
  text-align: center;
  margin-top: 4px;
}
.qr-scanner-status.error { color: var(--md-error); }