/* 小程序 shell：在 React 加载前即生效（web-view 首屏防截断） */
html[data-env='wechat-miniprogram'] {
  --app-safe-top: env(safe-area-inset-top, 44px);
  --app-mp-capsule-right: 96px;
  --app-mp-nav-height: 44px;
  --app-mp-shell-top: calc(var(--app-safe-top) + var(--app-mp-nav-height));
  --app-mp-content-top: 0px;
  --app-mp-topbar-height: var(--app-mp-nav-height);
  --app-mp-tabbar-height: 50px;
  --app-mp-tabbar-stack: calc(var(--app-mp-tabbar-height) + env(safe-area-inset-bottom, 0px));
  --app-layout-bottom-gutter: var(--app-mp-tabbar-stack);
  --app-header-height: 0px;
  --app-sticky-offset: 0px;
}

html[data-env='wechat-miniprogram'],
html[data-env='wechat-miniprogram'] body {
  width: 100%;
  margin: 0;
}

html[data-env='wechat-miniprogram'][data-mp-nav='shell'] {
  padding-top: var(--app-mp-shell-top, 88px) !important;
  box-sizing: border-box !important;
  height: 100% !important;
  overflow: hidden;
}

html[data-env='wechat-miniprogram'][data-mp-nav='shell'] body {
  height: 100% !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden;
}

html[data-env='wechat-miniprogram'][data-mp-nav='shell'] #root {
  height: 100% !important;
  min-height: 0 !important;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

html[data-env='wechat-miniprogram'] .mp-shell-top-spacer {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
}

html[data-env='wechat-miniprogram'] .login-page--miniprogram {
  padding-top: 0 !important;
  box-sizing: border-box;
}

html[data-env='wechat-miniprogram'] .login-page--miniprogram .login-page__main {
  padding-top: 16px;
  min-height: calc(var(--app-vv-height, 100dvh) - var(--app-mp-shell-top, 88px) - 80px);
}
