/**
 * Floating storefront chip. LV tokens. Top-right. Not pinned to the bottom.
 * In-page Woo banners are lifted; hide leftovers so they do not sit in the page.
 */

.woocommerce-notices-wrapper > .woocommerce-message,
.woocommerce-notices-wrapper > .woocommerce-info,
.woocommerce-notices-wrapper > .woocommerce-notice,
.woocommerce-notices-wrapper > .woocommerce-error,
.woocommerce-NoticeGroup,
.pilot-auth__notices > .woocommerce-message,
.pilot-auth__notices > .woocommerce-info,
.pilot-auth__notices > .woocommerce-error,
.lv-content-container .woocommerce-message,
.lv-content-container .woocommerce-info,
.lv-content-container .woocommerce-error,
.lv-content-container .woocommerce-notice,
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-error,
.lv-notice-preview > .woocommerce-message,
.lv-notice-preview > .woocommerce-info,
.lv-notice-preview > .woocommerce-error {
    display: none !important;
}

#lv-toast-host .lv-notice__close {
    display: none !important;
}

#lv-toast-host {
    position: fixed;
    top: 16px;
    right: 16px;
    left: auto;
    z-index: 100000;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
    width: max-content;
    max-width: min(50vw, calc(100vw - 32px));
    pointer-events: none;
}

#lv-toast-host > * {
    pointer-events: auto;
    animation: lv-toast-in 280ms ease-out;
}

#lv-toast-host > *.is-leaving {
    animation: lv-toast-out 200ms ease-in forwards;
}

@keyframes lv-toast-in {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes lv-toast-out {
    from {
        opacity: 1;
        transform: none;
    }
    to {
        opacity: 0;
        transform: translateX(20px);
    }
}

@media (prefers-reduced-motion: reduce) {
    #lv-toast-host > *,
    #lv-toast-host > *.is-leaving {
        animation: none;
    }
}

#lv-toast-host .woocommerce-message::before,
#lv-toast-host .woocommerce-info::before,
#lv-toast-host .woocommerce-error::before,
#lv-toast-host .woocommerce-notice::before,
#lv-toast-host .woocommerce-error li::before,
#lv-toast-host .woocommerce-info li::before,
#lv-toast-host .woocommerce-message li::before {
    content: none !important;
    display: none !important;
}

#lv-toast-host .wc-block-components-notice-banner__icon,
#lv-toast-host .wc-block-components-notice__icon,
#lv-toast-host [class*="notice-banner__icon"] {
    display: none !important;
}

#lv-toast-host .lv-notice,
#lv-toast-host .lv-toast-chip,
#lv-toast-host .woocommerce-message,
#lv-toast-host .woocommerce-info,
#lv-toast-host .woocommerce-notice,
#lv-toast-host ul.woocommerce-error,
#lv-toast-host div.woocommerce-error,
#lv-toast-host ul.woocommerce-error > li {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 12px 16px;
    font-size: 1rem;
    line-height: 1.5;
    background: var(--lv-bg, #ffffff);
    color: var(--lv-text, #1a1a1a);
    border: 1px solid var(--lv-border, #e5e5e5);
    border-radius: 4px;
    min-height: 0;
    background-image: none;
    box-shadow:
        0 16px 48px rgba(0, 0, 0, 0.18),
        0 4px 14px rgba(0, 0, 0, 0.08);
}

#lv-toast-host ul.woocommerce-error {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 0;
    background: none;
    border: none;
    box-shadow: none;
    list-style: none;
}

#lv-toast-host .lv-notice__text {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    margin: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    color: inherit;
}

#lv-toast-host .lv-notice__actions {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

#lv-toast-host .button {
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 10px 18px;
    line-height: 1;
    background: var(--lv-text, #1a1a1a);
    color: var(--lv-bg, #ffffff);
    border: 1px solid var(--lv-text, #1a1a1a);
    border-radius: 4px;
    box-shadow: none;
    font-family: inherit;
    font-size: 0.9375rem;
    cursor: pointer;
    text-decoration: none;
}

#lv-toast-host .button:hover {
    background: var(--lv-text, #1a1a1a);
    color: var(--lv-bg, #ffffff);
}

#lv-toast-host .lv-notice__close {
    flex: 0 0 auto;
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--lv-text, #1a1a1a);
    cursor: pointer;
}

#lv-toast-host .lv-notice__close svg {
    width: 10px;
    height: 10px;
    fill: currentColor;
}

@media (max-width: 900px) {
    #lv-toast-host {
        top: max(12px, env(safe-area-inset-top, 0px));
        right: max(12px, env(safe-area-inset-right, 0px));
        left: auto;
        width: max-content;
        max-width: calc(100vw - 24px);
        align-items: flex-end;
    }

    #lv-toast-host .button {
        min-height: 44px;
        padding: 12px 16px;
    }
}
