/*
 * Warenkorb-Symbol [sit_cart_icon]. Farben/Größe kommen als CSS-Variablen
 * aus den Modul-Einstellungen. Ausrichtung/Abstände/Schriftgröße
 * kommen vom Elternelement.
 */

.sit-cart-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    color: var(--sit-cart-color, inherit);
    text-decoration: none;
    line-height: 1;
}

.sit-cart-icon:hover,
.sit-cart-icon:focus {
    color: var(--sit-cart-color, inherit);
    text-decoration: none;
}

.sit-cart-icon__icon,
.sit-cart-icon__icon svg,
.sit-cart-icon__icon img {
    display: block;
    width: var(--sit-cart-size, 24px);
    height: var(--sit-cart-size, 24px);
}

.sit-cart-icon__icon img {
    object-fit: contain;
}

/* Anzahl als Badge am Symbol */
.sit-cart-icon--badge .sit-cart-icon__count {
    position: absolute;
    top: -0.45em;
    left: calc(var(--sit-cart-size, 24px) - 0.7em);
    min-width: 1.6em;
    height: 1.6em;
    padding: 0 0.4em;
    box-sizing: border-box;
    border-radius: 0.8em;
    background: var(--sit-cart-badge-bg, #000);
    color: var(--sit-cart-badge-text, #fff);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.6em;
    text-align: center;
}

.sit-cart-icon--badge .sit-cart-icon__count.is-empty {
    display: none;
}

/* Anzahl als Text neben dem Symbol ("3 Artikel") */
.sit-cart-icon--text .sit-cart-icon__count {
    margin-left: 0.2em;
}

.sit-cart-icon--text .sit-cart-icon__label {
    margin-left: -0.15em;
}

.sit-cart-icon__total {
    margin-left: 0.6em;
    white-space: nowrap;
}
