/**
 * OmSpice — modern toastr overrides
 */

#toast-container {
    z-index: 100000;
}

#toast-container > div {
    width: auto;
    min-width: 300px;
    max-width: 420px;
    padding: 16px 44px 16px 52px;
    border-radius: 12px;
    opacity: 1;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14), 0 2px 8px rgba(15, 23, 42, 0.06);
    background-image: none !important;
    border: 1px solid rgba(15, 23, 42, 0.08);
    font-family: inherit;
    line-height: 1.45;
    backdrop-filter: blur(8px);
}

#toast-container > div:hover {
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.16), 0 2px 8px rgba(15, 23, 42, 0.08);
    opacity: 1;
    cursor: default;
}

#toast-container .toast-title {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.01em;
    margin-bottom: 4px;
    color: #111827;
}

#toast-container .toast-message {
    font-size: 13px;
    font-weight: 400;
    color: #4b5563;
    line-height: 1.5;
}

#toast-container .toast-message a,
#toast-container .toast-message label {
    color: #166534;
}

#toast-container .toast-close-button {
    position: absolute;
    top: 12px;
    right: 12px;
    float: none;
    font-size: 18px;
    font-weight: 400;
    color: #9ca3af;
    opacity: 1;
    text-shadow: none;
    line-height: 1;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: color 0.15s ease, background 0.15s ease;
}

#toast-container .toast-close-button:hover,
#toast-container .toast-close-button:focus {
    color: #374151;
    background: rgba(15, 23, 42, 0.06);
    opacity: 1;
}

#toast-container > .toast-success {
    background-color: #ffffff;
    border-left: 4px solid #28af50;
    color: #111827;
}

#toast-container > .toast-success::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #fff;
    background: #28af50;
    border-radius: 50%;
}

#toast-container > .toast-error {
    background-color: #ffffff;
    border-left: 4px solid #dc2626;
    color: #111827;
}

#toast-container > .toast-error::before {
    content: "\f06a";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #fff;
    background: #dc2626;
    border-radius: 50%;
}

#toast-container > .toast-warning {
    background-color: #ffffff;
    border-left: 4px solid #f59e0b;
    color: #111827;
}

#toast-container > .toast-warning::before {
    content: "\f071";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #fff;
    background: #f59e0b;
    border-radius: 50%;
}

#toast-container > .toast-info {
    background-color: #ffffff;
    border-left: 4px solid #3b82f6;
    color: #111827;
}

#toast-container > .toast-info::before {
    content: "\f129";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #fff;
    background: #3b82f6;
    border-radius: 50%;
}

#toast-container > div .toast-progress {
    height: 3px;
    opacity: 0.35;
    border-radius: 0 0 12px 12px;
}

#toast-container > .toast-success .toast-progress {
    background-color: #28af50;
}

#toast-container > .toast-error .toast-progress {
    background-color: #dc2626;
}

#toast-container > .toast-warning .toast-progress {
    background-color: #f59e0b;
}

#toast-container > .toast-info .toast-progress {
    background-color: #3b82f6;
}

/* Top right — compact card */
#toast-container.toast-top-right {
    top: 20px;
    right: 20px;
}

#toast-container.toast-top-right > div {
    max-width: 380px;
    margin: 0 0 10px;
}

#toast-container.toast-top-center {
    top: 20px;
}

#toast-container.toast-top-center > div {
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 480px) {
    #toast-container.toast-top-right {
        top: 12px;
        right: 12px;
        left: 12px;
    }

    #toast-container.toast-top-right > div,
    #toast-container > div {
        min-width: 0;
        max-width: none;
        width: 100%;
        padding: 14px 40px 14px 48px;
    }
}
