/* Stepfox Food Delivery — field family mechanics (P-CORE). Ceiling: 20 lines (SPEC §3.1, §4.1). Plugin markup only, token reads only. The dish-art qty badge yields to an in-cart add button in the same dish (its stepper/count already shows the number). */
.sfd-icon{display:inline-block;flex:none;vertical-align:middle}.sfd-field>.sfd-field__icon{width:1em;height:1em;margin-inline-end:.3em;vertical-align:-.125em}.sfd-field--review-verified>.sfd-field__icon{color:var(--sfd-success-ink)}
.sfd-cover,.sfd-dish-art{display:block;position:relative;overflow:hidden;background:var(--sfd-ground,var(--sfd-surface-2))}
.sfd-cover>.sfd-cover__img,.sfd-dish-art>.sfd-dish-art__img{display:block;width:100%;height:100%;object-fit:cover}
.sfd-dish-art>.sfd-dish-art__img{object-fit:contain}
.sfd-cover.is-closed .sfd-cover__img,.sfd-dish-art.is-sold-out .sfd-dish-art__img{filter:grayscale(1);opacity:.55}
.sfd-dish-art__qty{position:absolute;top:0;right:0;min-width:1.75em;padding:.15em .45em;border-radius:var(--sfd-radius-pill);background:var(--sfd-accent);color:var(--sfd-on-accent);font:inherit;font-variant-numeric:var(--sfd-nums,tabular-nums);text-align:center}[data-sfd-dish]:has(.sfd-add-button.is-in-cart) .sfd-dish-art__qty{display:none}
.sfd-logo,.sfd-logo__img,.sfd-art,.sfd-art__img{display:block;max-width:100%;height:auto}
.sfd-rating{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25em;font-variant-numeric:var(--sfd-nums,tabular-nums)}
.sfd-rating>.sfd-icon,.sfd-rating__fill{color:var(--sfd-star)}
.sfd-rating__stars{position:relative;display:inline-flex}.sfd-rating__track{display:inline-flex;color:var(--sfd-line)}
.sfd-rating__fill{position:absolute;inset:0 auto 0 0;display:inline-flex;width:var(--sfd-fill,0%);overflow:hidden}
.sfd-rating__bars{display:grid;gap:.25em;flex-basis:100%;margin:0;padding:0;list-style:none}.sfd-rating__bars li{display:grid;grid-template-columns:1em 1fr;align-items:center;gap:.5em}
.sfd-rating__bars li::after{content:"";height:.375em;border-radius:var(--sfd-radius-pill);background:linear-gradient(90deg,var(--sfd-star) var(--sfd-share,0%),var(--sfd-surface-3) 0)}
.sfd-open-state{--sfd-state:var(--sfd-success-ink);display:inline-flex;align-items:center;gap:.35em;color:var(--sfd-state)}
.sfd-open-state.is-closing-soon,.sfd-open-state.is-busy{--sfd-state:var(--sfd-accent-ink)}.sfd-open-state.is-closed,.sfd-open-state.is-paused{--sfd-state:var(--sfd-danger-ink)}
.sfd-open-state__dot{width:.5em;height:.5em;border-radius:var(--sfd-radius-pill);background:currentColor}
.sfd-diet{display:flex;flex-wrap:wrap;gap:.35em;margin:0;padding:0;list-style:none}.sfd-diet__item{display:inline-flex;align-items:center;gap:.25em;color:var(--sfd-diet-fg,var(--sfd-muted))}
.sfd-diet__item--vegan,.sfd-diet__item--vegetarian,.sfd-diet__item--gluten-free{--sfd-diet-fg:var(--sfd-success-ink)}.sfd-diet__item--spicy,.sfd-diet__item--contains-nuts{--sfd-diet-fg:var(--sfd-danger-ink)}
.sfd-allergens>summary{cursor:pointer}.sfd-promo-badge--all{display:inline-flex;flex-wrap:wrap;gap:.35em}.sfd-hours{border-collapse:collapse}.sfd-hours th{padding-inline-end:1em;text-align:start;font:inherit}.sfd-hours .is-today{font-weight:var(--wp--custom--sfd--strong,700)}
