/* ============================================================
   layout-v26.css — 正式整合版
   目标：华为 nova8（412px）
   加载：style.css 之后、style-unify.css 之前
   ------------------------------------------------------------
   01 表格基础       02 表格列宽（含数字列加宽）
   03 备注列 + 类别   04 表格容器
   05 区块标题        06 弹窗容器
   07 弹窗表格        08 个人中心产品库
   09 个贷录入页      10 全局 padding 恢复
   11 载入征信弹窗    12 AI 提示词按钮
   13 按钮/表单高度   14 结果页顶栏
   15 响应式微调
   ============================================================ */


/* ============================================================
   01 · 表格基础
   ============================================================ */
html body table.plan-table {
  display: table !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  box-sizing: border-box !important;
  background: #fff;
}
html body table.plan-table th,
html body table.plan-table td {
  padding: 8px 6px !important;
  font-size: 12px;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
  border: 1px solid #c9d1d9 !important;
  background-clip: padding-box !important;
}
html body table.plan-table th {
  padding: 9px 6px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  text-align: left;
  background: #f1f5f9 !important;
  color: #334155 !important;
}
html body table.plan-table tr:first-child th { border-top: none !important; }
html body table.plan-table tbody tr:last-child td { border-bottom: none !important; }
html body table.plan-table th:first-child,
html body table.plan-table td:first-child { border-left: none !important; }
html body table.plan-table th:last-child,
html body table.plan-table td:last-child { border-right: none !important; }
html body table.plan-table tbody tr:hover td { background: #f0f7ff !important; }
html body table.plan-table tbody tr.row-installment td { background: #fff8e1 !important; }
html body table.plan-table tbody tr.row-installment:hover td { background: #fff3c4 !important; }
html body table.plan-table thead tr:first-child th:first-child { border-top-left-radius: 6px !important; }
html body table.plan-table thead tr:first-child th:last-child  { border-top-right-radius: 6px !important; }
html body table.plan-table tbody tr:last-child td:first-child  { border-bottom-left-radius: 6px !important; }
html body table.plan-table tbody tr:last-child td:last-child   { border-bottom-right-radius: 6px !important; }

/* 对齐工具 */
html body table.plan-table th.col-right,
html body table.plan-table td.col-right,
html body table.plan-table th.num-col,
html body table.plan-table td.num-col { text-align: right !important; }
html body table.plan-table th.col-center,
html body table.plan-table td.col-center { text-align: center !important; }
html body table.plan-table td.num {
  text-align: right !important;
  font-variant-numeric: tabular-nums !important;
  font-family: ui-monospace, Menlo, Consolas, monospace !important;
}
html body table.plan-table td.num.highlight {
  color: #e37400 !important;
  font-weight: 700 !important;
}
html body table.plan-table td.col-org { text-align: left; }


/* ============================================================
   02 · 表格列宽（含数字列加宽）
   ============================================================ */
/* 贷款表（手机端：机构 26 / 授信 18 / 余额 18 / 月供 15 / 备注 23） */
html body table.loan-table col.c-org  { width: 26% !important; }
html body table.loan-table col.c-amt  { width: 18% !important; }
html body table.loan-table col.c-bal  { width: 18% !important; }
html body table.loan-table col.c-pay  { width: 15% !important; }
html body table.loan-table col.c-tags { width: 23% !important; }

/* 信用卡表（手机端：机构 30 / 授信 15 / 已用 15 / 月供 22 / 状态 18） */
html body table.card-table col.c-org  { width: 30% !important; }
html body table.card-table col.c-amt  { width: 15% !important; }
html body table.card-table col.c-used { width: 15% !important; }
html body table.card-table col.c-pay  { width: 22% !important; }
html body table.card-table col.c-stat { width: 18% !important; }

/* 数字列 / 表头右对齐列：字号 11px + padding 收紧 */
html body table.plan-table td.num,
html body table.plan-table th.num-col,
html body table.plan-table th.col-right {
  font-size: 11px !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  letter-spacing: -0.3px !important;
}


/* ============================================================
   03 · 备注列 + 类别勋章
   ============================================================ */
html body table.plan-table td.col-tags {
  text-align: left;
  padding-left: 3px !important;
  padding-right: 3px !important;
}
html body .tags-cell {
  display: flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
}
html body .tags-cell .slot {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}
html body .tags-cell .slot-cat   { min-width: 24px; width: 24px; }
html body .tags-cell .slot-loop  { min-width: 13px; }
html body .tags-cell .slot-repay { min-width: 32px; }

html body .tags-cell .slot-cat select,
html body table.plan-table .tags-cell .slot-cat select {
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: none !important;
  border-radius: 0 !important;
  padding: 3px 4px !important;
  min-width: 24px !important;
  width: 24px !important;
  height: 22px !important;
  min-height: 22px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  border-width: 1px !important;
  border-style: solid !important;
  vertical-align: middle !important;
}
html body .tags-cell .slot-loop .tag-loop {
  color: #1e8e3e;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}


/* ============================================================
   04 · 表格容器（除个人中心外禁止横滚）
   ============================================================ */
html body .table-scroll {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  margin: 6px 0 !important;
  padding: 0 !important;
  border: 1px solid #c9d1d9;
  border-radius: 6px;
  background: #fff;
}


/* ============================================================
   05 · 区块标题
   ============================================================ */
html body .table-title {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-size: 13px;
  font-weight: 700;
  margin: 14px 0 6px;
  padding-bottom: 6px;
  border-bottom: 1px dashed var(--border-2);
  white-space: nowrap;
}
html body .table-title.blue   { color: var(--primary-d); }
html body .table-title.green  { color: var(--success); }
html body .table-title.purple { color: var(--violet); }
html body .table-title .table-count {
  font-size: 11px;
  font-weight: 500;
  color: var(--text-3);
}
html body .credit-kv p:empty { display: none; }


/* ============================================================
   06 · 弹窗容器
   ============================================================ */
html body .custom-modal {
  padding: 8px !important;
  box-sizing: border-box !important;
}
html body .custom-modal-card,
html body .custom-modal-card.wide {
  max-width: calc(100vw - 16px) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body .custom-modal-title   { padding: 18px 12px 16px !important; box-sizing: border-box !important; }
html body .custom-modal-body    { padding: 20px 8px !important; box-sizing: border-box !important; }
html body .custom-modal-actions { padding: 14px 12px !important; box-sizing: border-box !important; gap: 8px !important; }

html body .custom-modal-body .table-scroll,
html body .custom-modal-body [class~="table-scroll"] {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
html body .custom-modal-body table.plan-table,
html body .custom-modal-body table {
  width: 100% !important;
  table-layout: fixed !important;
  box-sizing: border-box !important;
  border-collapse: collapse !important;
}
html body .custom-modal-body .pl-debt-block,
html body .custom-modal-body .biz-debt-block,
html body .custom-modal-body .pl-asset-block {
  width: 100% !important;
  box-sizing: border-box !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}


/* ============================================================
   07 · 弹窗表格
   ============================================================ */
/* 房贷 / 车贷表（5 列） */
html body #plDebtModal table th:nth-child(1),
html body #plDebtModal table td:nth-child(1),
html body #plDebtModalPDF table th:nth-child(1),
html body #plDebtModalPDF table td:nth-child(1),
html body #bizDebtModal table th:nth-child(1),
html body #bizDebtModal table td:nth-child(1),
html body #bizDebtModalPDF table th:nth-child(1),
html body #bizDebtModalPDF table td:nth-child(1) { width: 24% !important; }

html body #plDebtModal table th:nth-child(2),
html body #plDebtModal table td:nth-child(2),
html body #plDebtModalPDF table th:nth-child(2),
html body #plDebtModalPDF table td:nth-child(2),
html body #bizDebtModal table th:nth-child(2),
html body #bizDebtModal table td:nth-child(2),
html body #bizDebtModalPDF table th:nth-child(2),
html body #bizDebtModalPDF table td:nth-child(2) { width: 22% !important; }

html body #plDebtModal table th:nth-child(3),
html body #plDebtModal table td:nth-child(3),
html body #plDebtModalPDF table th:nth-child(3),
html body #plDebtModalPDF table td:nth-child(3),
html body #bizDebtModal table th:nth-child(3),
html body #bizDebtModal table td:nth-child(3),
html body #bizDebtModalPDF table th:nth-child(3),
html body #bizDebtModalPDF table td:nth-child(3) { width: 22% !important; }

html body #plDebtModal table th:nth-child(4),
html body #plDebtModal table td:nth-child(4),
html body #plDebtModalPDF table th:nth-child(4),
html body #plDebtModalPDF table td:nth-child(4),
html body #bizDebtModal table th:nth-child(4),
html body #bizDebtModal table td:nth-child(4),
html body #bizDebtModalPDF table th:nth-child(4),
html body #bizDebtModalPDF table td:nth-child(4) { width: 26% !important; }

html body #plDebtModal table th:nth-child(5),
html body #plDebtModal table td:nth-child(5),
html body #plDebtModalPDF table th:nth-child(5),
html body #plDebtModalPDF table td:nth-child(5),
html body #bizDebtModal table th:nth-child(5),
html body #bizDebtModal table td:nth-child(5),
html body #bizDebtModalPDF table th:nth-child(5),
html body #bizDebtModalPDF table td:nth-child(5) {
  width: 6% !important;
  padding: 0 !important;
  text-align: center !important;
}

html body #plDebtModal table th,
html body #plDebtModalPDF table th,
html body #bizDebtModal table th,
html body #bizDebtModalPDF table th {
  background: #f1f5f9 !important;
  color: #334155 !important;
  font-weight: 700 !important;
  padding: 7px 4px !important;
  font-size: 11px !important;
  border: 1px solid #c9d1d9 !important;
  text-align: center !important;
  white-space: nowrap !important;
}
html body #plDebtModal table td,
html body #plDebtModalPDF table td,
html body #bizDebtModal table td,
html body #bizDebtModalPDF table td {
  padding: 6px 4px !important;
  border: 1px solid #c9d1d9 !important;
  background: #fff !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body #plDebtModal table input,
html body #plDebtModalPDF table input,
html body #bizDebtModal table input,
html body #bizDebtModalPDF table input,
html body #plDebtModal table select,
html body #plDebtModalPDF table select,
html body #bizDebtModal table select,
html body #bizDebtModalPDF table select {
  height: 30px !important;
  min-height: 30px !important;
  font-size: 12px !important;
  text-align: center !important;
  border-radius: 6px !important;
  border: 1px solid #c9d1d9 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  padding: 2px 6px !important;
}

/* 循环贷明细弹窗 */
html body #pdfLoopDetailBody table {
  table-layout: fixed !important;
  width: 100% !important;
  border-collapse: collapse !important;
}
html body #pdfLoopDetailBody th,
html body #pdfLoopDetailBody td {
  border: 1px solid #c9d1d9 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body #pdfLoopDetailBody th {
  padding: 9px 6px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  text-align: center !important;
  background: #f1f5f9 !important;
  color: #334155 !important;
}
html body #pdfLoopDetailBody th:nth-child(1) { text-align: left !important; }
html body #pdfLoopDetailBody td {
  padding: 8px 6px !important;
  font-size: 12px !important;
  text-align: center !important;
  background: #fff !important;
}
html body #pdfLoopDetailBody td:nth-child(1) {
  text-align: left !important;
  font-size: 11.5px !important;
  color: #334155 !important;
}
html body #pdfLoopDetailBody td:nth-child(2),
html body #pdfLoopDetailBody td:nth-child(3) {
  font-variant-numeric: tabular-nums !important;
  color: #475569 !important;
}
html body #pdfLoopDetailBody col:nth-child(1) { width: 30% !important; }
html body #pdfLoopDetailBody col:nth-child(2) { width: 15% !important; }
html body #pdfLoopDetailBody col:nth-child(3) { width: 15% !important; }
html body #pdfLoopDetailBody col:nth-child(4) { width: 18% !important; }
html body #pdfLoopDetailBody col:nth-child(5) { width: 22% !important; }
html body #pdfLoopDetailBody input[id$="_term"],
html body #pdfLoopDetailBody input[id$="_pay"] {
  width: 100% !important;
  max-width: 100% !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 2px 4px !important;
  font-size: 12px !important;
  text-align: center !important;
  box-sizing: border-box !important;
  border-radius: 6px !important;
  border: 1px solid #c9d1d9 !important;
  background: #fff !important;
  color: #333 !important;
}
html body #pdfLoopDetailBody input::placeholder {
  color: #b8b8b8 !important;
  font-size: 10.5px !important;
}
html body #pdfLoopDetailBody input:not(:placeholder-shown) {
  font-weight: 700 !important;
  color: #e37400 !important;
  background: #fff8e1 !important;
}
html body #pdfLoopDetailSummary {
  margin-left: 8px !important;
  margin-right: 8px !important;
  box-sizing: border-box !important;
}


/* ============================================================
   08 · 个人中心产品库
   ============================================================ */
html body #pcSub0 .table-scroll {
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
  position: relative !important;
  max-height: 62vh !important;
  min-height: 200px !important;
  overscroll-behavior: contain !important;
  contain: layout paint !important;
  transform: translateZ(0) !important;
}
html body #pcSub0 table.plan-table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}
html body #pcSub0 table.plan-table th,
html body #pcSub0 table.plan-table td {
  border-top: none !important;
  border-left: none !important;
  border-right: 1px solid #c9d1d9 !important;
  border-bottom: 1px solid #c9d1d9 !important;
  box-shadow: none !important;
}
html body #pcSub0 table.plan-table tbody td:nth-child(1) {
  position: sticky !important;
  left: 0 !important;
  z-index: 3 !important;
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  background: #e8f0fe !important;
  box-sizing: border-box !important;
  will-change: transform !important;
  transform: translateZ(0) !important;
  border-right: 2px solid #93b4e3 !important;
}
html body #pcSub0 table.plan-table thead th {
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  background: #f1f5f9 !important;
  will-change: transform !important;
  transform: translateZ(0) !important;
  border-bottom: 2px solid #93b4e3 !important;
}
html body #pcSub0 table.plan-table thead th:nth-child(1) {
  left: 0 !important;
  z-index: 5 !important;
  background: #dbe7fa !important;
}

/* 个贷产品库：19 列 */
html body #pcSub0 #tbl_product_personal {
  min-width: 1476px !important;
  width: 1476px !important;
}
html body #pcSub0 #tbl_product_personal th:nth-child(1),
html body #pcSub0 #tbl_product_personal td:nth-child(1)  { width: 40px !important;  min-width: 40px !important;  max-width: 40px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(2),
html body #pcSub0 #tbl_product_personal td:nth-child(2)  { width: 110px !important; min-width: 110px !important; max-width: 110px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(3),
html body #pcSub0 #tbl_product_personal td:nth-child(3)  { width: 110px !important; min-width: 110px !important; max-width: 110px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(4),
html body #pcSub0 #tbl_product_personal td:nth-child(4)  { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(5),
html body #pcSub0 #tbl_product_personal td:nth-child(5),
html body #pcSub0 #tbl_product_personal th:nth-child(6),
html body #pcSub0 #tbl_product_personal td:nth-child(6),
html body #pcSub0 #tbl_product_personal th:nth-child(9),
html body #pcSub0 #tbl_product_personal td:nth-child(9),
html body #pcSub0 #tbl_product_personal th:nth-child(10),
html body #pcSub0 #tbl_product_personal td:nth-child(10),
html body #pcSub0 #tbl_product_personal th:nth-child(11),
html body #pcSub0 #tbl_product_personal td:nth-child(11),
html body #pcSub0 #tbl_product_personal th:nth-child(13),
html body #pcSub0 #tbl_product_personal td:nth-child(13),
html body #pcSub0 #tbl_product_personal th:nth-child(14),
html body #pcSub0 #tbl_product_personal td:nth-child(14),
html body #pcSub0 #tbl_product_personal th:nth-child(15),
html body #pcSub0 #tbl_product_personal td:nth-child(15),
html body #pcSub0 #tbl_product_personal th:nth-child(17),
html body #pcSub0 #tbl_product_personal td:nth-child(17) { width: 70px !important;  min-width: 70px !important;  max-width: 70px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(7),
html body #pcSub0 #tbl_product_personal td:nth-child(7),
html body #pcSub0 #tbl_product_personal th:nth-child(8),
html body #pcSub0 #tbl_product_personal td:nth-child(8),
html body #pcSub0 #tbl_product_personal th:nth-child(12),
html body #pcSub0 #tbl_product_personal td:nth-child(12),
html body #pcSub0 #tbl_product_personal th:nth-child(16),
html body #pcSub0 #tbl_product_personal td:nth-child(16) { width: 80px !important;  min-width: 80px !important;  max-width: 80px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(18),
html body #pcSub0 #tbl_product_personal td:nth-child(18) { width: 150px !important; min-width: 150px !important; max-width: 150px !important; }
html body #pcSub0 #tbl_product_personal th:nth-child(19),
html body #pcSub0 #tbl_product_personal td:nth-child(19) { width: 26px !important;  min-width: 26px !important;  max-width: 26px !important; padding: 0 !important; }

/* 经营贷产品库：12 列 */
html body #pcSub0 #tbl_product_biz {
  min-width: 1046px !important;
  width: 1046px !important;
}
html body #pcSub0 #tbl_product_biz th:nth-child(1),
html body #pcSub0 #tbl_product_biz td:nth-child(1)  { width: 40px !important;  min-width: 40px !important;  max-width: 40px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(2),
html body #pcSub0 #tbl_product_biz td:nth-child(2)  { width: 110px !important; min-width: 110px !important; max-width: 110px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(3),
html body #pcSub0 #tbl_product_biz td:nth-child(3)  { width: 110px !important; min-width: 110px !important; max-width: 110px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(4),
html body #pcSub0 #tbl_product_biz td:nth-child(4)  { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(5),
html body #pcSub0 #tbl_product_biz td:nth-child(5)  { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(6),
html body #pcSub0 #tbl_product_biz td:nth-child(6)  { width: 70px !important;  min-width: 70px !important;  max-width: 70px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(7),
html body #pcSub0 #tbl_product_biz td:nth-child(7),
html body #pcSub0 #tbl_product_biz th:nth-child(8),
html body #pcSub0 #tbl_product_biz td:nth-child(8),
html body #pcSub0 #tbl_product_biz th:nth-child(10),
html body #pcSub0 #tbl_product_biz td:nth-child(10) { width: 80px !important;  min-width: 80px !important;  max-width: 80px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(9),
html body #pcSub0 #tbl_product_biz td:nth-child(9)  { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(11),
html body #pcSub0 #tbl_product_biz td:nth-child(11) { width: 150px !important; min-width: 150px !important; max-width: 150px !important; }
html body #pcSub0 #tbl_product_biz th:nth-child(12),
html body #pcSub0 #tbl_product_biz td:nth-child(12) { width: 26px !important;  min-width: 26px !important;  max-width: 26px !important; padding: 0 !important; }

html body #pcSub0 table.plan-table td input {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 3px 4px !important;
  font-size: 11px !important;
  height: 26px !important;
}
html body #pcSub0 table.plan-table th,
html body #pcSub0 table.plan-table td {
  padding: 6px 4px !important;
}
html body #pcSub0 .table-scroll::-webkit-scrollbar { width: 6px; height: 6px; }
html body #pcSub0 .table-scroll::-webkit-scrollbar-thumb {
  background: rgba(14,165,233,.4);
  border-radius: 3px;
}

/* 个人中心其它表格允许横滚 */
html body #pagePersonalCenter [class~="table-scroll"]:not(#pcSub0 [class~="table-scroll"]) {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}


/* ============================================================
   09 · 个贷录入页布局（对齐经营贷）
   ============================================================ */
html body #pagePersonal .pv2-row2 {
  display: block !important;
  margin-bottom: 0 !important;
}
html body #pagePersonal .pv2-row2 > * {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin-bottom: 8px !important;
}
html body #pagePersonal .pv2-card { width: 100% !important; box-sizing: border-box !important; }
html body #pagePersonal .pv2-card-body {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 8px 12px !important;
}
html body #pagePersonal .pv2-summary { width: 100% !important; box-sizing: border-box !important; }
html body #pagePersonal .pv2-section-title {
  margin: 10px 0 6px !important;
  font-size: 13px !important;
}
html body #pagePersonal .pv2-banks { width: 100% !important; box-sizing: border-box !important; }


/* ============================================================
   10 · 全局模块 padding 恢复（防色条压迫）
   ============================================================ */
html body .card,
html body .result-box,
html body .plan-card,
html body .biz-summary-card,
html body .biz-debt-block,
html body .pl-debt-block,
html body .pl-asset-block { padding: 14px !important; box-sizing: border-box !important; }
html body .product-item { padding: 12px 14px !important; box-sizing: border-box !important; }

html body .pv2-card-head { padding: 13px 16px !important; box-sizing: border-box !important; }
html body .pv2-card-body { padding: 14px 16px !important; box-sizing: border-box !important; }
html body .pv2-summary-head { padding: 13px 16px !important; box-sizing: border-box !important; }
html body .pv2-summary > div:not(.pv2-summary-head) { padding: 12px 16px !important; box-sizing: border-box !important; }
html body .pv2-banks { padding: 14px 18px !important; box-sizing: border-box !important; }
html body .pv2-section-title { padding: 6px 4px 6px 14px !important; }

html body .btn { padding: 9px 16px !important; box-sizing: border-box !important; }
html body .btn.small { padding: 5px 12px !important; }
html body .btn.big { padding: 12px 20px !important; }

html body input:not([type=file]):not([type=checkbox]):not([type=radio]),
html body select,
html body textarea { padding: 9px 12px !important; box-sizing: border-box !important; }
html body select { padding-right: 34px !important; }

html body .back-bar { padding: 12px 14px !important; box-sizing: border-box !important; }
html body .fixed-bottom { padding: 10px 14px calc(10px + env(safe-area-inset-bottom)) !important; box-sizing: border-box !important; }
html body .scroll-area { padding: 14px !important; padding-bottom: 24px !important; box-sizing: border-box !important; }

html body #pageHome .home-top { padding: 14px !important; box-sizing: border-box !important; }
html body #pageHome .home-bottom { padding: 16px 16px 24px !important; box-sizing: border-box !important; }
html body #pageHome .hv2-entry { padding: 16px 18px !important; box-sizing: border-box !important; }
html body #pageHome .hv2-entry--k,
html body #pageHome .hv2-entry--s { padding: 14px 16px !important; }

html body #pagePersonalCenter { padding: 60px 14px 14px !important; box-sizing: border-box !important; }

html body .credit-upload { padding: 26px 20px !important; box-sizing: border-box !important; }
html body .credit-page-item { padding: 10px 14px !important; box-sizing: border-box !important; overflow: hidden !important; }
html body .credit-page-item .cpi-name {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
html body .credit-kv { padding: 14px 16px !important; box-sizing: border-box !important; }

html body .acc-item { padding: 12px 14px !important; box-sizing: border-box !important; }
html body .contract-list-item { padding: 12px 14px !important; box-sizing: border-box !important; }

html body .calc-display { padding: 22px 20px !important; box-sizing: border-box !important; }
html body .calc-keys button { padding: 18px 8px !important; box-sizing: border-box !important; }
html body .calc-summary { padding: 14px 16px !important; box-sizing: border-box !important; }

html body .card > *,
html body .result-box > * { min-width: 0; }


/* ============================================================
   11 · 载入征信弹窗
   ============================================================ */
html body .credit-field-item,
html body label.credit-field-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  padding: 8px 10px !important;
  background: #fafbfc !important;
  border: 1px solid #eef1f5 !important;
  border-radius: 8px !important;
  margin-bottom: 5px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
html body .credit-field-item.checked {
  background: #e8f0fe !important;
  border-color: #1a73e8 !important;
}
html body .credit-field-item > input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}
html body .credit-field-item .cfi-name {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  font-size: 13px !important;
  color: #333 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
html body .credit-field-item .cfi-val {
  flex: 0 0 auto !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a73e8 !important;
  white-space: nowrap !important;
}
html body .credit-field-item .cfi-val.empty {
  color: #ccc !important;
  font-weight: 400 !important;
}


/* ============================================================
   12 · AI 提示词按钮
   ============================================================ */
html body #aiPromptCard { padding: 12px !important; box-sizing: border-box !important; }
html body #aiPromptCard .btn,
html body #aiPromptCard button.btn {
  padding: 6px 8px !important;
  font-size: 12px !important;
  min-height: 38px !important;
  height: 38px !important;
  max-height: 38px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  min-width: 0 !important;
}
html body #aiPromptCard button[onclick*="copyAiPrompt"] {
  font-size: 11.5px !important;
  padding: 6px 6px !important;
  letter-spacing: 0 !important;
}
html body #aiPromptCard button[onclick*="ocrJsonStart"] {
  flex: 1 1 auto !important;
  font-size: 12px !important;
  padding: 6px 8px !important;
}
html body #aiPromptCard button[onclick*="refreshAiPrompt"] {
  font-size: 11.5px !important;
  padding: 6px 6px !important;
}
html body #aiPromptCard > div:last-child,
html body #aiPromptCard div[style*="display:flex"][style*="gap"] {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  overflow: visible !important;
  align-items: stretch !important;
}


/* ============================================================
   13 · 按钮 / 表单高度
   ============================================================ */
html body #pageCalc #qs_method,
html body #pageCalc #lc_method {
  min-height: 36px !important;
  height: 36px !important;
  box-sizing: border-box !important;
}
html body #pagePersonalCenter .acc-actions button {
  min-height: 32px !important;
  padding: 6px 12px !important;
  box-sizing: border-box !important;
  font-size: 12px !important;
}


/* ============================================================
   14 · 结果页顶栏（真居中：grid 三栏）
   ============================================================ */
html body #pagePersonalResult .back-bar,
html body #pageBizResult .back-bar {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 6px !important;
  position: relative !important;
}
html body #pagePersonalResult .back-bar > button:nth-of-type(1),
html body #pageBizResult .back-bar > button:nth-of-type(1) {
  justify-self: start !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
}
html body #pagePersonalResult .back-bar > button:nth-of-type(2),
html body #pageBizResult .back-bar > button:nth-of-type(2) {
  justify-self: end !important;
  grid-column: 3 !important;
  grid-row: 1 !important;
}
html body #pagePersonalResult .back-bar .bb-title,
html body #pageBizResult .back-bar .bb-title {
  grid-column: 2 !important;
  grid-row: 1 !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding: 0 4px !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: auto !important;
  pointer-events: auto !important;
}
@media (max-width: 420px) {
  html body #pagePersonalResult .back-bar > button,
  html body #pageBizResult .back-bar > button {
    padding: 6px 10px !important;
    font-size: 12px !important;
    min-height: 28px !important;
  }
  html body #pagePersonalResult .back-bar,
  html body #pageBizResult .back-bar { gap: 4px !important; }
}


/* ============================================================
   15 · 响应式微调
   ============================================================ */
@media (max-width: 480px) {
  /* 贷款表更紧一档 */
  html body table.loan-table col.c-org  { width: 26% !important; }
  html body table.loan-table col.c-amt  { width: 18% !important; }
  html body table.loan-table col.c-bal  { width: 18% !important; }
  html body table.loan-table col.c-pay  { width: 15% !important; }
  html body table.loan-table col.c-tags { width: 23% !important; }

  html body table.plan-table th,
  html body table.plan-table td { padding: 7px 4px !important; font-size: 11.5px; }

  html body table.plan-table td.num,
  html body table.plan-table th.col-right {
    font-size: 10.5px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
  }

  html body .tags-cell { gap: 3px; }
  html body .tags-cell .slot-cat   { min-width: 24px; }
  html body .tags-cell .slot-loop  { min-width: 12px; }
  html body .tags-cell .slot-repay { min-width: 30px; }
}

@media (min-width: 720px) {
  /* 桌面端宽屏复原贷款/信用卡列宽 */
  html body table.loan-table col.c-org  { width: 34% !important; }
  html body table.loan-table col.c-amt  { width: 14% !important; }
  html body table.loan-table col.c-bal  { width: 14% !important; }
  html body table.loan-table col.c-pay  { width: 16% !important; }
  html body table.loan-table col.c-tags { width: 22% !important; }

  html body table.card-table col.c-org  { width: 38% !important; }
  html body table.card-table col.c-amt  { width: 13% !important; }
  html body table.card-table col.c-used { width: 13% !important; }
  html body table.card-table col.c-pay  { width: 22% !important; }
  html body table.card-table col.c-stat { width: 14% !important; }

  html body table.plan-table td.num,
  html body table.plan-table th.col-right {
    font-size: 12px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    letter-spacing: 0 !important;
  }

  html body #pagePersonal .pv2-row2 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
  html body #pagePersonal .pv2-row2 > * {
    margin-bottom: 0 !important;
  }
}



/* ===== FIX-NUM-WIDTH-V2 ===== */
/* 数字列加宽（阈值 480px，覆盖 nova8 412px） */

@media (max-width: 480px) {
  /* 贷款表：机构 24 / 授信 19 / 余额 19 / 月供 16 / 备注 22 */
  html body table.loan-table col.c-org  { width: 24% !important; }
  html body table.loan-table col.c-amt  { width: 19% !important; }
  html body table.loan-table col.c-bal  { width: 19% !important; }
  html body table.loan-table col.c-pay  { width: 16% !important; }
  html body table.loan-table col.c-tags { width: 22% !important; }

  /* 信用卡表：机构 28 / 授信 16 / 已用 16 / 月供 22 / 状态 18 */
  html body table.card-table col.c-org  { width: 28% !important; }
  html body table.card-table col.c-amt  { width: 16% !important; }
  html body table.card-table col.c-used { width: 16% !important; }
  html body table.card-table col.c-pay  { width: 22% !important; }
  html body table.card-table col.c-stat { width: 18% !important; }

  /* 数字列 / 表头：字号 10px + padding 3px */
  html body table.plan-table td.num,
  html body table.plan-table th.num-col,
  html body table.plan-table th.col-right {
    font-size: 10px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    letter-spacing: -0.5px !important;
  }
}

/* ===== END FIX-NUM-WIDTH-V2 ===== */




/* ===== FIX-NUM-WIDTH-V3 ===== */
/* 小屏（375/393/412）：机构缩到 18%，授信/余额各 22% */

@media (max-width: 480px) {
  /* 贷款表 */
  html body table.loan-table col.c-org  { width: 18% !important; }
  html body table.loan-table col.c-amt  { width: 22% !important; }
  html body table.loan-table col.c-bal  { width: 22% !important; }
  html body table.loan-table col.c-pay  { width: 16% !important; }
  html body table.loan-table col.c-tags { width: 22% !important; }

  /* 信用卡表 */
  html body table.card-table col.c-org  { width: 24% !important; }
  html body table.card-table col.c-amt  { width: 17% !important; }
  html body table.card-table col.c-used { width: 17% !important; }
  html body table.card-table col.c-pay  { width: 22% !important; }
  html body table.card-table col.c-stat { width: 20% !important; }

  /* 数字列 / 表头：字号 10px + padding 3px */
  html body table.plan-table td.num,
  html body table.plan-table th.num-col,
  html body table.plan-table th.col-right {
    font-size: 10px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    letter-spacing: -0.5px !important;
  }

  /* 机构列稍微收紧 padding */
  html body table.plan-table td.col-org {
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
}

/* ===== END FIX-NUM-WIDTH-V3 ===== */









/* ===== FIX-RESTORE-15 ===== */
/* 恢复 1.5px 左右贴边 + 色条不压内容 + 表格不溢出 */

/* 色条缩窄到 2px */
html body .card::before,
html body .result-box::before {
  width: 2px !important;
}

/* 卡片：左 3px（让出色条），右 1.5px */
html body .card,
html body .result-box {
  padding-left: 3px !important;
  padding-right: 1.5px !important;
}

/* 顶栏 / 底栏 / 返回栏 / 滚动区：左右 1.5px */
html body .fixed-top,
html body .fixed-bottom,
html body .back-bar,
html body .scroll-area {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* 表格容器 */
html body .table-scroll {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* 表格本体：强制 fixed，不按内容撑破 */
html body table.plan-table {
  table-layout: fixed !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* 表格单元格：左右 1.5px */
html body table.plan-table th,
html body table.plan-table td {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* 输入框 / 下拉：左右 4px（保证可用） */
html body input:not([type=file]):not([type=checkbox]):not([type=radio]),
html body select,
html body textarea {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

/* 按钮：左右 6px（保持可用） */
html body .btn {
  padding-left: 6px !important;
  padding-right: 6px !important;
}

/* 首页卡片、其他容器：左右 1.5px */
html body #pageHome .home-top,
html body #pageHome .home-bottom,
html body #pageHome .hv2-entry,
html body .pv2-card-head,
html body .pv2-card-body,
html body .pv2-summary-head,
html body .pv2-summary > div:not(.pv2-summary-head),
html body .pv2-banks,
html body .biz-summary-card,
html body .biz-debt-block,
html body .pl-debt-block,
html body .pl-asset-block,
html body .product-item,
html body .plan-card,
html body .acc-item,
html body .credit-upload,
html body .credit-page-item,
html body .credit-kv,
html body .contract-list-item {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* 弹窗 */
html body .custom-modal,
html body .custom-modal-title,
html body .custom-modal-body,
html body .custom-modal-actions {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* 计算器 */
html body .calc-display,
html body .calc-summary {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* 个人中心 */
html body #pagePersonalCenter {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

/* gap 缩小 */
html body .pv2-row2,
html body .biz-debt-row,
html body .pl-debt-row,
html body .pl-asset-row,
html body .tags-cell {
  column-gap: 1.5px !important;
}

/* 防止表格内容撑破容器 */
html body table.plan-table th,
html body table.plan-table td {
  box-sizing: border-box !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* ===== END FIX-RESTORE-15 ===== */


/* ============================================================
   END
   ============================================================ */

/* ============================================================================
   ============ FINAL-OVERRIDE · 最终定义块（最高优先级）============
   ----------------------------------------------------------------------------
   位置：文件末尾，覆盖前面所有同名定义
   实现用户 16 条要求：
     01 表格 Excel 带线
     02 数字右对齐 + 等宽
     03 数字不截断
     04 机构名硬切
     05 除个人中心外禁止横滚
     06 单元格不换行
     07 列宽协调（一次定义，覆盖前面重复）
     08 备注三栏（结构在 JS）
     09 类别方块
     10 弹窗加宽
     11 全局 1.5px 贴边
     12 色条 2px
     13 个贷录入单列
     14 结果页标题居中
     15 产品库冻结（序号 + 表头）
     16 产品库表头防抖
   ============================================================================ */


/* ---------- 01 表格基础（Excel 带线） ---------- */
html body table.plan-table {
  table-layout: fixed !important;
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: collapse !important;
  box-sizing: border-box !important;
  background: #fff;
}
html body table.plan-table th,
html body table.plan-table td {
  border: 1px solid #c9d1d9 !important;
  padding: 8px 6px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
  font-size: 12px;
}
html body table.plan-table th {
  background: #f1f5f9 !important;
  color: #334155 !important;
  font-weight: 700 !important;
  font-size: 11.5px !important;
  text-align: left;
  letter-spacing: 0.3px !important;
}
html body table.plan-table tr:first-child th { border-top: none !important; }
html body table.plan-table tbody tr:last-child td { border-bottom: none !important; }
html body table.plan-table th:first-child,
html body table.plan-table td:first-child { border-left: none !important; }
html body table.plan-table th:last-child,
html body table.plan-table td:last-child { border-right: none !important; }
html body table.plan-table tbody tr:hover td { background: #f0f7ff !important; }
html body table.plan-table tbody tr.row-installment td { background: #fff8e1 !important; }
html body table.plan-table thead tr:first-child th:first-child { border-top-left-radius: 6px !important; }
html body table.plan-table thead tr:first-child th:last-child  { border-top-right-radius: 6px !important; }
html body table.plan-table tbody tr:last-child td:first-child  { border-bottom-left-radius: 6px !important; }
html body table.plan-table tbody tr:last-child td:last-child   { border-bottom-right-radius: 6px !important; }


/* ---------- 02 数字列：右对齐 + 等宽 + 高亮 ---------- */
html body table.plan-table th.col-right,
html body table.plan-table td.col-right,
html body table.plan-table th.num-col,
html body table.plan-table td.num-col { text-align: right !important; }
html body table.plan-table th.col-center,
html body table.plan-table td.col-center { text-align: center !important; }
html body table.plan-table td.num {
  text-align: right !important;
  font-variant-numeric: tabular-nums !important;
  font-family: ui-monospace, Menlo, Consolas, monospace !important;
}
html body table.plan-table td.num.highlight {
  color: #e37400 !important;
  font-weight: 700 !important;
}
html body table.plan-table td.col-org {
  text-align: left;
  text-overflow: clip !important;
}


/* ---------- 07 列宽统一（一次定义，覆盖前面所有重复） ---------- */

/* 贷款表：手机端 机构 22 / 授信 19 / 余额 19 / 月供 16 / 备注 24 */
html body table.loan-table col.c-org  { width: 22% !important; }
html body table.loan-table col.c-amt  { width: 19% !important; }
html body table.loan-table col.c-bal  { width: 19% !important; }
html body table.loan-table col.c-pay  { width: 16% !important; }
html body table.loan-table col.c-tags { width: 24% !important; }

/* 信用卡表：手机端 机构 30 / 授信 15 / 已用 15 / 月供 22 / 状态 18 */
html body table.card-table col.c-org  { width: 30% !important; }
html body table.card-table col.c-amt  { width: 15% !important; }
html body table.card-table col.c-used { width: 15% !important; }
html body table.card-table col.c-pay  { width: 22% !important; }
html body table.card-table col.c-stat { width: 18% !important; }


/* ---------- 09 类别方块 ---------- */
html body .tags-cell .slot-cat select,
html body table.plan-table .tags-cell .slot-cat select {
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: none !important;
  border-radius: 0 !important;
  padding: 3px 4px !important;
  min-width: 24px !important;
  width: 24px !important;
  height: 22px !important;
  min-height: 22px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  border-width: 1px !important;
  border-style: solid !important;
  vertical-align: middle !important;
}
html body .tags-cell {
  display: flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
}
html body .tags-cell .slot { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-width: 0; }
html body .tags-cell .slot-cat   { min-width: 24px; width: 24px; }
html body .tags-cell .slot-loop  { min-width: 13px; }
html body .tags-cell .slot-repay { min-width: 32px; }
html body .tags-cell .slot-loop .tag-loop { color: #1e8e3e; font-size: 14px; font-weight: 700; line-height: 1; }


/* ---------- 05 表格容器（除个人中心外禁止横滚） ---------- */
html body .table-scroll {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  margin: 6px 0 !important;
  padding: 0 !important;
  border: 1px solid #c9d1d9;
  border-radius: 6px;
  background: #fff;
}


/* ---------- 10 弹窗加宽 ---------- */
html body .custom-modal { padding: 8px !important; box-sizing: border-box !important; }
html body .custom-modal-card,
html body .custom-modal-card.wide {
  max-width: calc(100vw - 16px) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body .custom-modal-title   { padding: 18px 12px 16px !important; box-sizing: border-box !important; }
html body .custom-modal-body    { padding: 20px 8px !important; box-sizing: border-box !important; }
html body .custom-modal-actions { padding: 14px 12px !important; box-sizing: border-box !important; gap: 8px !important; }
html body .custom-modal-body .table-scroll,
html body .custom-modal-body [class~="table-scroll"] {
  width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; box-sizing: border-box !important;
}
html body .custom-modal-body table.plan-table,
html body .custom-modal-body table {
  width: 100% !important; table-layout: fixed !important; box-sizing: border-box !important; border-collapse: collapse !important;
}
html body .custom-modal-body .pl-debt-block,
html body .custom-modal-body .biz-debt-block,
html body .custom-modal-body .pl-asset-block {
  width: 100% !important; box-sizing: border-box !important; padding-left: 10px !important; padding-right: 10px !important;
}

/* 房贷/车贷表 5 列 */
html body #plDebtModal table th:nth-child(1), html body #plDebtModal table td:nth-child(1),
html body #plDebtModalPDF table th:nth-child(1), html body #plDebtModalPDF table td:nth-child(1),
html body #bizDebtModal table th:nth-child(1), html body #bizDebtModal table td:nth-child(1),
html body #bizDebtModalPDF table th:nth-child(1), html body #bizDebtModalPDF table td:nth-child(1) { width: 24% !important; }
html body #plDebtModal table th:nth-child(2), html body #plDebtModal table td:nth-child(2),
html body #plDebtModalPDF table th:nth-child(2), html body #plDebtModalPDF table td:nth-child(2),
html body #bizDebtModal table th:nth-child(2), html body #bizDebtModal table td:nth-child(2),
html body #bizDebtModalPDF table th:nth-child(2), html body #bizDebtModalPDF table td:nth-child(2) { width: 22% !important; }
html body #plDebtModal table th:nth-child(3), html body #plDebtModal table td:nth-child(3),
html body #plDebtModalPDF table th:nth-child(3), html body #plDebtModalPDF table td:nth-child(3),
html body #bizDebtModal table th:nth-child(3), html body #bizDebtModal table td:nth-child(3),
html body #bizDebtModalPDF table th:nth-child(3), html body #bizDebtModalPDF table td:nth-child(3) { width: 22% !important; }
html body #plDebtModal table th:nth-child(4), html body #plDebtModal table td:nth-child(4),
html body #plDebtModalPDF table th:nth-child(4), html body #plDebtModalPDF table td:nth-child(4),
html body #bizDebtModal table th:nth-child(4), html body #bizDebtModal table td:nth-child(4),
html body #bizDebtModalPDF table th:nth-child(4), html body #bizDebtModalPDF table td:nth-child(4) { width: 26% !important; }
html body #plDebtModal table th:nth-child(5), html body #plDebtModal table td:nth-child(5),
html body #plDebtModalPDF table th:nth-child(5), html body #plDebtModalPDF table td:nth-child(5),
html body #bizDebtModal table th:nth-child(5), html body #bizDebtModal table td:nth-child(5),
html body #bizDebtModalPDF table th:nth-child(5), html body #bizDebtModalPDF table td:nth-child(5) { width: 6% !important; padding: 0 !important; text-align: center !important; }

html body #plDebtModal table th, html body #plDebtModalPDF table th,
html body #bizDebtModal table th, html body #bizDebtModalPDF table th {
  background: #f1f5f9 !important; color: #334155 !important; font-weight: 700 !important;
  padding: 7px 4px !important; font-size: 11px !important;
  border: 1px solid #c9d1d9 !important; text-align: center !important; white-space: nowrap !important;
}
html body #plDebtModal table td, html body #plDebtModalPDF table td,
html body #bizDebtModal table td, html body #bizDebtModalPDF table td {
  padding: 6px 4px !important; border: 1px solid #c9d1d9 !important; background: #fff !important;
  white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
html body #plDebtModal table input, html body #plDebtModalPDF table input,
html body #bizDebtModal table input, html body #bizDebtModalPDF table input,
html body #plDebtModal table select, html body #plDebtModalPDF table select,
html body #bizDebtModal table select, html body #bizDebtModalPDF table select {
  height: 30px !important; min-height: 30px !important; font-size: 12px !important;
  text-align: center !important; border-radius: 6px !important; border: 1px solid #c9d1d9 !important;
  box-sizing: border-box !important; width: 100% !important; padding: 2px 6px !important;
}

/* 循环贷明细弹窗 */
html body #pdfLoopDetailBody table { table-layout: fixed !important; width: 100% !important; border-collapse: collapse !important; }
html body #pdfLoopDetailBody th, html body #pdfLoopDetailBody td {
  border: 1px solid #c9d1d9 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
html body #pdfLoopDetailBody th {
  padding: 9px 6px !important; font-size: 11.5px !important; font-weight: 700 !important;
  text-align: center !important; background: #f1f5f9 !important; color: #334155 !important;
}
html body #pdfLoopDetailBody th:nth-child(1) { text-align: left !important; }
html body #pdfLoopDetailBody td { padding: 8px 6px !important; font-size: 12px !important; text-align: center !important; background: #fff !important; }
html body #pdfLoopDetailBody td:nth-child(1) { text-align: left !important; font-size: 11.5px !important; color: #334155 !important; }
html body #pdfLoopDetailBody col:nth-child(1) { width: 30% !important; }
html body #pdfLoopDetailBody col:nth-child(2) { width: 15% !important; }
html body #pdfLoopDetailBody col:nth-child(3) { width: 15% !important; }
html body #pdfLoopDetailBody col:nth-child(4) { width: 18% !important; }
html body #pdfLoopDetailBody col:nth-child(5) { width: 22% !important; }
html body #pdfLoopDetailBody input[id$="_term"], html body #pdfLoopDetailBody input[id$="_pay"] {
  width: 100% !important; max-width: 100% !important; height: 30px !important; min-height: 30px !important;
  padding: 2px 4px !important; font-size: 12px !important; text-align: center !important;
  box-sizing: border-box !important; border-radius: 6px !important; border: 1px solid #c9d1d9 !important;
  background: #fff !important; color: #333 !important;
}
html body #pdfLoopDetailBody input::placeholder { color: #b8b8b8 !important; font-size: 10.5px !important; }
html body #pdfLoopDetailBody input:not(:placeholder-shown) {
  font-weight: 700 !important; color: #e37400 !important; background: #fff8e1 !important;
}
html body #pdfLoopDetailSummary { margin-left: 8px !important; margin-right: 8px !important; box-sizing: border-box !important; }


/* ---------- 11+12 全局 1.5px 贴边 + 色条 2px ---------- */
html body .card::before,
html body .result-box::before { width: 2px !important; }

html body .card,
html body .result-box {
  padding-left: 3px !important;
  padding-right: 1.5px !important;
}

html body .fixed-top, html body .fixed-bottom, html body .back-bar, html body .scroll-area {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

html body .table-scroll { margin-left: 0 !important; margin-right: 0 !important; }
html body table.plan-table th, html body table.plan-table td {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

html body input:not([type=file]):not([type=checkbox]):not([type=radio]),
html body select, html body textarea {
  padding-left: 4px !important;
  padding-right: 4px !important;
}
html body .btn { padding-left: 6px !important; padding-right: 6px !important; }

html body #pageHome .home-top, html body #pageHome .home-bottom,
html body #pageHome .hv2-entry,
html body .pv2-card-head, html body .pv2-card-body,
html body .pv2-summary-head, html body .pv2-summary > div:not(.pv2-summary-head),
html body .pv2-banks,
html body .biz-summary-card, html body .biz-debt-block,
html body .pl-debt-block, html body .pl-asset-block,
html body .product-item, html body .plan-card, html body .acc-item,
html body .credit-upload, html body .credit-page-item, html body .credit-kv,
html body .contract-list-item {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}

html body .custom-modal, html body .custom-modal-title, html body .custom-modal-body, html body .custom-modal-actions {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}
html body .calc-display, html body .calc-summary {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}
html body #pagePersonalCenter {
  padding-left: 1.5px !important;
  padding-right: 1.5px !important;
}
html body .pv2-row2, html body .biz-debt-row, html body .pl-debt-row, html body .pl-asset-row, html body .tags-cell {
  column-gap: 1.5px !important;
}


/* ---------- 13 个贷录入页单列（对齐经营贷） ---------- */
html body #pagePersonal .pv2-row2 { display: block !important; margin-bottom: 0 !important; }
html body #pagePersonal .pv2-row2 > * {
  width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; margin-bottom: 8px !important;
}
html body #pagePersonal .pv2-card { width: 100% !important; box-sizing: border-box !important; }
html body #pagePersonal .pv2-card-body {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 8px 12px !important;
}
html body #pagePersonal .pv2-summary { width: 100% !important; box-sizing: border-box !important; }
html body #pagePersonal .pv2-banks { width: 100% !important; box-sizing: border-box !important; }
@media (min-width: 720px) {
  html body #pagePersonal .pv2-row2 {
    display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important;
  }
  html body #pagePersonal .pv2-row2 > * { margin-bottom: 0 !important; }
}


/* ---------- 14 结果页顶栏 真居中 ---------- */
html body #pagePersonalResult .back-bar,
html body #pageBizResult .back-bar {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 6px !important;
  position: relative !important;
}
html body #pagePersonalResult .back-bar > button:nth-of-type(1),
html body #pageBizResult .back-bar > button:nth-of-type(1) { justify-self: start !important; grid-column: 1 !important; grid-row: 1 !important; }
html body #pagePersonalResult .back-bar > button:nth-of-type(2),
html body #pageBizResult .back-bar > button:nth-of-type(2) { justify-self: end !important; grid-column: 3 !important; grid-row: 1 !important; }
html body #pagePersonalResult .back-bar .bb-title,
html body #pageBizResult .back-bar .bb-title {
  grid-column: 2 !important; grid-row: 1 !important;
  position: static !important; left: auto !important; top: auto !important; right: auto !important;
  transform: none !important;
  text-align: center !important;
  white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
  padding: 0 4px !important; margin: 0 !important; max-width: 100% !important; width: auto !important;
  pointer-events: auto !important;
}
@media (max-width: 420px) {
  html body #pagePersonalResult .back-bar > button,
  html body #pageBizResult .back-bar > button {
    padding: 6px 10px !important; font-size: 12px !important; min-height: 28px !important;
  }
}


/* ---------- 15 产品库冻结（序号 + 表头） + 16 防抖 ---------- */
html body #pcSub0 .table-scroll {
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
  position: relative !important;
  max-height: 62vh !important;
  min-height: 200px !important;
  overscroll-behavior: auto !important;
  contain: none !important;
  transform: none !important;
  will-change: auto !important;
}
html body #pcSub0 table.plan-table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}
html body #pcSub0 table.plan-table th,
html body #pcSub0 table.plan-table td {
  border-top: none !important;
  border-left: none !important;
  border-right: 1px solid #c9d1d9 !important;
  border-bottom: 1px solid #c9d1d9 !important;
  box-shadow: none !important;
}
html body #pcSub0 table.plan-table tbody td:nth-child(1) {
  position: sticky !important; left: 0 !important; z-index: 3 !important;
  width: 40px !important; min-width: 40px !important; max-width: 40px !important;
  background: #e8f0fe !important; box-sizing: border-box !important;
  will-change: auto !important; transform: none !important;
  border-right: 2px solid #93b4e3 !important;
}
html body #pcSub0 table.plan-table thead th {
  position: sticky !important; top: 0 !important; z-index: 2 !important;
  background: #f1f5f9 !important;
  will-change: auto !important; transform: none !important;
  border-bottom: 2px solid #93b4e3 !important;
}
html body #pcSub0 table.plan-table thead th:nth-child(1) {
  left: 0 !important; z-index: 5 !important; background: #dbe7fa !important;
}

/* 产品库加宽 */
html body #pcSub0 #tbl_product_personal { min-width: 1476px !important; width: 1476px !important; }
html body #pcSub0 #tbl_product_biz { min-width: 1046px !important; width: 1046px !important; }

html body #pcSub0 table.plan-table td input {
  width: 100% !important; min-width: 0 !important; max-width: 100% !important;
  box-sizing: border-box !important; padding: 3px 4px !important;
  font-size: 11px !important; height: 26px !important;
}
html body #pcSub0 table.plan-table th,
html body #pcSub0 table.plan-table td { padding: 6px 4px !important; }
html body #pcSub0 .table-scroll::-webkit-scrollbar { width: 6px; height: 6px; }
html body #pcSub0 .table-scroll::-webkit-scrollbar-thumb { background: rgba(14,165,233,.4); border-radius: 3px; }

html body #pagePersonalCenter [class~="table-scroll"]:not(#pcSub0 [class~="table-scroll"]) {
  overflow-x: auto !important; -webkit-overflow-scrolling: touch !important;
}


/* ---------- 03+04 小屏（≤480px）数字完整 + 机构硬切 ---------- */
@media (max-width: 480px) {
  html body table.loan-table col.c-org  { width: 22% !important; }
  html body table.loan-table col.c-amt  { width: 19% !important; }
  html body table.loan-table col.c-bal  { width: 19% !important; }
  html body table.loan-table col.c-pay  { width: 16% !important; }
  html body table.loan-table col.c-tags { width: 24% !important; }

  html body table.card-table col.c-org  { width: 30% !important; }
  html body table.card-table col.c-amt  { width: 15% !important; }
  html body table.card-table col.c-used { width: 15% !important; }
  html body table.card-table col.c-pay  { width: 22% !important; }
  html body table.card-table col.c-stat { width: 18% !important; }

  html body table.plan-table th,
  html body table.plan-table td { padding: 7px 4px !important; font-size: 11.5px; }

  html body table.plan-table td.num,
  html body table.plan-table th.num-col,
  html body table.plan-table th.col-right {
    font-size: 10.5px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    letter-spacing: -0.4px !important;
  }
}

/* 大屏还原 */
@media (min-width: 720px) {
  html body table.loan-table col.c-org  { width: 34% !important; }
  html body table.loan-table col.c-amt  { width: 14% !important; }
  html body table.loan-table col.c-bal  { width: 14% !important; }
  html body table.loan-table col.c-pay  { width: 16% !important; }
  html body table.loan-table col.c-tags { width: 22% !important; }
  html body table.card-table col.c-org  { width: 38% !important; }
  html body table.card-table col.c-amt  { width: 13% !important; }
  html body table.card-table col.c-used { width: 13% !important; }
  html body table.card-table col.c-pay  { width: 22% !important; }
  html body table.card-table col.c-stat { width: 14% !important; }
  html body table.plan-table td.num,
  html body table.plan-table th.col-right { font-size: 12px !important; padding-left: 6px !important; padding-right: 6px !important; letter-spacing: 0 !important; }
}

/* ============================================================================
   ============ END FINAL-OVERRIDE ============
   ============================================================================ */

/* ===== FIX-LOGIN-GUARD ===== */
/* 登录页兜底：默认永远隐藏，只有 .show 类才显示 */
html body #loginPage { display: none !important; }
html body #loginPage.show { display: flex !important; }
/* ===== END FIX-LOGIN-GUARD ===== */


/* ===== FIX-FOLD-FLASH ===== */
/* 折叠显示用 CSS 强控，压过内联 !important，消除手机端闪烁 */

/* ① 折叠状态：隐藏所有子元素，只留头部 */
html body .v2-collapsible.v2-collapsed > *:not(.pv2-card-head):not(.v2-fold-bar),
html body .pv2-card.v2-collapsed > *:not(.pv2-card-head):not(.v2-fold-bar) {
  display: none !important;
}

/* ② 展开状态：个贷卡片主体 */
html body .pv2-card:not(.v2-collapsed) > .pv2-card-body {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 8px 12px !important;
}

/* ③ 展开状态：经营贷卡片主体 */
html body .card.v2-collapsible:not(.v2-collapsed) > *:not(.v2-fold-bar):not(.module-title) {
  display: block !important;
}

/* ④ 头部永远显示 */
html body .v2-collapsible > .pv2-card-head,
html body .v2-collapsible > .v2-fold-bar,
html body .pv2-card > .pv2-card-head {
  display: flex !important;
}

/* ⑤ 经营贷 module-title 永远隐藏（避免折叠条重复） */
html body #pageBiz .card.v2-collapsible > .module-title {
  display: none !important;
}

/* ===== END FIX-FOLD-FLASH ===== */


/* ===== FOLD-TITLE-CSS ===== */
/* 替代 fold-title-dedup-js：经营贷卡片里折叠条之后的 module-title 隐藏 */
html body #pageBiz .card > .v2-fold-bar ~ .module-title {
  display: none !important;
}
/* ===== END FOLD-TITLE-CSS ===== */

/* sticky fix 2026-10-09 13:30:27 */
.card:has(> .table-scroll){ overflow:visible !important; }
.card:has(> .table-scroll) > .table-scroll{ border-radius:inherit; }
.table-scroll{ overflow-anchor:none; -webkit-overflow-scrolling:touch; }
.table-scroll th{ transform:translateZ(0); -webkit-transform:translateZ(0); }
