/* The notification is a nonblocking toast, independent of the PDP dialog styles. */
#stateModal.pdp-cart-toast {
    position: fixed; inset: auto auto 24px 50%; z-index: 1001;
    display: flex; align-items: center; gap: 12px; direction: rtl;
    width: max-content; max-width: calc(100vw - 32px); min-height: 68px;
    padding: 12px 14px; border: 1px solid #e7e8ea; border-radius: 12px;
    background: #fff; color: #252830; box-shadow: none;
    opacity: 0; visibility: hidden; pointer-events: none;
    transform: translate(-50%, 12px); transition: opacity .18s, transform .18s, visibility .18s;
}
#stateModal.pdp-cart-toast.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); }
.pdp-cart-toast__close { display: grid; place-items: center; width: 36px; height: 40px; flex: 0 0 36px; padding: 8px; border: 0; background: transparent; color: #525760; cursor: pointer; }
.pdp-cart-toast svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.pdp-cart-toast__message { display: flex; align-items: center; gap: 8px; color: #168431; font-size: 15px; font-weight: 600; white-space: nowrap; }
.pdp-cart-toast__check path { stroke-dasharray: 30; stroke-dashoffset: 30; }
.is-visible .pdp-cart-toast__check path { animation: pdp-cart-check .55s .08s ease-out forwards; }
.pdp-cart-toast__link { display: flex; align-items: center; justify-content: center; gap: 5px; padding: 10px 14px; margin-inline-start: 26px; border-radius: 24px; background: #f2f3f4; color: #30333b !important; text-decoration: none !important; font-size: 13px; white-space: nowrap; }
.pdp-cart-toast__link svg { width: 15px; height: 15px; }
.pdp-v2 [data-add-to-cart][hidden], .pdp-v2 .pdp-cart-quantity[hidden] { display: none !important; }
.pdp-v2 .pdp-cart-quantity { position: relative; display: grid; grid-template-columns: 48px minmax(30px, 1fr) 48px; align-items: center; direction: rtl; width: 100%; min-height: 58px; padding: 2px 6px; border: 1px solid #e3e5e9; border-radius: 10px; color: #ef394e; background: #fff; }
.pdp-cart-quantity button { display: grid; place-items: center; width: 44px; height: 48px; padding: 10px; border: 0; border-radius: 8px; background: transparent; color: inherit; cursor: pointer; }
.pdp-cart-quantity button:disabled { opacity: .35; cursor: default; }
.pdp-cart-quantity button:not(:disabled):hover { background: #fff2f4; }
.pdp-cart-quantity svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.pdp-cart-quantity__value { display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.45; }
.pdp-cart-quantity__value b { font-size: 19px; font-weight: 500; }
.pdp-cart-quantity__value small { font-size: 10px; color: #9b9fa7; }
.pdp-cart-quantity__busy { display: none; position: absolute; left: calc(50% - 9px); top: calc(50% - 9px); width: 18px; height: 18px; border: 2px solid #f4b8c0; border-top-color: #ef394e; border-radius: 50%; animation: pdp-cart-spin .6s linear infinite; }
.pdp-cart-quantity[aria-busy="true"] .pdp-cart-quantity__busy { display: block; }
.pdp-cart-quantity[aria-busy="true"] .pdp-cart-quantity__value { visibility: hidden; }
.pdp-cart-quantity__error { grid-column: 1 / -1; padding: 4px 6px 8px; color: #b32338; font-size: 11px; line-height: 1.8; text-align: right; }
.pdp-cart-quantity__error[hidden] { display: none; }
.pdp-cart-toast :focus-visible, .pdp-cart-quantity button:focus-visible { outline: 2px solid #243b86; outline-offset: 3px; }
.pdp-cart-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@keyframes pdp-cart-check { to { stroke-dashoffset: 0; } }
@keyframes pdp-cart-spin { to { transform: rotate(360deg); } }
@media (max-width: 768px) {
    #stateModal.pdp-cart-toast { inset: auto 12px calc(var(--pdp-purchase-height, 74px) + 12px) 12px; width: auto; max-width: none; min-height: 64px; padding: 10px 8px; gap: 6px; transform: translateY(12px); box-shadow: 0 5px 22px rgba(20, 24, 34, .16); }
    #stateModal.pdp-cart-toast.is-visible { transform: translateY(0); }
    .pdp-cart-toast__message { font-size: 13px; gap: 6px; }
    .pdp-cart-toast__link { margin-inline-start: auto; padding: 9px 10px; font-size: 11px; }
    .pdp-cart-toast__close { width: 30px; flex-basis: 30px; padding: 5px; }
    .pdp-v2 .pdp-mobile-purchase .pdp-cart-quantity { min-height: 54px; box-shadow: 0 1px 5px rgba(20, 24, 34, .08); }
}
@media (prefers-reduced-motion: reduce) {
    #stateModal.pdp-cart-toast { transition: none; }
    .is-visible .pdp-cart-toast__check path { animation: none; stroke-dashoffset: 0; }
    .pdp-cart-quantity__busy { animation-duration: 1.5s; }
}
