












html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid {
  gap: 4px !important;
}


html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph {
  height: 28px !important;
  width: 44px !important;
  min-height: 0 !important;
  border-radius: 6px !important;
}


html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph-slot-tip {
  font-size: 14px !important;
  line-height: 1 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph-empty-text {
  font-size: 8px !important;
  line-height: 1.05 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph-noimg {
  font-size: 14px !important;
}


html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph .badge.ph-idx {
  min-width: 13px !important;
  height: 13px !important;
  font-size: 8px !important;
  right: 2px !important;
  bottom: 2px !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph .badge,
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-photo-grid .ph .flag {
  font-size: 8px !important;
  padding: 0 3px !important;
}
















html body[data-module="admin"] #aj-list#aj-list.aj-listmode .lw-wchip.lw7-hide-w {
  display: block !important;
}












@media (min-width: 1440px) {
  html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-meta .xh-l2-chips > .xh-photo-grid.xh-pg-band {




























    top: -25px !important;
    right: 669px !important;



  translate: -90px 3px;
  }
}











html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid .ph-upload-slot .ph-noimg i,
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid .ph-upload-slot .ph-noimg svg {
  font-size: 11px !important;
  width: 11px !important;
  height: 11px !important;
}










html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line > .xh-seal-actions {






  translate: -352px 82px !important;
}









html body[data-module="admin"] #aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line > .lw-blg:nth-child(7) {

  translate: -133px 30px;
}











html body[data-module="admin"] #aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-top-right {
  translate: -1px 2px;
}





















html body[data-module="admin"] #aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line {
  translate: 279px -103px;
}









































html body[data-module="admin"] #aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line > .lw-blg:nth-child(5) {
  translate: 21px 2px;
}













html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid {
  align-items: start !important;
  grid-auto-flow: row !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid > .ph {
  grid-row: auto !important;
  grid-column: auto !important;
  align-self: start !important;
}



































html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line {
  translate: 695px -6px;
}































html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line {
  display: none !important;
}

































































html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line.lw7-l2 {
  display: none !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta {
  margin-bottom: 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-actions,
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-lock-timer {
  margin-top: 4px !important;
}












html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta {
  min-height: 0 !important;
  height: auto !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta > .xh-photo-grid.xh-pg-band {
  margin-bottom: 0 !important;
}

















html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line.xh-seal-line {
  height: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}











html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta::before,
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta > .xh-logi-line.lw7-l2 {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-upload-meta > .xh-meta-line {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}



























html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw-st-wrap {
  /* 2026.v5072-st-wrap-721（光年位置编辑器导出固化）：
     导出 Δx=+187  Δy=-52（相对上一版落点 534/43）⇒ 新落点 721 / -9
     只改这两个数，不碰 width/min-width（v5044 曾误加 right:auto 导致胶囊从 717px 压扁到 117px，勿重犯） */
  left: 633px !important;   /* 2026.v5175-stline-left30（光年指令）：状态行整体左移 30（663 -> 633）*/   /* 2026.v5142-left3up1（光年指令）：再左移 3px（666 -> 663）*/   /* 2026.v5141-st-before-pd（光年指令·纯 CSS）：搬到时间轴「派单」前面 —— 666 = 时间轴左缘 672 - 6px 间隙（只写 left，右缘由下面 translate:-100% 钉住）*/   /* v5103-st-left10c：再左移 10（411 -> 401）*/   /* v5101-st-left10b：再左移 10（421 -> 411）*/   /* v5100-st-left10：再左移 10（431 -> 421）*/   /* v5098-st-right10：再右移 10（421 -> 431）*/   /* v5097-st-left50：再左移 50（471 -> 421）*/   /* v5096-st-left100b：再左移 100（571 -> 471）*/   /* v5095-st-left100：再左移 100（671 -> 571）*/   /* v5093-st-left50：左移 50（721 -> 671）*/
  top: 60.7px !important;   /* 2026.v5142-left3up1（光年指令）：再上移 1px（61.7 -> 60.7）*/   /* 2026.v5141-st-two-lines（光年指令）：两条横线正中间 —— 线1 y63（.xh-l3a-line 上边线）/ 线2 y82（.xh-logi-line 上边线）⇒ 中线 72.5 − 胶囊高 21.6875/2 = 61.66 */   /* v5109-st-up2：上移 2（8 -> 6；卡内 y=7）*/   /* v5103-st-down5：下移 5（3 -> 8）*/   /* v5101-st-up8：上移 8（11 -> 3）*/   /* v5100-st-down10d：再下移 10（1 -> 11）*/   /* v5098-st-up10b：再上移 10（11 -> 1）*/   /* v5097-st-up10：上移 10（21 -> 11）*/   /* v5096-st-down10c：再下移 10（11 -> 21）*/   /* v5095-st-down10b：再下移 10（1 -> 11）*/   /* v5093-st-down10：下移 10（-9 -> 1）*/
  translate: -100% 0 !important;   /* 2026.v5141：把胶囊【右缘】钉在 left 上（不随状态文字宽度变化，保证永远紧贴派单左侧、不侵入时间轴）*/
  width: max-content !important;
  min-width: 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line {
  translate: 0 0 !important; 
  /* 2026.v5073-tl-up5（光年指令）：时间轴整体向上 5px（top 9 -> 4）*/
  /* 2026.v5074-tl-up8（光年指令）：时间轴再上移 8px（top 4 -> -4）*/
  /* 2026.v5078-tl-align-ph0（光年指令）：时间轴水平移动，使「到达」对齐上方第一格照片格
     实测（1680）：「到达」中心 C=989；第一格 PH0 中心 C=906 ⇒ 需左移 83px
     原 left=511（相对容器 .xh-l3a-line）⇒ 511-83 = 428
     仅改 left（水平），top 保持 -4（垂直不动）✓  scale(0.8) 原点在左 ⇒ 位移 1:1 不打折 ✓
     回滚：left 改回 511px */
  /* 2026.v5080-tl-right30（光年指令）：时间轴整体【右移 30px】
     原 left=511 ⇒ 511+30 = 541；仅改水平，top 保持 -4（垂直不动）✓
     换算：「到达」中心 989 -> 1019；每挪一格 = 46px（右移 76 = 下一格）
     回滚：left 改回 511px  */
  /* 2026.v5079：【回滚 v5078】left 428 改回 511 ——
     v5078 按「到达对齐第一格」算了左移 83px，但光年要的是【右移】⇒ 判断方向错了，撤回 ✓
     511 = 原本落点（「到达」中心 989，视觉上接近第三格）
     若后续要右移：left = 511 + 右移像素（每挪一格 = 46px）*/
  left: 619px !important;   /* 2026.v5175-stline-left30（光年指令）：时间轴随整行左移 30（649 -> 619；原 511+138 现 511+108）*/   /* v5086-tl-right8：再右移 8（641 -> 649；累计 511+138）*/   /* v5084-tl-right100：再右移 50（591 -> 641；累计 511+130）*/   /* v5081-tl-right50：再右移 50（541 -> 591；累计 511+80）*/
  top: -4px !important;
  right: auto !important;
}

/* 2026.v5062-note-freeze（第三步·CSS 定型）：便笺块隐藏改由 CSS 接管
   原 app-admin.js 的 lwNoteFreeze（v4130）每 500ms + 每次 DOM 变动，对全页 .xh-note-block
   写 display:none/visibility:hidden，然后还给「已被隐藏的」块写约 18 处尺寸内联
   （height/min/max 26px|32px、padding、box-sizing、resize、transition、animation…）——
   那些尺寸写入对 display:none 的元素无任何可见效果，纯冗余。
   等价接管：只保留它的实际效果「隐藏非胶囊便笺块」；.lw-note-pill 原样显示 ✓
   作用域：admin 端整页（与原 JS 一致；原 JS 对 driver 端直接 return ✓）
   回滚：删掉本段 + 删掉 app-admin.js 里 lwNoteFreeze 的 return 行 */
html body[data-module="admin"] .xh-note-block:not(.lw-note-pill) {
  display: none !important;
  visibility: hidden !important;
}

/* 2026.v5069-tl-scale（光年指令）：时间轴整体缩小到 80%
   做法：transform:scale（不影响布局、不牵动其他元素）；原点取 left center ⇒ 左端与垂直中心不动 ✓
   为什么不用 CSS 之外的办法：卡片上 JS 每帧写内联 !important，内联优先于任何 CSS；
   而 moveTl() 里 v4356 原本每帧把 transform 强设 none（会抹掉本缩放）⇒ 已给它加 data-lwpe 让位 ✓
   调大小：改下面 scale() 的数值即可（0.8 = 80%；1 = 原大小）
   回滚：删掉本段 */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line {
  transform: scale(0.8) !important;
  transform-origin: left center !important;
}

/* 2026.v5075-lb-plus05（光年指令）：时间轴的「派单/到达/进港/耗时」文字大 0.5 号
   这些字是 .lw3-lb（标签），原字号 11.5px（见 style.css:16606）⇒ 11.5 + 0.5 = 12px
   只改 font-size，其他一律不动（继承原色 #94a3b8 / 原布局）✓
   作用域：仅管理端「全部作业」图片模式的时间轴 ✓
   回滚：删掉本段 */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line .lw3-lb {
  font-size: 12px !important;
}

/* 2026.v5077-btn-close8（光年指令）：「修改数据」「确认作业」对称靠拢
   实测：两按钮间隙 21px，各带 transform: scale(0.85)
   做法：translateX 放在 scale【之前】⇒ 位移按视觉像素计（不被 0.85 缩放）
        修改数据 右移 8px；确认作业 左移 8px ⇒ 间隙 21 -> 5px，中心不动 ✓
   scale(0.85) 原样保留（不写就会把按钮放大）✓  仅图片模式 ✓
   调间距：改下面两个 8px（各改相同值才是 位置同等；想更近就加大）
   回滚：删掉本段 */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-actions .xh-upload-modify {
  /* 2026.v5082-btn-translate-attr（光年指令·恢复动画）：
     v5077 用 transform ...!important 做位移 ⇒ 按 CSS 规范，!important 声明优先于
     animation 与 :active 的 transform ⇒ 把「确认作业」的 hover 脉动(lwConfirmPulse)
     和点击下沉(translateY(1px)) 全压掉了 ✗
     改用【独立的 translate 属性】做位移：它与 transform 分开、互不干扰
     ⇒ 位移照旧、scale(0.85) 与原动画全部恢复 ✓
     调间距：改下面两个 8px（保持一致才是 位置同等）*/
  translate: 8px 0 !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-actions .xh-upload-confirm {
  translate: -8px 0 !important;
}

/* 2026.v5083-btn-anim-restore2（光年指令·恢复「确认作业」药丸动画）
   根因：admin-card-image.css:1126 用 transform: scale(0.85) !important（特异性 2,4,0）
         压过了 style.css:5416 的 :active { transform: translateY(1px) }（仅 0,3,0）
         ⇒ 点击下沉动画失效；hover 的 animation 也因原规则未匹配而没了
   做法：用更高特异性 + !important 在本文件重写这两条（关键帧 lwConfirmPulse 是全局的，直接引用）
         · hover ⇒ 呼吸光环（原样式）
         · active ⇒ 点击下沉 1px + 变亮，并保留 scale(0.85)（否则按下瞬间会变大）
   位移仍由 v5082 的 translate 属性负责 ⇒ 与此处 transform 互不干扰 ✓
   回滚：删掉本段 */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-actions .xh-upload-confirm:hover {
  animation: lwConfirmPulse 1.15s ease-in-out infinite !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-actions .xh-upload-confirm:active {
  animation: none !important;
  transform: scale(0.85) translateY(1px) !important;
  filter: brightness(1.06) !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-actions .xh-upload-confirm:hover i {
  animation: lwCheckPop .5s ease-out forwards !important;
}

/* ========================================================================
 * 2026.v5088（光年指令·时间轴节点点击热区扩大）—— 纯 CSS，视觉零变化
 *
 * 【问题】实测（1680 档，时间轴 80% 缩放后）：每个节点 .lw3-c 只有 131 x 16 px，
 *   高仅 16px ⇒ 很不好点。相邻节点水平间距 19px。
 * 【诊断】elementFromPoint 实测：
 *   节点中心 HIT ✓；上 8px 处已命中 .xh-seal-actions（别的元素）；
 *   左 6px 处命中 .xh-l3a-line（父容器、不可点）⇒ 左右有空间，上方空间小。
 * 【做法】给节点加一个透明 ::after 伪元素外扩热区 —— 不改 padding/尺寸/布局，
 *   视觉上完全看不见，只是把可点范围撑大：
 *     垂直 ±5px（16 -> 26px，+62%）；水平 ±6px（每边上限 9px，取 6 留 7px 安全间隔）
 *   热区 143 x 26 px。
 * 【为何安全】① 伪元素 position:absolute ⇒ 不参与 flex 布局、不影响任何测量；
 *   ② .lw3-c 内部只有 .lw3-dot / .lw3-tx(含 .lw3-lb/.lw3-v)，无绝对定位子元素
 *   ⇒ 给它 position:relative 不改变任何既有定位基准；
 *   ③ .lw3-dur（耗时）是 cursor:default 不可点 ⇒ 用 :not(.lw3-dur) 排除，不扩它。
 * 作用域：仅管理端「全部作业」图片模式的时间轴（4xID 提特异性）。
 * 回滚：删掉本段即可。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line .lw3-c:not(.lw3-dur) {
  z-index: 4 !important;   /* v5088b：抬到虚线 .lw3-dash 之上 -- 伪元素透明，视觉零变化*/
  position: relative !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line .lw3-c:not(.lw3-dur)::after {
  content: "" !important;
  position: absolute !important;
  top: -8px !important;
  bottom: -8px !important;
  left: -8px !important;
  right: -8px !important;
  /* v5088c：时间轴有 transform:scale(0.8) ⇒ 外扩值须按 CSS px 给，视觉 = CSS x 0.8。
     想让视觉扩 6.4px ⇒ CSS 8px（-5/-6 时视觉只有 4/4.8px，实测 d5/r5 够不到）。*/
}

/* ========================================================================
 * 2026.v5089（光年指令）：铅封号1/2 从卡片右下移到左下
 * 这两个元素是 .xh-logi-line 内的 .lw-lbl3-grp（内含两个 .lw-lbl3），
 *   原定位：responsive.css:5413  right:8px; top:50%; translateY(-50%)（贴卡片右缘）
 *   实测（1680 档）：grp 在卡内 x=1222 附近、宽约 155px、y=84（.xh-logi-line 内垂直居中）
 * 改法：right:8px -> left:320px（相对 .xh-logi-line，该行左缘在卡内 23px ⇒ 卡内 x=343）
 *   —— 只改水平锚点，top/translateY/gap/display 一律不动；
 *   —— 宽度不受影响（inline-flex 是 shrink-to-fit，不靠 right 撑宽，与 v5044 的 block+hidden-select 情形不同）
 * 回滚：删掉本段即可恢复贴右缘。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-logi-line .lw-lbl3-grp {
  /* v5113-seal-under-photo：整组移到 6 个照片预览格下方并居中（两胶囊均分）
     实测照片格卡内 644~918（宽 274）；组宽 338 ⇒ 居中左缘 = 644 + (274-338)/2 = 612
     ⇒ left = 612 - 23 = 589。垂直（top）不动；gap 可单独调。*/
  left: 605px !important;   /* v5170-seal-all-left5（光年指令）：整体左移 5（610 -> 605；卡内 x=631）*/   /* v5165-seal-left100d（光年指令）：再左移 100（710 -> 610；卡内 x=636）*/   /* v5164-seal-left100c（光年指令）：再左移 100（810 -> 710；卡内 x=736）*/   /* v5163-seal-left100b（光年指令）：整体左移 100（910 -> 810；卡内 x=836）*/   /* v5161-seal-intoline（光年指令）：搬到「提单号」同一行、照片格右侧（卡内 x=936）*/   /* v5159-seal-pair-left100up100（光年指令）：整对左移 100（604 -> 504）*/   /* v5158-seal-left5down3b（光年指令）：再左移 5（609 -> 604）*/   /* v5157-seal-left5down3（光年指令）：再左移 5（614 -> 609）*/   /* v5156-seal-left30down3（光年指令）：再左移 30（644 -> 614）*/   /* v5155-seal-left10up30（光年指令）：再左移 10（654 -> 644）*/   /* v5154-seal-left50up80（光年指令）：再左移 50（704 -> 654）*/   /* v5117-seal-right35：再右移 35（669 -> 704；卡内 x=730）*/   /* v5115-seal-right40b：再右移 40（629 -> 669；卡内 x=695）*/   /* v5114-seal-right40：再右移 40（589 -> 629；卡内 x=655）*/   /* v5112-seal-right50c：再右移 50（505 -> 555；卡内 x=581）*/   /* v5111-seal-right30b：再右移 30（475 -> 505；卡内 x=531）*/   /* v5110-seal-right100：再右移 100（375 -> 475；卡内 x=501）*/   /* v5109-seal-left10：再左移 10（385 -> 375；卡内 x=401）*/   /* v5108-seal-left30：再左移 30（415 -> 385；卡内 x=411）*/   /* v5107-seal-left100：再左移 100（515 -> 415；卡内 x=441）*/   /* v5105-seal-right20：再右移 20（495 -> 515；卡内 x=541；轨迹 370/420/1420/1120/820/520/465/495/515）*/   /* v5102-seal-right30：右移 30（465 -> 495；卡内 x=518）*/
  /* v5102-seal-down1：下移 1px —— 原垂直定位是 responsive.css:5413 的 top:50% + translateY(-50%)，
     没有像素值可调 ⇒ 改写 top 为 calc(50% + 1px)（translateY(-50%) 保持不变）*/
  top: calc(50% - 65px) !important;   /* 2026.v5176-row-down10（光年指令）：整行下移 10（-75 -> -65）*/   /* v5161-seal-intoline（光年指令）：归位到卡片内提单号同行（卡内 y≈9）*/   /* v5159-seal-pair-left100up100（光年指令）：整对上移 100（-75px -> -175px）*/   /* v5158-seal-left5down3b（光年指令）：下移 3（-78px -> -75px）*/   /* v5157-seal-left5down3（光年指令）：下移 3（-81px -> -78px）*/   /* v5156-seal-left30down3（光年指令）：下移 3（-84px -> -81px）*/   /* v5155-seal-left10up30（光年指令）：再上移 30（-54px -> -84px）*/   /* v5154-seal-left50up80（光年指令）：再上移 80（+26px -> -54px）*/   /* v5110-seal-down1c：再下移 1（+25px -> +26px；卡内 y=110）*/   /* v5108-seal-down1b：再下移 1（+24px -> +25px；卡内 y=109）*/   /* v5107-seal-down3：再下移 3（+21px -> +24px；卡内 y=108）*/   /* 垂直：原 top:50% + translateY(-50%) 居中；+21px = 累计下移 21px（卡内 y=105）*/
  right: auto !important;
}

/* ========================================================================
 * 2026.v5090（光年指令·时间轴「多来几次就点不动」修复）
 *
 * 【根因·实测】连续点击 6 次复现：T0 成功、T1~T5 全部失效（lenDelta=0），
 *   但元素状态始终正常（visibility:visible / pointer-events:auto / 无内联样式）。
 *   elementsFromPoint 命中链每次都一样：
 *     div.xh-photo-grid(position:absolute; z-index:3)  <  span.lw3-c(relative; z-index:4)
 *   ⇒ .lw3-line 的 z-index 是 2（admin-card-image.css:1181），低于 .xh-photo-grid 的 3，
 *     而 .xh-photo-grid 是【视觉透明但占满区域】的容器 ⇒ 它拦掉了落在其范围内的所有点击，
 *     只有时间轴露出照片格的那一小块可点 ⇒ 表现为「不好点 / 时好时坏 / 多点几次失效」。
 *   （.lw3-c 自己 z-index:4 无效——.lw3-line 有 transform:scale(0.8) 已成层叠上下文，
 *     内部 z-index 出不来，对外只看 .lw3-line 的 z-index:2。）
 *
 * 【修法】只把 .lw3-line 抬到 .xh-photo-grid 之上（2 -> 5）。
 *   不动它的位置/transform/尺寸；照片格内可点元素在卡片顶部，与本行无重叠，不会被抢。
 * 回滚：删掉本段即可（z-index 回到 2）。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .lw3-line {
  z-index: 5 !important;
}

/* ========================================================================
 * 2026.v5106（光年指令）：两个铅封号之间留大间距 + 值区预留 12 位数字宽度
 *
 * 现状实测（1680 档）：每个 .lw-lbl3 = 标签 .lw-lbl3>i(55px) + 值区 .lw-lbl3>b(18px)
 *   ⇒ 胶囊仅 73px 宽、两个之间 gap 仅 9px（responsive.css:5413 的 gap:9px）
 *   ⇒ 12 位数字（约 83px）放不下，且两个胶囊会挤在一起
 *
 * 改法：① gap 9 -> 24px；② 值区 .lw-lbl3>b 预留 min-width:100px 且居中
 *   （12 位数字 ≈ 11.5px x 12 x 0.6 ≈ 83px，加 padding 0 8px 共 16px ⇒ 100px 稳妥）
 * 影响：组宽 155 -> 约 370px；卡内 x=541 + 370 = 911 <= 1398 ✓ 不出界
 * 作用域：仅管理端「全部作业」图片模式。回滚：删掉本段即可。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp {
  gap: 24px !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > b {
  min-width: 100px !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* 2026.v5116（光年指令）：铅封号1/2 整体缩小 1 个字号
 * 原 font-size: 11.5px（responsive.css:5414 的 .lw-lbl3）⇒ 11.5 - 1 = 10.5px
 * .lw-lbl3 内的 <i>(标签) 与 <b>(值) 都继承本字号 ⇒ 只改一处即整体缩小 ✓
 * 高度 19px / 值区 min-width 100px 不受影响（未改）。回滚：删本段 */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 {
  font-size: 10.5px !important;
}

/* 2026.v5118（光年选款 19「内描边」）：铅封号1/2 换款式
 * 预览出处：/home/ubuntu/seal20.html 第 19 款
 *   标签 i：浅蓝底 #dbeafe + 深蓝字 #1e40af
 *   值   b：白底   + 深蓝字 #1e40af + 内描边 inset 0 0 0 1px #93c5fd
 * 只改配色与描边 —— padding/height/display/字号/位置/值区宽度一律不动（仍由原规则提供）✓
 * 回滚：删本段即回到 v5116 之前的「灰标签 + 蓝值」*/
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > i {
  background: #dbeafe !important;
  color: #1e40af !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > b {
  background: #fff !important;
  color: #1e40af !important;
  box-shadow: inset 0 0 0 1px #93c5fd !important;
}

/* ========================================================================
 * 2026.v5119（光年指令）：铅封号1/2 改为【柜内可直接输入】，与「修改数据」(A端/司机端共通) 同一字段
 *
 * 依据：卡片里本来就有官方输入框 <input class=xh-seal-inp data-seal=seal_no1|seal_no2
 *   （placeholder=请录入、失焦自动保存、读写的就是 seal_no1/seal_no2 —— 与修改数据同字段）
 *   只是被 .xh-seal-line 的 flex 行挤成 0x0 而不可见。
 * 做法（不动任何 JS）：
 *   ① 隐藏 .lw-lbl3 里的只读值区 <b>（值改由 input 显示，同值不重复）
 *   ② 把官方 input 绝对定位叠到原值区位置并套上选款 19 的样式（白底 + 深蓝字 + 内描边）
 * 定位基准：给 .xh-seal-line 加 position:relative ⇒ input 的 left/top 相对该行
 *   实测该行卡内 [23,63]；铅封号1 值区卡内 783 ⇒ 相对 760；铅封号2 卡内 960 ⇒ 相对 937；y=110 ⇒ 相对 47
 * 回滚：删本段即回到只读胶囊。*/
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line { position: relative !important; }
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .xh-seal-inp {
  position: absolute !important;
  width: 88px !important;   /* v5161：与标签值区等宽 */
  height: 19px !important;
  top: -44px !important;   /* 2026.v5176-row-down10（光年指令）：整行下移 10（-54 -> -44）*/   /* v5168-seal-inp-left2up1（光年指令）：仅输入框上移 1（-53 -> -54）*/   /* v5159-seal-pair-left100up100（光年指令）：整对上移 100（47px -> -53px）*/   /* v5159-seal-pair-left100up100（光年指令）：整对上移 100（47px -> -53px）*/
  background: #fff !important;
  color: #1e40af !important;
  box-shadow: inset 0 0 0 1.5px #93c5fd !important;   /* v5132：边加粗加深（1px #93c5fd -> 1.5px #60a5fa），对齐预览款 19 的观感 */
  border: 0 !important;
  border-radius: 0 !important;   /* v5137：去右端半圆（原 0 9px 9px 0）*/
  box-sizing: border-box !important;
  padding: 0 6px !important;
  text-align: center !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  z-index: 6 !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .xh-seal-inp[data-seal="seal_no1"] { left: 649px !important;   /* v5170：整体左移 5（654 -> 649；卡内 x=672）*/   /* v5169-seal-inp-left1（光年指令）：仅输入框再左移 1（655 -> 654；卡内 x=677）*/   /* v5168：仅输入框左移 2（657 -> 655；卡内 x=678）*/   /* v5167-seal-inp-left5b（光年指令）：仅输入框再左移 5（662 -> 657；卡内 x=680）*/   /* v5166-seal-inp-left5（光年指令）：仅输入框左移 5（667 -> 662；卡内 x=685）*/   /* v5165：再左移 100（767 -> 667；卡内 x=690）*/   /* v5164：再左移 100（867 -> 767；卡内 x=790）*/   /* v5163：整体左移 100（967 -> 867；卡内 x=890）*/   /* v5161：卡内 x=990（标签1 值区）*/ /* v5159：整对左移 100 */ }
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .xh-seal-inp[data-seal="seal_no2"] { left: 799px !important;   /* v5170：整体左移 5（804 -> 799；卡内 x=822）*/   /* v5169：仅输入框再左移 1（805 -> 804；卡内 x=827）*/   /* v5168：仅输入框左移 2（807 -> 805；卡内 x=828）*/   /* v5167：仅输入框再左移 5（812 -> 807；卡内 x=830）*/   /* v5166：仅输入框左移 5（817 -> 812；卡内 x=835）*/   /* v5165：再左移 100（917 -> 817；卡内 x=840）*/   /* v5164：再左移 100（1017 -> 917；卡内 x=940）*/   /* v5163：整体左移 100（1117 -> 1017；卡内 x=1040）*/   /* v5161：卡内 x=1140（标签2 值区）*/ /* v5159：整对左移 100 */ }
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > b { visibility: hidden !important; }   /* v5121：保留占位（隐藏但占 100px），否则两个标签挤在一起、与输入框错位 */

/* 2026.v5120：解开 .lw-blg 容器对官方输入框的封禁
 * 实测：.xh-seal-inp 的父是 .lw-blg（0x0 被隐藏）⇒ 子元素永不渲染（设了 width/height 也是 -240,-267,0,0）
 * 做法：给【含输入框的】.lw-blg 设 display:contents —— 容器自身不参与布局，
 *       它的 .xh-k(标签) 与 .xh-seal-inp(输入框) 直接成为 .xh-seal-line 的子项 ⇒ 输入框生效
 *       容器里的 .xh-k 标签隐藏（标签由 .lw-lbl3 > i 显示，避免重复）
 * 作用域精确到 :has(.xh-seal-inp) ⇒ 不影响提单号/品名那两个容器 ✓
 * 回滚：删本段。*/
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .lw-blg:has(.xh-seal-inp) { display: contents !important; }
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .lw-blg:has(.xh-seal-inp) > .xh-k { display: none !important; }

/* 2026.v5130（撤回 v5124）：标签【不要】描边 —— 
   光年要的是「右侧值区那个框的边」（白底 + 浅蓝细边 + 右端大圆角），标签保持纯浅蓝块即可。
   本段原本给 .lw-lbl3 > i 加了 inset 描边，现删除，恢复预览款 19 原样。*/


/* ========================================================================
 * 2026.v5137（光年指令）：铅封号框回到 ①「1px 浅蓝」原样
 *   —— 回滚 v5133 ~ v5136 的「橙金 + 直角 + 双圈」
 *
 * ① 取色（对 边框4选1.png 第①行逐像素实测，不是估的）：
 *      框色 #93c5fd（1px）· 标签药丸底 #dbeafe · 值文字 #1e40af
 *      线上实测：药丸底 #dbeafe、值文字 #1e40af 已经完全一致
 *      ⇒ 唯一差异就是框色：#f59e0b（橙金）
 *
 * ②「框有种缺失感」真因（本段修的就是它）：
 *      v5135 给标签组 .lw-lbl3 画了一整圈外框，v5136 又想去掉值区自带的圈；
 *      但值区 <input class=xh-seal-inp> 是绝对定位挂在 .xh-seal-line 下的，
 *      并不在 .lw-lbl3 里 ⇒ v5135/v5136 那句「关内圈」的选择器根本打不到它
 *      ⇒ 同一个值区被画两圈：标签组外框（圆弧 9px）+ 输入框内描边（另一圆心）
 *      ⇒ 两圈不重合 ⇒ 看上去就像框缺了一块。
 *
 * ③ 本段做法（= ① 的几何：左端圆弧 · 中缝一条直线 · 右端圆弧）：
 *      · 标签组 .lw-lbl3   ：不画框（border-color: transparent，保留 1px 占位 ⇒ 位置一分不移）
 *                            + 还原 9px 圆弧（v5135 曾改直角）
 *      · 标签 .lw-lbl3 > i ：无描边、无中缝竖线（① 是「标签无描边」）
 *      · 值区 .xh-seal-inp ：只此一圈 —— 1px #93c5fd 内描边 + 圆角 0 7px 7px 0
 *                            （左直角贴着标签当"中缝"、右端 7px 圆弧；v5136 曾把两端都改直角）
 *
 * 回滚：删本段 ⇒ 回到 v5132（值区绿框 #86efac + 标签组 1px #e5e7eb 灰框 + 标签无描边）
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 {
  border-color: transparent !important;        /* v5137：① 标签无描边（留 1px 占位不位移）*/
  border-radius: 9px !important;               /* v5137：还原圆弧（v5135 曾改 0）*/
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > i {
  box-shadow: none !important;                 /* v5137：标签无内描边（① 无描边）*/
  border-right-color: transparent !important;  /* v5137：去掉 v5135 的中缝竖线（中缝由值区左边线担任）*/
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .xh-seal-inp {
  box-shadow: inset 0 0 0 1px #93c5fd !important;   /* v5137：① 1px 浅蓝（唯一一圈）*/
  border-radius: 0 9px 9px 0 !important;            /* v5137：左直角贴标签、右端圆弧（v5136 曾两端直角）*/
}

/* ========================================================================
 * 2026.v5138（光年指令）：「当前状态」胶囊 —— 取消边框，只留金色字体
 *   原状态：admin-card-image.css:575~587 按状态给边框上色
 *           （已装货 #93c5fd / 已进场 #fdba74 / 已派单 #c4b5fd / 已出场 #67e8f9 /
 *             正常·已完成 #86efac / 运输中 #fde047 / 待装货 #cbd5e1 / 已确认 #a5b4fc）
 *           ⇒ 每个状态一个彩色圈，太重
 *   本段：只去掉框（border + box-shadow 一起清），金色字体不动
 *        选择器权重：html body[data-module]×2 + #ajFilterCard + #aj-list×3 + 2 class
 *        = (0,7,0)，压过原规则 (0,6,0)；且写在文件末尾，平手也赢
 *   回滚：删本段 ⇒ 状态彩色边框回来
 * ======================================================================== */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list .xh-upload-item .lw-st-chip,
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list .xh-upload-item .xh-cn-chip-box.lw-st-chip,
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list .xh-upload-item .xh-cn-chip-wrap.lw-st-wrap > .lw-st-chip {
  border: 0 !important;
  box-shadow: none !important;
}

/* ========================================================================
 * 2026.v5139（光年指令）：铅封号 = seal20.html 第 19 款「内描边」原码直搬
 *   原码来源：/home/ubuntu/seal20.html（当时那张「铅封号 · 20 款样式」样张，本地留档 seal20.html）
 *     .s    { display:inline-flex; align-items:center; height:19px; border-radius:9px;
 *             font-size:10.5px; overflow:hidden }
 *     .s i  { padding:0 7px; height:100%; display:inline-flex; align-items:center }
 *     .s b  { font-weight:700; padding:0 8px; height:100%; min-width:100px;
 *             justify-content:center; box-sizing:border-box }
 *     .s19 i{ background:#dbeafe; color:#1e40af }
 *     .s19 b{ background:#fff; color:#1e40af; box-shadow: inset 0 0 0 1px #93c5fd }
 *   落到线上三件套：
 *     .lw-lbl3      = .s      （标签组：9px 圆角 + overflow:hidden ⇒ 左端圆弧、无描边）
 *     .lw-lbl3 > i  = .s19 i  （标签：浅蓝底 #dbeafe + 蓝字 #1e40af，无描边）
 *     .xh-seal-inp  = .s19 b  （值区：白底 + 蓝字 700 + inset 1px #93c5fd —— 全行唯一一圈框）
 *   注：值区在线上是绝对定位挂在 .xh-seal-line 下（不在 .lw-lbl3 里），吃不到 .s 的
 *       9px 圆角 + overflow:hidden，所以右端圆角直接写在它身上：0 9px 9px 0
 *       （左直角 = 贴着标签那一侧，与原码里 <b> 在 .s 内部的形态一致）。
 *   回滚：删本段 + 把 .xh-seal-inp 的 radius 改回 0 7px 7px 0 ⇒ 回到 v5137 的样子。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp .lw-lbl3 > i {
  background: #dbeafe !important;                  /* .s19 i */
  color: #1e40af !important;                       /* .s19 i */
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-seal-line .xh-seal-inp {
  background: #fff !important;                     /* .s19 b */
  color: #1e40af !important;                       /* .s19 b */
  font-weight: 700 !important;                     /* .s19 b */
  box-shadow: inset 0 0 0 1px #93c5fd !important;  /* .s19 b —— 唯一一圈框 */
  border-radius: 0 9px 9px 0 !important;           /* .s19 b —— 右端 9px（= .s 的 border-radius）*/
}


/* ===== 2026.v5123（光年指令）：柜号行两个胶囊「提单号 / 货物品名」接通字典下拉 =====
   现象：图片模式下这两个胶囊只是纯展示标签（.lw-cn-tag）——点了不能选值 ✗
         （真正带下拉的 .xh-seal-line 内两组已被 admin-card-image.css:606 隐藏）
   做法（零结构改动 / 零布局改动）：
     ① 模板在标签内塞一个 <select class="xh-pick-sel">：复用既有「透明铺满 + 随点随选」机制，
        change 走 __lwAdmInline2216 的即时保存，空/失败提示走 field-toast 气泡 ✓
     ② 本段只让该 select 透明铺满标签（点标签＝点 select ⇒ 弹原生字典下拉）✓
     ③ 标签内 .xh-v 值文本保持标签原字号/颜色，去掉通用 .xh-v 的底色与边框 ✓
   影响面：仅管理端「全部作业」图片模式；列表模式隐藏该 select（列表模式的提单号/货名控件
           在 .lw20-r15 行内，不重复）✓
   回滚：删本段 + 还原 app-admin.js（服务器 app-admin.js.bk-v5122）✓ */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag {
  position: relative !important;
  z-index: 5 !important;   /* v5124：实测照片 6 格在部分宽度下压住胶囊（点击落照片格）⇒ 胶囊提层，点击直达字典 select ✓ */
  cursor: pointer !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag:hover {
  background: #f7fbff !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag > .xh-v {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  display: inline-block !important;
  max-width: 220px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag > select.xh-pick-sel {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  opacity: 0 !important;
  cursor: pointer !important;
  z-index: 3 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
/* 列表模式：隐藏（列表模式走 .lw20-r15 行内的原控件） */
html body[data-module="admin"] #aj-list#aj-list.aj-listmode .xh-cn-line > .lw-cn-tag > select.xh-pick-sel {
  display: none !important;
}

/* ===== 2026.v5126（光年指令）：货名胶囊向左移 300px（仅货名，不动提单号） =====
   实测（1920）：货名胶囊原 translate:15px（x=921，紧贴提单号右侧 11px）。
   现改 translate:-285px（15-300）⇒ 左缘落到 ~621，落在「柜号文字(557)」与「提单号(788)」之间，
   与两侧均不重叠、仍保持胶囊形态；特异性用 #aj-list×3 压过 admin-card-image.css:1118 的
   .lw-cn-tag.lw-cn-cargo(translate:15px) ✓。回滚：删本段即可。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo {
  translate: -285px 0 !important;
}

/* ===== 2026.v5127（光年指令）：货物类型徽章「❄️冷藏集装箱」向右移 50px =====
   实测（1920）：.xh-cn-kind-wrap（父 .xh-cn-text 294px，右缘 557）原 x=357..454。
   右移 50 ⇒ x=407..504，仍在父框内（557 之前）⇒ 不越界、不重叠 ✓。
   仅作用于「全部作业」图片模式；其余页面/列表模式/司机端零影响 ✓。回滚：删本段。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-text > .xh-cn-kind-wrap { /* lw-kind-fix-v5129 */
  translate: 150px 0 !important; /* v5132-kind-left30（光年指令）：原 180px，再左移 30 ⇒ 150px */
}

/* ===== 2026.v5130（光年指令）：徽章再右移 80px（合计 180px）· 解除父框裁切 =====
   光年口径：只按右移量走，不管压住/裁切。
   但 .xh-cn-text 自带 overflow:hidden 会把移出框外的徽章裁掉 ⇒ 本段把该父框改
   overflow:visible（柜号仅约 90px、远小于 294px 框宽，不会产生溢出副作用）；
   并给徽章 z-index:6，使其压在相邻元素之上 ✓ 回滚：删 v5130 段 + 把 translate 改回。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .xh-cn-text {
  overflow: visible !important;   /* lw-kind-right180-v5130 */
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-text > .xh-cn-kind-wrap {
  z-index: 6 !important;          /* lw-kind-right180-v5130 */
}

/* ===== 2026.v5133（光年指令）：货物品名照「❄️冷藏集装箱」徽章的观感显示（不要框） =====
   目标观感（.xh-cn-kind 实测 1920）：13px / 600 / var(--muted)=#8a94a6 / line-height 1.5 /
                                      无边框 · 无底色 · 无内距；形态＝「图标 + 文字」
   本段把 .lw-cn-tag.lw-cn-cargo 原有 11px·700·橙字(#b45309)、1.5px 橙框(#f59e0b)、白底、11px 圆角、
   padding 0 6px、height 20px 全部抹平 ⇒ 与徽章同观感 ✓
   JS 侧同步去掉静态「货物品名」四字（app-admin.js 10191）⇒ 实际显示「📦 值」✓
   不动的东西：① 点击选值链路（position:relative + z-index:5 + 透明 select 覆盖，沿用 v5123/v5124）
              ② 位置（-285px 由 1010 行那条规则负责）  ③ 提单号胶囊 .lw-cn-bill 完全不受影响
   特异度：#ajFilterCard + #aj-list×4 = 5 个 id ⇒ 压过 admin-card-image.css:614 的 3 个 id ✓
   回滚：删本段 + 还原 app-admin.js（apply.sh 已存改动前原文件） */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  color: var(--muted, #8a94a6) !important;
  min-width: 0 !important;
  vertical-align: baseline !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo:hover { background: transparent !important; }
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo > i {
  font-style: normal !important;
  font-size: 13px !important;
  line-height: 1 !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo > .xh-v {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  display: inline-block !important;
  max-width: 220px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* ===== 2026.v5134（光年指令）：货物类型「未选」不再消失 =====
   病根：lwAdmCnKindHTML() 对空值 return ''（徽章整块不渲染），且保存清空时
         wrap.style.display='none' ⇒ 未选=消失、且再也点不到。
   改为：始终渲染；空值显示灰字占位「未选」（更浅灰 #c2c9d4 以区分占位与真实值），
         仍可点开下拉；已确认作业仍只读（is-locked → 下拉 disabled）。
   仅管理端「全部作业」图片模式柜号卡；司机端 / 列表模式 / 其它页零影响。回滚：删本段。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-text > .xh-cn-kind-wrap.is-empty > .xh-cn-kind { /* lw-kind-empty-v5134 */
  color: #c2c9d4 !important;
}

/* ===== 2026.v5137（光年指令）：货物类型徽章 + 货物品名标签 字号各小 1 号（13px -> 12px） =====
   两个标签：①「货物类型 ——」(.xh-cn-kind)  ②「📦 氯化钠」(.lw-cn-tag.lw-cn-cargo)
   仅管理端「全部作业」图片模式；司机端 / 列表模式 / 其它页零影响。回滚：删本段。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-text > .xh-cn-kind-wrap > .xh-cn-kind { /* lw-2tags-small-v5137 */
  font-size: 12px !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo { /* lw-2tags-small-v5137 */
  font-size: 12px !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo > i {
  font-size: 12px !important;
}
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo > .xh-v {
  font-size: 12px !important;
}

/* ===== 2026.v5138（光年指令）：照片 6 格下方居中显示「共上传N张照片」 =====
   实现：节点是照片条(.xh-photo-grid.xh-pg-band)的最后一个子元素，条本身 position:absolute，
         故本节点用 top:100% + left/right:0 挂到「条底正下方、与条同宽」，text-align:center 即居中；
         绝对定位 ⇒ 不参与栅格、不改变条高、不挤压铅封行/状态条（卡片固定 142px 不受影响）✓
   仅管理端「全部作业」图片模式；列表模式(照片条 display:none)自动不显示；司机端/资产端零影响。回滚：删本段。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid > .xh-photo-count { /* lw-photo-count-v5138 */
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  display: block !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  color: #8a94a6 !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

/* ===== 2026.v5139（光年指令）：柜号行「📄 提单号 —」胶囊整体【左移 20px】 =====
   现值来自 css/admin-card-image.css:622 的 `translate: 15px 0`；该文件在本文件【之后】加载
   （admin.html 第 15/16 行）⇒ 本段用 4 个 #aj-list 提升特异性压过它（与 v5137 同手法）。
   translate 不占布局流 ⇒ 货物品名胶囊 / 货物类型徽章 / 相片条 / 其它元素零位移。
   仅管理端「全部作业」图片模式；列表模式 / 司机端 / 资产端零影响。回滚：删本段即可。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-bill { /* lw-bill-left20-v5139 */
  translate: -35px 10px !important;   /* 2026.v5176-row-down10（光年指令）：整行下移 10（Y 0 -> 10）*/ /* lw-bill-left10d-v5153：再左移 10px（累计 -35px） */
}

/* ===== 2026.v5141（光年指令）：「共上传N张照片」提示【上移 10px】 =====
   该节点样式在 css/admin-card-image.css:1114(v5138) 段（position:absolute; top:100% 挂照片条正下方）；
   该文件在本文件【之后】加载（admin.html 15/16 行）⇒ 本段用 4 个 #aj-list 提升特异性压过它。
   用 translate 上移 ⇒ 不参与布局、卡高/其它元素零影响。仅管理端「全部作业」图片模式。
   回滚：删本段即可。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid > .xh-photo-count { /* lw-photocount-up10-v5141 */
  translate: 0 -30px !important; /* lw-photocount-up1b-v5145：再上移 1px（累计 -30px） */ /* lw-photocount-up1-v5144：再上移 1px（累计 -29px） */ /* lw-photocount-up3-v5143：再上移 3px（累计 -28px） */ /* lw-photocount-up15-v5142：再上移 15px（累计 -25px） */
}

/* ===== 2026.v5147（光年指令）：货名胶囊「📦 值」再【左移 5px】 =====
   现值来自本文件 v5126 段（translate: -285px 0，3 个 #aj-list）；本段用 4 个 #aj-list
   提升特异性压过它 ⇒ -290px。只动货名胶囊，提单号胶囊 / 货物类型徽章 / 卡高零影响。
   仅管理端「全部作业」图片模式。回滚：删本段即可。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-cn-line > .lw-cn-tag.lw-cn-cargo { /* lw-cargo-left5-v5147 */
  translate: -300px 0 !important; /* lw-cargo-left5c-v5149：再左移 5px（累计 -300px） */ /* lw-cargo-left5b-v5148：再左移 5px（累计 -295px） */
}


/* ========================================================================
 * 2026.v5161（光年指令）：铅封号1/2 一对（标签胶囊 + 输入框）排到「提单号」同一行后面
 *   · 位置：紧接照片格右侧的空位（卡内 x 936~1228，与提单号胶囊同一行 y≈9~29）
 *   · 尺寸：每个胶囊定宽 142px（标签 54 + 值区 88），组内 gap 8px ⇒ 两胶囊 292px 正好落进空位
 *   · 输入框（绝对定位、叠在值区上方）宽度同步 88px，left=967/1117px（相对 .xh-seal-line，其左缘卡内 23）
 *   · 旧标签组在 v5159 被整组上移顶到卡外（实测卡内 y=-91），本条把它拉回卡内 —— 即「找回来的标签」
 *   · 只动绝对定位元素 ⇒ 不占布局流：卡片 142px 高、照片格、时间轴、状态条零位移
 *   · 仅管理端「全部作业」图片模式；列表模式 / 司机端 / 资产端零影响。回滚：删本段 + 把 left/top 改回即可。
 * ======================================================================== */
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp {
  gap: 8px !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp > .lw-lbl3 {
  width: 142px !important;
  flex: 0 0 142px !important;
  border-radius: 9px !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp > .lw-lbl3 > i {
  width: 54px !important;
  padding: 0 !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}
html body[data-module="admin"] #aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-logi-line .lw-lbl3-grp > .lw-lbl3 > b {
  width: 88px !important;
  padding: 0 !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* ========================================================================
 * 2026.v5171（光年指令）：照片「6 格 + 底部『共 N 张照片』文字」整体向右 15px
 *   现值来自 css/admin-card-image.css:1249（translate: -59px 26px，4 个 #aj-list）。
 *   本段用 [data-module]x2 + #ajFilterCard + #aj-listx4 提升特异性压过它 => -44px 26px（Y 仍 26px）。
 *   底部文字 .xh-photo-count 是 .xh-photo-grid 的末位子元素（image.css:1114 position:absolute; top:100%）
 *   => 随父条一起移动，无需单独规则；其自身上移 -30px 的规则（v5145）不受影响。
 *   实测（1600x1000）：grid [864,282,274,60]；6x.ph 各 44x28（x=864/910/956/1002/1048/1094）；.xh-photo-count [864,313,274,16]。
 *   回滚：删本段即可（自动回落到 image.css:1249 的 -59px）。
 * ======================================================================== */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item > .xh-upload-meta .xh-photo-grid { /* v5171-photo-right15 */
  translate: -44px 26px !important;
}

/* ===== 2026.v5172（光年指令）：「共上传N张照片」字号【小一号】12px → 11px =====
   现值来自本文件 2026.v5138 段（.xh-photo-count font-size:12px）；本段用 4 个 #aj-list
   提升特异性压过它（与 v5141「上移」段同手法）⇒ 改后仍受 v5141 的 translate 上移影响，位置不变 ✓
   范围：仅管理端「全部作业」图片模式（该节点只在管理端存在）；司机端 / 资产端 / 列表模式零影响 ✓
   回滚：删掉本段即可 ================================================================ */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid > .xh-photo-count { /* lw-photo-count-11px-v5172 */
  font-size: 11px !important;
  line-height: 1.25 !important;
}

/* ===== 2026.v5173（光年指令）：「共上传N张照片」字号【再小一号】11px -> 10px =====
   线上实测：.xh-photo-count fontSize=11px / lineHeight=13.75px / weight=500 / color rgb(138,148,166)。
   本段与 v5172 段选择器完全相同（4 个 #aj-list + [data-module]x2），靠后加载胜出 => 10px。
   位移不受影响：v5171（整条右移 15）作用在父 .xh-photo-grid；v5145（上移 30）作用在本节点 translate，
   本段不碰 translate/position，故位置与之前一致 ✓
   仅管理端「全部作业」图片模式；司机端 / 资产端 / 列表模式零影响。回滚：删本段即可。 */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item .xh-photo-grid > .xh-photo-count { /* v5173-photocount-font10 */
  font-size: 10px !important;
  line-height: 1.25 !important;
}

/* ========================================================================
 * 2026.v5180（光年指令）：照片「6 格 + 底部『共 N 张照片』文字」整体再向右 20px
 *   现值来自本文件 v5171 段（translate: -44px 26px = image.css:1249 的 -59px 右移 15）。
 *   本段选择器与 v5171 完全相同（[data-module]x2 + #ajFilterCard + #aj-listx4），
 *   靠【更晚加载】胜出 => -24px（-44 + 20）26px（Y 仍 26px，垂直位置一律不动）。
 *   底部文字 .xh-photo-count 是 .xh-photo-grid 的末位子元素（image.css:1114 position:absolute; top:100%）
 *   => 随父条一起右移，无需单独规则；其自身上移 -30px 的规则（v5145）不受影响 ✓
 *   范围：仅管理端「全部作业」图片模式；列表模式 / 司机端 / 资产端 / 其它页零影响 ✓
 *   回滚：删本段即可（自动回落到 v5171 的 -44px）。
 * ======================================================================== */
html body[data-module="admin"][data-module="admin"] #aj-list#aj-list#aj-list#aj-list#aj-list:not(.aj-listmode) .xh-upload-item > .xh-upload-meta .xh-photo-grid { /* v5180-photo-right20 */
  translate: -24px 26px !important;
}

/* ========================================================================
 * 2026.v5182（光年指令）：图片模式 ⇄ 列表模式 切换 / 进入界面 / 刷新 —— 一律「零动画 · 首帧终态」
 *
 *   三处动画源（管理端「全部作业」与「我的确认」两页【共用 #aj-list】容器）：
 *   ① responsive.css:4250  #aj-list { opacity:0; animation: lwAjReveal4289 .12s linear 1.6s forwards }
 *      = 首屏遮罩（JS 稳定后加 .lw-aj-shown 提前揭示）。每次重渲染 JS 都会先 remove 该类
 *      ⇒ 又走一次透明度过渡（用户看到的"闪/淡入"）⇒ 本段改成【常显】，遮罩彻底失效。
 *   ② responsive.css:4996~4998  .xh-seal-actions / .xh-note-block 先 visibility:hidden、
 *      1.6s 后才由 lwShow4439 揭示（v4471 只覆盖了图片模式 ⇒ 列表模式下药丸晚 1.6s 才出现）
 *      ⇒ 本段两模式一律【立即可见】。
 *   ③ JS 切换动画（旧卡错峰淡出 + 新卡 FLIP 飞入，WAAPI，CSS 拦不住）
 *      ⇒ 「①全部作业」页已由 v4798X 置否；本版把「我的确认」页入口一并置否（app-admin.js）。
 *
 *   特异性：本文件在 responsive.css / admin-card-image.css 之后加载，且用 #aj-list#aj-list 提 id 数 ⇒ 必胜 ✓
 *   范围：仅管理端这两页（共用 #aj-list）；司机端 / 资产端 / 客户 / 工资 / 其它页零影响 ✓
 *   回滚：删本段 + 把 app-admin.js 里那处 if (false ...) 守卫还原即可 ====================== */
html body[data-module="admin"] #aj-list#aj-list {
  opacity: 1 !important;
  animation: none !important;
}
html body[data-module="admin"] #aj-list#aj-list .xh-upload-item .xh-seal-line > .xh-seal-actions,
html body[data-module="admin"] #aj-list#aj-list .xh-upload-item .xh-seal-line .xh-note-block,
html body[data-module="admin"] #aj-list#aj-list .xh-upload-item .xh-seal-line .xh-note-block .xh-note-inp {
  visibility: visible !important;
  animation: none !important;
}

/* ==================== 2026.v5878（B6·维护注记，不改任何值）====================
   本文件里以下规则【必输】给 admin-card-image.css（后者 id 数更多），改观感请直接改 image.css，勿在此处加码：
     · .ph-slot-tip / .ph-empty-text 的 font-size（image.css 用 12px/7px 覆盖本文件的 14px/8px）
     · .ph 的 min-height（image.css 用 28px 覆盖本文件的 0）
     · 照片格 translate 系列（image.css 的多 id 规则为最终赢家）
   一并记录：v5878 起 list-mode-stable.pinStaleBox 在表格模式下让位（window.__lwLmTable）。 ====== */
