/* GLOBAL_ADMIN_RESPONSIVE_SHELL_V1
   Loaded after every route stylesheet so legacy replica rules cannot restore
   a fixed document floor. Wide tables keep their own local scroll surface. */
html:has(body.wanfan-admin-light-shell),
body.wanfan-admin-light-shell {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow-x: hidden !important;
}

body.wanfan-admin-light-shell .admin-shell {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 100dvh !important;
}

body.wanfan-admin-light-shell .main-shell {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden !important;
}

body.wanfan-admin-light-shell .system-top {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
}

body.wanfan-admin-light-shell .tab-strip,
body.wanfan-admin-light-shell .top-open-tabs,
body.wanfan-admin-light-shell .company-dashboard-top-tabs {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
}

body.wanfan-admin-light-shell .page-tab,
body.wanfan-admin-light-shell .company-dashboard-top-tabs .page-tab {
  flex: 0 0 auto !important;
}

body.wanfan-admin-light-shell .system-tools {
  min-width: max-content !important;
  flex: 0 0 auto !important;
}

body.wanfan-admin-light-shell #app.content-area {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow-x: hidden !important;
}

body.wanfan-admin-light-shell:not(.product-editor-route) #app.content-area > *,
body.wanfan-admin-light-shell .admin-page,
body.wanfan-admin-light-shell .order-list-page,
body.wanfan-admin-light-shell .company-dashboard,
body.wanfan-admin-light-shell .product-analysis-center,
body.wanfan-admin-light-shell .estimated-profit-center,
body.wanfan-admin-light-shell .sign-delivery-center,
body.wanfan-admin-light-shell .visit-detail-center {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}

body.wanfan-admin-light-shell .table-scroll,
body.wanfan-admin-light-shell .admin-table,
body.wanfan-admin-light-shell .selection-company-table,
body.wanfan-admin-light-shell .product-center-table-scroll,
body.wanfan-admin-light-shell .product-replica-table-scroll,
body.wanfan-admin-light-shell .product-analysis-table-scroll,
body.wanfan-admin-light-shell .estimated-profit-table-wrap,
body.wanfan-admin-light-shell .visit-detail-table-wrap,
body.wanfan-admin-light-shell .company-dashboard-table-wrap {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overscroll-behavior-x: contain;
}

body.dashboard-route .company-dashboard-heading {
  margin-right: 0 !important;
  flex-wrap: wrap;
}

body.dashboard-route .company-dashboard-heading-controls {
  flex: 1 1 720px;
  flex-wrap: wrap;
}

body.dashboard-route .company-dashboard-inline-stats {
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

body.dashboard-route .company-dashboard-main-grid {
  grid-template-columns: minmax(0, 1fr) clamp(240px, 15vw, 320px) !important;
}

body.dashboard-route .company-dashboard-chart {
  width: 100% !important;
  max-width: 100% !important;
  height: clamp(220px, 16vw, 300px);
  contain: inline-size;
}

@media (min-width: 1920px) {
  body.dashboard-route .company-dashboard-period-grid {
    grid-template-columns: repeat(4, minmax(230px, 1fr));
  }

  body.dashboard-route .company-dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr) clamp(280px, 15vw, 360px) !important;
  }
}

@media (min-width: 1200px) and (max-width: 1439px) {
  body.dashboard-route .company-dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr) 220px !important;
  }

  body.dashboard-route .company-dashboard-period-grid {
    gap: 9px;
  }
}

@media (max-width: 1199px) {
  body.wanfan-admin-light-shell .system-tools .account-chip small,
  body.wanfan-admin-light-shell .system-tools .account-chip > span:not(.avatar) {
    display: none !important;
  }

  body.wanfan-admin-light-shell .system-tools .account-chip {
    padding-inline: 7px !important;
  }

  body.dashboard-route .company-dashboard-main-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.dashboard-route .company-dashboard-period-grid {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }

  body.dashboard-route .company-dashboard-right {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  body.dashboard-route .company-dashboard-heading-controls {
    flex-basis: 100%;
    justify-content: flex-start;
  }

  body.dashboard-route .company-dashboard-section-head {
    align-items: flex-start;
    flex-wrap: wrap;
    padding-block: 8px;
  }

  body.dashboard-route .company-dashboard-filters {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
  }
}

@media (max-width: 999px) {
  body.dashboard-route .company-dashboard-ranking-grid,
  body.dashboard-route .company-dashboard-right {
    grid-template-columns: minmax(0, 1fr);
  }

  body.dashboard-route .company-dashboard-chart {
    height: 230px;
  }
}

@media (max-width: 699px) {
  body.dashboard-route .company-dashboard-period-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.dashboard-route .company-dashboard-heading-controls > select {
    width: min(100%, 180px) !important;
  }
}
