/* WO-014: unified member responsive helpers (single App, no dual-shell). */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}
body {
  padding-left: env(safe-area-inset-left, 0);
  padding-right: env(safe-area-inset-right, 0);
  padding-bottom: env(safe-area-inset-bottom, 0);
}
img, video, canvas, svg {
  max-width: 100%;
  height: auto;
}
#app {
  min-height: 100%;
  width: 100%;
  max-width: 100%;
}

/* Mobile: full-bleed phone column */
html[data-n79-viewport='mobile'] .n79-mobile-column {
  max-width: 540px;
  margin: 0 auto;
}

/*
 * Tablet: not a stretched phone page.
 * Use a readable content column with breathing room; keep tab bar usable.
 */
html[data-n79-viewport='tablet'] .n79-shell-tablet,
html[data-n79-viewport='tablet'] .n79-mobile-column {
  max-width: 820px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  padding-left: 16px;
  padding-right: 16px;
}

html[data-n79-viewport='tablet'] .van-tabbar {
  max-width: 820px;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%);
  width: 100%;
}

html[data-n79-viewport='tablet'] .van-swipe,
html[data-n79-viewport='tablet'] .homeHeder,
html[data-n79-viewport='tablet'] .n79-shell-tablet img {
  max-width: 100%;
}

html[data-n79-viewport='tablet'] .n79-shell-tablet .van-button,
html[data-n79-viewport='tablet'] .n79-shell-tablet button,
html[data-n79-viewport='tablet'] .n79-shell-tablet [role='button'] {
  min-height: 40px;
}

html[data-n79-viewport='desktop'] .n79-shell-desktop {
  width: 100%;
  max-width: 100%;
}

.n79-table-scroll,
[data-n79-hscroll="1"] {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
}
