/* In-app dialogs (dialog.js). */
.dlg-back { position: fixed; inset: 0; z-index: 90; background: rgba(20, 10, 30, .5); display: flex; align-items: flex-end; justify-content: center;
  padding: 16px 16px calc(16px + env(safe-area-inset-bottom)); animation: dlgFade .2s; }
@media (min-width: 560px) { .dlg-back { align-items: center; } }
.dlg { width: 100%; max-width: 420px; background: #fff5f6; color: #3b2a3a; border-radius: 24px; padding: 18px; border: 1px solid #fbcfe8;
  box-shadow: 0 20px 60px rgba(0,0,0,.35); animation: dlgUp .28s cubic-bezier(.2,.9,.25,1); font-family: "Be Vietnam Pro", "Segoe UI", system-ui, sans-serif; }
.dlg-title { margin: 0 0 6px; font-size: 17px; font-weight: 900; color: #db2777; }
.dlg-msg { margin: 0 0 14px; font-size: 15px; line-height: 1.5; }
.dlg-input { width: 100%; box-sizing: border-box; font: inherit; font-size: 16px; border: 1px solid #fbcfe8; border-radius: 14px; padding: 11px 12px; margin-bottom: 14px; background: #fff; }
textarea.dlg-input { min-height: 84px; resize: vertical; }
.dlg-row { display: flex; gap: 8px; }
.dlg-btn { flex: 1; min-height: 48px; border-radius: 999px; border: 0; font: inherit; font-weight: 800; font-size: 15px; color: #fff; cursor: pointer;
  background: linear-gradient(135deg, #ec4899, #db2777); box-shadow: 0 6px 16px rgba(236,72,153,.3); }
.dlg-btn.ghost { background: #fff; color: #ec4899; border: 1px solid #fbcfe8; box-shadow: none; }
.dlg-btn.danger { background: linear-gradient(135deg, #ef4444, #b91c1c); box-shadow: 0 6px 16px rgba(185,28,28,.3); }
.dlg-btn:focus-visible { outline: 2px solid #ec4899; outline-offset: 2px; }
@keyframes dlgFade { from { opacity: 0; } }
@keyframes dlgUp { from { transform: translateY(24px); opacity: 0; } }
