/* ── CWG dialogs (assets/js/dialog.js) – same look on the site and in the admin ── */
.cwg-dialog-open { overflow: hidden; }
.cwg-dialog-backdrop { position: fixed; inset: 0; z-index: 2000; display: grid; place-items: center; padding: 16px;
  background: rgba(11, 11, 11, .62); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  opacity: 0; transition: opacity .16s ease; }
.cwg-dialog-backdrop.is-in { opacity: 1; }
.cwg-dialog-backdrop.is-out { opacity: 0; }
.cwg-dialog {
  --dlg-accent: #FE5D03; --dlg-accent-2: #FF8A1F;
  position: relative; width: min(440px, 100%); padding: 1.75rem 1.5rem 1.4rem; border-radius: 20px; text-align: center; overflow: hidden;
  color: #FFF8E7; font-family: inherit;
  background: radial-gradient(120% 80% at 50% 0%, color-mix(in srgb, var(--dlg-accent) 26%, transparent), transparent 60%), #0B0B0B;
  border: 1px solid color-mix(in srgb, var(--dlg-accent) 50%, transparent);
  box-shadow: 0 30px 80px -24px rgba(0, 0, 0, .8), 0 0 0 1px rgba(255, 248, 231, .04);
  transform: translateY(14px) scale(.96); transition: transform .2s cubic-bezier(.2, 1.4, .4, 1);
}
.cwg-dialog::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: repeating-linear-gradient(0deg, rgba(255, 255, 255, .02) 0 1px, transparent 1px 3px); }
.cwg-dialog-backdrop.is-in .cwg-dialog { transform: none; }
.cwg-dialog-backdrop.is-out .cwg-dialog { transform: translateY(8px) scale(.98); }
.cwg-dialog.is-danger  { --dlg-accent: #ef4444; --dlg-accent-2: #f87171; }
.cwg-dialog.is-warning { --dlg-accent: #FFB114; --dlg-accent-2: #FFEB00; }
.cwg-dialog.is-info    { --dlg-accent: #38bdf8; --dlg-accent-2: #7dd3fc; }
.cwg-dialog.is-success { --dlg-accent: #22c55e; --dlg-accent-2: #4ade80; }
.cwg-dialog-icon { width: 64px; height: 64px; margin: 0 auto 1rem; border-radius: 50%; display: grid; place-items: center; font-size: 1.6rem;
  color: var(--dlg-accent); background: color-mix(in srgb, var(--dlg-accent) 14%, transparent);
  border: 2px solid color-mix(in srgb, var(--dlg-accent) 55%, transparent); animation: cwgDlgPop .35s cubic-bezier(.2, 1.6, .4, 1); }
.cwg-dialog.is-danger .cwg-dialog-icon { animation: cwgDlgPop .35s cubic-bezier(.2, 1.6, .4, 1), cwgDlgShake .4s .25s ease; }
.cwg-dialog-title { font-family: var(--font-heading, inherit); font-size: 1.25rem; font-weight: 900; letter-spacing: .03em; margin-bottom: .5rem; color: #FFF8E7; }
.cwg-dialog-msg { color: #CFC6B4; font-size: .95rem; line-height: 1.5; margin-bottom: 1.5rem; word-wrap: break-word; }
.cwg-dialog-actions { display: flex; gap: .6rem; justify-content: center; position: relative; z-index: 1; }
.cwg-dialog-btn { flex: 1; max-width: 200px; border: 0; border-radius: 12px; padding: .8rem 1rem; cursor: pointer;
  font-family: var(--font-heading, inherit); font-weight: 800; font-size: .85rem; letter-spacing: .07em; text-transform: uppercase;
  transition: filter .15s, transform .15s, background .15s, border-color .15s; outline: none; }
.cwg-dialog-btn:active { transform: scale(.97); }
.cwg-dialog-btn.is-ok { color: #fff; background: linear-gradient(135deg, var(--dlg-accent), var(--dlg-accent-2));
  box-shadow: 0 10px 24px -12px var(--dlg-accent); }
.cwg-dialog.is-warning .cwg-dialog-btn.is-ok { color: #111; }
.cwg-dialog-btn.is-ok:hover { filter: brightness(1.1); }
.cwg-dialog-btn.is-cancel { color: #EFE6D2; background: rgba(255, 248, 231, .06); border: 1px solid rgba(255, 248, 231, .16); }
.cwg-dialog-btn.is-cancel:hover { border-color: rgba(255, 248, 231, .4); }
.cwg-dialog-btn:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--dlg-accent) 45%, transparent); }
@keyframes cwgDlgPop { from { transform: scale(.4); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes cwgDlgShake { 0%, 100% { transform: none; } 25% { transform: rotate(-10deg); } 75% { transform: rotate(10deg); } }
@media (max-width: 420px) {
  .cwg-dialog-actions { flex-direction: column-reverse; }
  .cwg-dialog-btn { max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  .cwg-dialog, .cwg-dialog-icon { animation: none !important; transition: none !important; }
}
