.uif-toasts{position:fixed;top:16px;right:16px;z-index:2147483000;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px));pointer-events:none}
.uif-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;border-left:5px solid #0d6efd;background:#fff;color:#1d2433;box-shadow:0 8px 24px rgba(0,0,0,.18);font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;animation:uif-in .18s ease-out}
.uif-toast-text{flex:1;word-break:break-word}
.uif-toast-close{background:none;border:0;font-size:20px;line-height:1;cursor:pointer;color:inherit;opacity:.6;padding:0 2px}
.uif-toast-close:hover{opacity:1}
.uif-success{border-left-color:#198754}
.uif-error{border-left-color:#dc3545;background:#fff5f5}
.uif-warning{border-left-color:#f59e0b}
.uif-info{border-left-color:#0d6efd}
@keyframes uif-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.uif-spinner{display:inline-block;width:1em;height:1em;margin-right:.5em;vertical-align:-.15em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:uif-spin .7s linear infinite}
@keyframes uif-spin{to{transform:rotate(360deg)}}
.uif-loading{cursor:progress!important;opacity:.85}
@media (max-width:576px){.uif-toasts{top:8px;right:8px;left:8px;width:auto}}
@media (prefers-reduced-motion:reduce){.uif-toast,.uif-spinner{animation:none}}
