.app-notify-backdrop { position: fixed; inset: 0; z-index: 9000; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(20, 31, 39, 0); pointer-events: none; transition: background .18s ease; }
.app-notify-backdrop.is-visible { background: rgba(20, 31, 39, .45); pointer-events: auto; }
.app-notify-box { width: 100%; max-width: 320px; padding: 22px 20px 18px; border-radius: 14px; background: #fff; box-shadow: 0 18px 40px rgba(18, 59, 69, .22); text-align: center; transform: scale(.92); opacity: 0; transition: transform .18s ease, opacity .18s ease; }
.app-notify-backdrop.is-visible .app-notify-box { transform: scale(1); opacity: 1; }
.app-notify-icon { display: grid; place-items: center; width: 42px; height: 42px; margin: 0 auto 12px; border-radius: 50%; font-size: 18px; font-weight: 700; }
.app-notify-success .app-notify-icon { color: #158e84; background: #e2f6f3; }
.app-notify-error .app-notify-icon { color: #c0392b; background: #fbe7e4; }
.app-notify-info .app-notify-icon { color: #3f6fb0; background: #eaf1ff; }
.app-notify-confirm .app-notify-icon { color: #b9791f; background: #fff3de; }
.app-notify-message { margin: 0 0 18px; color: #344754; font-size: 12.5px; line-height: 1.7; white-space: pre-line; }
.app-notify-actions { display: flex; gap: 8px; justify-content: center; }
.app-notify-actions button { flex: 1; padding: 10px 14px; border: 0; border-radius: 8px; font-size: 11px; font-weight: 700; cursor: pointer; }
.app-notify-confirm-btn { color: #fff; background: #117f79; }
.app-notify-confirm-btn:hover { background: #0d6a65; }
.app-notify-cancel-btn { color: #61747e; background: #eef2f3; }
.app-notify-cancel-btn:hover { background: #e3e9ea; }
@media (max-width: 400px) { .app-notify-box { max-width: 92vw; } }
