html { -webkit-text-size-adjust: 100%; }
body, button, input { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif; }
button, input { -webkit-tap-highlight-color: transparent; }
button { touch-action: manipulation; -webkit-user-select: none; user-select: none; }
.search input { font-size: 16px; }
.food-grid { align-content: start; }
.portion-item > div:not(.stepper) { min-width: 0; flex: 1; }
.stepper { flex-shrink: 0; }
.stepper button { width: 40px; height: 40px; }
.stepper span { width: 28px; }
.portion-item { gap: 8px; }
.portion-item .portion-icon { flex-shrink: 0; width: 34px; }
.finish:after { pointer-events: none; }
@media (max-width: 760px), (pointer: coarse) {
  html, body { overscroll-behavior-y: none; }
  .stage { display: block; padding: 0; min-height: 100vh; min-height: 100dvh; }
  .phone { width: 100%; height: 100vh; height: 100dvh; min-height: 0; border: 0; border-radius: 0; box-shadow: none; }
  .statusbar { display: none; }
  .appbar { height: calc(57px + env(safe-area-inset-top, 0px)); padding-top: env(safe-area-inset-top, 0px); padding-left: max(17px, env(safe-area-inset-left, 0px)); padding-right: max(17px, env(safe-area-inset-right, 0px)); }
  .appbar button { min-width: 40px; min-height: 40px; }
  .screen { top: calc(57px + env(safe-area-inset-top, 0px)); left: env(safe-area-inset-left, 0px); right: env(safe-area-inset-right, 0px); }
  .intro-stage { bottom: env(safe-area-inset-bottom, 0px); }
  .selection-bar { padding-bottom: max(12px, env(safe-area-inset-bottom, 0px)); }
  .portion, .finish { padding-bottom: calc(30px + env(safe-area-inset-bottom, 0px)); }
  dialog { max-width: calc(100vw - 40px); max-height: 80vh; overflow: auto; }
}
@media (max-width: 350px) {
  .portion-list { padding-left: 12px; padding-right: 12px; }
  .portion-item b { font-size: 14px; }
  .portion-item small { font-size: 10px; }
  .selection-bar small { width: 130px; }
}
@media (hover: none) {
  
  .food:hover { transform: none; }
  .intro-start:not(:disabled):hover { background: transparent; }
}
