
.sd-toast-stack{position:fixed;top:18px;right:18px;z-index:100000;display:grid;gap:10px;width:min(390px,calc(100vw - 28px));pointer-events:none}
.sd-toast{display:grid;grid-template-columns:40px 1fr 28px;gap:11px;align-items:start;padding:14px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;color:#172033;box-shadow:0 18px 55px rgba(15,23,42,.18);pointer-events:auto;animation:sdToastIn .22s ease-out}
.sd-toast-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:19px;font-weight:900}
.sd-toast-title{font-size:13px;font-weight:800;line-height:1.35;margin:1px 0 3px}
.sd-toast-message{font-size:12px;line-height:1.55;color:#64748b;overflow-wrap:anywhere}
.sd-toast-close{border:0;background:transparent;color:#64748b;font-size:18px;cursor:pointer;padding:0;line-height:1}
.sd-toast.success .sd-toast-icon{background:#dcfce7;color:#15803d}.sd-toast.error .sd-toast-icon{background:#fee2e2;color:#b91c1c}.sd-toast.warning .sd-toast-icon{background:#fef3c7;color:#b45309}.sd-toast.info .sd-toast-icon{background:#dbeafe;color:#1d4ed8}
.sd-dialog-backdrop{position:fixed;inset:0;z-index:100001;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.58);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:sdFade .16s ease-out}
.sd-dialog{width:min(440px,100%);border:1px solid rgba(148,163,184,.22);border-radius:22px;background:#fff;color:#172033;box-shadow:0 28px 90px rgba(0,0,0,.28);padding:25px 24px 22px;animation:sdDialogIn .2s ease-out}
.sd-dialog-symbol{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;margin:0 auto 15px;font-size:27px;font-weight:900}
.sd-dialog.warning .sd-dialog-symbol{background:#fff7df;color:#b45309}.sd-dialog.danger .sd-dialog-symbol{background:#fee2e2;color:#b91c1c}.sd-dialog.info .sd-dialog-symbol{background:#ede9fe;color:#6d28d9}.sd-dialog.success .sd-dialog-symbol{background:#dcfce7;color:#15803d}
.sd-dialog h2{font-size:20px;line-height:1.3;text-align:center;margin:0 0 9px;font-weight:850;letter-spacing:-.35px}
.sd-dialog p{font-size:13px;line-height:1.65;text-align:center;color:#64748b;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.sd-dialog-note{margin-top:15px;padding:11px 12px;border:1px solid #fecaca;border-radius:11px;background:#fff5f5;color:#b91c1c;font-size:12px;line-height:1.5;text-align:center;font-weight:700}
.sd-dialog-input{width:100%;box-sizing:border-box;margin-top:17px;padding:12px 13px;border:1px solid #dbe2ea;border-radius:11px;background:#fff;color:#172033;font:inherit;font-size:14px;outline:none}
.sd-dialog-input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.sd-dialog-actions{display:flex;gap:10px;margin-top:22px}
.sd-dialog-btn{flex:1;min-height:45px;border:0;border-radius:11px;padding:10px 14px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.sd-dialog-btn.cancel{background:#eef0f4;color:#334155}.sd-dialog-btn.primary{background:#6d28d9;color:#fff}.sd-dialog-btn.danger{background:#c81e1e;color:#fff}
@keyframes sdToastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes sdDialogIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sdFade{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.sd-toast-stack{top:10px;right:10px;width:calc(100vw - 20px)}.sd-dialog{padding:23px 18px 18px;border-radius:19px}.sd-dialog h2{font-size:18px}.sd-dialog-actions{gap:8px}.sd-dialog-btn{min-height:44px}}
@media(prefers-reduced-motion:reduce){.sd-toast,.sd-dialog,.sd-dialog-backdrop{animation:none!important}}

/* Premium confirmation polish: clearer hierarchy and safe mobile spacing. */
.sd-dialog{max-height:calc(100dvh - 36px);overflow-y:auto}
.sd-dialog.warning{border-top:4px solid #d99a22}
.sd-dialog.danger{border-top:4px solid #dc2626}
.sd-dialog .sd-dialog-btn:focus-visible,.sd-toast-close:focus-visible{outline:3px solid rgba(109,40,217,.28);outline-offset:2px}
@media(max-width:480px){
 .sd-dialog-backdrop{padding:14px;align-items:center}
 .sd-dialog{width:100%;padding:22px 17px 17px;border-radius:20px}
 .sd-dialog-symbol{width:54px;height:54px;border-radius:17px;margin-bottom:12px}
 .sd-dialog h2{font-size:18px}
 .sd-dialog p{font-size:13px}
 .sd-dialog-actions{position:sticky;bottom:0;background:#fff;padding-top:8px}
}
