.app-dialog{width:min(420px,calc(100vw - 32px))!important;max-width:min(420px,calc(100vw - 32px));padding:0!important;border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}.app-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0}.app-dialog-icon{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:var(--accent-light);color:var(--accent)}.app-dialog-icon.danger{background:var(--danger-light);color:var(--danger)}.app-dialog-close{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:0;border-radius:10px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:var(--transition)}.app-dialog-close:focus-visible,.app-dialog-close:hover{background:var(--bg-hover);color:var(--text-primary)}.app-dialog-body{padding:18px 24px 22px}.app-dialog-title{margin:0;color:var(--text-primary);font-size:18px;font-weight:650;line-height:1.25}.app-dialog-message{margin:10px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.5}.app-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 24px 24px}.app-dialog-button{min-width:96px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.app-dialog-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.app-dialog-button-secondary{border:1px solid var(--border);background:transparent;color:var(--text-secondary)}.app-dialog-button-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.app-dialog-button-primary{background:var(--accent);color:var(--on-accent)}.app-dialog-button-primary:hover{background:var(--accent-hover)}.app-dialog-button-danger{background:var(--danger);color:var(--on-danger)}.app-dialog-button-danger:hover{filter:brightness(1.08)}@media (max-width:480px){.app-dialog-actions{flex-direction:column-reverse}.app-dialog-button{width:100%}}