/* Order form: 2-step accordion */
.acc { border: 1.5px solid var(--border); border-radius: 20px; background: var(--bg); transition: border-color .2s; }
.acc.is-open { border-color: var(--border-strong); }
.acc__head { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; padding: 8px 12px 8px 8px; font-family: var(--font-text); font-size: 1rem; }
.acc__toggle { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 8px 0 0; border: 0; background: transparent; font: 600 1.125rem/1.2 var(--font-display); color: var(--text); text-align: left; }
.acc__num { display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--action); color: var(--btn-text); font: 600 1rem/1 var(--font-text); }
.acc.is-disabled .acc__toggle { cursor: not-allowed; color: var(--text-muted); }
.acc.is-disabled .acc__num { background: var(--text-muted); }
.acc__sum { flex: 1 1 140px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text-muted); font-size: var(--fs-small); }
.acc__sum[hidden], .acc__edit[hidden] { display: none; }
.acc__edit { padding: 0 8px; }
.acc__body { display: grid; grid-template-rows: 0fr; visibility: hidden; transition: grid-template-rows .3s var(--ease), visibility 0s linear .3s; }
.acc.is-open .acc__body { grid-template-rows: 1fr; visibility: visible; transition: grid-template-rows .3s var(--ease), visibility 0s; }
.acc__inner { min-height: 0; overflow: hidden; padding: 0 20px; }
.acc.is-open .acc__inner { padding-bottom: 20px; }
.acc__form { display: grid; gap: 18px; align-content: start; }
.acc__form > :first-child { margin-top: 4px; }
.acc__inner .picks { margin: 4px 0 0; }
.acc__next { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 18px; }
.acc__hint { font-size: var(--fs-small); color: var(--text-muted); }
.acc__hint[hidden] { display: none; }
@media (max-width: 900px) { .acc__inner { padding: 0 12px; } .acc.is-open .acc__inner { padding-bottom: 14px; } }
