/* ============================================
   TOAST NOTIFICATIONS
   ============================================ */

.toast-container{
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    z-index:99999;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    pointer-events:none;
    width:auto;
    max-width:calc(100% - 32px);
}

.toast{
    pointer-events:auto;
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:#0f172a;
    color:#e2e8f0;
    padding:12px 18px;
    border-radius:10px;
    border:1px solid rgba(56,189,248,0.25);
    box-shadow:0 10px 30px -10px rgba(0,0,0,0.5);
    font-size:14px;
    font-weight:500;
    min-width:200px;
    max-width:420px;
    opacity:0;
    transform:translateY(-20px) scale(0.95);
    transition:opacity .25s ease, transform .25s ease;
    cursor:pointer;
    line-height:1.35;
}

.toast.toast-show{
    opacity:1;
    transform:translateY(0) scale(1);
}
.toast.toast-hide{
    opacity:0;
    transform:translateY(-12px) scale(0.96);
}

.toast-icon{
    font-size:16px;
    width:22px;
    height:22px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    font-weight:700;
}
.toast-msg{ flex:1; word-wrap:break-word; }

.toast-success{ border-color:rgba(34,197,94,0.45); background:#052e16; color:#dcfce7; }
.toast-success .toast-icon{ background:#22c55e; color:#052e16; }

.toast-error{ border-color:rgba(248,113,113,0.45); background:#3b0a0a; color:#fee2e2; }
.toast-error .toast-icon{ background:#ef4444; color:white; }

.toast-warning{ border-color:rgba(251,191,36,0.45); background:#3b2900; color:#fef3c7; }
.toast-warning .toast-icon{ background:#f59e0b; color:#3b2900; }

.toast-info{ border-color:rgba(56,189,248,0.45); background:#0c1c2e; color:#e0f2fe; }
.toast-info .toast-icon{ background:#38bdf8; color:#0c1c2e; }

@media (max-width:640px){
    .toast-container{ top:12px; max-width:calc(100% - 20px); }
    .toast{ font-size:13px; padding:10px 14px; min-width:0; width:100%; }
}
