:root {
    --rabe-color-text: #000;
    --rabe-color-primary: #00a88e;
    --rabe-color-secondary: rgb(0 140 168);
    --rabe-color-petrol: var(--rabe-color-secondary);
    --rabe-color-accent: #ffce00;
    --rabe-color-heart: #d71945;
    --rabe-color-danger: hsl(303 65% 40%);
    --rabe-color-surface: #fff;
    --rabe-color-surface-soft: #f7fffc;
    --rabe-color-muted: #617186;
    --rabe-color-border: rgb(0 0 0 / 14%);
    --rabe-color-primary-soft: rgb(0 168 142 / 8%);
    --rabe-color-secondary-soft: rgb(0 140 168 / 8%);
    --rabe-color-danger-soft: hsl(303 65% 96%);
    --rabe-color-accent-soft: rgb(255 206 0 / 12%);
}

.rabe-wishlist-button {
    align-items: center;
    appearance: none;
    background: var(--rabe-color-surface);
    border: 1px solid var(--rabe-color-border);
    border-radius: 999px;
    color: var(--rabe-color-text);
    cursor: pointer;
    display: inline-flex;
    gap: .5rem;
    justify-content: center;
    min-block-size: 44px;
    min-inline-size: 44px;
    padding: .6rem .8rem;
}

.rabe-wishlist-button[aria-pressed="true"] {
    background: var(--rabe-color-primary-soft);
    border-color: var(--rabe-color-primary);
    color: var(--rabe-color-heart);
}

.rabe-wishlist-button:focus-visible,
button.rabe-pdp-action-link:focus-visible,
.rabe-share-panel__option:focus-visible,
.rabe-wishlist-toast button:focus-visible,
.rabe-wishlist-toast select:focus-visible {
    outline: 3px solid var(--rabe-color-accent);
    outline-offset: 3px;
}

.rabe-wishlist-button--icon .rabe-wishlist-button__label,
.rabe-wishlist-button--loop .rabe-wishlist-button__label {
    block-size: 1px;
    clip-path: inset(50%);
    inline-size: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
}

.rabe-wishlist-button[aria-pressed="true"] path { fill: currentColor; }

/* Product loops */
.woocommerce ul.products li.product > .rabe-wishlist-button--loop,
li.product > .rabe-wishlist-button--loop {
    background: transparent;
    border-color: transparent;
    block-size: 44px;
    box-shadow: none;
    inline-size: 44px;
    inset-block-end: 10px;
    inset-block-start: auto;
    inset-inline-end: auto;
    inset-inline-start: 10px;
    padding: 0;
    position: absolute;
    z-index: 12;
}

.woocommerce ul.products li.product > .rabe-wishlist-button--loop:hover,
li.product > .rabe-wishlist-button--loop:hover {
    border-color: transparent;
    color: var(--rabe-color-petrol);
}

.woocommerce ul.products li.product > .rabe-wishlist-button--loop[aria-pressed="true"],
li.product > .rabe-wishlist-button--loop[aria-pressed="true"] {
    background: transparent;
}

/* Product detail actions */
.rabe-pdp-action-row > #brxe-ufmnns { display: none !important; }

.rabe-pdp-action-row > #brxe-bmullf:not(button) {
    font-size: 0;
}

.rabe-pdp-action-row > #brxe-bmullf:not(button)::before,
.rabe-pdp-action-row > #brxe-bmullf:not(button)::after {
    display: inline-block;
    font-size: 1rem;
}

.rabe-pdp-action-row > #brxe-bmullf:not(button)::before {
    color: #111;
    content: "♥";
    margin-inline-end: .38rem;
}

.rabe-pdp-action-row > #brxe-bmullf:not(button)::after { content: "Merken"; }

button.rabe-pdp-action-link {
    align-items: center;
    appearance: none;
    background: transparent;
    border: 0;
    color: #273244;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    gap: .4rem;
    min-block-size: 44px;
    padding: .35rem .2rem;
}

button.rabe-pdp-action-link:hover { color: var(--rabe-color-petrol); }

button.rabe-pdp-action-link.is-active { color: var(--rabe-color-petrol); }

.rabe-pdp-heart {
    color: #111;
    font-size: 1.08em;
    line-height: 1;
    transform-origin: center;
}

button.rabe-pdp-action-link.is-active .rabe-pdp-heart { color: var(--rabe-color-heart); }

button.rabe-pdp-action-link.is-pending .rabe-pdp-heart { animation: rabe-heart-pulse .75s ease-in-out infinite alternate; }

@keyframes rabe-heart-pulse {
    to { transform: scale(1.16); }
}

/* Expandable sharing row */
.rabe-share-panel[hidden] { display: none !important; }

.rabe-share-panel {
    align-items: start;
    border-top: 2px solid var(--rabe-color-petrol);
    display: grid;
    gap: .35rem;
    grid-template-columns: repeat(7, minmax(54px, 1fr));
    margin-top: .15rem;
    padding: .85rem 0 .25rem;
}

.rabe-share-panel__option {
    align-items: center;
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 10px;
    color: var(--rabe-color-text);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font: inherit;
    font-size: .72rem;
    gap: .35rem;
    min-block-size: 58px;
    padding: .35rem .15rem;
}

.rabe-share-panel__option:hover { background: var(--rabe-color-primary-soft); color: var(--rabe-color-petrol); }

.rabe-share-panel__option svg {
    block-size: 25px;
    fill: none;
    inline-size: 25px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.rabe-share-panel__option[data-network="facebook"] svg path,
.rabe-share-panel__option[data-network="pinterest"] svg path,
.rabe-share-panel__option svg .is-filled {
    fill: currentColor;
    stroke: none;
}

/* Bottom confirmation toast – polished, brand-aligned */
.rabe-wishlist-toast[hidden] { display: none !important; }

.rabe-wishlist-toast {
    bottom: max(24px, env(safe-area-inset-bottom));
    inline-size: min(440px, calc(100vw - 24px));
    inset-inline-start: 50%;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    transform: translate(-50%, 12px);
    transition: opacity .2s ease, transform .22s cubic-bezier(.2, .8, .2, 1);
    z-index: 100000;
}

.rabe-wishlist-toast.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.rabe-wishlist-toast__content {
    align-items: center;
    background: #fff;
    border: 1px solid rgb(14 21 47 / 8%);
    border-radius: 14px;
    box-shadow:
        0 1px 2px rgb(14 21 47 / 4%),
        0 8px 24px rgb(14 21 47 / 10%),
        0 20px 40px rgb(14 21 47 / 6%);
    color: var(--rabe-color-text);
    display: grid;
    gap: 12px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 14px 14px 14px 16px;
    position: relative;
}

/* Subtle brand accent on the left edge */
.rabe-wishlist-toast__content::before {
    background: var(--rabe-color-primary);
    border-radius: 14px 0 0 14px;
    content: '';
    inline-size: 4px;
    inset-block: 0;
    inset-inline-start: 0;
    position: absolute;
}

.rabe-wishlist-toast.is-error .rabe-wishlist-toast__content::before {
    background: var(--rabe-color-danger);
}

.rabe-wishlist-toast.is-error .rabe-wishlist-toast__content {
    border-color: rgb(180 35 24 / 18%);
}

.rabe-wishlist-toast__icon {
    align-items: center;
    background: var(--rabe-color-primary-soft);
    border-radius: 999px;
    color: var(--rabe-color-primary);
    display: inline-flex;
    flex-shrink: 0;
    block-size: 36px;
    inline-size: 36px;
    justify-content: center;
}

.rabe-wishlist-toast__icon svg {
    block-size: 18px;
    fill: none;
    inline-size: 18px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.rabe-wishlist-account-list__icon svg {
    block-size: 24px;
    fill: none;
    inline-size: 24px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.rabe-wishlist-toast.is-error .rabe-wishlist-toast__icon {
    background: var(--rabe-color-danger-soft);
    color: var(--rabe-color-danger);
}

.rabe-wishlist-toast__copy {
    display: grid;
    gap: 8px;
    min-inline-size: 0;
}

.rabe-wishlist-toast__copy p {
    color: #0e152f;
    font-size: 14px;
    font-weight: 650;
    letter-spacing: -0.01em;
    line-height: 1.4;
    margin: 0;
}

.rabe-wishlist-toast__field {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    font-weight: 700;
    gap: .4rem .6rem;
}

.rabe-wishlist-toast__field select {
    background: #fff;
    border: 1px solid rgb(14 21 47 / 18%);
    border-radius: 999px;
    color: var(--rabe-color-text);
    font: inherit;
    font-weight: 650;
    max-inline-size: 100%;
    font-size: 13px;
    min-block-size: 40px;
    padding: 6px 28px 6px 12px;
}

.rabe-wishlist-toast__action {
    align-items: center;
    background: var(--rabe-color-primary-soft);
    border: 0;
    border-radius: 999px;
    color: var(--rabe-color-primary);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 13px;
    font-weight: 750;
    justify-content: center;
    min-block-size: 34px;
    padding: 6px 14px;
    transition: background .15s ease, color .15s ease;
    width: fit-content;
}

.rabe-wishlist-toast__action:hover {
    background: var(--rabe-color-primary);
    color: #fff;
}

.rabe-wishlist-toast__action:disabled {
    cursor: wait;
    opacity: .6;
}

.rabe-wishlist-toast__close {
    align-items: center;
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: var(--rabe-color-muted);
    cursor: pointer;
    display: inline-flex;
    flex-shrink: 0;
    font-size: 1.15rem;
    justify-content: center;
    line-height: 1;
    margin: -4px -4px 0 0;
    min-block-size: 32px;
    min-inline-size: 32px;
    padding: 0;
    transition: background .15s ease, color .15s ease;
}

.rabe-wishlist-toast__close:hover {
    background: rgb(14 21 47 / 6%);
    color: #0e152f;
}

/* Public and customer account surfaces */
.rabe-wishlist-account {
    color: var(--rabe-color-text);
    margin-inline: auto;
    max-inline-size: 1200px;
}

.rabe-wishlist-page {
    box-sizing: border-box;
    color: var(--rabe-color-text);
    margin: 2rem auto 3rem;
    max-width: 1200px;
    padding: 0;
    width: 75%;
}

@media (max-width: 767px) {
    .rabe-wishlist-page {
        padding: 0 20px;
        width: 100%;
    }
}

.rabe-wishlist-account {
    display: grid;
    gap: 14px;
    margin-block-end: clamp(48px, 6vw, 80px);
    padding: 0;
}

.rabe-wishlist-account-intro {
    background: linear-gradient(135deg, #0e152f, #263238);
    border-radius: 20px;
    color: #fff;
    display: grid;
    gap: 4px;
    padding: 16px 22px;
}

.rabe-wishlist-account-intro span {
    color: var(--rabe-color-accent);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.rabe-wishlist-account-intro h2 {
    color: #fff;
    font-size: clamp(24px, 3vw, 34px);
    margin: 0;
}

.rabe-wishlist-account-intro p { color: rgb(255 255 255 / 82%); line-height: 1.55; margin: 0; }

.rabe-wishlist-account-panel {
    border: 1px solid rgb(0 168 130 / 28%);
    border-radius: 22px;
    padding: clamp(16px, 2vw, 24px);
}

.rabe-wishlist-account__header h2 {
    color: var(--rabe-color-text);
    line-height: 1.1;
    margin: 0 0 8px;
}

.rabe-wishlist-account__header h2 { font-size: clamp(22px, 2.4vw, 30px); }

.rabe-wishlist-account__header > p:last-child { color: var(--rabe-color-muted); line-height: 1.55; margin: 0; }

.rabe-wishlist-account__eyebrow {
    color: var(--rabe-color-primary) !important;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .04em;
    margin: 0 0 7px !important;
    text-transform: uppercase;
}

.rabe-wishlist-account-panel {
    background: #f9fcfd;
    border-color: #d7e5ef;
    box-shadow: 0 12px 30px rgb(14 21 47 / 4%);
}

.rabe-wishlist-account-stats {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 14px;
}

.rabe-wishlist-account-stat {
    background: linear-gradient(135deg, rgb(0 168 130 / 7%), rgb(255 206 0 / 11%));
    border: 1px solid rgb(0 168 130 / 24%);
    border-radius: 18px;
    display: grid;
    align-items: center;
    grid-template-columns: auto minmax(0, 1fr);
    min-block-size: 72px;
    padding: 13px 15px;
}

.rabe-wishlist-account-stat strong { color: var(--rabe-color-text); font-size: 28px; line-height: 1; }
.rabe-wishlist-account-stat span { color: var(--rabe-color-text); font-weight: 900; margin-inline-start: 10px; }

.rabe-wishlist-account-create {
    align-items: start;
    display: grid;
    gap: clamp(22px, 4vw, 46px);
    grid-template-columns: minmax(220px, .8fr) minmax(300px, 1.2fr);
}

.rabe-wishlist-account-form {
    background: #fff;
    border: 1px solid #d7e5ef;
    border-radius: 18px;
    display: grid;
    gap: 14px;
    padding: 18px;
}

.rabe-wishlist-account-form label { display: grid; gap: 7px; }
.rabe-wishlist-account-form label > span { color: var(--rabe-color-text); font-size: 13px; font-weight: 800; }
.rabe-wishlist-account-form input,
.rabe-wishlist-account-form textarea {
    background: #fff;
    border: 1px solid #b9c8d5;
    border-radius: 10px;
    color: var(--rabe-color-text);
    font: inherit;
    inline-size: 100%;
    padding: 11px 12px;
}
.rabe-wishlist-account-form textarea { resize: vertical; }
.rabe-wishlist-account-form input:focus,
.rabe-wishlist-account-form textarea:focus { border-color: var(--rabe-color-primary); box-shadow: 0 0 0 3px rgb(0 168 130 / 13%); outline: 0; }

.rabe-wishlist-account-button {
    align-items: center;
    appearance: none;
    background: var(--rabe-color-text);
    border: 1px solid var(--rabe-color-text);
    border-radius: 999px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 14px;
    font-weight: 850;
    inline-size: fit-content;
    justify-content: center;
    min-block-size: 42px;
    padding: 9px 18px;
}
.rabe-wishlist-account-button:hover { background: var(--rabe-color-petrol); border-color: var(--rabe-color-petrol); color: #fff; }
.rabe-wishlist-account-button:disabled { cursor: wait; opacity: .58; }
.rabe-wishlist-account-button--secondary { background: #fff; border-color: #9babb9; color: var(--rabe-color-text); }
.rabe-wishlist-account-button--danger { background: var(--rabe-color-danger); border-color: var(--rabe-color-danger); color: #fff; }
.rabe-wishlist-account-button--danger:hover { background: #8f1b13; border-color: #8f1b13; }
.rabe-wishlist-account-button--danger-link { background: transparent; border-color: transparent; color: var(--rabe-color-danger); padding-inline: 0; }
.rabe-wishlist-account-button--danger-link:hover { background: transparent; border-color: transparent; color: #8f1b13; text-decoration: underline; }

.rabe-wishlist-account-lists { display: grid; gap: 14px; margin-top: 22px; }

.rabe-wishlist-account-list {
    background: #fff;
    border: 1px solid #d7e5ef;
    border-radius: 18px;
    overflow: clip;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.rabe-wishlist-account-list[open] { border-color: rgb(0 168 130 / 38%); box-shadow: 0 12px 28px rgb(14 21 47 / 6%); }

.rabe-wishlist-account-list > summary {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(150px, 1fr) auto auto auto auto;
    list-style: none;
    padding: 18px;
}

.rabe-wishlist-account-list > summary::-webkit-details-marker { display: none; }

.rabe-wishlist-account-list__icon {
    align-items: center;
    background: var(--rabe-color-primary-soft);
    block-size: 44px;
    border-radius: 999px;
    color: var(--rabe-color-heart);
    display: inline-flex;
    inline-size: 44px;
    justify-content: center;
}

.woocommerce-MyAccount-navigation-link--wunschlisten a {
    align-items: center;
    display: flex !important;
    gap: 9px;
}

.woocommerce-MyAccount-navigation-link--wunschlisten a::before {
    background: currentColor;
    block-size: 20px;
    content: "";
    flex: 0 0 20px;
    inline-size: 20px;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 19S1 15.7 1 11.3C1 8.8 2.7 7 5 7c.8 0 1.7.4 2.2 1.1C7.8 7.4 8.7 7 9.5 7c2.3 0 4 1.8 4 4.3 0 4.4-5.5 7.7-7 7.7Z' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M16 7h7M16 12h7M16 17h5' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 19S1 15.7 1 11.3C1 8.8 2.7 7 5 7c.8 0 1.7.4 2.2 1.1C7.8 7.4 8.7 7 9.5 7c2.3 0 4 1.8 4 4.3 0 4.4-5.5 7.7-7 7.7Z' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M16 7h7M16 12h7M16 17h5' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rabe-wishlist-account-list__title { display: grid; gap: 3px; }
.rabe-wishlist-account-list__previews { display: flex; }
.rabe-wishlist-account-list__previews span { align-items: center; background: #fff; border: 1px solid #e0e9ef; border-radius: 8px; block-size: 42px; display: flex; inline-size: 42px; justify-content: center; margin-inline-start: -6px; overflow: hidden; }
.rabe-wishlist-account-list__previews span:first-child { margin-inline-start: 0; }
.rabe-wishlist-account-list__previews img { block-size: 38px; inline-size: 38px; object-fit: contain; }
.rabe-wishlist-account-list__title strong { color: var(--rabe-color-text); font-size: 18px; }
.rabe-wishlist-account-list__title small,
.rabe-wishlist-account-list time { color: var(--rabe-color-muted); font-size: 13px; }

.rabe-wishlist-account-badge {
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    padding: 6px 10px;
}

.rabe-wishlist-account-badge--private { background: #ffce00; color: #151515; }
.rabe-wishlist-account-badge--public { background: #d71945; color: #fff; }
.rabe-wishlist-account-badge--merkliste { background: #1769aa; color: #fff; }
.rabe-wishlist-account-list.is-merkliste { border-color: rgb(23 105 170 / 35%); }

.rabe-wishlist-account-list__toggle { font-size: 22px; transition: transform .18s ease; }
.rabe-wishlist-account-list[open] .rabe-wishlist-account-list__toggle { transform: rotate(180deg); }

.rabe-wishlist-account-list__settings {
    background: #f7fafc;
    border-top: 1px solid #e5edf3;
    display: grid;
    gap: 14px;
    padding: 18px;
}

.rabe-wishlist-account-form--edit {
    align-items: stretch;
    grid-template-columns: minmax(0, 1fr);
    max-inline-size: 680px;
}
.rabe-wishlist-account-form--edit .rabe-wishlist-account-button { white-space: nowrap; }

.rabe-wishlist-account-list__danger { display: grid; justify-items: start; }
.rabe-wishlist-account-list__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.rabe-wishlist-account-list__danger > p,
.rabe-wishlist-account-confirm p { display: grid; gap: 4px; margin: 0; }
.rabe-wishlist-account-list__danger p strong,
.rabe-wishlist-account-confirm p strong { color: var(--rabe-color-text); font-size: 14px; }
.rabe-wishlist-account-list__danger p span,
.rabe-wishlist-account-confirm p span { color: var(--rabe-color-muted); font-size: 13px; line-height: 1.45; }
.rabe-wishlist-account-confirm {
    align-items: center;
    background: var(--rabe-color-danger-soft);
    border: 1px solid var(--rabe-color-danger);
    border-radius: 14px;
    display: flex;
    gap: 18px;
    inline-size: 100%;
    justify-content: space-between;
    padding: 14px;
}
.rabe-wishlist-account-confirm[hidden] { display: none; }
.rabe-wishlist-account-confirm > div { display: flex; flex-wrap: wrap; gap: 8px; }

.rabe-wishlist-account-products {
    border-top: 1px solid #e5edf3;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 18px;
}

.rabe-wishlist-account-product {
    align-items: stretch;
    background: #fff;
    border: 1px solid rgb(14 21 47 / 12%);
    border-radius: 8px;
    box-shadow: 0 1px 2px rgb(14 21 47 / 4%), 0 6px 18px rgb(14 21 47 / 5%);
    display: grid;
    gap: 16px;
    grid-template-columns: 96px minmax(0, 1fr);
    min-block-size: 100%;
    padding: 14px 16px;
}

.rabe-wishlist-account-product__image {
    align-items: center;
    align-self: center;
    background: #fff;
    border-radius: 8px;
    display: flex;
    inline-size: 96px;
    justify-content: center;
    min-block-size: 96px;
}
.rabe-wishlist-account-product__image img {
    block-size: auto;
    inline-size: auto;
    max-block-size: 88px;
    max-inline-size: 88px;
    object-fit: contain;
}
.rabe-wishlist-account-product__content {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-inline-size: 0;
}
.rabe-wishlist-account-product h3 { font-size: 15px; font-weight: 700; line-height: 1.35; margin: 0; }
.rabe-wishlist-account-product h3 a { color: var(--rabe-color-text); text-decoration: none; }
.rabe-wishlist-account-product h3 a:hover { color: var(--rabe-color-petrol); }
.rabe-wishlist-account-product p { color: var(--rabe-color-muted); font-size: 13px; margin: 0; }
.rabe-wishlist-account-product__price { color: var(--rabe-color-text); font-size: 18px; font-weight: 750; }
.rabe-wishlist-account-product__price del { color: var(--rabe-color-muted); font-size: 13px; font-weight: 500; }
.rabe-wishlist-account-product__price ins { color: #8b0000; text-decoration: none; }
.rabe-wishlist-account-product__stock {
    align-self: start;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1;
    padding: 5px 9px;
}
.rabe-wishlist-account-product__stock.is-available { background: rgb(0 168 130 / 12%); color: #006b52; }
.rabe-wishlist-account-product__stock.is-unavailable { background: #fff0ee; color: #b42318; }

.rabe-wishlist-account-product__toolbar {
    align-items: center;
    display: flex;
    gap: 8px;
}

.rabe-wishlist-account-product__qty {
    align-items: stretch;
    background: #fff;
    border: 1px solid #d5dee6;
    border-radius: 8px;
    display: inline-flex;
    overflow: hidden;
}
.rabe-wishlist-account-product__qty button {
    align-items: center;
    background: #fff;
    border: 0;
    color: #0e152f;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 18px;
    font-weight: 600;
    inline-size: 36px;
    justify-content: center;
    line-height: 1;
    min-block-size: 42px;
    padding: 0;
}
.rabe-wishlist-account-product__qty button:hover { background: #f0f4f6; }
.rabe-wishlist-account-product__qty button:focus-visible {
    outline: 2px solid #00a88e;
    outline-offset: -2px;
}
.rabe-wishlist-account-product__qty input {
    -moz-appearance: textfield;
    appearance: textfield;
    background: #fff;
    border: 0;
    border-inline: 1px solid #e5edf3;
    color: #0e152f;
    font: inherit;
    font-size: 15px;
    font-weight: 700;
    inline-size: 46px;
    min-block-size: 42px;
    padding: 0;
    text-align: center;
}
.rabe-wishlist-account-product__qty input::-webkit-outer-spin-button,
.rabe-wishlist-account-product__qty input::-webkit-inner-spin-button {
    appearance: none;
    margin: 0;
}

.rabe-wishlist-account-product button.is-danger {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: var(--rabe-color-danger);
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 42px;
    inline-size: 42px;
    justify-content: center;
    min-block-size: 42px;
    padding: 0;
}
.rabe-wishlist-account-product button.is-danger:hover { background: var(--rabe-color-danger-soft); }
.rabe-wishlist-account-product button.is-danger svg { fill: none; block-size: 22px; inline-size: 22px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }

.rabe-wishlist-account-product button.is-primary {
    background: #0e152f;
    border: 0;
    border-radius: 999px;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    margin-top: auto;
    min-block-size: 42px;
    padding: 8px 16px;
    text-align: center;
    white-space: nowrap;
    width: 100%;
}
.rabe-wishlist-account-product button.is-primary:hover { background: var(--rabe-color-petrol); }
.rabe-wishlist-account-products__empty { color: var(--rabe-color-muted); grid-column: 1 / -1; margin: 0; }

.rabe-wishlist-account-empty {
    background: #fff;
    border: 1px dashed #cdd8e5;
    border-radius: 18px;
    color: var(--rabe-color-muted);
    display: grid;
    gap: 8px;
    margin-top: 22px;
    padding: 22px;
}

.rabe-wishlist-account-empty strong { color: var(--rabe-color-text); font-size: 18px; }

.rabe-wishlist-public {
    box-sizing: border-box;
    inline-size: 100%;
    max-inline-size: none;
}

.rabe-wishlist-public__hero {
    background: transparent;
    border-radius: 0;
    color: var(--rabe-color-text);
    display: grid;
    gap: 4px;
    margin-block-end: 1.75rem;
    padding: 0;
}

.rabe-wishlist-public__hero > span { color: var(--rabe-color-primary); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.rabe-wishlist-public__hero h1,
.rabe-wishlist-public__hero h2 { color: var(--rabe-color-text); font-size: clamp(1.7rem, 2.4vw, 2.2rem); font-weight: 600; line-height: 1.15; margin: 0; }
.rabe-wishlist-public__hero p { color: var(--rabe-color-muted); font-size: 15px; line-height: 1.5; margin: 0; }
.rabe-wishlist-public__hero small { color: var(--rabe-color-muted); font-size: 14px; }

.rabe-wishlist-cards,
.rabe-wishlist-items {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fill, minmax(230px, 260px));
    justify-content: start;
    list-style: none;
    margin: 0;
    padding: 0;
}

.rabe-wishlist-card,
.rabe-wishlist-item {
    background: #fff;
    border: 1px solid rgb(14 21 47 / 12%);
    border-radius: 8px;
    box-shadow: 0 1px 2px rgb(14 21 47 / 4%), 0 6px 18px rgb(14 21 47 / 5%);
    display: flex;
    flex-direction: column;
    min-block-size: 100%;
    overflow: hidden;
    padding: 0;
}

.rabe-wishlist-item__image {
    align-items: center;
    aspect-ratio: auto;
    background: #fff;
    block-size: 160px;
    display: flex;
    justify-content: center;
    max-block-size: 160px;
    min-block-size: 160px;
    padding: 12px;
}
.rabe-wishlist-item__image img {
    block-size: auto;
    inline-size: auto;
    max-block-size: 120px;
    max-inline-size: 100%;
    object-fit: contain;
}
.rabe-wishlist-item__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 8px;
    padding: 12px 14px 14px;
}
.rabe-wishlist-item__stock {
    align-self: start;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1;
    padding: 5px 9px;
}
.rabe-wishlist-item__stock.is-available { background: rgb(0 168 130 / 12%); color: #006b52; }
.rabe-wishlist-item__stock.is-unavailable { background: #fff0ee; color: #b42318; }
.rabe-wishlist-item h2,
.rabe-wishlist-item h3 { font-size: 15px; font-weight: 700; line-height: 1.35; margin: 0; }
.rabe-wishlist-item h2 a,
.rabe-wishlist-item h3 a { color: var(--rabe-color-text); text-decoration: none; }
.rabe-wishlist-item h2 a:hover,
.rabe-wishlist-item h3 a:hover { color: var(--rabe-color-petrol); }
.rabe-wishlist-item__price { color: #0e152f; font-size: 18px; font-weight: 750; }
.rabe-wishlist-item__price del { color: var(--rabe-color-muted); font-size: 13px; font-weight: 500; }
.rabe-wishlist-item__price ins { color: #8b0000; text-decoration: none; }
.rabe-wishlist-item__content p { color: var(--rabe-color-muted); font-size: 14px; margin: 0; }
.rabe-wishlist-item__content .button {
    align-items: center;
    background: #0e152f;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    justify-content: center;
    margin-top: auto;
    min-block-size: 42px;
    padding: 8px 16px;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    width: 100%;
}
.rabe-wishlist-item__content .button:hover { background: var(--rabe-color-petrol); color: #fff; }

.rabe-wishlist-live {
    block-size: 1px;
    clip-path: inset(50%);
    inline-size: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
}

.rabe-save-for-later-wrap {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.rabe-save-for-later {
    align-items: center;
    background: transparent;
    border: 0;
    color: var(--rabe-color-petrol);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-weight: 800;
    gap: 7px;
    min-block-size: 44px;
    padding: 7px 4px;
}
.rabe-save-for-later:hover { color: var(--rabe-color-danger); }
.rabe-save-for-later svg { display: block; }
.rabe-save-for-later.is-pending { cursor: wait; opacity: .65; }
.wc-block-cart-items__row.is-saving-for-later,
.woocommerce-cart-form__cart-item.is-saving-for-later { display: none; }

.rabe-cart-suggestions {
    background: #f8fbfc;
    border: 1px solid #d9e6eb;
    border-radius: 20px;
    margin: 34px auto clamp(48px, 6vw, 80px);
    box-sizing: border-box;
    inline-size: 100%;
    max-inline-size: none;
    padding: clamp(20px, 3vw, 32px);
    transform-origin: top left;
}
.rabe-cart-suggestions > h2 { color: #0e152f; font-size: clamp(24px, 3vw, 34px); margin: 0; }
.rabe-cart-suggestions > p { color: var(--rabe-color-muted); margin: 7px 0 20px; }
.rabe-cart-suggestions__grid { display: grid; gap: 20px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) { .rabe-cart-suggestions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .rabe-cart-suggestions__grid { grid-template-columns: 1fr; } }
.rabe-cart-suggestion { align-items: center; background: #fff; border: 1px solid #e0e9ef; border-radius: 14px; display: grid; gap: 16px; grid-template-columns: 104px minmax(0, 1fr); min-block-size: 176px; padding: 15px; }
.rabe-cart-suggestion.is-pending { opacity: .72; }
.rabe-cart-suggestion__image { align-items: center; display: flex; justify-content: center; }
.rabe-cart-suggestion__image img { block-size: 100px; inline-size: 100px; object-fit: contain; }
.rabe-cart-suggestion__content { align-content: center; display: grid; gap: 8px; min-inline-size: 0; }
.rabe-cart-suggestion h3 { color: #0e152f; font-size: 15px; line-height: 1.35; margin: 0; }
.rabe-cart-suggestion h3 a { color: inherit; overflow-wrap: anywhere; text-decoration: none; }
.rabe-cart-suggestion h3 a:hover { color: var(--rabe-color-petrol); }
.rabe-cart-suggestion strong { color: #0e152f; }
.rabe-cart-suggestion__badge { background: #ffce00; border-radius: 999px; color: #151515; font-size: 11px; font-weight: 900; justify-self: start; padding: 4px 8px; }
.rabe-cart-suggestion__badge.is-merkliste { background: #1769aa; color: #fff; }
.rabe-cart-suggestion button { background: #0e152f; border: 0; border-radius: 999px; color: #fff; cursor: pointer; font: inherit; font-size: 14px; font-weight: 800; justify-self: start; min-block-size: 42px; padding: 10px 18px; white-space: nowrap; }
.rabe-cart-suggestion button:hover { background: var(--rabe-color-petrol); }
.rabe-cart-suggestion button:disabled { cursor: wait; opacity: .55; }
.rabe-cart-suggestion button.is-pending { min-inline-size: 185px; }

.rabe-wishlist-dialog-backdrop {
    align-items: center;
    background: rgb(15 23 42 / 58%);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 18px;
    position: fixed;
    z-index: 100000;
}

.rabe-wishlist-dialog {
    background: #fff;
    border: 1px solid var(--rabe-color-border);
    border-radius: 20px;
    box-shadow: 0 24px 70px rgb(15 23 42 / 28%);
    inline-size: min(100%, 560px);
    max-block-size: min(720px, calc(100vh - 36px));
    overflow: auto;
    padding: 26px;
    position: relative;
}

.rabe-wishlist-dialog h2 { color: var(--rabe-color-text); font-size: clamp(24px, 4vw, 32px); margin: 0; padding-inline-end: 42px; }
.rabe-wishlist-dialog__help { color: var(--rabe-color-muted); font-size: 16px; line-height: 1.5; margin: 8px 0 20px; }
.rabe-wishlist-dialog__close { align-items: center; background: transparent; border: 0; border-radius: 8px; color: var(--rabe-color-text); cursor: pointer; display: flex; font-size: 28px; block-size: 44px; inline-size: 44px; justify-content: center; padding: 0; position: absolute; right: 12px; top: 12px; }
.rabe-wishlist-dialog__lists { border: 0; display: grid; gap: 9px; margin: 0; padding: 0; }
.rabe-wishlist-dialog__list { align-items: center; background: var(--rabe-color-surface-soft); border: 1px solid var(--rabe-color-border); border-radius: 12px; cursor: pointer; display: flex; gap: 12px; min-block-size: 54px; padding: 10px 13px; }
.rabe-wishlist-dialog__list:has(input:checked) { border-color: var(--rabe-color-primary); box-shadow: 0 0 0 1px var(--rabe-color-primary); }
.rabe-wishlist-dialog__list input { block-size: 22px; inline-size: 22px; }
.rabe-wishlist-dialog__list span { display: grid; gap: 2px; }
.rabe-wishlist-dialog__list strong { color: var(--rabe-color-text); font-size: 16px; }
.rabe-wishlist-dialog__list small { color: var(--rabe-color-muted); font-size: 13px; }
.rabe-wishlist-dialog__create { align-items: end; border-top: 1px solid var(--rabe-color-border); display: grid; gap: 10px; grid-template-columns: minmax(0, 1fr) auto; margin-top: 18px; padding-top: 18px; }
.rabe-wishlist-dialog__create label { display: grid; gap: 6px; }
.rabe-wishlist-dialog__create label span { color: var(--rabe-color-text); font-size: 14px; font-weight: 800; }
.rabe-wishlist-dialog__create input { border: 1px solid #aebcca; border-radius: 10px; font: inherit; min-block-size: 46px; padding: 9px 11px; }
.rabe-wishlist-dialog__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; margin-top: 20px; }
.rabe-wishlist-dialog__remove { background: var(--rabe-color-danger-soft); border: 1px solid var(--rabe-color-danger); border-radius: 8px; color: #000; cursor: pointer; font: inherit; font-weight: 800; margin-inline-end: auto; min-block-size: 44px; padding: 8px 10px; }
.rabe-wishlist-dialog__error { background: var(--rabe-color-danger-soft); border-radius: 9px; color: #000; margin: 12px 0 0; padding: 10px; }
.rabe-wishlist-bulk-preview { border: 1px solid var(--rabe-color-border); border-radius: 12px; list-style: none; margin: 0; max-block-size: 300px; overflow: auto; padding: 0; }
.rabe-wishlist-bulk-preview li { align-items: baseline; display: flex; gap: 16px; justify-content: space-between; padding: 12px 14px; }
.rabe-wishlist-bulk-preview li + li { border-top: 1px solid var(--rabe-color-border); }
.rabe-wishlist-bulk-preview span { color: var(--rabe-color-text); min-inline-size: 0; overflow-wrap: anywhere; }
.rabe-wishlist-bulk-preview strong { color: var(--rabe-color-petrol); white-space: nowrap; }
.rabe-wishlist-dialog :focus-visible { outline: 3px solid var(--rabe-color-accent); outline-offset: 2px; }

@media (prefers-reduced-motion: no-preference) {
    .rabe-wishlist-button { transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
}

@media (max-width: 980px) {
    .rabe-wishlist-account-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rabe-wishlist-account-create { grid-template-columns: 1fr; }
    .rabe-wishlist-account-list > summary { grid-template-columns: auto minmax(0, 1fr) auto; }
    .rabe-wishlist-account-list__previews { display: none; }
    .rabe-wishlist-account-list time { grid-column: 2; }
    .rabe-wishlist-account-list__toggle { grid-column: 3; grid-row: 1 / span 2; }
    .rabe-share-panel { grid-template-columns: repeat(4, minmax(54px, 1fr)); }
}

@media (max-width: 640px) {
    .rabe-wishlist-account-stats,
    .rabe-wishlist-account-products { grid-template-columns: 1fr; }
    .rabe-wishlist-account-list > summary { gap: 10px; grid-template-columns: auto minmax(0, 1fr) auto; }
    .rabe-wishlist-account-badge { grid-column: 2; justify-self: start; }
    .rabe-wishlist-account-list time { display: none; }
    .rabe-wishlist-account-list__previews { display: none; }
    .rabe-wishlist-account-list__toggle { grid-row: 1 / span 2; }
    .rabe-wishlist-account-confirm { align-items: stretch; flex-direction: column; }
    .rabe-share-panel { grid-template-columns: repeat(3, minmax(54px, 1fr)); }
    .rabe-wishlist-toast__content { grid-template-columns: auto minmax(0, 1fr) auto; padding: 12px 12px 12px 14px; }
    .rabe-wishlist-dialog { border-radius: 16px; padding: 20px; }
    .rabe-wishlist-dialog__create { grid-template-columns: 1fr; }
    .rabe-wishlist-dialog__actions { align-items: stretch; flex-direction: column-reverse; }
    .rabe-wishlist-dialog__actions > * { inline-size: 100%; }
    .rabe-cart-suggestion { grid-template-columns: 82px minmax(0, 1fr); min-block-size: 0; padding: 12px; }
    .rabe-cart-suggestion__image img { block-size: 78px; inline-size: 78px; }
}
