/* ============================================================
   dy5555.top 移动端自适应补丁（<=820px 生效，PC 端不受影响）
   ============================================================ */
@media screen and (max-width: 820px) {

  /* ---------- 全局：解除 PC 定宽、禁止横向溢出 ---------- */
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    -webkit-text-size-adjust: 100%;
  }
  #app, .container {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }
  .container .public-content,
  .pc-footer-container .public-content,
  .public-content[data-v-3fa1fe2c] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin: 0 auto !important;
  }

  /* ---------- 顶部导航栏 ---------- */
  .pc-tabbar-container,
  .pc-tabbar-container[data-v-3fa1fe2c] {
    height: 52px !important;
  }
  .pc-tabbar-container .inner-container {
    height: 52px !important;
    min-width: 0 !important;
    width: 100% !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
  }
  .pc-tabbar-container .inner-container .public-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px;
  }
  .pc-tabbar-container .inner-container .logo-item {
    width: 84px !important;
    height: 32px !important;
    flex: 0 0 auto !important;
  }
  .pc-tabbar-container .inner-container .logo-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
  .pc-tabbar-container .inner-container .nav-list-item {
    padding-left: 8px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .pc-tabbar-container .inner-container .nav-list-item::-webkit-scrollbar { display: none; }
  .pc-tabbar-container .inner-container .nav-list-item .nav-item {
    flex: 0 0 auto !important;
    font-size: 13px !important;
    margin-right: 12px !important;
    padding: 0 !important;
    height: 52px !important;
    line-height: 52px !important;
    display: flex !important;
    align-items: center !important;
  }
  .pc-tabbar-container .inner-container .nav-list-item .nav-item .icon {
    width: 16px !important;
    height: 16px !important;
    margin-right: 4px !important;
  }
  .pc-tabbar-container .inner-container .search-item {
    display: none !important;
  }
  .pc-tabbar-container .inner-container .login-btn {
    width: auto !important;
    min-width: 62px !important;
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 12px !important;
    flex: 0 0 auto !important;
    font-size: 13px !important;
    border-radius: 15px !important;
  }

  /* ---------- 首页 Banner 轮播 ---------- */
  .banner-container {
    min-width: 0 !important;
    width: 100% !important;
    margin-top: 0 !important;
  }
  .banner-container .el-carousel,
  .banner-container .el-carousel__container {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    aspect-ratio: 1200 / 353;
  }
  .banner-container .el-carousel__item {
    width: 100% !important;
    left: 0 !important;
  }
  .banner-container .img,
  .banner-container .img.img-cover {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
  }
  .banner-container .img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .banner-container .el-carousel__arrow { display: none !important; }

  /* ---------- 公告条 ---------- */
  .gg-container {
    height: 42px !important;
    border-radius: 21px !important;
    margin-top: -21px !important;
    overflow: hidden !important;
  }
  .gg-container .icon-item {
    width: 20px !important;
    height: 20px !important;
    margin-left: 14px !important;
    flex: 0 0 auto !important;
  }
  .gg-container .content { padding: 0 12px !important; min-width: 0 !important; }
  .gg-container .content .word {
    font-size: 13px !important;
    line-height: 42px !important;
  }
  .gg-container .right-item { flex: 0 0 auto !important; padding-right: 14px !important; }

  /* ---------- 四项能力入口 ---------- */
  .ability-list-item {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 14px !important;
  }
  .ability-list-item .ability-item {
    width: auto !important;
    min-width: 0 !important;
    height: 66px !important;
    border-radius: 8px !important;
    display: block !important;
  }
  .ability-list-item .content { padding: 12px 0 0 14px !important; }
  .ability-list-item .title { font-size: 14px !important; }
  .ability-list-item .subtitle { font-size: 11px !important; line-height: 1.3 !important; }
  .ability-list-item .bg-icon { width: 44px !important; height: 44px !important; }
  .ability-list-item .more { display: none !important; }

  /* ---------- 分类 Tab / 子分类 / 排序 ---------- */
  .class-list-item { margin-top: 14px !important; }
  .class-list-item .class-item .van-tabs__wrap { height: 42px !important; }
  .class-list-item .class-item .van-tabs__wrap .van-tabs__nav {
    overflow-x: auto !important;
    white-space: nowrap !important;
    padding-left: 0 !important;
    scrollbar-width: none;
  }
  .class-list-item .class-item .van-tabs__wrap .van-tabs__nav::-webkit-scrollbar { display: none; }
  .class-list-item .class-item .van-tabs__wrap .van-tab--complete {
    width: auto !important;
    min-width: 0 !important;
    height: 42px !important;
    line-height: 24px !important;
    flex: 0 0 auto !important;
    padding: 0 12px !important;
    font-size: 14px !important;
  }
  .class-list-item .class-child-item {
    height: auto !important;
    min-height: 40px !important;
    flex-wrap: wrap !important;
    padding: 6px 8px !important;
    box-sizing: border-box !important;
    gap: 6px;
  }
  .class-list-item .class-child-item .class-name {
    width: auto !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    font-size: 13px !important;
    flex: 0 0 auto !important;
  }
  .class-list-item .class-child-item .van-tabs {
    flex: 1 1 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
  }
  .class-list-item .class-child-item .van-tabs__wrap--scrollable .van-tabs__nav {
    padding-left: 0 !important;
    white-space: nowrap !important;
  }
  .class-list-item .class-child-item .van-tab--complete {
    flex: 0 0 auto !important;
    font-size: 13px !important;
    padding: 0 10px !important;
  }
  .class-list-item .class-child-item .sort-list-item {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
  .class-list-item .class-child-item .sort-list-item .sort-item {
    margin: 0 !important;
    font-size: 12px !important;
  }

  /* ---------- 商品网格：两列流式 ---------- */
  .page-goods-item {
    padding-bottom: 30px !important;
  }
  .goods-list-item {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 12px !important;
  }
  .goods-list-item .goods-item,
  .goods-item {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 6px !important;
    box-sizing: border-box !important;
  }
  .goods-list-item .goods-item .img,
  .goods-item .img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
  }
  .goods-list-item .goods-item .img img,
  .goods-item .img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .goods-list-item .goods-item .name-item {
    height: 38px !important;
    font-size: 12px !important;
    line-height: 19px !important;
    -webkit-line-clamp: 2 !important;
  }
  .goods-list-item .goods-item .footer-item {
    margin-top: 4px !important;
    flex-wrap: nowrap !important;
  }
  .goods-list-item .goods-item .footer-item .money {
    font-size: 14px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  .goods-list-item .goods-item .footer-item .btn {
    flex: 0 0 auto !important;
    height: 22px !important;
    line-height: 22px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
  }

  /* ---------- 商品详情页 ---------- */
  .goods-detail-container {
    flex-direction: column !important;
    padding: 12px !important;
    margin-top: 12px !important;
    box-sizing: border-box !important;
  }
  .goods-detail-container .img-item {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
  }
  .goods-detail-container .img-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
  .goods-detail-container .goods-info-item {
    width: 100% !important;
    min-width: 0 !important;
  }
  .goods-detail-container .goods-info-item .name-item {
    font-size: 16px !important;
    line-height: 1.4 !important;
    height: auto !important;
  }
  .goods-detail-container .params-list-item .params-item {
    flex-wrap: wrap !important;
    gap: 4px 0;
  }
  .goods-detail-container .params-list-item .params-item .name {
    width: 62px !important;
    flex: 0 0 62px !important;
  }
  .goods-detail-container .params-list-item .params-item .input {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
  }
  .goods-detail-container .params-list-item .params-item > div:not(.name),
  .goods-detail-container .params-list-item .params-item > span:not(.name) {
    flex: 1 1 0% !important;
    min-width: 0 !important;
  }
  .goods-detail-container .buy-btn-item { width: 110px !important; height: 32px !important; }
  .goods-detail-item { padding: 12px !important; box-sizing: border-box !important; }
  .goods-detail-item .detail-item img { max-width: 100% !important; height: auto !important; }
  .goods-detail-item .page-title-item { height: auto !important; }

  /* ---------- 弹窗 / 登录 / 提示 ---------- */
  .van-dialog,
  .pc-dialog.van-dialog,
  .pc-dialog.van-dialog.pc-gg-dialog {
    width: 92vw !important;
    min-width: 0 !important;
    max-width: 92vw !important;
    height: auto !important;
    box-sizing: border-box !important;
  }
  .pc-dialog.van-dialog .van-dialog__header,
  .van-dialog__header {
    height: auto !important;
    min-height: 52px !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
  }
  .pc-dialog.van-dialog .van-dialog__content,
  .pc-dialog.van-dialog.pc-gg-dialog .van-dialog__content {
    height: auto !important;
    max-height: 60vh !important;
    padding: 12px 16px !important;
    overflow-y: auto !important;
  }
  .pc-dialog.van-dialog .van-dialog__footer,
  .van-dialog__footer {
    height: auto !important;
    padding: 10px 0 14px !important;
  }
  .pc-login-container .inner-container {
    width: 100% !important;
    min-width: 0 !important;
    flex-direction: column !important;
    padding: 16px !important;
  }
  .pc-login-container .inner-container .left-item { width: 100% !important; }
  #mv-auth-box { width: 92vw !important; max-width: 92vw !important; }

  /* ---------- 页脚 ---------- */
  .pc-footer-container,
  .pc-footer-container[data-v-7470c9d7] {
    height: auto !important;
    padding-bottom: 16px !important;
  }
  .pc-footer-container .inner-container {
    position: static !important;
    height: auto !important;
    padding: 16px 0 !important;
  }
  .pc-footer-container .nav-list-item {
    padding-top: 12px !important;
    flex-wrap: wrap !important;
    gap: 8px 14px;
    justify-content: flex-start !important;
  }
  .pc-footer-container .nav-list-item .nav-item { font-size: 12px !important; }
  .pc-footer-container .nav-list-item .nav-item .icon { width: 20px !important; height: 20px !important; }
}

/* 超窄屏（<=360px）进一步压缩 */
@media screen and (max-width: 360px) {
  .pc-tabbar-container .inner-container .logo-item { width: 72px !important; }
  .pc-tabbar-container .inner-container .nav-list-item .nav-item { font-size: 12px !important; margin-right: 8px !important; }
  .goods-list-item .goods-item .name-item { font-size: 11px !important; }
}
