.menu-order-button { white-space: nowrap; gap: 7px; min-height: 34px; }
.menu-order-button svg { width: 16px; height: 16px; }
.menu-order-dialog { width: min(540px, calc(100% - 24px)); max-height: calc(100dvh - 32px); border: 1px solid var(--line); }
.menu-order-dialog[open] { display: flex; flex-direction: column; }
.menu-order-dialog::backdrop { background: #14251d70; backdrop-filter: blur(3px); }
.menu-order-dialog .modal-header { flex-shrink: 0; padding: 20px 24px; }
.menu-order-dialog h2 { font-size: 18px; margin: 0; }
.menu-order-description { margin: 0; padding: 15px 24px; font-size: 12px; line-height: 1.8; color: var(--muted); }
.menu-order-scroll { min-height: 0; max-height: 52vh; overflow-y: auto; padding: 3px 24px 12px; overscroll-behavior: contain; }
.menu-order-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.menu-order-row { display: grid; grid-template-columns: 22px 16px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fafbf7; cursor: grab; }
.menu-order-row.is-dragging { opacity: .4; }
.menu-order-row.drop-before { box-shadow: 0 -3px 0 #184c42; }
.menu-order-row.drop-after { box-shadow: 0 3px 0 #184c42; }
.menu-order-position { color: var(--muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.menu-order-grip { color: #a1b0a7; display: flex; }
.menu-order-grip svg { width: 13px; height: 18px; }
.menu-order-name { display: flex; gap: 10px; align-items: center; font-size: 13px; font-weight: 600; min-width: 0; }
.menu-order-name svg { width: 17px; height: 17px; flex-shrink: 0; color: #477064; }
.menu-order-moves { display: flex; gap: 5px; }
.menu-order-moves button { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 1px solid #dbe4d8; border-radius: 7px; color: #285b4b; background: white; cursor: pointer; }
.menu-order-moves button:hover:not(:disabled) { background: #eaf1df; border-color: #b6c9a4; }
.menu-order-moves button:disabled { opacity: .28; cursor: default; }
.menu-order-moves button:focus-visible { outline: 2px solid #285b4b; outline-offset: 2px; }
.menu-order-moves svg { width: 17px; height: 17px; }
.menu-order-status { color: var(--muted); font-size: 12px; padding: 2px 24px 12px; }
.menu-order-status:empty { display: none; }
.menu-order-footer { display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; gap: 10px; padding: 16px 24px; border-top: 1px solid var(--line); }
.menu-order-footer .actions { gap: 8px; }
@media (max-width: 720px) {
  .menu-order-button { padding: 7px; min-width: 32px; }
  .menu-order-button span { display: none; }
}
@media (max-width: 420px) {
  .menu-order-dialog .modal-header { padding: 16px; }
  .menu-order-description { padding: 12px 16px; }
  .menu-order-scroll { padding-left: 16px; padding-right: 16px; }
  .menu-order-row { gap: 7px; padding: 8px; grid-template-columns: 18px 12px minmax(0, 1fr) auto; }
  .menu-order-name { gap: 7px; font-size: 12px; }
  .menu-order-footer { padding: 12px 16px; gap: 5px; }
  .menu-order-footer .btn { padding: 8px 10px; }
}
