.app-confirm-dialog {
  box-sizing: border-box;
  width: min(460px, calc(100% - 24px));
  max-width: none;
  max-height: calc(100dvh - 24px);
  margin: auto;
  padding: 20px;
  overflow: auto;
  border: 1px solid var(--theme-border, #c8d0ca);
  border-radius: 16px;
  background: var(--theme-surface, #fff);
  color: var(--theme-text, #102018);
  font: inherit;
}
.app-confirm-dialog::backdrop { background: rgb(5 20 13 / 55%); }
.app-confirm-dialog form { display: grid; gap: 16px; margin: 0; }
.app-confirm-dialog h2 { margin: 0; color: inherit; font-size: 1.3rem; line-height: 1.25; }
.app-confirm-dialog p { margin: 0; color: inherit; line-height: 1.5; white-space: pre-line; overflow-wrap: anywhere; }
.app-confirm-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.app-confirm-dialog button { min-height: 44px; min-width: 44px; padding: 10px 14px; border: 1px solid var(--theme-border, #c8d0ca); border-radius: 10px; background: var(--theme-surface, #fff); color: var(--theme-text, #102018); font: inherit; font-weight: 750; cursor: pointer; }
.app-confirm-dialog .app-confirm-submit { background: var(--theme-text, #102018); color: var(--theme-surface, #fff); border-color: var(--theme-text, #102018); }
.app-confirm-dialog.is-destructive .app-confirm-submit { background: #a62539; color: #fff; border-color: #a62539; }
.app-confirm-dialog button:focus-visible { outline: 3px solid var(--theme-text, #102018); outline-offset: 3px; }
