/* Dish options (sauce, extras) on menu cards, in the cart and in the CMS dish form. */
.opt-box { margin: 0 0 8px; border: 1px solid var(--color-line); border-radius: 12px; background: var(--color-surface-2); }
.opt-box > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 12px; font-size: .82rem; }
.opt-box > summary::-webkit-details-marker { display: none; }
.opt-box > summary:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; border-radius: 12px; }
.opt-summary { color: var(--color-text-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.opt-change { flex: none; font-weight: 700; color: var(--color-primary); white-space: nowrap; }
.opt-change::after { content: " ▾"; }
.opt-box[open] .opt-change::after { content: " ▴"; }
.opt-group { border: 0; margin: 0; padding: 2px 12px 10px; min-width: 0; }
.opt-group legend { padding: 0; margin-bottom: 6px; font-size: .74rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--color-text-muted); }
.opt-group legend small { font-weight: 500; text-transform: none; letter-spacing: 0; }
.opt-choices { display: flex; flex-wrap: wrap; gap: 6px; }
.opt-choices .pill { position: relative; }
.opt-choices .pill span { background: var(--color-surface); }
.opt-choices .pill small { font-weight: 600; opacity: .85; }
.cart-line-opts { display: block; font-size: .8rem; color: var(--color-text-muted); margin-top: 2px; }
.card-served { font-size: .82rem; font-weight: 600; margin: 0 0 6px; color: var(--color-text-muted); }
.card-served.is-now { color: var(--color-success); }
.notice-served { background: var(--color-surface-2); border: 1px solid var(--color-line); margin: 0 0 10px; }

/* CMS */
.opt-editor { border: 1px dashed var(--color-line); border-radius: 12px; padding: 12px; margin-bottom: 12px; }
.opt-editor .form-grid { margin-bottom: 8px; }
.served-days { display: flex; flex-wrap: wrap; gap: 6px 14px; }
