/* ============================================================
   手机端 UI 主题（2026-10）
   - 只在 <=900px 生效，不影响桌面端
   - 通过 body[data-page] 做页面级微调，见 index.html 里的 syncPage
   ============================================================ */

@media (max-width: 900px) {
  :root {
    --wms-tabbar-h: 62px;
    --wms-mobile-radius: 16px;
    --wms-mobile-shadow: 0 10px 30px -22px rgba(15, 35, 70, .45);
  }

  html,
  body {
    background: #eef3fb;
    max-width: 100%;
    overflow-x: hidden;
  }

  body {
    background:
      radial-gradient(120% 50% at 50% -12%, #e2eeff 0%, rgba(226, 238, 255, 0) 62%),
      linear-gradient(180deg, #f5f8fd 0%, #eef3fa 100%);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }

  .wms-layout,
  .wms-main {
    background: transparent !important;
  }

  /* ---------- 顶部栏 ---------- */
  .wms-header {
    height: calc(52px + env(safe-area-inset-top)) !important;
    padding: env(safe-area-inset-top) 14px 0 !important;
    background: rgba(255, 255, 255, .88) !important;
    -webkit-backdrop-filter: saturate(180%) blur(18px);
    backdrop-filter: saturate(180%) blur(18px);
    border-bottom: 1px solid rgba(214, 224, 238, .78) !important;
    box-shadow: 0 8px 24px -24px rgba(15, 35, 70, .55);
  }

  .wms-header .crumb-cur {
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: .2px;
  }

  .wms-header .header-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 11px !important;
  }

  .wms-header .header-user {
    padding: 3px !important;
  }

  .wms-header .header-avatar,
  .wms-header .header-avatar-img {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 10px -6px rgba(31, 111, 235, .55);
  }

  /* ---------- 内容与卡片 ---------- */
  .wms-content {
    padding: 12px 12px calc(76px + env(safe-area-inset-bottom)) !important;
    overflow-x: hidden;
  }

  .page-card {
    border: 1px solid rgba(222, 231, 243, .92) !important;
    border-radius: var(--wms-mobile-radius) !important;
    background: rgba(255, 255, 255, .97) !important;
    box-shadow: var(--wms-mobile-shadow) !important;
    padding: 14px !important;
    margin-bottom: 12px !important;
    max-width: 100% !important;
  }

  .page-card.flush {
    padding: 0 !important;
  }

  .card-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: .1px;
    margin-bottom: 12px !important;
  }

  .card-title .sub {
    font-size: 11.5px !important;
  }

  /* ---------- 通用控件 ---------- */
  .el-input__wrapper,
  .el-select__wrapper,
  .el-textarea__inner,
  .el-date-editor.el-input__wrapper {
    min-height: 38px !important;
    border-radius: 10px !important;
    background: #f7f9fd !important;
    box-shadow: 0 0 0 1px #e6edf7 inset !important;
    transition: box-shadow .18s, background .18s;
  }

  .el-input__wrapper.is-focus,
  .el-select__wrapper.is-focused,
  .el-textarea__inner:focus {
    background: #fff !important;
    box-shadow: 0 0 0 1.5px rgba(31, 111, 235, .55) inset !important;
  }

  .el-input__inner,
  .el-textarea__inner {
    font-size: 13px !important;
  }

  .el-button {
    border-radius: 10px !important;
    font-weight: 600 !important;
    min-height: 38px;
    padding: 8px 16px;
  }

  .el-button--small {
    min-height: 30px !important;
    padding: 5px 10px !important;
  }

  .el-button--primary {
    border-color: transparent !important;
    background: linear-gradient(135deg, #3b86ff 0%, #1f6feb 100%) !important;
    box-shadow: 0 8px 16px -12px rgba(31, 111, 235, .75);
  }

  .el-button--primary.is-plain {
    background: #eef5ff !important;
    border-color: #d7e6ff !important;
    color: #1f6feb !important;
    box-shadow: none !important;
  }

  .el-button--primary.is-link,
  .el-button--primary.is-text {
    background: transparent !important;
    border-color: transparent !important;
    color: #1f6feb !important;
    box-shadow: none !important;
  }

  .el-button--primary:active {
    background: linear-gradient(135deg, #2f78ee 0%, #1858c4 100%) !important;
    transform: translateY(.5px);
  }

  .el-tag {
    border-radius: 6px !important;
  }

  .el-alert {
    padding: 8px 10px !important;
    border-radius: 10px !important;
  }

  .el-alert__title {
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }

  .el-alert__description {
    font-size: 11px !important;
    line-height: 1.65 !important;
    margin: 2px 0 0 !important;
  }

  /* 表单在手机上统一纵向排布，压缩桌面遗留的大间距 */
  .page-card .el-form--inline {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px;
  }

  .page-card .el-form--inline .el-form-item {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .page-card .el-form--inline .el-form-item__content,
  .page-card .el-form--inline .el-input,
  .page-card .el-form--inline .el-select,
  .page-card .el-form--inline .el-date-editor {
    width: 100% !important;
  }

  .page-card .el-form-item {
    margin-bottom: 10px !important;
  }

  .page-card .el-form-item__content,
  .el-dialog .el-form-item__content {
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
  }

  .page-card .el-form-item__content > .el-input,
  .page-card .el-form-item__content > .el-select,
  .page-card .el-form-item__content > .el-date-editor,
  .page-card .el-form-item__content > .el-input-number,
  .el-dialog .el-form-item__content > .el-input,
  .el-dialog .el-form-item__content > .el-select,
  .el-dialog .el-form-item__content > .el-date-editor,
  .el-dialog .el-form-item__content > .el-input-number {
    flex: 1 1 140px;
    width: auto !important;
    min-width: 0;
  }

  .page-card .el-form-item__content > .el-input-number .el-input__wrapper,
  .el-dialog .el-form-item__content > .el-input-number .el-input__wrapper {
    width: 100%;
  }

  .page-card .el-form-item__content > .el-textarea,
  .el-dialog .el-form-item__content > .el-textarea {
    flex: 1 1 100%;
    width: 100% !important;
  }

  .el-form-item__label {
    font-size: 12.5px !important;
    color: #5b6a80;
  }

  body[data-page] .el-tabs__nav-wrap {
    overflow-x: auto !important;
    scrollbar-width: none;
  }

  body[data-page] .el-tabs__nav-wrap::-webkit-scrollbar {
    display: none;
  }

  body[data-page] .el-tabs__item {
    height: 36px !important;
    line-height: 36px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
  }

  /* ---------- 弹窗 / 分页 / 描述列表：全部限制在屏幕内 ---------- */
  .el-overlay-dialog {
    padding: 10px !important;
  }

  .el-dialog {
    width: calc(100vw - 20px) !important;
    max-width: 560px !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 12px auto !important;
    border-radius: 16px !important;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  .el-dialog__header {
    padding: 16px 16px 8px !important;
    flex: 0 0 auto;
  }

  .el-dialog__title {
    font-size: 16px !important;
    font-weight: 700 !important;
  }

  .el-dialog__body {
    flex: 1 1 auto;
    max-height: none;
    overflow-y: auto;
    padding: 12px 16px !important;
    -webkit-overflow-scrolling: touch;
  }

  .el-dialog__footer {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px 16px 16px !important;
  }

  .el-dialog__footer > :not(.el-button) {
    flex: 1 1 100%;
    min-width: 0;
    font-size: 12px;
    color: #6b7a90;
  }

  .el-dialog__footer .el-button {
    flex: 1 1 calc(50% - 4px);
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 8px 6px !important;
    white-space: normal;
    line-height: 1.25;
  }

  .el-message-box {
    width: calc(100vw - 32px) !important;
    max-width: 420px !important;
    border-radius: 14px !important;
  }

  .el-drawer {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .el-drawer__body {
    padding: 14px !important;
  }

  [class*="batch-stocks"] {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px 8px !important;
  }

  [class*="batch-stocks"] > * {
    min-width: 0;
  }

  [class*="batch-stocks"] [class*="bs-item"] {
    min-width: 0;
  }

  .el-popper {
    max-width: calc(100vw - 24px) !important;
  }

  .el-pagination {
    justify-content: center !important;
    flex-wrap: wrap;
    gap: 4px;
    font-size: 12px !important;
  }

  .el-pagination .el-pagination__sizes,
  .el-pagination .el-pagination__jump {
    display: none !important;
  }

  .el-pagination button,
  .el-pager li {
    min-width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
  }

  .el-table__body-wrapper,
  .el-scrollbar__wrap {
    -webkit-overflow-scrolling: touch;
  }

  .el-descriptions__body {
    overflow-x: auto;
  }

  .el-radio-group {
    flex-wrap: nowrap !important;
    overflow-x: auto;
    max-width: 100%;
    scrollbar-width: none;
  }

  .el-radio-group::-webkit-scrollbar {
    display: none;
  }

  .el-radio-button__inner {
    white-space: nowrap;
  }

  .toolbar {
    gap: 8px !important;
  }

  .page-head {
    flex-wrap: wrap;
    gap: 8px;
  }

  .page-head-actions {
    width: 100%;
    margin-left: 0 !important;
    justify-content: flex-end;
  }

  .card-title {
    flex-wrap: wrap;
  }

  img,
  video,
  canvas {
    max-width: 100%;
  }

  /* ---------- 工作台 ---------- */
  body[data-page="dashboard"] .todo-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
  }

  body[data-page="dashboard"] .todo-card {
    min-width: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border-color: rgba(224, 232, 243, .95) !important;
    background: linear-gradient(158deg, #ffffff 0%, #f8fbff 100%) !important;
  }

  body[data-page="dashboard"] .todo-left {
    min-width: 0 !important;
    flex: 1 1 auto;
    gap: 8px !important;
  }

  body[data-page="dashboard"] .todo-left > div:not(.todo-icon) {
    flex: 1 1 auto;
    min-width: 0;
  }

  body[data-page="dashboard"] .todo-icon {
    width: 32px !important;
    height: 32px !important;
    border-radius: 9px !important;
  }

  body[data-page="dashboard"] .todo-icon .el-icon {
    font-size: 16px !important;
  }

  body[data-page="dashboard"] .todo-label {
    font-size: 12.5px !important;
    font-weight: 600 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body[data-page="dashboard"] .todo-hint {
    display: none !important;
  }

  body[data-page="dashboard"] .todo-count {
    flex-shrink: 0;
    margin-left: 2px !important;
    font-size: 22px !important;
    font-weight: 700 !important;
  }

  body[data-page="dashboard"] .kpi-row {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }

  body[data-page="dashboard"] .kpi {
    padding: 10px 12px !important;
    border: 1px solid #eef3fa;
    border-radius: 12px;
    background: linear-gradient(160deg, #fbfdff 0%, #f4f8ff 100%);
  }

  body[data-page="dashboard"] .kpi + .kpi {
    border-left: none !important;
    padding-left: 12px !important;
  }

  body[data-page="dashboard"] .kpi-label {
    font-size: 11px !important;
    margin-bottom: 4px !important;
  }

  body[data-page="dashboard"] .kpi-value {
    font-size: 20px !important;
    letter-spacing: -.5px;
  }

  body[data-page="dashboard"] .wh-bar {
    height: 10px !important;
    border-radius: 6px !important;
    background: #eef3fa !important;
  }

  body[data-page="dashboard"] .wh-legend {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px 10px !important;
  }

  body[data-page="dashboard"] .wh-legend-item {
    font-size: 11.5px !important;
  }

  body[data-page="dashboard"] .bad-item {
    padding: 8px 0;
    border-bottom: 1px dashed #eef2f8;
  }

  body[data-page="dashboard"] .bad-item:last-child {
    border-bottom: none;
  }

  /* ---------- 表格：手机端只保留关键列 ---------- */
  body[data-page] .el-table {
    font-size: 11.5px !important;
    background: transparent !important;
    --el-table-border-color: #eef2f8;
    --el-table-header-bg-color: #f7f9fc;
  }

  /* 只让「已裁剪列」的页面把表格压进屏幕；其余宽表保留横向滑动 */
  body[data-page="arrivals"] .el-table,
  body[data-page="arrivals"] .el-table__header,
  body[data-page="arrivals"] .el-table__body,
  body[data-page="stock"] .el-table,
  body[data-page="stock"] .el-table__header,
  body[data-page="stock"] .el-table__body,
  body[data-page="qc"] .el-table,
  body[data-page="qc"] .el-table__header,
  body[data-page="qc"] .el-table__body {
    width: 100% !important;
    table-layout: fixed !important;
  }

  body[data-page="arrivals"] .el-table col,
  body[data-page="stock"] .el-table col,
  body[data-page="qc"] .el-table col {
    width: auto !important;
  }

  /* 宽表横向滑动时，首列固定在左侧，始终能看到物料/单号 */
  body[data-page] .el-table th.el-table__cell:first-child,
  body[data-page] .el-table td.el-table__cell:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    box-shadow: 1px 0 0 #eef2f8;
  }

  body[data-page] .el-table th.el-table__cell:first-child {
    background: #f7f9fc;
    z-index: 3;
  }

  body[data-page] .el-table th.el-table__cell {
    padding: 8px 5px !important;
    background: #f7f9fc !important;
    color: #7c8aa0 !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    white-space: nowrap;
  }

  body[data-page] .el-table td.el-table__cell {
    padding: 9px 5px !important;
    color: #263244;
    line-height: 1.35;
    word-break: break-all;
  }

  body[data-page] .el-table td.el-table__cell:first-child {
    font-weight: 600;
    color: #16202e;
  }

  body[data-page] .el-table .cell {
    padding: 0 !important;
    line-height: 1.35 !important;
    white-space: normal;
  }

  body[data-page] .el-table__row:hover > td.el-table__cell {
    background: transparent !important;
  }

  body[data-page] .el-table .el-button {
    min-height: 26px !important;
    padding: 3px 7px !important;
    font-size: 11.5px !important;
  }

  body[data-page] .el-table .el-button + .el-button {
    margin-left: 4px !important;
  }

  body[data-page] .el-table__empty-block {
    min-height: 150px;
  }

  body[data-page] .el-table.m-empty {
    border: 0 !important;
    background: transparent !important;
  }

  body[data-page] .el-table.m-empty .el-table__header-wrapper {
    display: none !important;
  }

  /* 到货：单号 / 供应商 / 数量 / 状态 / 操作 */
  body[data-page="arrivals"] .el-table th:nth-child(3),
  body[data-page="arrivals"] .el-table td:nth-child(3),
  body[data-page="arrivals"] .el-table th:nth-child(4),
  body[data-page="arrivals"] .el-table td:nth-child(4),
  body[data-page="arrivals"] .el-table th:nth-child(6),
  body[data-page="arrivals"] .el-table td:nth-child(6),
  body[data-page="arrivals"] .el-table th:nth-child(8),
  body[data-page="arrivals"] .el-table td:nth-child(8),
  body[data-page="arrivals"] .el-table th:nth-child(9),
  body[data-page="arrivals"] .el-table td:nth-child(9) {
    display: none !important;
  }

  body[data-page="arrivals"] .el-table col:nth-child(3),
  body[data-page="arrivals"] .el-table col:nth-child(4),
  body[data-page="arrivals"] .el-table col:nth-child(6),
  body[data-page="arrivals"] .el-table col:nth-child(8),
  body[data-page="arrivals"] .el-table col:nth-child(9) {
    width: 0 !important;
  }

  body[data-page="arrivals"] .el-table col:nth-child(1) { width: 28% !important; }
  body[data-page="arrivals"] .el-table col:nth-child(2) { width: 20% !important; }
  body[data-page="arrivals"] .el-table col:nth-child(5) { width: 17% !important; }
  body[data-page="arrivals"] .el-table col:nth-child(7) { width: 14% !important; }
  body[data-page="arrivals"] .el-table col:nth-child(10) { width: 21% !important; }

  /* 库存总览：编码 / 良品 / 不良 / 合计 / 操作 */
  body[data-page="stock"] #pane-overview .el-table th:nth-child(2),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(2),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(3),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(3),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(4),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(4),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(7),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(7),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(8),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(8),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(9),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(9),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(11),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(11),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(12),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(12),
  body[data-page="stock"] #pane-overview .el-table th:nth-child(13),
  body[data-page="stock"] #pane-overview .el-table td:nth-child(13) {
    display: none !important;
  }

  body[data-page="stock"] #pane-overview .el-table col:nth-child(n+2):nth-child(-n+4),
  body[data-page="stock"] #pane-overview .el-table col:nth-child(n+7):nth-child(-n+9),
  body[data-page="stock"] #pane-overview .el-table col:nth-child(n+11):nth-child(-n+13) {
    width: 0 !important;
  }

  body[data-page="stock"] #pane-overview .el-table col:nth-child(1) { width: 30% !important; }
  body[data-page="stock"] #pane-overview .el-table col:nth-child(5) { width: 17% !important; }
  body[data-page="stock"] #pane-overview .el-table col:nth-child(6) { width: 17% !important; }
  body[data-page="stock"] #pane-overview .el-table col:nth-child(10) { width: 18% !important; }
  body[data-page="stock"] #pane-overview .el-table col:nth-child(14) { width: 18% !important; }

  /* 批次库存：编码 / 批次 / 仓库 / 数量 / 操作 */
  body[data-page="stock"] #pane-batches .el-table th:nth-child(2),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(2),
  body[data-page="stock"] #pane-batches .el-table th:nth-child(4),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(4),
  body[data-page="stock"] #pane-batches .el-table th:nth-child(7),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(7),
  body[data-page="stock"] #pane-batches .el-table th:nth-child(8),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(8),
  body[data-page="stock"] #pane-batches .el-table th:nth-child(9),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(9),
  body[data-page="stock"] #pane-batches .el-table th:nth-child(10),
  body[data-page="stock"] #pane-batches .el-table td:nth-child(10) {
    display: none !important;
  }

  body[data-page="stock"] #pane-batches .el-table col:nth-child(2),
  body[data-page="stock"] #pane-batches .el-table col:nth-child(4),
  body[data-page="stock"] #pane-batches .el-table col:nth-child(n+7):nth-child(-n+10) {
    width: 0 !important;
  }

  body[data-page="stock"] #pane-batches .el-table col:nth-child(1) { width: 30% !important; }
  body[data-page="stock"] #pane-batches .el-table col:nth-child(3) { width: 24% !important; }
  body[data-page="stock"] #pane-batches .el-table col:nth-child(5) { width: 18% !important; }
  body[data-page="stock"] #pane-batches .el-table col:nth-child(6) { width: 16% !important; }
  body[data-page="stock"] #pane-batches .el-table col:nth-child(11) { width: 12% !important; }

  /* 库存流水：时间 / 类型 / 物料 / 仓库 / 变动 */
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(3),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(3),
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(6),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(6),
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(7),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(7),
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(9),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(9),
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(10),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(10),
  body[data-page="stock"] #pane-ledger .el-table th:nth-child(11),
  body[data-page="stock"] #pane-ledger .el-table td:nth-child(11) {
    display: none !important;
  }

  body[data-page="stock"] #pane-ledger .el-table col:nth-child(3),
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(6),
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(7),
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(n+9):nth-child(-n+11) {
    width: 0 !important;
  }

  body[data-page="stock"] #pane-ledger .el-table col:nth-child(1) { width: 25% !important; }
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(2) { width: 17% !important; }
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(4) { width: 26% !important; }
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(5) { width: 18% !important; }
  body[data-page="stock"] #pane-ledger .el-table col:nth-child(8) { width: 14% !important; }

  /* 库存页大标签：允许收缩 / 换行 */
  body[data-page="stock"] .el-tabs__header {
    margin-bottom: 10px !important;
  }

  body[data-page="stock"] .el-tabs__nav-wrap {
    overflow-x: auto !important;
    scrollbar-width: none;
  }

  body[data-page="stock"] .el-tabs__nav-wrap::-webkit-scrollbar {
    display: none;
  }

  body[data-page="stock"] .el-tabs__nav {
    display: flex !important;
    gap: 4px;
  }

  body[data-page="stock"] .el-tabs__item {
    height: 34px !important;
    line-height: 34px !important;
    padding: 0 9px !important;
    font-size: 12px !important;
    white-space: nowrap;
  }

  body[data-page="stock"] .el-tabs__active-bar {
    height: 2px !important;
    border-radius: 2px;
  }

  body[data-page="stock"] .toolbar {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 8px !important;
    align-items: stretch;
    margin-bottom: 10px !important;
  }

  body[data-page="stock"] .toolbar > * {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body[data-page="stock"] .toolbar > .el-input:first-child,
  body[data-page="stock"] .toolbar > .el-select:first-child,
  body[data-page="stock"] .toolbar > .el-checkbox {
    grid-column: 1 / -1;
  }

  body[data-page="stock"] .toolbar > .el-checkbox {
    display: flex;
    justify-content: flex-start;
    height: 24px;
  }

  body[data-page="stock"] .toolbar .el-button {
    width: 100% !important;
  }

  body[data-page="stock"] #pane-batches .toolbar > .el-button,
  body[data-page="stock"] #pane-ledger .toolbar > .el-button {
    grid-column: 1 / -1;
  }

  body[data-page="alerts"] .el-radio-group {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
    width: 100%;
    margin-bottom: 12px;
  }

  body[data-page="alerts"] .toolbar {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px !important;
  }

  body[data-page="alerts"] .toolbar .el-radio-group {
    flex: 1 1 100%;
  }

  body[data-page="alerts"] .toolbar .el-button {
    flex: 1 1 calc(50% - 4px);
    margin: 0 !important;
  }

  body[data-page="alerts"] .toolbar .el-button:nth-of-type(3) {
    flex-basis: 100%;
  }

  body[data-page="alerts"] .el-radio-button {
    width: 100%;
  }

  body[data-page="alerts"] .el-radio-button__inner {
    width: 100%;
    padding: 8px 4px !important;
    border: 1px solid #e4ebf5 !important;
    border-radius: 9px !important;
    background: #f7f9fd !important;
    box-shadow: none !important;
    font-size: 11.5px !important;
    font-weight: 500;
    color: #5b6a80;
  }

  body[data-page="alerts"] .el-radio-button__original-radio:checked + .el-radio-button__inner {
    background: linear-gradient(135deg, #3b86ff 0%, #1f6feb 100%) !important;
    border-color: #1f6feb !important;
    color: #fff !important;
    box-shadow: 0 6px 12px -10px rgba(31, 111, 235, .8) !important;
  }

  body[data-page="alerts"] .el-empty {
    padding: 22px 0 !important;
  }

  body[data-page="alerts"] .el-empty__image {
    width: 86px !important;
  }

  body[data-page="settings"] .el-tabs__nav {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 2px;
    width: 100%;
  }

  body[data-page="settings"] .el-tabs__item {
    padding: 0 1px !important;
    font-size: 10.5px !important;
    text-align: center;
    white-space: nowrap;
    border-right: 1px solid #e4ebf5;
  }

  body[data-page="settings"] .el-tabs__item:last-child {
    border-right: 0;
  }

  body[data-page="settings"] .el-tabs__active-bar {
    display: none !important;
  }

  /* ---------- 质检 / 扫码 ---------- */
  body[data-page="qc"] .scan-bar,
  body[data-page="arrivals"] .scan-bar {
    border: 1px solid #dbe8fb !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #edf5ff 0%, #f8fbff 100%) !important;
    padding: 12px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
  }

  body[data-page="qc"] .scan-bar .scan-ico,
  body[data-page="arrivals"] .scan-bar .scan-ico {
    display: none !important;
  }

  body[data-page="qc"] .scan-bar .scan-input,
  body[data-page="arrivals"] .scan-bar .scan-input {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body[data-page="qc"] .scan-bar .scan-input .el-input__inner,
  body[data-page="arrivals"] .scan-bar .scan-input .el-input__inner {
    font-size: 12px !important;
  }

  body[data-page="qc"] .scan-bar .scan-tip,
  body[data-page="arrivals"] .scan-bar .scan-tip {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    font-size: 11px !important;
    line-height: 1.6;
  }

  body[data-page="qc"] .scan-bar .el-button,
  body[data-page="arrivals"] .scan-bar .el-button {
    flex: 0 0 calc(50% - 4px) !important;
    width: calc(50% - 4px) !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body[data-page="qc"] .el-table .el-button {
    min-height: 28px !important;
    padding: 3px 9px !important;
    border-radius: 8px !important;
    border: 1px solid #dbe8fb !important;
    background: #eef5ff !important;
    color: #1f6feb !important;
    box-shadow: none !important;
    font-size: 12px !important;
  }

  body[data-page="qc"] .el-table td.el-table__cell {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  body[data-page="arrivals"] .page-card > .el-form .el-form-item {
    margin-bottom: 6px !important;
  }

  /* ---------- 个人中心 ---------- */
  body[data-page="profile"] .profile-page {
    width: 100% !important;
    max-width: 100% !important;
  }

  body[data-page="profile"] .pf-hero {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
    padding: 20px 18px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #101d33 0%, #1a2f52 58%, #23446f 100%) !important;
    margin-bottom: 12px !important;
  }

  body[data-page="profile"] .pf-hero-left {
    gap: 14px !important;
    width: 100%;
  }

  body[data-page="profile"] .pf-avatar-wrap,
  body[data-page="profile"] .pf-avatar {
    width: 64px !important;
    height: 64px !important;
    border-radius: 18px !important;
  }

  body[data-page="profile"] .pf-avatar-text {
    font-size: 26px !important;
  }

  body[data-page="profile"] .pf-name {
    font-size: 20px !important;
  }

  body[data-page="profile"] .pf-meta {
    gap: 8px !important;
    font-size: 11.5px !important;
  }

  body[data-page="profile"] .pf-desc {
    font-size: 11.5px !important;
    margin-top: 8px !important;
  }

  body[data-page="profile"] .pf-hero-stats {
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px;
  }

  body[data-page="profile"] .pf-hero-stat {
    text-align: left !important;
    padding: 7px 8px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 10px;
    background: rgba(255, 255, 255, .06);
  }

  body[data-page="profile"] .pf-hero-stat-val {
    font-size: 18px !important;
  }

  body[data-page="profile"] .pf-hero-stat-label {
    font-size: 10.5px !important;
    margin-top: 3px !important;
  }

  body[data-page="profile"] .pf-body {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    gap: 12px !important;
  }

  body[data-page="profile"] .pf-side,
  body[data-page="profile"] .pf-main {
    width: 100% !important;
    min-width: 0 !important;
  }

  body[data-page="profile"] .pf-main {
    padding: 0 !important;
    min-height: 0 !important;
  }

  body[data-page="profile"] .pf-todo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body[data-page="profile"] .pf-handled {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  body[data-page="profile"] .el-tabs__nav-wrap {
    overflow-x: auto !important;
    scrollbar-width: none;
  }

  body[data-page="profile"] .el-tabs__nav-wrap::-webkit-scrollbar {
    display: none;
  }

  /* ---------- 底部导航 ---------- */
  .tabbar {
    height: calc(var(--wms-tabbar-h) + env(safe-area-inset-bottom)) !important;
    padding: 4px 6px env(safe-area-inset-bottom) !important;
    background: rgba(255, 255, 255, .93) !important;
    border-top: 1px solid rgba(219, 228, 240, .82) !important;
    box-shadow: 0 -12px 30px -24px rgba(15, 35, 70, .55) !important;
  }

  .tab {
    gap: 3px !important;
    padding-top: 2px !important;
  }

  .tab-ico {
    width: 36px;
    height: 24px !important;
    border-radius: 9px;
    transition: background .18s, color .18s;
  }

  .tab.active .tab-ico {
    background: linear-gradient(135deg, #e8f1ff 0%, #dbe9ff 100%);
  }

  .tab-label {
    font-size: 10px !important;
    letter-spacing: .1px;
  }

  .tab.active .tab-label {
    font-weight: 700 !important;
  }

  .tab-dot {
    top: -4px !important;
    right: -6px !important;
  }

  /* 质检日报邮件预览：按容器宽度渲染，不再固定 760px 横向裁切 */
  body[data-page="report-qc-daily"] .mail-frame {
    width: 100% !important;
    height: 1600px !important;
    zoom: 1 !important;
    transform: none !important;
  }

  body[data-page="report-qc-daily"] .mail-frame-wrap {
    overflow: hidden;
    height: auto !important;
  }

  /* ---------- 手机卡片列表（到货 / 库存，JS 生成） ---------- */
  .m-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 4px 0 10px;
  }

  .m-card {
    position: relative;
    border: 1px solid #e6edf7;
    border-radius: 14px;
    background: linear-gradient(158deg, #ffffff 0%, #f9fbff 100%);
    box-shadow: 0 8px 22px -20px rgba(15, 35, 70, .45);
    padding: 10px 12px;
    overflow: hidden;
  }

  .m-card::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, #8dc2ff, #1f6feb);
    opacity: .9;
  }

  .m-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
  }

  .m-code {
    min-width: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .2px;
    color: #16202e;
    word-break: break-all;
    line-height: 1.3;
  }

  .m-total {
    flex-shrink: 0;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #16202e;
    font-variant-numeric: tabular-nums;
  }

  .m-total small {
    font-size: 10.5px;
    font-weight: 500;
    color: #8b96a8;
    margin-left: 2px;
  }

  .m-badge {
    flex-shrink: 0;
    font-size: 10.5px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 20px;
    line-height: 1.6;
    background: #eaf2ff;
    color: #1f6feb;
  }

  .m-badge.green { background: #e8f5ec; color: #1a7f37; }
  .m-badge.orange { background: #fff4e5; color: #b45309; }
  .m-badge.gray { background: #eef1f6; color: #6b7688; }
  .m-badge.blue { background: #eaf2ff; color: #1f6feb; }

  .m-meta,
  .m-sub {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 8px;
    margin-top: 7px;
    font-size: 11.5px;
    color: #6b7a90;
    line-height: 1.5;
  }

  .m-dot {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #c7d2e2;
  }

  .m-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 9px;
  }

  .m-chip {
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 7px;
    background: #f3f6fb;
    color: #6b7a90;
    line-height: 1.4;
  }

  .m-chip b {
    color: #16202e;
    font-weight: 700;
    margin-left: 2px;
  }

  .m-chip.good { background: #edf8f1; color: #1a7f37; }
  .m-chip.danger { background: #fdecec; color: #c62828; }
  .m-chip.warn { background: #fff6e8; color: #b45309; }
  .m-chip.purple { background: #f1ecfb; color: #6f42c1; }
  .m-chip.gray { background: #eef1f6; color: #6b7688; }

  .m-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px dashed #eef2f8;
  }

  .m-actions .el-button {
    min-height: 26px !important;
    padding: 2px 5px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 12px !important;
  }

  .m-actions .el-button--primary {
    padding: 3px 10px !important;
    border: 1px solid #dbe8fb !important;
    background: #eef5ff !important;
    color: #1f6feb !important;
  }

  .m-actions .el-button + .el-button {
    margin-left: 0 !important;
  }

  .m-actions .el-button.is-link,
  .m-actions .el-button.is-text {
    color: #1f6feb;
  }

  .m-actions .el-button--danger.is-link,
  .m-actions .el-button--danger.is-text {
    color: #c62828;
  }

  .m-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px 8px;
    margin-top: 9px;
  }

  .m-field {
    min-width: 0;
    padding: 6px 8px;
    border-radius: 8px;
    background: #f7f9fd;
    border: 1px solid #eef3fa;
  }

  .m-field-full {
    grid-column: 1 / -1;
  }

  .m-field:only-child {
    grid-column: 1 / -1;
  }

  .m-field span {
    display: block;
    font-size: 9.5px;
    line-height: 1.3;
    color: #9aa7ba;
  }

  .m-field b {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    color: #263244;
    word-break: break-all;
  }

  .m-field.m-extra {
    display: none;
  }

  .m-generic.expanded .m-field.m-extra {
    display: block;
  }

  .m-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 8px;
    padding: 3px 8px;
    border: 0;
    border-radius: 7px;
    background: #eef5ff;
    color: #1f6feb;
    font-size: 11px;
    font-family: inherit;
  }

  .m-more-btn:active {
    background: #e1edff;
  }
}

/* 小屏再收紧一档 */
@media (max-width: 360px) {
  body[data-page="dashboard"] .todo-card {
    padding: 10px !important;
  }

  body[data-page="dashboard"] .todo-hint {
    display: none;
  }

  .wms-content {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body[data-page="profile"] .pf-todo-grid {
    grid-template-columns: 1fr !important;
  }
}
