/* ---------------------------------------------------------
   Choice card
   --------------------------------------------------------- */

.ek-choice-card {
    position: relative;
}

/* ---------------------------------------------------------
   Choice content
   --------------------------------------------------------- */

.ek-choice-content {

    padding: var(--ek-gap-sm);
}

.ek-choice-content h4 {

    margin: var(--ek-gap-sm) 0;
}

.ek-choice-description {

    color: var(--ek-text-muted);
    font-size: var(--ek-font-md);
}

/* ---------------------------------------------------------
   Min-Max Block
   --------------------------------------------------------- */

.ek-choice-limits {

    margin: var(--ek-gap-sm);

    color: var(--ek-text-muted);
    font-size: var(--ek-font-md);
}

/* ---------------------------------------------------------
   Price
   --------------------------------------------------------- */

.ek-choice-price {
    margin-top: var(--ek-gap-xs);
    margin-bottom: var(--ek-gap-sm);

    color: var(--ek-error);
    text-align: center;
}

.ek-choice-price.has-sale {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--ek-gap-xs);
    align-items: center;
}

.ek-choice-price-regular,
.ek-choice-price-sale {
    min-width: 0;
}

.ek-choice-price.has-sale .ek-choice-price-regular {
    opacity: 0.65;
}

.ek-choice-price-sale {
    text-decoration: none;
    font-weight: 600;
}

/* ---------------------------------------------------------
   Notices
   --------------------------------------------------------- */

.ek-choice-notices {
    position: absolute;

    bottom: 5%;
    left: 0;

    width: 100%;
    box-sizing: border-box;

    padding: 0 var(--ek-gap-xs);

    display: grid;
    gap: 0;

    pointer-events: none;
}

.ek-choice-notice {
    
    margin: 0;
    padding: 0;
    box-sizing: border-box;

    text-align: center;

    font-size: var(--ek-font-sm);
    line-height: 1.3;

    overflow-wrap: anywhere;
}

.ek-choice-card.is-disabled {
    cursor: not-allowed;
}

.ek-choice-card.is-disabled .ek-choice-image,
.ek-choice-card.is-disabled .ek-choice-content {
    filter: grayscale(1);
    opacity: 0.2;
}

.ek-choice-card.is-disabled .ek-choice-notice {
    filter: none;
    opacity: 1;
}

/* ---------------------------------------------------------
   Min-Max icons
   --------------------------------------------------------- */

.ek-choice-limit-icon {
    width: 48px;
    height: 48px;

    justify-self: center;

    background-color: currentColor;

    -webkit-mask-image: var(--ek-icon);
    mask-image: var(--ek-icon);

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    -webkit-mask-position: center;
    mask-position: center;

    -webkit-mask-size: contain;
    mask-size: contain;

    color: var(--ek-text-muted);
}

.ek-choice-limit-icon.is-highlighted {
    color: var(--ek-error);
}