/**
 * YourNode Allergenen voor WooCommerce
 * Frontend styling
 * Version: 2.2.0
 * Author: YourNode
 */

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.allergens_container {
    width: 100%;
    margin: 0;
}

.allergens_row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
}

.allergens_row [class^="colu"] {
    width: auto;
    margin: 0;
    text-align: left;
}

.entry-summary-items > .ct-ynafw-allergens {
    --product-element-spacing: var(--ynafw-spacing-desktop, 25px);
}

.ct-ynafw-allergens.ynafw-empty {
    display: none !important;
    margin-bottom: 0 !important;
}

@media (max-width: 999.98px) {
    .entry-summary-items > .ct-ynafw-allergens {
        --product-element-spacing: var(--ynafw-spacing-tablet, var(--ynafw-spacing-desktop, 25px));
    }
}

@media (max-width: 689.98px) {
    .entry-summary-items > .ct-ynafw-allergens {
        --product-element-spacing: var(--ynafw-spacing-mobile, var(--ynafw-spacing-tablet, var(--ynafw-spacing-desktop, 25px)));
    }
}

.ynafw-allergens-output {
    width: 100%;
}

.ynafw-allergens-output .allergen_title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 14px;
    color: var(--theme-heading-color, currentColor);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.ynafw-allergens-output .allergen_title::before {
    content: "";
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 999px;
    background: var(--theme-palette-color-1, currentColor);
}

.ynafw-allergens-output .allergen_title::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--theme-border-color, rgba(0, 0, 0, 0.12));
}

.ynafw-allergen-item {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.ynafw-allergen-item br {
    display: none;
}

.ynafw-allergen-icon {
    display: block;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    object-fit: contain;
}

.ynafw-allergen-name,
.allergen_text {
    display: block;
    color: var(--theme-text-color, currentColor);
    font-size: 0.96rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

/* Stijl 1: strak minimalistisch */
.ynafw-style-minimal .ynafw-allergen-item {
    min-height: 46px;
    padding: 0;
    background: transparent;
    border: 0;
}

.ynafw-style-minimal .ynafw-allergen-icon {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
}

/* Stijl 2: premium badges */
.ynafw-style-badge .allergens_row {
    gap: 10px;
}

.ynafw-style-badge .ynafw-allergen-item {
    min-height: 56px;
    padding: 9px 14px 9px 10px;
    border: 1px solid var(--theme-border-color, rgba(0, 0, 0, 0.12));
    border-radius: 999px;
    background: color-mix(in srgb, var(--theme-palette-color-8, #fff) 82%, transparent);
}

.ynafw-style-badge .ynafw-allergen-icon {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
}

.single_variation .ynafw-allergens-output,
.woocommerce-variation .ynafw-allergens-output,
.woocommerce-variation-afwv.ynafw-allergens-output {
    margin-top: 0;
}

@media (max-width: 689.98px) {
    .ynafw-allergens-output .allergen_title {
        margin-bottom: 12px;
        font-size: 0.95rem;
    }

    .allergens_row {
        gap: 10px 14px;
    }

    .ynafw-allergen-name,
    .allergen_text {
        font-size: 0.93rem;
    }

    .ynafw-style-badge .ynafw-allergen-item {
        padding-right: 12px;
    }
}
