/* Page-level WooCommerce success/info notices.
   Checkout errors stay inline. */

.pish-wc-notice-toast-stack {

    position: fixed;

    top: 112px;
    right: 24px;
    left: auto;
    bottom: auto;

    z-index: 999999;

    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;

    width: min(380px, calc(100vw - 48px));

    direction: rtl;

    pointer-events: none;
}

body.pish-cart-page-body .pish-cart-page__content {
    position: relative;
}

@media (min-width: 640px) {

    body.pish-cart-page-body .pish-wc-notice-toast-stack {
        position: absolute;
        top: auto;
        right: auto;
        left: 24px;
        bottom: 24px;
    }

}


/* Toast Card */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast {

    position: relative;

    display: block;

    width: 100%;

    box-sizing: border-box;

    margin: 0;

    padding: 16px 48px 16px 18px;

    border: 1px solid var(--color-border, #e5e5e5);

    border-inline-start: 4px solid var(--color-primary, #ff3232);

    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 12px 30px rgb(0 0 0 / 0.14);

    color: var(--color-text, #333);

    font-family:
        var(--font-family-base, Tahoma, Arial, sans-serif);

    font-size: 0.9375rem;

    line-height: 1.7;

    text-align: right;

    pointer-events: auto;

    opacity: 0;

    transform: translateY(-12px);

    transition:
        opacity 220ms ease,
        transform 220ms ease;

}


/* Show */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast.is-visible {

    opacity: 1;

    transform: translateY(0);

}


/* Leaving */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast.is-leaving {

    opacity: 0;

    transform: translateY(-10px);

}


/* Remove WooCommerce default icon */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast::before {

    display: none;

}


/* Links */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast a {

    color: var(--color-primary, #ff3232);

    font-weight: 700;

}


/* Restore link */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast .restore-item {

    display: inline-block;

    margin-inline-start: 6px;

}


/* Close button */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast__close {

    position: absolute;

    top: 10px;

    left: 10px;

    width: 28px;

    height: 28px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background: transparent;

    color: var(--color-muted, #777);

    cursor: pointer;

    font: inherit;

    font-size: 1.25rem;

    line-height: 1;

}


/* Close hover */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast__close:hover,
.pish-wc-notice-toast-stack > .pish-wc-notice-toast__close:focus-visible {

    background: var(--color-surface, #f7f7f7);

    color: var(--color-primary, #ff3232);

}


/* Focus */

.pish-wc-notice-toast-stack > .pish-wc-notice-toast__close:focus-visible {

    outline: 2px solid var(--color-primary, #ff3232);

    outline-offset: 2px;

}


/* Mobile */

@media (max-width: 639px) {

    .pish-wc-notice-toast-stack {

        top: auto;

        right: 16px;
        left: 16px;

        bottom: calc(5.25rem + env(safe-area-inset-bottom, 0px));

        width: auto;

    }


    .pish-wc-notice-toast-stack > .pish-wc-notice-toast {

        padding: 14px 44px 14px 16px;

        border-radius: 12px;

        font-size: 0.9rem;

    }

}


/* Reduced motion */

@media (prefers-reduced-motion: reduce) {

    .pish-wc-notice-toast-stack > .pish-wc-notice-toast {

        transition: none;

    }

}