@keyframes notify-slide-in{
from{opacity:0;transform:translateX(40px);}
to{opacity:1;transform:translateX(0);}
}

@keyframes notify-slide-out{
from{opacity:1;transform:translateX(0);max-height:120px;margin-bottom:10px;}
to{opacity:0;transform:translateX(40px);max-height:0;margin-bottom:0;}
}

@keyframes notify-pop-in{
from{opacity:0;transform:scale(.92) translateY(10px);}
to{opacity:1;transform:scale(1) translateY(0);}
}

@keyframes notify-progress{
from{width:100%;}
to{width:0%;}
}

#notifyToastContainer{
position:fixed;
top:24px;
right:24px;
z-index:20000;
display:flex;
flex-direction:column;
gap:10px;
max-width:360px;
}

.notify-toast{
background:#151124;
border:1px solid rgba(56,189,248,.2);
border-left:4px solid #38bdf8;
border-radius:14px;
padding:14px 16px;
color:#e2e8f0;
box-shadow:0 10px 30px rgba(0,0,0,.4);
animation:notify-slide-in .25s ease both;
position:relative;
overflow:hidden;
display:flex;
gap:10px;
align-items:flex-start;
}

.notify-toast.is-leaving{
animation:notify-slide-out .25s ease both;
}

.notify-toast.notify-success{
border-left-color:#22d3ee;
}

.notify-toast.notify-error{
border-left-color:#fb7185;
}

.notify-toast.notify-info{
border-left-color:#d4af37;
}

.notify-toast-icon{
font-size:18px;
line-height:1;
flex-shrink:0;
}

.notify-toast-message{
font-size:13px;
line-height:1.5;
flex:1;
word-break:break-word;
}

.notify-toast-close{
background:none;
border:none;
color:#64748b;
cursor:pointer;
font-size:14px;
padding:0;
flex-shrink:0;
}

.notify-toast-progress{
position:absolute;
bottom:0;
left:0;
height:3px;
background:rgba(56,189,248,.4);
animation:notify-progress linear forwards;
}

.notify-toast.notify-success .notify-toast-progress{
background:rgba(34,211,238,.5);
}

.notify-toast.notify-error .notify-toast-progress{
background:rgba(251,113,133,.5);
}

.notify-toast.notify-info .notify-toast-progress{
background:rgba(212,175,55,.5);
}

.notify-modal-overlay{
position:fixed;
inset:0;
background:rgba(5,5,10,.85);
display:flex;
align-items:center;
justify-content:center;
z-index:20001;
}

.notify-modal-card{
background:#151124;
border:1px solid rgba(56,189,248,.25);
border-radius:20px;
padding:26px;
width:90%;
max-width:420px;
animation:notify-pop-in .2s ease both;
box-shadow:0 20px 60px rgba(0,0,0,.5);
}

.notify-modal-icon{
font-size:30px;
margin-bottom:10px;
}

.notify-modal-message{
color:#e2e8f0;
font-size:15px;
line-height:1.6;
margin-bottom:20px;
white-space:pre-wrap;
}

.notify-modal-input{
width:100%;
padding:10px 12px;
border-radius:10px;
border:1px solid rgba(148,163,184,.25);
background:#0e0c1a;
color:#fff;
font-size:14px;
margin-bottom:18px;
}

.notify-modal-actions{
display:flex;
gap:10px;
}

.notify-modal-actions button{
flex:1;
padding:11px;
border-radius:12px;
border:none;
cursor:pointer;
font-weight:700;
font-size:14px;
transition:.15s;
}

.notify-btn-confirm{
background:linear-gradient(135deg,#0ea5e9,#38bdf8);
color:#06202e;
}

.notify-btn-confirm:hover{
transform:translateY(-1px);
}

.notify-btn-cancel{
background:rgba(148,163,184,.15);
color:#cbd5e1;
}
