/* mvs-toaster.css — MvsToaster platform component.
   Every selector is .mvs-toast-* namespaced; nothing here can restyle an
   existing element, and the container only exists after the first toast. */

#mvs-toast-container {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 1080;              /* above Bootstrap modals (1050) and backdrops */
    display: flex;
    flex-direction: column-reverse;   /* newest nearest the corner */
    gap: 8px;
    max-width: 400px;
    pointer-events: none;       /* the gap between toasts stays click-through */
}

.mvs-toast {
    pointer-events: auto;
    display: flex;
    align-items: flex-start;
    min-width: 260px;
    max-width: 400px;
    padding: 10px 12px;
    border-radius: 4px;
    color: #fff;
    font-size: 13px;
    line-height: 1.45;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25);
    animation: mvs-toast-in 0.18s ease-out;
}
.mvs-toast-leaving { opacity: 0; transform: translateY(6px); transition: opacity 0.18s ease, transform 0.18s ease; }

@keyframes mvs-toast-in {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .mvs-toast { animation: none; }
    .mvs-toast-leaving { transition: none; }
}

.mvs-toast-success { background: #34a263; }
.mvs-toast-warning { background: #e08e0b; }
.mvs-toast-danger  { background: #d33f3a; }

.mvs-toast-msg {
    flex: 1 1 auto;
    word-wrap: break-word;
    overflow-wrap: break-word;
    min-width: 0;
    white-space: pre-line;      /* multi-line messages keep their line breaks */
}

.mvs-toast-btn {
    flex: 0 0 auto;
    background: transparent;
    border: 0;
    color: rgba(255, 255, 255, 0.75);
    cursor: pointer;
    padding: 0 4px;
    margin-left: 8px;
    font-size: 13px;
    line-height: 1.45;
}
.mvs-toast-btn:hover { color: #fff; }
.mvs-toast-close { font-size: 17px; line-height: 1; }
.mvs-toast-copied, .mvs-toast-copied:hover { color: #fff; }

/* Off-screen textarea for the legacy clipboard path; never visible. */
.mvs-toast-copysrc { position: fixed; left: -9999px; top: 0; width: 1px; height: 1px; opacity: 0; }
