/* -- Deep scan CTA -------------------------------------------------------- */
.deep-scan-cta { max-width: 640px; margin: 12px auto 20px; }
.deep-scan-cta-inline { margin-bottom: 16px; }
.deep-scan-cta-inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; background: var(--acbg);
  border: 1px solid var(--acbd); border-radius: 10px;
  padding: 12px 16px; flex-wrap: wrap;
}
.deep-scan-cta-text { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.deep-scan-cta-label { font-size: 13px; font-weight: 600; color: var(--ac2); font-family: var(--font-mono); }
.deep-scan-cta-label::after { content: ''; }
.deep-scan-cta-sub { font-size: 13px; color: var(--t3); line-height: 1.45; }
.deep-scan-cta-btn {
  display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600;
  background: var(--ac); border: none; border-radius: 8px; color: #fff;
  padding: 8px 16px; cursor: pointer; white-space: nowrap; flex-shrink: 0;
  text-decoration: none; transition: background 0.15s, transform 0.1s;
}
.deep-scan-cta-btn:hover { background: #6a58d6; color: #fff; }

/* -- Verification panel --------------------------------------------------- */
.verify-panel {
  background: var(--s1); border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px; padding: 28px 32px;
  margin: 24px auto; max-width: 640px; text-align: left;
  box-shadow: 0 4px 20px rgba(0,0,0,0.4);
}
.verify-title { font-size: 16px; color: var(--tx); margin: 0 0 8px; }
.verify-sub   { font-size: 13px; color: var(--t3); margin: 0 0 20px; }
.verify-sub-note { font-size: 12px; color: var(--t4); margin: 4px 0 20px; font-style: italic; }
.verify-methods { display: flex; gap: 12px; margin-bottom: 16px; }
.verify-method-btn {
  flex: 1; background: var(--s2); border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px; padding: 16px; cursor: pointer; text-align: left;
  transition: border-color 0.15s, background 0.15s;
  display: flex; flex-direction: column; gap: 4px;
}
.verify-method-btn:hover:not(:disabled) { border-color: var(--ac); background: var(--acbg); }
.verify-method-icon  { font-size: 20px; }
.verify-method-label { font-size: 13px; font-weight: 600; color: var(--tx); }
.verify-method-desc  { font-size: 11px; color: var(--t3); }

.verify-instructions { margin-bottom: 20px; }
.verify-instr-lead { font-size: 13px; color: var(--t2); margin: 0 0 10px; }
.verify-record {
  background: var(--s2); border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px; overflow: hidden; margin-bottom: 10px;
}
.verify-record-row {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px; border-bottom: 1px solid rgba(255,255,255,0.04);
}
.verify-record-row:last-child { border-bottom: none; }
.verify-record-label { font-size: 11px; font-family: var(--font-mono); color: var(--t4); min-width: 48px; }
.verify-record-value { font-size: 12px; font-family: var(--font-mono); color: var(--ac2); flex: 1; word-break: break-all; }
.verify-copy-btn {
  font-size: 10px; font-family: var(--font-mono); color: var(--t4);
  background: none; border: 1px solid rgba(255,255,255,0.06);
  border-radius: 4px; padding: 2px 8px; cursor: pointer;
  transition: color 0.1s, border-color 0.1s; flex-shrink: 0;
}
.verify-copy-btn:hover { color: var(--ac2); border-color: var(--ac); }
.verify-note { font-size: 11px; color: var(--t4); margin: 6px 0 0; font-style: italic; }
.verify-pin-box {
  background: var(--acbg); border: 1px solid var(--acbd);
  border-radius: 8px; padding: 14px 16px; margin-bottom: 16px;
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.verify-pin-label { font-size: 12px; color: var(--ac2); margin: 0 0 6px; width: 100%; }
.verify-pin-value {
  font-size: 15px; font-family: var(--font-mono); color: var(--tx);
  font-weight: 600; letter-spacing: 0.03em; flex: 1;
}
.verify-error {
  font-size: 12px; color: var(--rd); margin: 0 0 14px;
  padding: 8px 12px; background: var(--rdbg);
  border-radius: 6px; border: 1px solid var(--rdbd);
}
.verify-actions { display: flex; align-items: center; gap: 12px; margin-top: 4px; }
.verify-check-btn {
  background: var(--ac); color: #fff; border: none; border-radius: 8px;
  padding: 10px 20px; font-size: 13px; font-weight: 600;
  cursor: pointer; transition: background 0.15s; text-align: center;
}
.verify-check-btn:hover:not(:disabled) { background: #6a58d6; }
.verify-check-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.verify-deep-btn {
  background: var(--ac); color: #fff; border: none; border-radius: 8px;
  padding: 8px 18px; font-size: 14px; font-weight: 600;
  cursor: pointer; white-space: nowrap; transition: background 0.15s; text-align: center;
}
.verify-deep-btn:hover { background: #6a58d6; }
.verify-cancel {
  background: none; border: none; color: var(--t4);
  font-size: 12px; cursor: pointer; padding: 0;
  text-decoration: underline; text-underline-offset: 2px;
}
.verify-cancel:hover { color: var(--t2); }
.verify-pin-entry { display: flex; gap: 10px; margin-bottom: 14px; align-items: center; }
.verify-pin-input {
  flex: 1; background: var(--s2); border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px; padding: 10px 14px;
  font-size: 14px; font-family: var(--font-mono); color: var(--tx);
  outline: none; transition: border-color 0.15s;
}
.verify-pin-input:focus { border-color: var(--ac); box-shadow: 0 0 0 3px rgba(124,106,239,0.15); }
.verify-pin-reminder {
  display: flex; align-items: center; gap: 10px;
  background: var(--s2); border: 1px solid rgba(255,255,255,0.06);
  border-radius: 8px; padding: 10px 14px; margin-bottom: 14px;
}
.verify-pin-reminder-label { font-size: 11px; color: var(--t4); font-family: var(--font-mono); flex-shrink: 0; }
.verify-pin-reminder-value { font-size: 14px; font-family: var(--font-mono); color: var(--ac2); font-weight: 600; letter-spacing: 0.03em; }
.verify-done-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }

/* -- Auth panel (inline auth, matches verify-panel) ----------------------- */
.auth-panel {
  background: var(--s1); border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px; padding: 28px 32px;
  margin: 24px auto; max-width: 640px; text-align: left;
  box-shadow: 0 4px 20px rgba(0,0,0,0.4);
}
.auth-panel .auth-container { padding: 0; margin: 0; }
.auth-panel .auth-box { padding: 0; background: none; border: none; }

/* -- Confetti canvas ------------------------------------------------------- */
#confetti-canvas {
  position: fixed; inset: 0;
  width: 100%; height: 100%;
  pointer-events: none; z-index: 100;
}

