/* Shared business workspace surfaces, preserving each module's fields and actions. */
#viewPages:has(> .online-archives:not([hidden])) { max-width:1320px; padding:32px 28px 16px; }
#viewPages>.online-archives.lz-business { padding:0; }
#viewPages .lz-business .far-head { margin:0 0 24px; gap:16px; }
#viewPages .lz-business .far-head h3 { font-size:26px !important; color:var(--ink); line-height:1.4; }
#viewPages .lz-business [data-ar-sub] { margin-top:8px; color:var(--ink2); }
#viewPages .lz-business .arch-heading { flex-basis:240px; }
#viewPages .lz-business .arch-actions { justify-content:flex-end; }
#viewPages .lz-business .arch-actions :is([data-ar-action=pull],[data-ar-action=sync]):disabled,#viewPages .lz-business .far-ops button:disabled { display:none; }
#viewPages .lz-business .arch-toolbar { padding:16px 20px; background:var(--soft); }
#viewPages .lz-business .far-search input { height:36px; border-color:var(--line); }
#viewPages .lz-business .arch-list-foot { color:var(--ink2); }
#viewPages .lz-business .arch-label,#viewPages .lz-business .arch-missing { color:var(--ink2); }
#viewPages .lz-business .arch-plate { padding:0; border:0; background:none; font-weight:500; letter-spacing:0; }
#view-cg .cg-scale-choice { display:flex; align-items:center; gap:6px; margin:0; color:var(--ink2); font-size:12px; }
#view-cg .cg-scale-choice select { height:36px; padding:4px 8px; }
#view-cg .cg-active-row { display:inline-flex; align-items:center; color:var(--ink2); font-size:12px; }
#view-cg #itemRows .row.is-current { outline:0; background:#edf5f3; }
#view-cg #itemRows .row.is-current input:not(:focus) { border-color:#c2d7d0; }
#view-cg #itemRows .row.is-current input[readonly] { background:#e6efeb; }
#view-cg #itemRows .row.is-current input.nm { color:var(--brand-d); font-weight:600; }
#view-cg .cg-form-actions { background:var(--soft); border-radius:0 0 12px 12px; }
#workspaceRefresh { margin-left:0; flex-shrink:0; }
[data-lz-modal].business-dialog,[data-lz-modal].workspace-refresh-dialog { color:var(--ink); font:13px/1.6 'Microsoft YaHei',sans-serif; scrollbar-color:#8eaab4 var(--soft); }
[data-lz-modal].cg-dialog.business-dialog,[data-lz-modal].workspace-refresh-dialog { border:1px solid var(--line); border-radius:12px; background:var(--panel); box-shadow:none; }
[data-lz-modal].business-dialog::backdrop,[data-lz-modal].workspace-refresh-dialog::backdrop { background:rgba(16,34,44,.45); backdrop-filter:none; }
[data-lz-modal].business-dialog :is(input,textarea,select),[data-lz-modal].workspace-refresh-dialog :is(input,textarea,select) { border-color:var(--line); border-radius:6px; caret-color:var(--brand); }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer).business-dialog .dlg-hd { padding:18px 20px; border-bottom:1px solid var(--line); background:var(--panel); }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer).business-dialog .dlg-hd h3 { font-size:16px; font-weight:600; }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer).business-dialog .fld input { min-height:36px; border-color:var(--line); }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer).business-dialog .dlg-ft { border-top:1px solid var(--line); background:var(--soft); }
[data-lz-modal]:is(#maskFarmer,#maskCustomer).business-dialog .upbox { border:1px solid var(--line); background:var(--soft); }
[data-lz-modal].business-dialog ::selection,[data-lz-modal].workspace-refresh-dialog ::selection { color:var(--brand-d); background:#dcebe7; }
[data-lz-modal].workspace-refresh-dialog { width:calc(100vw - 32px); max-width:1000px; max-height:90dvh; padding:20px; margin:auto; overflow:hidden; }
[data-lz-modal].workspace-refresh-dialog[open] { display:flex; flex-direction:column; }
.workspace-refresh-dialog .refresh-body { min-height:0; overflow:auto; padding-right:6px; scrollbar-color:#8eaab4 var(--soft); }
.workspace-refresh-dialog>header,.workspace-refresh-dialog>footer { flex-shrink:0; }
.workspace-refresh-dialog header,.workspace-refresh-dialog footer { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.workspace-refresh-dialog h3 { margin:0; font-size:16px; font-weight:600; }
.workspace-refresh-dialog .refresh-intro { margin:16px 0; color:var(--ink2); line-height:1.8; }
.workspace-refresh-dialog .refresh-section { padding:16px 0; border-top:1px solid var(--line); }
.workspace-refresh-dialog h4 { margin:0 0 14px; font-size:14px; }
.workspace-refresh-dialog .cg-detail-meta,.workspace-refresh-dialog .refresh-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 20px; margin:16px 0; }
.workspace-refresh-dialog dt { color:var(--ink2); font-size:12px; margin-bottom:6px; }
.workspace-refresh-dialog dd { margin:0; overflow-wrap:anywhere; }
.workspace-refresh-dialog .cg-table-scroll { max-height:28dvh; overflow:auto; border:1px solid var(--line); border-radius:6px; scrollbar-color:#8eaab4 var(--soft); }
.workspace-refresh-dialog table { width:100%; min-width:720px; border-collapse:collapse; font-variant-numeric:tabular-nums; }
.workspace-refresh-dialog th,.workspace-refresh-dialog td { text-align:right; padding:10px 12px; border-bottom:1px solid var(--line); white-space:nowrap; }
.workspace-refresh-dialog th { position:sticky; top:0; background:var(--soft); }
.workspace-refresh-dialog th:first-child,.workspace-refresh-dialog td:first-child { text-align:left; white-space:normal; min-width:130px; }
.workspace-refresh-dialog .cg-detail-total { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 24px; padding:12px 0; }
.workspace-refresh-dialog .cg-detail-total b { margin-left:8px; }
.workspace-refresh-dialog .cg-detail-warning { color:#765015; }
.workspace-refresh-dialog .cg-more-info summary { color:var(--brand); cursor:pointer; }
.workspace-refresh-dialog .cg-detail-remark { white-space:pre-wrap; }
.workspace-refresh-dialog footer { padding-top:16px; border-top:1px solid var(--line); }
.workspace-refresh-dialog .refresh-error { color:#a1322c; margin:12px 0 0; }
.workspace-refresh-dialog .refresh-error:empty { display:none; }
.workspace-refresh-dialog :focus-visible:not(.lz-btn) { outline:2px solid var(--brand); outline-offset:2px; }
.lz-business .lz-btn:disabled,.business-dialog .lz-btn:disabled,.workspace-refresh-dialog .lz-btn:disabled { opacity:.5; background:#f0f3f1; border-color:var(--line); color:#687b74; cursor:not-allowed; filter:none; }
@media(max-width:760px){.lz-btn.row-action{min-height:44px}}
@media(max-width:760px){
  #viewPages:has(> .online-archives:not([hidden])){padding:24px 16px 8px}
  #viewPages .lz-business .far-head h3{font-size:24px !important}
  #viewPages .lz-business .arch-actions{display:flex;justify-content:flex-start}
  #viewPages .lz-business .far-search input{height:42px;font-size:16px}
  #view-cg .cg-scale-choice select{height:42px}
  [data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer).business-dialog .fld input{min-height:42px;font-size:16px}
  .workspace-refresh-dialog .cg-detail-meta,.workspace-refresh-dialog .refresh-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-refresh-dialog footer{flex-wrap:wrap}
  .workspace-refresh-dialog footer button{flex:1}
  #workspaceRefresh{order:3}
  body .app-header .app-brand{min-width:84px;flex-shrink:0}
  body .app-header #brandName{white-space:nowrap}
}
@media(max-width:760px){#viewPages .lz-business .far-tbl th:first-child,#viewPages .lz-business .far-tbl th:last-child{left:auto;right:auto}body .app-header .scale-badges{gap:6px;flex-wrap:wrap}body .app-header .scale-badge{padding:5px 8px;gap:4px;white-space:nowrap}body .app-header .scale-badge .val{font-size:12px}}
/* 行级联动候选列表（linkage.js，rk/ck 共用，替代原生 datalist/浏览器记忆）。 */
.lz-sugg-list { position:fixed; z-index:80; max-height:300px; overflow:auto; padding:4px 0; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 10px 30px rgba(31,54,74,.18); font-size:12px; }
.lz-sugg-hint { margin:0; padding:5px 12px 3px; color:var(--ink2); font-size:11px; }
.lz-sugg-empty { margin:0; padding:8px 12px; color:var(--ink2); }
.lz-sugg-option { display:flex; flex-direction:column; gap:1px; padding:6px 12px; cursor:pointer; }
.lz-sugg-option strong { font-weight:600; color:var(--ink); }
.lz-sugg-option span { color:var(--ink2); font-size:11px; }
.lz-sugg-option:hover,.lz-sugg-option.is-active { background:#edf5f3; }

/* 信息档案按钮美化（D-96）：列表操作列与档案弹窗按钮观感；全部 scoped，其他模块不受影响。 */
/* 列表「操作」列：纯文字改为紧凑药丸（编辑/推送=品牌描边，删除=浅红描边）。
   用 ID-scoped :is() 压过 archive-online.css 的 ID 级旧规则（.far-ops .danger 等），
   min-height:0 抵消 .lz-btn.row-action 的 min-height:30px。 */
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn {
  height: 26px; min-height: 0; padding: 0 8px; border-radius: 999px; border: 1px solid var(--line);
  background: #fff; color: var(--brand); font-weight: 500;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .1s ease;
}
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn:hover { background: var(--soft); border-color: var(--brand); filter: none; }
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn:active { transform: translateY(1px); }
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn.danger { border-color: #e3c8c4; color: #a33d32; }
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn.danger:hover { background: #fcf0ee; border-color: #a33d32; }
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn:disabled { opacity: .5; background: #f0f3f1; border-color: var(--line); color: #687b74; cursor: not-allowed; transform: none; }
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
/* 证照列「查看」：小号药丸；「未上传」灰色 span（.far-btn.off）不受影响 */
:is(#view-farmers,#view-arch-drivers,#view-arch-customers) .arch-docs .lz-btn {
  min-height: 24px; height: auto; padding: 2px 10px; border-radius: 999px; font-size: 12px; font-weight: 500;
  transition: background-color .15s ease, border-color .15s ease;
}
/* 档案弹窗（三个表单 + 确认框 + 证照预览）：上传区与头部关闭按钮统一小药丸 */
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .upbox .acts .lz-btn,
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .dlg-hd .lz-btn {
  height: 26px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 500;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
/* 弹窗底部主按钮（保存/确认/删除；business-buttons 会移除 primary 类，主按钮即非 ghost 的 .lz-btn）：
   悬停轻上浮 + 投影，按下回落 */
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .dlg-ft .lz-btn:not(.ghost) {
  transition: filter .15s ease, box-shadow .15s ease, transform .15s ease;
}
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .dlg-ft .lz-btn:not(.ghost):hover { box-shadow: 0 2px 8px rgba(29,78,99,.28); transform: translateY(-1px); }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .dlg-ft .lz-btn:not(.ghost):active { transform: none; box-shadow: none; }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .dlg-ft .lz-btn:not(.ghost):disabled { box-shadow: none; transform: none; }
[data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .lz-btn:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
@media(max-width:760px){
  :is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-ops .lz-btn { min-height: 44px; }
  [data-lz-modal]:is(#maskFarmer,#maskDriver,#maskCustomer,#maskArchiveConfirm,#maskImg) .upbox .acts .lz-btn { min-height: 44px; }
}

/* 信息档案表格一页铺满（D-96）：archive-online.css 给三表写死 min-width 1240/1100/800px，
   1366 视口（内容区约 1110px）农户/客户表必然溢出出内部横向滚动条。
   覆盖规则带 [data-archive] 提到与生成规则同特异性（生成 CSS 的 [data-archive=X] 变体压得过裸 :is(#id)）；
   操作列改 3 药丸（编辑/推送/删除 nowrap ≈150px）后按 14% 列宽 + 收紧 padding 才放得下（列宽百分比在 archives.js shell()）；
   ≤760px 保留原横向滚动设计（README 口径：手机端保留滚动表格）。 */
@media(min-width:761px){
  :is(#view-farmers,#view-arch-drivers,#view-arch-customers)[data-archive] table.far-tbl { min-width: 0; width: 100%; }
  :is(#view-farmers,#view-arch-drivers,#view-arch-customers)[data-archive] table.far-tbl td.far-ops { padding-left: 10px; padding-right: 10px; }
  :is(#view-farmers,#view-arch-drivers,#view-arch-customers) .far-tblwrap { overflow-x: hidden; }
  :is(#view-farmers,#view-arch-drivers,#view-arch-customers) .arch-list-foot span:last-child { display: none; } /* 「左右滚动查看完整资料」已不适用 */
}
