.tst-container{position:fixed;top:20px;right:20px;z-index:9999;max-width:400px;width:100%;display:flex;flex-direction:column;gap:15px;pointer-events:none}.tst-toast{background:#fff;border-radius:12px;box-shadow:0 8px 25px #00000026;padding:18px;display:flex;align-items:flex-start;animation:tst-slideIn .4s cubic-bezier(.175,.885,.32,1.275) forwards;position:relative;overflow:hidden;pointer-events:auto;transform:translate(100%);opacity:0;border-left:5px solid #3498db}.tst-toast.tst-exit{animation:tst-slideOut .4s ease forwards}.tst-icon{font-size:1.5rem;margin-right:15px;flex-shrink:0;margin-top:2px}.tst-content{flex:1;min-width:0}.tst-title{font-weight:700;font-size:1.1rem;margin-bottom:5px;display:flex;justify-content:space-between;align-items:center}.tst-message{font-size:.95rem;line-height:1.5;color:#5a6c7d}.tst-close{background:none;border:none;font-size:1.2rem;color:#a0aec0;cursor:pointer;margin-left:10px;padding:4px;border-radius:6px;transition:all .2s;flex-shrink:0}.tst-close:hover{background:#0000000d;color:#4a5568}.tst-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#0000000d;overflow:hidden}.tst-progress-bar{height:100%;width:100%;transform-origin:left;animation:tst-progressShrink linear forwards}.tst-primary{border-left-color:#3498db}.tst-primary .tst-icon{color:#3498db}.tst-primary .tst-progress-bar{background:#3498db}.tst-success{border-left-color:#2ecc71}.tst-success .tst-icon{color:#2ecc71}.tst-success .tst-progress-bar{background:#2ecc71}.tst-danger{border-left-color:#e74c3c}.tst-danger .tst-icon{color:#e74c3c}.tst-danger .tst-progress-bar{background:#e74c3c}.tst-warning{border-left-color:#f39c12}.tst-warning .tst-icon{color:#f39c12}.tst-warning .tst-progress-bar{background:#f39c12}.tst-info{border-left-color:#1abc9c}.tst-info .tst-icon{color:#1abc9c}.tst-info .tst-progress-bar{background:#1abc9c}@keyframes tst-slideIn{to{transform:translate(0);opacity:1}}@keyframes tst-slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes tst-progressShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:768px){.tst-container{top:10px;right:10px;left:10px;max-width:none}.tst-toast{padding:15px}}
