/* ==========================================================================
   THEME VARIABLES (Best Practice for Light/Dark Mode)
   ========================================================================== */
:root {
    /* Success Colors - Light Mode */
    --vx-success-bg: rgba(209, 250, 229, 0.9); /* Emerald 100 / 90% opacity */
    --vx-success-border: rgba(16, 185, 129, 0.4); /* Emerald 500 / 40% opacity */
    --vx-success-text: #065f46; /* Emerald 800 */

    /* Error Colors - Light Mode */
    --vx-error-bg: #ffe4e6; /* Rose 100 */
    --vx-error-border: rgba(244, 63, 94, 0.3); /* Rose 500 / 30% opacity */
    --vx-error-text: #9f1239; /* Rose 800 */
}

/* Container positioned at top-right */
#toast-container {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
    pointer-events: none; /* Allows clicking through the parent container */
}

/* Base Toast Structure matching VexMine UI */
.vx-toast {
    min-width: 300px;
    max-width: 400px;
    padding: 14px 18px;
    border-radius: 11px;
    font-family: system-ui, -apple-system, sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.025em;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    display: flex;
    align-items: center;
    gap: 12px;
    pointer-events: auto; /* Re-enables interactions inside the toast box */
    box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.5);
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.4s ease;
    
    /* Smooth CSS Entry Animation Initial State */
    transform: translateX(120%);
}

@media screen and (max-width: 400px) {
    #toast-container {
        right: 15px !important;
    }
    .vx-toast {
        max-width: 330px !important;
    }
}

/* Entry state triggered by JavaScript */
.vx-toast.show {
    transform: translateX(0);
}

/* Exit state triggered right before element removal */
.vx-toast.hide {
    transform: translateX(120%);
    opacity: 0;
}

/* ==========================================================================
   VARIANT THEMES (Applying the tokens)
   ========================================================================== */
.vx-toast-success {
    background: var(--vx-success-bg);
    border: 1px solid var(--vx-success-border);
    color: var(--vx-success-text);
}

.vx-toast-error {
    background: var(--vx-error-bg);
    border: 1px solid var(--vx-error-border);
    color: var(--vx-error-text);
}