/**
 * Entregas MICE Core - catalogue styles.
 *
 * Unopinionated, easily overridable styles for the day selector, the
 * minimum-order progress bar, the fair search and the upcoming-fairs list.
 * BEM-ish class names, all prefixed `emc-` so they never collide with
 * theme/Elementor classes. Enqueued on fair-scoped catalogue views and on the
 * `/ferias/` archive by Infrastructure\WordPress\CatalogueAssets.
 *
 * Deliberately low-specificity (single class selectors, no !important) so a
 * theme or an Elementor custom-CSS block can override any of this without a
 * specificity fight.
 */

.emc-day-selector {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
    margin: 0 0 1.5em;
}

.emc-day-selector__item {
    display: inline-block;
    padding: 0.5em 1em;
    border: 1px solid currentColor;
    border-radius: 999px;
    text-decoration: none;
    line-height: 1.2;
}

.emc-day-selector__item--active {
    font-weight: 700;
    background-color: currentColor;
}

.emc-day-selector__item--active,
.emc-day-selector__item:focus-visible {
    outline-offset: 2px;
}

.emc-progress-bar {
    margin: 0 0 1.5em;
}

.emc-progress-bar__track {
    width: 100%;
    height: 0.75em;
    border-radius: 999px;
    background-color: rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.emc-progress-bar__fill {
    height: 100%;
    min-width: 0;
    transition: width 0.3s ease;
}

.emc-progress-bar__label {
    margin: 0.5em 0 0;
    font-size: 0.9em;
}

.emc-fair-search__form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
    margin: 0 0 1.5em;
}

.emc-fair-search__form input[type='search'] {
    flex: 1 1 auto;
    min-width: 0;
}

.emc-fair-search__group {
    margin: 0 0 1.5em;
}

.emc-fair-search__group-title {
    margin: 0 0 0.5em;
}

.emc-fair-search__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.emc-fair-search__item {
    padding: 0.35em 0;
}

.emc-fair-search__item--finished {
    opacity: 0.6;
}

.emc-fair-search__empty {
    margin: 0 0 1em;
}

.emc-generic-fair-form__field {
    display: flex;
    flex-direction: column;
    gap: 0.25em;
    margin: 0 0 1em;
}

.emc-generic-fair-form__error {
    color: #b32d2e;
    margin: 0 0 1em;
}

.emc-upcoming-fairs__list {
    display: flex;
    gap: 1em;
    margin: 0 0 1.5em;
    padding: 0 0 0.5em;
    list-style: none;
    overflow-x: auto;
}

.emc-upcoming-fairs__item {
    flex: 0 0 auto;
    width: 220px;
}

.emc-upcoming-fairs__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.emc-upcoming-fairs__image {
    display: block;
    width: 100%;
    height: auto;
}

.emc-upcoming-fairs__body {
    display: block;
    margin-top: 0.5em;
}

.emc-upcoming-fairs__name {
    display: block;
    font-weight: 700;
}

.emc-upcoming-fairs__dates {
    display: block;
    font-size: 0.9em;
}
