@layer pages {

  /* 底部導覽 */

  /* ===== 篩選面板（品牌+分類 chips） ===== */
  [data-page="inventory"] .filter-panel { background: var(--c-white); padding: 12px 16px; border-bottom: 1px solid var(--c-border-strong); }
  [data-page="inventory"] .filter-section { margin-bottom: 10px; }
  [data-page="inventory"] .filter-section:last-child { margin-bottom: 0; }
  [data-page="inventory"] .filter-label { font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--c-muted); margin-bottom: 6px; display: flex; align-items: center; justify-content: space-between; }
  [data-page="inventory"] .filter-label .left { display: flex; align-items: center; gap: 6px; }
  [data-page="inventory"] .filter-label .count { font-weight: var(--fw-regular); color: var(--c-border-control); }
  [data-page="inventory"] .filter-chips { display: flex; flex-wrap: wrap; gap: 6px; transition: max-height 0.2s ease; }
  [data-page="inventory"] .filter-chips.is-collapsed { max-height: 32px; overflow: hidden; }
  [data-page="inventory"] .filter-chip .badge { font-size: var(--fs-11); background: rgba(0,0,0,0.08); padding: 1px 6px; border-radius: var(--r-md); }
  [data-page="inventory"] .filter-chip.is-active .badge { background: rgba(255,255,255,0.25); }
  [data-page="inventory"] .filter-summary { font-size: var(--fs-12); color: var(--c-border-control); }
  [data-page="inventory"] .toggle-btn { font-size: var(--fs-12); color: var(--c-primary); background: none; border: none; cursor: pointer; font-weight: var(--fw-medium); }
  @media (max-width: 767px) {
    [data-page="inventory"] .filter-chips.is-collapsed { max-height: 32px; }
}
  /* 庫存清單頂部匯出列（2026-08-13 Sarah：匯出按鈕從 topbar 移到這裡，靠右） */
  [data-page="inventory"] .loc-export-bar { display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin: 10px 2px 4px; }
  [data-page="inventory"] .loc-export-count { font-size: var(--fs-12); color: var(--c-muted); }

  [data-page="inventory"] .section-title {
    font-size: var(--fs-13); font-weight: var(--fw-bold); color: var(--c-muted);
    margin: 14px 0 8px;
    display: flex; justify-content: space-between; align-items: center;
    cursor: pointer; user-select: none;
  }
  [data-page="inventory"] .section-title .loc { color: var(--c-primary); font-weight: var(--fw-medium); margin-right: auto; }
  /* 位置折疊按鈕（最左邊箭頭） */
  [data-page="inventory"] .section-title .collapse-btn {
    background: none; border: none; padding: 0 6px 0 0; margin: 0;
    font-size: var(--fs-12); color: var(--c-primary); cursor: pointer; line-height: 1;
    transition: transform .15s ease;
  }
  [data-page="inventory"] .section-title.is-collapsed .collapse-btn { transform: rotate(-90deg); }
  [data-page="inventory"] .loc-group.is-collapsed { display: none; }
  /* 篩選按鈕隱藏規則（用於寬度足夠時隱藏「還有 XX 個」按鈕） */
  [data-page="inventory"] #fp-brand-toggle.hidden, [data-page="inventory"] #fp-cat-toggle.hidden {
    display: none;
  }

  [data-page="inventory"] .item-card {
    background: var(--c-white);
    border-radius: var(--r-lg);
    padding: 12px 14px;
    margin-bottom: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
  }
  [data-page="inventory"] .item-card .edit-btn {
    position: absolute;
    top: 8px;
    right: 10px;
    z-index: 5;
  }
  /* v10.1：品項照片縮圖（點擊可看大圖） */
    [data-page="inventory"] .item-card .item-photo {
      width: 52px; height: 52px; object-fit: cover;
      border-radius: var(--r-md); flex-shrink: 0;
      border: 1px solid var(--c-border); background: var(--c-surface-2);
      cursor: zoom-in; transition: transform .12s;
    }
    [data-page="inventory"] .item-card .item-photo:hover { transform: scale(1.15); box-shadow: 0 2px 8px rgba(0,0,0,.18); }
  [data-page="inventory"] .item-info { flex: 1; min-width: 0; cursor: pointer; }
  [data-page="inventory"] .item-name { font-size: var(--fs-14); font-weight: var(--fw-medium); padding-right: 118px; }
  [data-page="inventory"] .item-name .edit-hint { font-size: var(--fs-11); color: var(--c-border-control); font-weight: var(--fw-regular); margin-left: 4px; }
  [data-page="inventory"] .item-code { font-size: var(--fs-11); color: var(--c-border-control); margin-top: 1px; }
  [data-page="inventory"] .item-loc {
      font-size: var(--fs-11); color: var(--c-primary); background: var(--c-primary-soft);
      border-radius: var(--r-sm); padding: 2px 7px; display: inline-flex; align-items: center; gap: 4px; margin-top: 4px;
    }
  [data-page="inventory"] .stock-checkbox { width: 18px; height: 18px; cursor: pointer; flex-shrink: 0; }
  [data-page="inventory"] .item-card { position: relative; }
  [data-page="inventory"] .item-card > .stock-checkbox { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); z-index: 2; }
  [data-page="inventory"] .m-card .stock-checkbox { position: absolute; left: 8px; top: 8px; z-index: 2; }

  [data-page="inventory"] .qty-control { display: flex; align-items: center; flex-shrink: 0; }
  [data-page="inventory"] .qty-btn {
    width: 34px; height: 34px;
    border: none; border-radius: var(--r-md);
    font-size: var(--fs-16); font-weight: var(--fw-bold);
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: transform 0.1s;
  }
  [data-page="inventory"] .qty-btn:active { transform: scale(0.9); }
  [data-page="inventory"] .qty-minus { background: var(--c-danger-soft); color: var(--c-danger); }
  [data-page="inventory"] .qty-plus { background: var(--c-success-soft); color: var(--c-success); }
  [data-page="inventory"] .qty-btn:disabled { opacity: 0.35; cursor: not-allowed; }
  [data-page="inventory"] .qty-value {
    width: 46px; text-align: center;
    font-size: var(--fs-14); font-weight: var(--fw-bold);
    font-variant-numeric: tabular-nums;
    cursor: pointer;
  }
  [data-page="inventory"] .qty-value .unit { font-size: var(--fs-11); color: var(--c-border-control); font-weight: var(--fw-regular); }
  [data-page="inventory"] .btn-deselect-all { background: var(--c-white); color: var(--c-text-2); border: 1.5px solid var(--c-border-strong); font-size: var(--fs-12); }
  [data-page="inventory"] .btn-deselect-all:hover { border-color: var(--c-primary); color: var(--c-primary); }

  /* ===== 舊分片切換已移至 .h-site（Phase 1 Shell v2） ===== */

  @media (min-width: 768px) {
    [data-page="inventory"] .item-card { padding: 14px 18px; }
}

/* ===== v1.1 庫存頁 卡片 ✕ 刪除材料（2026-08-11 Sarah 需求） ===== */
  [data-page="inventory"] .item-card .del-btn {
    position: absolute;
    top: 8px;
    right: 66px;
    z-index: 5;
  }
[data-page="inventory"] .m-card .m-tag { display: inline-block; font-size: var(--fs-11); font-weight: var(--fw-medium); border-radius: var(--r-pill); padding: 1px 8px; margin-left: 0; margin-right: 4px; }  /* V1b 2026-08-16：chip 移出 nameHTML 後改右邊距 */
[data-page="inventory"] .m-card .m-tag.green { background: var(--c-success-soft); color: var(--c-success-strong); }

/* 手機庫存卡：底部 待領出/已領出 按鈕列（還原顯示） */
[data-page="inventory"] .m-card-actions {
  display: flex; gap: 8px; padding: 0 12px 12px;
}

/* 長註解獨立於主資訊列，避免推擠照片、數量與操作區。 */
[data-page="inventory"] .m-card .item-note {
  display: flex; flex-direction: row; gap: 2px; margin: 0 12px 10px; padding: 7px 9px;
  border: 1px solid var(--c-border); border-radius: var(--r-sm); background: var(--c-surface-2);
  color: var(--c-text-2); font-size: var(--fs-11); line-height: 1.45;
  min-width: 0; overflow-wrap: anywhere; word-break: break-word;
}
[data-page="inventory"] .m-card .item-note-label { flex: 0 0 auto; color: var(--c-muted); font-weight: var(--fw-bold); }
[data-page="inventory"] .m-card .item-note-text { min-width: 0; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; }
[data-page="inventory"] .m-card .note-slot .item-note { margin: 6px 0 0; }

/* 表格／桌面卡片使用同一組位置與註解語意；桌面不截斷內容。 */
[data-page="inventory"] .item-card .item-note {
  display: flex; flex-direction: row; gap: 2px; margin-top: 6px; padding: 5px 7px;
  border: 1px solid var(--c-border); border-radius: var(--r-sm); background: var(--c-surface-2);
  color: var(--c-text-2); font-size: var(--fs-11); line-height: 1.4;
  min-width: 0; overflow-wrap: anywhere; word-break: break-word;
}
[data-page="inventory"] .item-card .item-note-label { flex: 0 0 auto; color: var(--c-muted); font-weight: var(--fw-bold); }
[data-page="inventory"] .item-card .item-note-text { min-width: 0; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; }

/* 表格模式也保留完整文字入口；手機橫向表格捲動後不會只剩不明圖示。 */
[data-page="inventory"] .inventory-stockout-actions { display: flex; flex-direction: column; gap: 4px; min-width: 82px; }

/* ---------- 手機版（<768px） ---------- */
@media (max-width: 767px) {

  /* 注意：盤點頁仍用 data-table（手機不修改），故不隱藏 table */

  /* 手機庫存卡：qty-control 縮小（配合 qty-col padding-right 避開 ⋯） */
  [data-page="inventory"] .m-card .qty-control .qty-btn { width: 30px; height: 30px; font-size: var(--fs-16); border-radius: var(--r-md); }
  [data-page="inventory"] .m-card .qty-control .qty-value { width: 40px; font-size: var(--fs-14); }
}

/* ===== row-warn / row-danger ===== */
[data-page="inventory"] tr.row-warn td {background:var(--c-out-soft)}
[data-page="inventory"] tr.row-danger td {background:var(--c-danger-soft)}

/* ===== Table View (Phase 5) ===== */
[data-page="inventory"] .tbl-wrap {overflow-x:auto;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-white);margin-top:12px}
[data-page="inventory"] .tbl-wrap table.data-table {width:100%;border-collapse:collapse;font-size:var(--fs-13)}
[data-page="inventory"] .tbl-wrap table.data-table th {background:var(--c-surface-2);padding:10px 12px;text-align:left;font-weight:var(--fw-medium);color:var(--c-muted);border-bottom:1px solid var(--c-border);white-space:nowrap}
[data-page="inventory"] .tbl-wrap table.data-table td {padding:10px 12px;border-bottom:1px solid var(--c-surface-2)}
[data-page="inventory"] .tbl-wrap table.data-table tr:last-child td {border-bottom:none}
[data-page="inventory"] .tbl-wrap table.data-table tr.row-warn td {background:var(--c-out-soft)}
[data-page="inventory"] .tbl-wrap table.data-table tr.row-danger td {background:var(--c-danger-soft)}
[data-page="inventory"] .tbl-wrap .col-name {font-weight:var(--fw-medium)}
[data-page="inventory"] .tbl-wrap .col-qty {text-align:center;font-weight:var(--fw-bold)}
[data-page="inventory"] .tbl-wrap .col-loc {color:var(--c-muted);font-size:var(--fs-12)}
[data-page="inventory"] .tbl-wrap .col-status {text-align:center}
[data-page="inventory"] .tbl-wrap .col-actions {text-align:right;white-space:nowrap}
[data-page="inventory"] .tbl-wrap .col-actions button:not(.btn) {background:none;border:none;cursor:pointer;font-size:var(--fs-14);padding:2px 4px}
[data-page="inventory"] .tbl-wrap .inventory-action-menu {display:inline-flex;position:relative;vertical-align:middle;margin-left:4px}
[data-page="inventory"] .tbl-wrap .status-ok {color:var(--c-success);font-size:var(--fs-11)}
[data-page="inventory"] .tbl-wrap .status-warn {color:var(--c-warning);font-size:var(--fs-11);font-weight:var(--fw-medium)}
[data-page="inventory"] .tbl-wrap .status-danger {color:var(--c-danger);font-size:var(--fs-11);font-weight:var(--fw-medium)}

/* ===== View Toggle ===== */
[data-page="inventory"] .view-toggle {display:inline-flex;gap:4px;margin-left:8px}
[data-page="inventory"] .more-actions-wrap {position:relative}
[data-page="inventory"] .more-actions-dropdown {display:none;position:absolute;right:0;top:100%;margin-top:4px;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:var(--z-sidebar);min-width:140px}
[data-page="inventory"] .more-actions-dropdown.is-open {display:block}
[data-page="inventory"] .more-actions-dropdown button {display:block;width:100%;padding:10px 14px;border:none;background:none;font-size:var(--fs-13);text-align:left;cursor:pointer;white-space:nowrap}
[data-page="inventory"] .more-actions-dropdown button:hover {background:var(--c-surface-2)}

/* ===== Card warn/danger (Phase 5) ===== */
[data-page="inventory"] .item-card.warn, [data-page="inventory"] .m-card.warn {background:var(--c-out-soft);border:1px solid var(--c-out-solid)}
[data-page="inventory"] .item-card.danger, [data-page="inventory"] .m-card.danger {background:var(--c-danger-soft);border:1px solid var(--c-danger)}
/* 自 legacy/core.css 搬來的本頁規則（原含 !important，P5 以選擇器特異度取代） */
[data-page="inventory"] .m-card-actions .btn-prepare, [data-page="inventory"] .m-card-actions .btn-out {
  flex: 1; margin: 0;
}
[data-page="inventory"] .inventory-stockout-actions .btn-prepare, [data-page="inventory"] .inventory-stockout-actions .btn-out {
  margin: 0;
}
[data-page="inventory"] .tbl-wrap .col-actions button.inventory-action-trigger {border:1px solid var(--c-border);border-radius:var(--r-sm);background:var(--c-white);font-size:var(--fs-16);line-height:1;padding:1px 7px;color:var(--c-text-2)}
[data-page="inventory"] .tbl-wrap .col-actions button.inventory-action-trigger:hover {background:var(--c-surface-2);color:var(--c-primary-strong)}
[data-page="inventory"] .tbl-wrap .inventory-action-dropdown {display:none;position:absolute;right:0;top:calc(100% + 4px);min-width:132px;padding:4px;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:0 6px 18px rgba(15,23,42,.16);z-index:var(--z-popover)}
[data-page="inventory"] .tbl-wrap .inventory-action-dropdown.is-open {display:block}
[data-page="inventory"] .tbl-wrap .inventory-action-dropdown .inventory-action-item {display:block;width:100%;padding:8px 10px;border-radius:var(--r-sm);text-align:left;font-size:var(--fs-12);white-space:nowrap;color:var(--c-text-2)}
[data-page="inventory"] .tbl-wrap .inventory-action-dropdown .inventory-action-item:hover {background:var(--c-surface-2)}
[data-page="inventory"] .tbl-wrap .inventory-action-dropdown .inventory-action-item.del {color:var(--c-danger)}

/* 振佳空調管理系統 — 單一庫存 / 待領出 desktop content redesign
   只作用於本檔新增的 page-scoped classes，不改 Sidebar / Navbar / 其他頁面。 */

/* ===== Shared desktop content frame ===== */
[data-page="inventory"] .content.inventory-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 24px 32px 48px;
}

[data-page="inventory"] .filter-panel.inventory-filter-panel {
  width: 100%;
  padding: 0 32px 20px;
  border-bottom: 1px solid var(--c-border);
  background: var(--c-white);
}

[data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 24px 0 18px;
  border-bottom: 1px solid var(--c-border);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-heading-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  border-radius: var(--r-lg);
  background: var(--c-primary-soft);
  color: var(--c-primary);
  font-size: var(--fs-20);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading h1 {
  color: var(--c-text);
  font-size: var(--fs-28);
  line-height: 1.25;
  font-weight: var(--fw-bold);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading p {
  margin-top: 5px;
  color: var(--c-muted);
  font-size: var(--fs-14);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .filter-section {
  margin: 18px 0 0;
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .filter-label {
  margin-bottom: 8px;
  color: var(--c-text-2);
  font-size: var(--fs-13);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .filter-chips {
  gap: 8px;
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .filter-chip .badge {
  padding: 0;
  background: transparent;
  color: inherit;
  opacity: .7;
  font-size: var(--fs-11);
}
[data-page="inventory"] .filter-panel.inventory-filter-panel .filter-summary {
  color: var(--c-border-control);
}

/* ===== Inventory KPI ===== */
[data-page="inventory"] .inventory-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));}

[data-page="inventory"] button.inventory-kpi-card {
  width: 100%;
  font: inherit;
  cursor: pointer;
  transition: border-color .15s, background .15s, box-shadow .15s;}
[data-page="inventory"] button.inventory-kpi-card:hover {
  border-color: var(--c-border-strong);
  box-shadow: 0 4px 12px rgba(15, 23, 42, .06);
}
[data-page="inventory"] button.inventory-kpi-card:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--c-primary) 24%, transparent);
  outline-offset: 2px;
}

[data-page="inventory"] .inventory-kpi-action {
  margin-left: 4px;
  color: currentColor;
  font-size: var(--fs-11);
  opacity: .8;
}
[data-page="inventory"] .inventory-kpi-purple {
  border-color: var(--c-prepare-soft);
  background: var(--c-white);
}
[data-page="inventory"] .inventory-kpi-purple .inventory-kpi-icon {
  background: var(--c-prepare-soft);
}
[data-page="inventory"] .inventory-kpi-purple .inventory-kpi-number {
  color: var(--c-prepare);
}

[data-page="inventory"] .inventory-kpi-low .inventory-kpi-number, [data-page="inventory"] .inventory-kpi-low .inventory-kpi-action {
  color: var(--c-warning);
}

[data-page="inventory"] .inventory-kpi-out .inventory-kpi-number, [data-page="inventory"] .inventory-kpi-out .inventory-kpi-action {
  color: var(--c-danger);
}

/* ===== Inventory toolbar / table ===== */
[data-page="inventory"] .inventory-content .loc-export-bar {
  min-height: 44px;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 12px;
  padding: 10px 2px;
}
[data-page="inventory"] .inventory-content .loc-export-count {
  color: var(--c-text-2);
  font-size: var(--fs-14);
  font-weight: var(--fw-medium);
}
[data-page="inventory"] .inventory-content .view-toggle {
  margin-left: auto;
  gap: 0;
  padding: 3px;
  border: 1px solid var(--c-border);
  border-radius: var(--r-md);
  background: var(--c-surface-2);
}
[data-page="inventory"] .inventory-content .tbl-wrap {
  margin-top: 0;
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
[data-page="inventory"] .inventory-content .tbl-wrap table.data-table {
  border: 0;
  border-radius: 0;
}
[data-page="inventory"] .inventory-content .tbl-wrap table.data-table th {
  height: 46px;
  padding: 0 16px;
  background: var(--c-surface-2);
  color: var(--c-text-2);
  font-size: var(--fs-13);
  letter-spacing: .01em;
}
@media (min-width: 768px) {
  [data-page="inventory"] .inventory-content .tbl-wrap table.data-table {
    min-width: 1040px;
  }
}

[data-page="inventory"] .inventory-content .tbl-wrap table.data-table td {
  min-height: 88px;
  padding: 14px 16px;
  color: var(--c-text-2);
  font-size: var(--fs-13);
}
[data-page="inventory"] .inventory-content .tbl-wrap table.data-table tr:hover td {
  background: var(--c-white);
}
[data-page="inventory"] .inventory-content .tbl-wrap table.data-table tr.row-warn td {
  background: var(--c-out-soft);
}
[data-page="inventory"] .inventory-content .tbl-wrap table.data-table tr.row-danger td {
  background: var(--c-danger-soft);
}
[data-page="inventory"] .inventory-content .tbl-wrap .col-name {
  color: var(--c-text);
  font-size: var(--fs-14);
  font-weight: var(--fw-medium);
  line-height: 1.45;
}
[data-page="inventory"] .inventory-content .tbl-wrap .col-qty {
  font-size: var(--fs-16);
}
[data-page="inventory"] .inventory-content .tbl-wrap .col-actions {
  min-width: 190px;
}
[data-page="inventory"] .inventory-content .tbl-wrap .inventory-stockout-actions {
  flex-direction: row;
  min-width: 0;
  gap: 6px;
}
[data-page="inventory"] .inventory-content .tbl-wrap .inventory-action-trigger {
  min-height: 34px;
}
[data-page="inventory"] .inventory-content .status-warn, [data-page="inventory"] .inventory-content .status-danger {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 8px;
  border-radius: var(--r-pill);
  font-size: var(--fs-12);
  font-weight: var(--fw-medium);
}
[data-page="inventory"] .inventory-content .status-warn {
  background: var(--c-warning-soft);
  color: var(--c-warning);
}
[data-page="inventory"] .inventory-content .status-danger {
  background: var(--c-danger-soft);
  color: var(--c-danger);
}
[data-page="inventory"] .inventory-content .status-ok {
  color: var(--c-success);
  font-size: var(--fs-12);
}

/* ===== Inventory card view ===== */
[data-page="inventory"] .inventory-content .section-title {
  min-height: 42px;
  margin: 0;
  padding: 0 16px;
  border: 1px solid var(--c-border);
  border-bottom: 0;
  border-radius: var(--r-lg) var(--r-lg) 0 0;
  background: var(--c-surface-2);
  color: var(--c-muted);
  font-size: var(--fs-13);
}
[data-page="inventory"] .inventory-content .section-title .loc {
  color: var(--c-text-2);
  font-size: var(--fs-14);
}
[data-page="inventory"] .inventory-content .loc-group {
  margin-bottom: 16px;
  overflow: hidden;
  border: 1px solid var(--c-border);
  border-radius: 0 0 var(--r-lg) var(--r-lg);
  background: var(--c-white);
}
[data-page="inventory"] .inventory-content .loc-group .item-card {
  min-height: 108px;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: 0;
  padding: 16px 20px;
  border: 0;
  border-bottom: 1px solid var(--c-border);
  border-radius: 0;
  box-shadow: none;
}
@media (min-width: 768px) {
  [data-page="inventory"] .inventory-content .loc-group .item-card {
    grid-template-rows: auto auto;
    align-items: start;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-info {
    grid-column: 2;
    grid-row: 1;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-photo, [data-page="inventory"] .inventory-content .loc-group .item-card > .item-photo-empty {
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: center;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .qty-control {
    grid-column: 3;
    grid-row: 2;
    align-self: center;
    margin-top: 12px;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .inventory-stockout-actions {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
    margin-top: 12px;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-card-admin-actions {
    grid-column: 3;
    grid-row: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 0;
    white-space: nowrap;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-card-admin-actions .edit-btn, [data-page="inventory"] .inventory-content .loc-group .item-card > .item-card-admin-actions .del-btn {
    position: static;
    inset: auto;
    z-index: auto;
    margin: 0;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-card-admin-actions .edit-btn {
    order: 2;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card > .item-card-admin-actions .del-btn {
    order: 1;
  }
}
[data-page="inventory"] .inventory-content .loc-group .item-card:last-child {
  border-bottom: 0;
}
[data-page="inventory"] .inventory-content .loc-group .item-card:hover {
  background: var(--c-white);
}
[data-page="inventory"] .inventory-content .item-card .item-photo, [data-page="inventory"] .inventory-content .item-card .item-photo-empty {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  flex: 0 0 72px;
  border: 1px solid var(--c-border);
  border-radius: var(--r-md);
  background: var(--c-surface-2);
  color: var(--c-border-control);
  font-size: var(--fs-20);
}
[data-page="inventory"] .inventory-content .item-card .item-photo {
  object-fit: cover;
}
[data-page="inventory"] .inventory-content .item-card .item-info {
  min-width: 0;
  padding-right: 0;
  cursor: default;
}
[data-page="inventory"] .inventory-content .item-card .item-name {
  padding-right: 0;
  color: var(--c-text);
  font-size: var(--fs-16);
  font-weight: var(--fw-bold);
}
[data-page="inventory"] .inventory-content .item-card .item-code {
  margin-top: 5px;
  color: var(--c-muted);
  font-size: var(--fs-13);
}
[data-page="inventory"] .inventory-content .item-card .item-loc {
  margin-top: 8px;
  border: 1px solid var(--c-primary-soft);
  background: var(--c-primary-soft);
  color: var(--c-primary);
  font-size: var(--fs-12);
}
[data-page="inventory"] .inventory-content .item-card .inventory-stockout-actions {
  display: flex;
  flex-direction: row;
  gap: 8px;
  margin-top: 12px;
}
[data-page="inventory"] .inventory-content .item-card .qty-control {
  gap: 4px;
}
[data-page="inventory"] .inventory-content .item-card .qty-btn {
  width: 36px;
  height: 36px;
  border-radius: var(--r-md);
}
[data-page="inventory"] .inventory-content .item-card .qty-value {
  width: 58px;
  color: var(--c-text);
  font-size: var(--fs-16);
}
[data-page="inventory"] .inventory-content .item-card.warn, [data-page="inventory"] .inventory-content .item-card.danger {
  background: var(--c-white);
}
[data-page="inventory"] .inventory-content .item-card.warn {
}
[data-page="inventory"] .inventory-content .item-card.danger {
}
[data-page="inventory"] .inventory-card-status {
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  padding: 3px 8px;
  border-radius: var(--r-pill);
  vertical-align: middle;
  font-size: var(--fs-11);
  font-weight: var(--fw-medium);
}
[data-page="inventory"] .inventory-card-status.status-low {
  background: var(--c-warning-soft);
  color: var(--c-warning);
}
[data-page="inventory"] .inventory-card-status.status-out {
  background: var(--c-danger-soft);
  color: var(--c-danger);
}

/* ===== Inventory empty / status modal ===== */
[data-page="inventory"] .inventory-empty-state {
  min-height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  background: var(--c-white);
  text-align: center;
}
[data-page="inventory"] .inventory-empty-icon {
  margin-bottom: 12px;
  font-size: 42px;
}
[data-page="inventory"] .inventory-empty-state h2 {
  color: var(--c-text-2);
  font-size: var(--fs-16);
}
[data-page="inventory"] .inventory-empty-state p {
  margin: 8px 0 18px;
  color: var(--c-border-control);
  font-size: var(--fs-14);
}
[data-page="inventory"] .inventory-empty-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

[data-page="inventory"] .inventory-card-status.status-low {
  background: var(--c-warning-soft);
  color: var(--c-warning);
}
[data-page="inventory"] .inventory-card-status.status-out {
  background: var(--c-danger-soft);
  color: var(--c-danger);
}

/* ===== Responsive targets ===== */
@media (max-width: 1440px) {
  [data-page="inventory"] .content.inventory-content {
    padding: 24px 24px 40px;
  }
  [data-page="inventory"] .filter-panel.inventory-filter-panel {
    padding-left: 24px;
    padding-right: 24px;
  }

  [data-page="inventory"] .inventory-content .loc-group .item-card {
    gap: 14px;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 1200px) {
  [data-page="inventory"] .inventory-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  [data-page="inventory"] .filter-panel.inventory-filter-panel {
    padding: 0 14px 14px;
  }
  [data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading {
    padding: 16px 0 14px;
  }
  [data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading h1 {
    font-size: var(--fs-20);
  }
  [data-page="inventory"] .filter-panel.inventory-filter-panel .inventory-page-heading p {
    font-size: var(--fs-12);
  }
  [data-page="inventory"] .content.inventory-content {
    padding: 16px 14px 92px;
  }

  [data-page="inventory"] .inventory-content .loc-export-bar {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 0 0 10px;
  }
  [data-page="inventory"] .inventory-content .view-toggle {
    order: 3;
    width: 100%;
    margin-left: 0;
  }
  [data-page="inventory"] .inventory-content .view-toggle button {
    flex: 1;
  }
  [data-page="inventory"] .inventory-content .loc-group .item-card {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    min-height: 0;
    padding: 12px;
  }
  [data-page="inventory"] .inventory-content .item-card .item-photo, [data-page="inventory"] .inventory-content .item-card .item-photo-empty {
    width: 56px;
    height: 56px;
  }
  [data-page="inventory"] .inventory-content .item-card .qty-control {
    grid-column: 2;
    justify-self: start;
    margin-top: 2px;
  }
  [data-page="inventory"] .inventory-content .item-card .inventory-stockout-actions {
    flex-wrap: wrap;
  }
  [data-page="inventory"] .inventory-content .loc-export-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
  [data-page="inventory"] .inventory-content .loc-export-count { flex: 1 1 auto; min-width: 0; }
  [data-page="inventory"] .inventory-content .loc-export-bar .btn-add-inv { flex: 0 0 auto; order: 2; }
  [data-page="inventory"] .inventory-content .more-actions-wrap { order: 3; flex: 0 0 auto; position: relative; }
  [data-page="inventory"] .inventory-content .view-toggle { order: 4; flex: 0 0 100%; }
  [data-page="inventory"] .inventory-content .tbl-wrap .col-actions { white-space: nowrap; }
  [data-page="inventory"] .inventory-content .tbl-wrap .inventory-stockout-actions { display: inline-flex; flex-direction: row; align-items: center; flex-wrap: nowrap; vertical-align: middle; white-space: nowrap; }
  [data-page="inventory"] .inventory-content .tbl-wrap .inventory-action-menu { display: inline-flex; vertical-align: middle; }
}
/* 單一庫存資訊階層：品牌品名第一行、型號第二行，桌面／手機一致。 */
[data-page="inventory"] .inventory-content .m-card .nm { white-space: normal; overflow: visible; text-overflow: clip; }
[data-page="inventory"] .inventory-content .inventory-mobile-model { display: block; flex-basis: 100%; min-width: 0; margin-top: 2px; color: var(--c-primary); font-size: var(--fs-11); font-weight: var(--fw-medium); overflow-wrap: anywhere; }
[data-page="inventory"] .inventory-content .m-card .item-loc, [data-page="inventory"] .inventory-content .item-card .item-loc { display: block; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
[data-page="inventory"] .inventory-content .item-loc-label { font-weight: var(--fw-bold); }

/* 增減庫存 dialog 快捷列（2026-09-12 分數/小數單位；modal 本體沿用全域 .modal 樣式） */
[data-page="inventory"] .qtyd-quick { display: flex; gap: 8px; margin: 2px 0 10px; }
[data-page="inventory"] .qtyd-quick .chip { flex: 1; }
[data-page="inventory"] .qtyd-direction { display: flex; gap: 8px; margin: 2px 0 10px; }
[data-page="inventory"] .qtyd-direction[hidden] { display: none; }
[data-page="inventory"] .qtyd-direction .chip { flex: 1; }
@media (max-width: 767px) {
  [data-page="inventory"] #qty-dialog .modal { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow-y: auto; }
  [data-page="inventory"] #qtyd-input { font-size: var(--fs-16); min-height: 46px; }
}

/* 表格欄寬、數量狀態色、批次模式卡片內距、批次確認清單（原本是 JS inline style） */
[data-page="inventory"] .tbl-wrap th.col-check { width: 30px; }
[data-page="inventory"] .tbl-wrap th.col-thumb { width: 44px; }
[data-page="inventory"] .tbl-wrap .col-name-code { color: var(--c-muted); }
[data-page="inventory"] .inventory-content .tbl-wrap .col-qty.is-ok, [data-page="inventory"] .tbl-wrap .col-qty.is-ok { color: var(--c-success); }
[data-page="inventory"] .inventory-content .tbl-wrap .col-qty.is-low, [data-page="inventory"] .tbl-wrap .col-qty.is-low { color: var(--c-warning); }
[data-page="inventory"] .inventory-content .tbl-wrap .col-qty.is-out, [data-page="inventory"] .tbl-wrap .col-qty.is-out { color: var(--c-danger); }
[data-page="inventory"] #content [data-batch="1"] { padding-left: 32px; }
[data-page="inventory"] .qty-value.is-readonly { cursor: default; }
[data-page="inventory"] .modal-item-from { color: var(--c-text-subtle); }
[data-page="inventory"] .modal-item-to { color: var(--c-primary); }
}
