/* Per-conversation consent; scoped to preserve the existing book screen. */
.voice-consent-dialog {
  width: min(550px, calc(100% - 32px));
  max-height: calc(100svh - 40px);
  padding: 0;
  border: 1px solid #b28b58;
  border-radius: 14px;
  color: #f4e7d7;
  background: linear-gradient(145deg, #37251a, #211811);
  box-shadow: 0 24px 80px #0009, inset 0 0 0 4px #ffffff05;
}
.voice-consent-dialog::backdrop { background: #100a07c9; }
.voice-consent-body { padding: 30px; }
.voice-consent-dialog h2 { color: #f0cd92; font-family: Georgia, serif; font-size: 1.8rem; font-weight: 500; line-height: 1.2; margin: 0 0 18px; }
.voice-consent-dialog p { margin: 0 0 18px; font-size: 1rem; line-height: 1.7; }
.voice-consent-dialog .voice-consent-scope { color: #e0c49e; font-size: .9rem; }
.voice-consent-actions { display: flex; align-items: stretch; gap: 12px; margin-top: 24px; }
.voice-consent-actions button { min-height: 48px; border-radius: 8px; padding: 13px 16px; font: inherit; font-weight: 650; line-height: 1.5; }
.voice-consent-actions button:focus-visible { outline: 3px solid #ffe0a1; outline-offset: 4px; }
.voice-consent-cancel { color: #f3dfc5; background: #3e3027; border: 1px solid #ac835d; }
.voice-consent-cancel:hover { background: #503d2f; }
.voice-consent-confirm { flex: 1; color: #fff; background: #11675c; border: 1px solid #71baaa; }
.voice-consent-confirm:hover { background: #15796c; }
@media (max-width: 480px) {
  .voice-consent-body { padding: 24px 20px; }
  .voice-consent-actions { flex-direction: column; }
}
