/* 2.4 共用组件补齐；沿用现有蓝色按钮、表格与右侧抽屉，不修改业务数据。 */
.btn-primary,
.btn-default {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 32px;
  padding: 5px 15px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  background: #fff;
  color: #434343;
  font: inherit;
  font-size: 13px;
  line-height: 20px;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}
.btn-primary { color: #fff; background: #1890ff; border-color: #1890ff; }
.btn-primary:hover { background: #40a9ff; border-color: #40a9ff; }
.btn-default:hover { color: #1890ff; border-color: #91caff; }
.btn-primary:disabled,
.btn-default:disabled { opacity: .5; cursor: not-allowed; }
.btn-primary:focus-visible,
.btn-default:focus-visible { outline: 2px solid #91caff; outline-offset: 2px; }

/* 新增详情使用与应用相同的壳；内容区单独滚动，页签不跟随挤压。 */
#page-drawer.v24-detail-drawer > .drawer-panel,
#page-drawer.v23-rule-drawer > .drawer-panel {
  width: min(1360px, calc(100vw - 48px));
  display: flex;
  flex-direction: column;
  min-height: 0;
}
#page-drawer.v24-detail-drawer > .drawer-panel > .drawer-body,
#page-drawer.v23-rule-drawer > .drawer-panel > .drawer-body {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}
#page-drawer.v24-detail-drawer .v23-drawer-nav,
#page-drawer.v23-rule-drawer .v23-drawer-nav {
  flex: 0 0 auto;
  padding: 12px 20px 0;
  background: #fff;
}
#page-drawer.v23-rule-drawer .v23-rule-drawer-body {
  flex: 1 1 auto;
  min-height: 0;
}
#page-drawer.v23-rule-drawer .v23-rule-frame {
  flex: 1 1 auto;
  min-height: 360px;
  height: 100%;
  width: 100%;
  border: 0;
  display: block;
}
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .v23-iframe-host[data-v23-tab="quoteNote"],
#page-drawer.v24-detail-drawer .v23-rule-drawer-body > .v23-iframe-host[data-v23-tab="quoteNote"] {
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 0 0 8px 8px;
  background: #fff;
}
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .v23-iframe-host[data-v23-tab="quoteNote"] .v23-rule-frame,
#page-drawer.v24-detail-drawer .v23-rule-drawer-body > .v23-iframe-host[data-v23-tab="quoteNote"] .v23-rule-frame {
  flex: 1 1 auto;
  min-height: 0 !important;
  height: 100%;
  width: 100%;
  border: 0;
  display: block;
  vertical-align: top;
}
/* 普通 Tab  pane：占满剩余高度并滚动；--stack 单独规则（避免底栏随短内容悬空） */
#page-drawer.v24-detail-drawer .v23-drawer-pane:not(.v23-drawer-pane--stack),
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .v23-drawer-pane:not(.v23-drawer-pane--stack) {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 16px 20px 20px;
  background: #fff;
}
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .drawer-nav-wrap {
  flex: 0 0 auto;
}
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .v23-iframe-host {
  flex: 1 1 auto;
  min-height: 0;
}
#page-drawer.v24-detail-drawer .drawer-panel-maximized {
  width: calc(100vw - 24px) !important;
}
#page-drawer.v24-detail-drawer .drawer-form,
#page-drawer.v24-form-drawer .drawer-form { max-width: 1100px; }
#page-drawer.v24-detail-drawer .drawer-input-field .drawer-input-control,
#page-drawer.v24-form-drawer .drawer-input-field .drawer-input-control,
#page-drawer .v24-nested-form .drawer-input-control {
  min-width: 0;
  flex: 1 1 auto;
  max-width: none;
}
#page-drawer.v24-detail-drawer .drawer-input,
#page-drawer.v24-form-drawer .drawer-input,
#page-drawer .v24-nested-form .drawer-input {
  width: 100%;
  max-width: none;
}
#page-drawer.v24-detail-drawer .drawer-input[readonly] {
  color: #434343;
  background: #fafafa;
}
#page-drawer.v24-form-drawer .drawer-footer,
#page-drawer .v24-nested-form .drawer-footer { flex-shrink: 0; background: #f4f6f9; }
.v24-detail-drawer .expense-grid-table,
.v24-form-drawer .expense-grid-table { min-width: 640px; }

/* 表格和排班宽度限制在内容区内，表头、固定列在横向滚动时保持可读。 */
.list-panel,
.expense-grid-wrap,
.v24-schedule { min-width: 0; max-width: 100%; }
.v24-schedule-grid { overflow: auto; }
.v24-schedule-table { width: max-content; min-width: 100%; table-layout: fixed; }
.v24-schedule-table th:not(.sticky),
.v24-schedule-table td:not(.sticky) { min-width: 68px; width: 68px; }
.v24-schedule-table th { position: sticky; top: 0; z-index: 3; background: #fafafa; }
.v24-schedule-table thead .sticky { z-index: 5; background: #fafafa; }
.v24-schedule-table .sticky-0 { width: 44px; min-width: 44px; max-width: 44px; }
.v24-schedule-table .sticky-1 { width: 72px; min-width: 72px; max-width: 72px; }
.v24-schedule-table .sticky-2 { width: 72px; min-width: 72px; max-width: 72px; }
.v24-schedule-table .sticky-3 { width: 140px; min-width: 140px; max-width: 140px; }
.v24-schedule-table .sticky-3 .cell-link { max-width: 124px; white-space: normal; }
.v24-sched-stats { flex-wrap: wrap; }
.v24-sched-bar { align-items: center; }

@media (max-width: 900px) {
  #page-drawer.v24-detail-drawer > .drawer-panel { width: calc(100vw - 24px); }
  #page-drawer.v24-detail-drawer .drawer-form,
  #page-drawer.v24-form-drawer .drawer-form { grid-template-columns: minmax(0, 1fr); }
}

/* 多 Tab 详情 / 应用抽屉：右侧全高，禁止与居中 flex 混用 */
#page-drawer.v23-rule-drawer.open,
#page-drawer.v24-detail-drawer.open:not(.is-center-modal) {
  display: block !important;
  align-items: unset !important;
  justify-content: unset !important;
  padding: 0 !important;
}
#page-drawer.v23-rule-drawer > .drawer-panel,
#page-drawer.v24-detail-drawer:not(.is-center-modal) > .drawer-panel {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  bottom: 8px !important;
  left: auto !important;
  transform: translateX(0) !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  border-radius: 8px;
}

/* 侧开抽屉顶栏 · 与嵌套居中弹窗 config-form-header 一致 */
#page-drawer.v24-detail-drawer > .drawer-panel > .drawer-header,
#page-drawer.v23-rule-drawer > .drawer-panel > .drawer-header,
#page-drawer.v24-form-drawer > .drawer-panel > .drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 56px;
  min-height: 56px;
  padding: 0 24px;
  box-sizing: border-box;
  background: #f4f6f9;
  border-bottom: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px 8px 0 0;
}
#page-drawer.v24-detail-drawer > .drawer-panel > .drawer-header .drawer-header-title,
#page-drawer.v23-rule-drawer > .drawer-panel > .drawer-header .drawer-header-title,
#page-drawer.v24-form-drawer > .drawer-panel > .drawer-header .drawer-header-title {
  font-size: 17px;
  font-weight: 700;
  color: #1d2633;
  line-height: 1.35;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1 1 auto;
}
#page-drawer.v24-detail-drawer .drawer-header-actions,
#page-drawer.v23-rule-drawer .drawer-header-actions,
#page-drawer.v24-form-drawer .drawer-header-actions,
#page-drawer .v24-nested-form .config-form-header .drawer-header-actions,
#page-drawer.is-center-modal .config-form-header .drawer-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
  min-width: 72px;
}
#page-drawer.v24-detail-drawer .drawer-header-btn,
#page-drawer.v23-rule-drawer .drawer-header-btn,
#page-drawer.v24-form-drawer .drawer-header-btn,
#page-drawer .v24-nested-form .config-form-header .drawer-header-btn,
#page-drawer.is-center-modal .config-form-header .drawer-header-btn {
  width: 34px;
  height: 34px;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #667282;
}
#page-drawer.v24-detail-drawer .drawer-header-btn:hover,
#page-drawer.v23-rule-drawer .drawer-header-btn:hover,
#page-drawer.v24-form-drawer .drawer-header-btn:hover,
#page-drawer .v24-nested-form .config-form-header .drawer-header-btn:hover,
#page-drawer.is-center-modal .config-form-header .drawer-header-btn:hover {
  background: #e9edf3;
  color: #2d3746;
}

#page-drawer.v23-rule-drawer .v23-rule-frame {
  flex: 1 1 auto;
  min-height: 320px;
  height: 100%;
  width: 100%;
  border: 0;
  display: block;
}

/* 无多 Tab：居中弹窗，高度随内容，上限 90vh */
#page-drawer.is-center-modal.open {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
#page-drawer.is-center-modal .config-form-dialog {
  width: min(640px, 96vw);
  max-height: min(90vh, 100%);
  height: auto;
}
#page-drawer.is-center-modal.is-wide-modal .config-form-dialog {
  width: min(920px, 96vw);
}
#page-drawer.is-center-modal .config-form-body {
  flex: none;
  height: auto;
  min-height: 0;
  max-height: calc(90vh - 128px);
  overflow: auto;
}
#page-drawer.is-center-modal .config-form-dialog {
  align-self: center;
}

/* 详情内嵌套编辑：居中弹窗（对齐外账 config-form-dialog，高度随内容） */
#page-drawer .v24-nested-form {
  position: absolute;
  inset: 0;
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  pointer-events: auto;
}
#page-drawer .v24-nested-form > .config-form-backdrop,
#page-drawer .v24-nested-form > .drawer-mask {
  position: absolute;
  inset: 0;
  background: rgba(17, 24, 39, 0.42);
  cursor: pointer;
}
#page-drawer .v24-nested-form > .config-form-dialog {
  position: relative;
  z-index: 1;
  width: min(640px, 96vw);
  max-height: min(90vh, 100%);
  height: auto;
  align-self: center;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dce3ee;
  border-radius: 8px;
  box-shadow: 0 18px 56px rgba(17, 24, 39, 0.22);
  transform: scale(1);
  opacity: 1;
}
#page-drawer .v24-nested-form > .config-form-dialog.v24-nested-dialog--wide {
  width: min(920px, 96vw);
}
#page-drawer .v24-nested-form .config-form-body {
  flex: none;
  height: auto;
  min-height: 0;
  max-height: calc(90vh - 128px);
  overflow: auto;
  padding: 24px 28px;
  background: #fff;
}
#page-drawer .v24-nested-form .config-form-body .drawer-section-title {
  grid-column: 1 / -1;
  margin: 16px 0 8px;
  font-size: 14px;
  font-weight: 600;
  color: #1d2633;
  width: auto;
  padding-bottom: 0;
  border-bottom: none;
}
#page-drawer .v24-nested-form .config-form-body .drawer-section-title:first-child {
  margin-top: 0;
}
#page-drawer .v24-nested-form .config-form-body form.drawer-form,
#page-drawer .v24-nested-form .config-form-body > .drawer-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
  margin-bottom: 0;
}
#page-drawer .v24-nested-form .config-form-body [data-acquire-block] {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
}
#page-drawer .v24-nested-form .config-form-body [data-acquire-block][hidden] {
  display: none !important;
}
#page-drawer .v24-nested-form .config-form-body .drawer-form .drawer-input-field,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-field {
  align-self: start;
}
#page-drawer .v24-nested-form .config-form-body .drawer-form .drawer-input-control,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-control {
  flex: none;
  width: 100%;
  max-width: 100%;
}
#page-drawer .v24-nested-form .config-form-body form.drawer-form .drawer-section-title,
#page-drawer .v24-nested-form .config-form-body > .drawer-form .drawer-section-title,
#page-drawer.is-center-modal .config-form-body form.drawer-form .drawer-section-title,
#page-drawer.is-center-modal .config-form-body > .drawer-form .drawer-section-title {
  grid-column: 1 / -1;
}
#page-drawer .v24-nested-form .config-form-body .drawer-section-title,
#page-drawer.is-center-modal .config-form-body .drawer-section-title {
  grid-column: 1 / -1;
}
#page-drawer .v24-nested-form .config-form-body .v24-cond-table-wrap {
  grid-column: 1 / -1;
}
#page-drawer .v24-nested-form .config-form-body .v24-cond-table,
#page-drawer.is-center-modal .config-form-body .v24-cond-table,
form[data-v24-rule-form] .v24-cond-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
form[data-v24-rule-form] .v24-cond-table-wrap {
  grid-column: 1 / -1;
  width: 100%;
}
.v24-cond-hint {
  margin: 0 0 10px;
  font-size: 12px;
  line-height: 1.55;
  color: #8a93a3;
}
.v24-cond-toolbar {
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 12px;
}
#page-drawer .v24-nested-form .config-form-body .v24-cond-table th,
#page-drawer .v24-nested-form .config-form-body .v24-cond-table td,
#page-drawer.is-center-modal .config-form-body .v24-cond-table th,
#page-drawer.is-center-modal .config-form-body .v24-cond-table td,
form[data-v24-rule-form] .v24-cond-table th,
form[data-v24-rule-form] .v24-cond-table td {
  border: 1px solid #edf0f5;
  padding: 8px 10px;
  text-align: left;
  vertical-align: middle;
}
#page-drawer .v24-nested-form .config-form-body .v24-cond-table th,
#page-drawer.is-center-modal .config-form-body .v24-cond-table th,
form[data-v24-rule-form] .v24-cond-table th {
  background: #fafafa;
  font-weight: 500;
  color: #667282;
  font-size: 13px;
}
form[data-v24-rule-form] .v24-cond-table td .drawer-input {
  width: 100%;
  min-width: 0;
}
form[data-v24-rule-form] .v24-cond-actions {
  width: 72px;
  text-align: center;
  white-space: nowrap;
}
form[data-v24-rule-form] .v24-cond-actions .cell-link {
  font-size: 13px;
}
#page-drawer .v24-nested-form .config-form-body .drawer-input-field--full,
#page-drawer .v24-nested-form .config-form-body .drawer-input-field:has(textarea),
#page-drawer.is-center-modal .config-form-body .drawer-input-field--full,
#page-drawer.is-center-modal .config-form-body .drawer-input-field:has(textarea) {
  grid-column: 1 / -1;
}
#page-drawer.is-center-modal .config-form-body form.drawer-form,
#page-drawer.is-center-modal .config-form-body > .drawer-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
}
#page-drawer.is-center-modal .config-form-body [data-acquire-block] {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
}
#page-drawer.is-center-modal .config-form-body [data-acquire-block][hidden] {
  display: none !important;
}
#page-drawer .v24-nested-form .config-form-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 56px;
  min-height: 56px;
  padding: 0 24px;
  box-sizing: border-box;
  background: #f4f6f9;
  border-bottom: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px 8px 0 0;
}
#page-drawer.is-center-modal .config-form-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#page-drawer .v24-nested-form .config-form-title,
#page-drawer.is-center-modal .config-form-title {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  color: #1d2633;
  line-height: 1.35;
  flex: 1 1 auto;
  min-width: 0;
}
#page-drawer .v24-nested-form .config-form-footer,
#page-drawer.is-center-modal .config-form-footer {
  flex: none;
}

/* 2.4 底栏按钮：仅白底（取消/次要）或蓝底（主操作），无透明底、无描边 */
#page-drawer .v24-nested-form .config-form-footer .btn-modal-cancel,
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-cancel,
#page-drawer.is-center-modal .config-form-footer .btn-modal-cancel,
#page-drawer.v24-center-form .config-form-footer .btn-modal-cancel,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-cancel,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-cancel,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-cancel,
.v24-quote-note > .drawer-footer .btn-drawer-cancel {
  border: none !important;
  box-shadow: none;
  background: #fff !important;
  color: #374151;
}
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-secondary,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-secondary,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-secondary,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-secondary,
.v24-quote-note > .drawer-footer .btn-drawer-secondary {
  border: none !important;
  box-shadow: none;
  background: #fff !important;
  color: #374151;
}
#page-drawer .v24-nested-form .config-form-footer .btn-modal-cancel:hover,
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-cancel:hover,
#page-drawer.is-center-modal .config-form-footer .btn-modal-cancel:hover,
#page-drawer.v24-center-form .config-form-footer .btn-modal-cancel:hover,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-cancel:hover,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-cancel:hover,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-cancel:hover,
.v24-quote-note > .drawer-footer .btn-drawer-cancel:hover {
  border: none !important;
  background: #fff !important;
  color: var(--office-blue, #1890ff);
}
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-secondary:hover,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-secondary:hover,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-secondary:hover,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-secondary:hover,
.v24-quote-note > .drawer-footer .btn-drawer-secondary:hover {
  border: none !important;
  background: #fff !important;
  color: var(--office-blue, #1890ff);
}
#page-drawer .v24-nested-form .config-form-footer .btn-modal-primary,
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-primary,
#page-drawer.is-center-modal .config-form-footer .btn-modal-primary,
#page-drawer.v24-center-form .config-form-footer .btn-modal-primary,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-primary,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-primary,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-primary,
.v24-quote-note > .drawer-footer .btn-drawer-primary {
  border: none !important;
  box-shadow: none;
  background: var(--office-blue, #1890ff) !important;
  color: #fff !important;
}
#page-drawer .v24-nested-form .config-form-footer .btn-modal-primary:hover,
#page-drawer .v24-nested-form .config-form-footer .btn-drawer-primary:hover,
#page-drawer.is-center-modal .config-form-footer .btn-modal-primary:hover,
#page-drawer.v24-form-drawer .drawer-footer .btn-drawer-primary:hover,
#page-drawer.v24-detail-drawer .drawer-footer--pane .btn-drawer-primary:hover,
#page-drawer.v23-rule-drawer .drawer-footer--pane .btn-drawer-primary:hover,
.v24-quote-note > .drawer-footer .btn-drawer-primary:hover {
  border: none !important;
  background: #40a9ff !important;
  color: #fff !important;
}

#page-drawer .v24-nested-form .config-form-footer .btn-drawer-cancel:focus-visible,
#page-drawer.is-center-modal .config-form-footer .btn-modal-cancel:focus-visible {
  outline: 2px solid rgba(24, 144, 255, 0.35);
  outline-offset: 2px;
}

/* 详情内嵌套 · 仅 options.side === true 时使用第二层侧开；默认居中弹窗见 .v24-nested-form */
#page-drawer .v24-nested-form.v24-nested-side {
  align-items: stretch;
  justify-content: flex-end;
  padding: 0;
}
#page-drawer .v24-nested-form.v24-nested-side > .drawer-panel.v24-form-panel {
  position: relative;
  z-index: 1;
  align-self: stretch;
  height: 100%;
  max-height: 100%;
  width: min(1060px, calc(100vw - 24px));
  box-shadow: -8px 0 32px rgba(17, 24, 39, 0.15);
}
#page-drawer .v24-nested-form.v24-nested-side > .drawer-panel.v24-form-panel > .drawer-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}
#page-drawer .v24-nested-form.v24-nested-side > .drawer-panel.v24-form-panel > .drawer-footer {
  flex-shrink: 0;
  margin-top: auto;
}

.v23-embed-root { min-height: 100%; }
html.v23-embed,
html.v23-embed body {
  height: 100%;
  overflow: auto;
  background: #fff;
}

/* 居中弹窗内表单：分区标题 + 双列字段 + 条件表全宽 */
#page-drawer.is-center-modal .config-form-body .drawer-section-title {
  margin: 16px 0 8px;
  font-size: 14px;
  font-weight: 600;
  color: #1d2633;
}
#page-drawer.is-center-modal .config-form-body .drawer-section-title:first-child {
  margin-top: 0;
}
#page-drawer.is-center-modal .config-form-body .drawer-form.drawer-form--stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 16px;
  margin-bottom: 8px;
}
#page-drawer.is-center-modal .config-form-body .v24-cond-table-wrap {
  grid-column: 1 / -1;
}
#page-drawer.is-center-modal .config-form-body .drawer-input-field {
  margin-bottom: 0;
}
#page-drawer.is-center-modal .config-form-body .v24-cond-table {
  width: 100%;
  border-collapse: collapse;
}
#page-drawer.is-center-modal .config-form-body .v24-cond-table th,
#page-drawer.is-center-modal .config-form-body .v24-cond-table td {
  border: 1px solid #f0f0f0;
  padding: 8px 10px;
  text-align: left;
}
#page-drawer.is-center-modal .config-form-body .v24-cond-table th {
  background: #fafafa;
  font-weight: 500;
  color: #666;
}
#page-drawer.is-center-modal.is-wide-modal .config-form-dialog {
  width: min(960px, 96vw);
}

/* ── 详情 / 应用抽屉 · Tab 内容区（对齐外账详情只读 + 表格） ── */
#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-form,
#page-drawer.v23-rule-drawer .v23-drawer-pane .drawer-form,
#page-drawer.v23-rule-drawer .v23-basic-drawer-pane .drawer-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 28px;
  margin-bottom: 0;
  align-items: start;
  max-width: 1100px;
  border: none;
  background: transparent;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-form .drawer-input-field:not(.drawer-input-field--full) .drawer-input-control,
#page-drawer.v23-rule-drawer .v23-drawer-pane .drawer-form .drawer-input-field:not(.drawer-input-field--full) .drawer-input-control {
  flex: 1 1 auto;
  max-width: none;
}

#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-section-title,
#page-drawer.v23-rule-drawer .v23-drawer-pane .drawer-section-title,
#page-drawer.v23-rule-drawer .v23-basic-drawer-pane .drawer-section-title {
  display: flex;
  align-items: center;
  gap: 8px;
  width: auto;
  margin: 0 0 12px;
  padding-bottom: 0;
  border-bottom: none;
  font-size: 14px;
  font-weight: 600;
  color: #263241;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-section-title:not(:first-child),
#page-drawer.v23-rule-drawer .v23-drawer-pane .drawer-section-title.mt-4,
#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-section-title.mt-4 {
  margin-top: 20px;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .drawer-section-title::before,
#page-drawer.v23-rule-drawer .v23-drawer-pane .drawer-section-title::before,
#page-drawer.v23-rule-drawer .v23-basic-drawer-pane .drawer-section-title::before {
  content: "";
  width: 4px;
  height: 14px;
  background: var(--office-blue, #1890ff);
  border-radius: 2px;
  flex-shrink: 0;
}

#page-drawer.v24-detail-drawer .drawer-form .v24-view-field,
#page-drawer.v23-rule-drawer .drawer-form .v24-view-field {
  align-items: center;
}
#page-drawer.v24-detail-drawer .drawer-form .v24-view-field--multiline,
#page-drawer.v23-rule-drawer .drawer-form .v24-view-field--multiline {
  align-items: flex-start;
}
#page-drawer.v24-detail-drawer .drawer-form .v24-view-field .drawer-input-label,
#page-drawer.v23-rule-drawer .drawer-form .v24-view-field .drawer-input-label {
  width: 128px;
  text-align: right;
  padding-right: 4px;
  padding-top: 0;
  color: #667282;
  font-weight: 500;
  line-height: 34px;
}
#page-drawer.v24-detail-drawer .drawer-form .v24-view-field--multiline .drawer-input-label,
#page-drawer.v23-rule-drawer .drawer-form .v24-view-field--multiline .drawer-input-label {
  padding-top: 8px;
  line-height: 1.35;
}
#page-drawer.v24-detail-drawer .v24-view-field .drawer-input-control,
#page-drawer.v23-rule-drawer .v24-view-field .drawer-input-control {
  flex: 1;
  min-width: 0;
  max-width: none;
}
#page-drawer.v24-detail-drawer .v24-view-value,
#page-drawer.v23-rule-drawer .v24-view-value {
  min-height: 34px;
  padding: 6px 11px;
  font-size: 13px;
  color: #303846;
  line-height: 1.5;
  background: #fafbfc;
  border: 1px solid #edf0f5;
  border-radius: 6px;
  word-break: break-word;
  box-sizing: border-box;
}
#page-drawer.v24-detail-drawer .v24-view-value--block,
#page-drawer.v23-rule-drawer .v24-view-value--block {
  min-height: auto;
  line-height: 1.6;
}
#page-drawer.v24-detail-drawer .v24-view-value--tag,
#page-drawer.v23-rule-drawer .v24-view-value--tag {
  min-height: 34px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  display: flex;
  align-items: center;
  color: inherit;
}
#page-drawer.v24-detail-drawer button.cell-link.v24-view-value,
#page-drawer.v23-rule-drawer button.cell-link.v24-view-value {
  display: block;
  width: 100%;
  background: #fafbfc;
  border: 1px solid #edf0f5;
  border-radius: 6px;
  cursor: pointer;
}
#page-drawer.v24-detail-drawer button.cell-link.v24-view-value:hover,
#page-drawer.v23-rule-drawer button.cell-link.v24-view-value:hover {
  background: #f0f7ff;
  border-color: #bae0ff;
  text-decoration: none;
}

#page-drawer.v24-detail-drawer .v24-view-actions,
#page-drawer.v23-rule-drawer .v24-view-actions {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--office-border, #edf0f5);
  gap: 8px;
}

#page-drawer.v24-detail-drawer .v23-drawer-pane .expense-grid-wrap,
#page-drawer.v23-rule-drawer .v23-drawer-pane .expense-grid-wrap {
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  overflow-x: auto;
  overflow-y: auto;
  margin-top: 4px;
  min-width: 0;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .expense-grid-table,
#page-drawer.v23-rule-drawer .v23-drawer-pane .expense-grid-table {
  width: max-content;
  min-width: 100%;
  margin: 0;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .expense-grid-table th,
#page-drawer.v24-detail-drawer .v23-drawer-pane .expense-grid-table td,
#page-drawer.v23-rule-drawer .v23-drawer-pane .expense-grid-table th,
#page-drawer.v23-rule-drawer .v23-drawer-pane .expense-grid-table td {
  text-align: center;
  padding: 10px 8px;
  font-size: 13px;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane .v24-cond-table th,
#page-drawer.v24-detail-drawer .v23-drawer-pane .v24-cond-table td {
  text-align: left;
  border: 1px solid #edf0f5;
}

#page-drawer.v24-detail-drawer .v23-drawer-pane > p.text-\[12px\],
#page-drawer.v24-detail-drawer .v23-drawer-pane > p.text-\[13px\],
#page-drawer.v23-rule-drawer .v23-drawer-pane > p.text-\[12px\] {
  color: #8a93a3;
  line-height: 1.6;
  margin-bottom: 8px;
}

#page-drawer.v24-detail-drawer .v23-drawer-pane ul.list-none {
  margin: 8px 0 0;
  padding: 12px 16px;
  list-style: none;
  background: #f8fafc;
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  font-size: 13px;
  color: #303846;
}

/* 嵌套 / 居中弹窗 · 编辑表单双列（标签在上，对齐外账新增弹窗） */
#page-drawer .v24-nested-form .drawer-form,
#page-drawer .v24-nested-form .drawer-form.drawer-form--dialog,
#page-drawer.is-center-modal .config-form-body > .drawer-form,
#page-drawer.v24-form-drawer .drawer-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
  margin-bottom: 0;
}
#page-drawer .v24-nested-form .drawer-form .drawer-input-field,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-field,
#page-drawer.v24-form-drawer .drawer-form .drawer-input-field {
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  margin-bottom: 0;
}
#page-drawer .v24-nested-form .drawer-form .drawer-input-label,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-label,
#page-drawer.v24-form-drawer .drawer-form .drawer-input-label {
  width: auto;
  text-align: left;
  line-height: 1.4;
  font-weight: 600;
  color: #2d3746;
}
#page-drawer .v24-nested-form .drawer-form .drawer-input-field--full,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-field--full,
#page-drawer .v24-nested-form .drawer-form .drawer-input-field:has(textarea),
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-field:has(textarea) {
  grid-column: 1 / -1;
}
#page-drawer .v24-nested-form .drawer-form .drawer-textarea,
#page-drawer.is-center-modal .config-form-body .drawer-form textarea.drawer-input {
  min-height: 88px;
  height: auto;
  line-height: 1.5;
}
#page-drawer .v24-nested-form .drawer-form.drawer-form--stack,
#page-drawer.is-center-modal .config-form-body .drawer-form.drawer-form--stack {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* 详情 Tab：正文滚动 + 底栏固定操作 */
#page-drawer.v24-detail-drawer .v23-rule-drawer-body,
#page-drawer.v23-rule-drawer .v23-rule-drawer-body {
  display: flex;
  flex-direction: column;
}
#page-drawer.v24-detail-drawer .v23-drawer-pane--stack,
#page-drawer.v23-rule-drawer .v23-rule-drawer-body > .v23-drawer-pane--stack,
.v23-drawer-pane--stack {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff;
}
.v23-drawer-pane__scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 16px 20px 12px;
}
.drawer-footer--pane {
  flex-shrink: 0;
  margin-top: 0;
  border-top: 1px solid var(--office-border, #edf0f5);
  background: #f4f6f9;
  padding: 14px 28px;
}
.v23-drawer-pane__scroll .drawer-process-timeline {
  margin-top: 8px;
  max-width: 720px;
}
.v23-drawer-pane__scroll .drawer-section-title {
  margin-bottom: 12px;
}
.v23-drawer-pane__scroll .drawer-form {
  max-width: 1100px;
}
.v23-drawer-pane__scroll .v24-pane-actions {
  margin-top: 12px;
  max-width: 1100px;
}
.v23-drawer-pane__scroll .v24-pane-actions .cell-link {
  font-size: 13px;
  font-weight: 500;
}
.v23-drawer-pane__scroll .v24-pane-hint,
.v23-drawer-pane__scroll > p.text-\[12px\],
.v23-drawer-pane__scroll > p.text-\[13px\] {
  color: #8a93a3;
  font-size: 12px;
  line-height: 1.6;
  margin: 10px 0 0;
  max-width: 960px;
}

/* 详情 Tab · 统一区块：区域标题 + 表单/表格（对齐线索管理） */
.v23-drawer-pane__scroll .v24-detail-section {
  max-width: 1100px;
}
.v23-drawer-pane__scroll .v24-detail-section + .v24-detail-section {
  margin-top: 20px;
}
.v23-drawer-pane__scroll .v24-detail-section > .drawer-section-title {
  margin: 0 0 12px;
}
.v23-drawer-pane__scroll .v24-detail-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.v23-drawer-pane__scroll .v24-detail-section__head .drawer-section-title {
  margin-bottom: 0;
}
.v23-drawer-pane__scroll .v24-detail-section__hint {
  margin: -4px 0 12px;
}
.v23-drawer-pane__scroll .v24-detail-section .drawer-form {
  margin-bottom: 0;
}
.v23-drawer-pane__scroll .v24-detail-section > .expense-grid-table,
.v23-drawer-pane__scroll .v24-detail-section > .expense-grid-wrap {
  margin-top: 0;
}
.v23-drawer-pane__scroll .v24-detail-section .v24-group-inline-add-minimal {
  margin-top: 0;
}
.drawer-footer--pane .drawer-footer-actions {
  justify-content: flex-end;
  gap: 12px;
}

/* ── 阶段 1 · 嵌入活动列表 + D7a Logo 上传（见 _v24-ui-spec.md） ── */
html.v23-embed.v23-embed--activity .v23-embed-root--activity {
  min-height: 0;
}
html.v23-embed.v23-embed--activity .v23-embed-root--activity .page-toolbar {
  flex-shrink: 0;
  padding: 8px 16px;
  border-bottom: 1px solid var(--office-border, #edf0f5);
  background: #fff;
}
html.v23-embed.v23-embed--activity .v24-embed-list-body {
  padding: 0 16px 12px;
  min-height: 0;
}
html.v23-embed .v24-embed-table-only {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
}
html.v23-embed .v24-embed-table-only .v24-embed-table-wrap {
  flex: 1 1 auto;
  min-height: 180px;
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
}
html.v23-embed .v24-embed-table-only .list-pagination {
  flex-shrink: 0;
  padding-top: 10px;
}
.v24-logo-upload__box {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 88px;
  padding: 12px;
  border: 1px dashed #d9d9d9;
  border-radius: 8px;
  background: #fafafa;
  margin-bottom: 8px;
}
.v24-logo-upload__empty {
  font-size: 13px;
  color: #bfbfbf;
}
.activity-logo--lg {
  width: 56px;
  height: 56px;
  font-size: 22px;
  line-height: 56px;
}
.v24-logo-upload__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 4px;
}
.v24-logo-upload__hint {
  margin: 6px 0 0;
  font-size: 12px;
  color: #8c8c8c;
  line-height: 1.5;
}

/* 顶层编辑抽屉（列表页新增/编辑）：与税务 DrawerUI._shell 同高侧开 */
#page-drawer.v24-form-drawer.open:not(.is-center-modal) {
  display: block !important;
  align-items: unset !important;
  justify-content: unset !important;
  padding: 0 !important;
}
#page-drawer.v24-form-drawer.open:not(.is-center-modal) > .drawer-panel.v24-form-panel {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  bottom: 8px !important;
  left: auto !important;
  transform: translateX(0) !important;
  height: auto !important;
  max-height: none !important;
}
#page-drawer.v24-form-drawer > .drawer-panel.v24-form-panel,
#page-drawer .v24-nested-form.v24-nested-side > .drawer-panel.v24-form-panel {
  display: flex;
  flex-direction: column;
  height: 100%;
  max-height: 100%;
  min-height: 0;
}
#page-drawer .v24-form-panel > .drawer-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}
#page-drawer .v24-form-panel > .drawer-footer {
  flex-shrink: 0;
  margin-top: auto;
}

/* 报价说明底栏：正文承担留白，根容器与操作栏通栏贴边。 */
html.v23-embed:has(.v24-quote-note),
html.v23-embed:has(.v24-quote-note) body,
html.v23-embed:has(.v24-quote-note) #app-root {
  margin: 0 !important;
  padding: 0 !important;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
html.v23-embed .v23-embed-root--quote-note,
html.v23-embed .v23-embed-root--quote-note #list-table-host,
html.v23-embed #list-table-host > .v24-quote-note {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  min-height: 0;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
  overflow: hidden;
}
html.v23-embed #list-table-host > .v24-quote-note > .v24-quote-note__scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 16px 20px 12px;
}
html.v23-embed #list-table-host > .v24-quote-note > .drawer-footer.drawer-footer--pane {
  flex: 0 0 auto;
  align-self: stretch;
  width: 100%;
  max-width: none;
  margin: 0 !important;
  padding: 14px 28px !important;
  border-radius: 0;
  box-sizing: border-box;
}

/* 2026-10-29 页面配置补全：分区占满一行，分区内字段两列 */
#page-drawer .v24-form-section { grid-column:1 / -1; min-width:0; width:100%; }
#page-drawer .v24-form-section > .drawer-section-title { margin:0 0 14px; width:100%; }
#page-drawer .v24-form-section-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 20px; min-width:0; }
#page-drawer .v24-form-section-grid > .v24-cond-hint,
#page-drawer .v24-form-section-grid > .v24-cond-table-wrap,
#page-drawer .v24-form-section-grid > .v24-cond-toolbar,
#page-drawer .v24-form-section-grid > p,
#page-drawer .v24-form-section-grid > .drawer-input-field--full { grid-column:1 / -1; }
#page-drawer [data-acquire-block] { grid-column:1 / -1; }
#page-drawer [hidden] { display:none !important; }
#page-drawer .v24-form-section-grid [data-entry-block] { display:contents; }
#page-drawer .v24-form-field-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 20px;
  width: 100%;
  min-width: 0;
}
/* display:contents 的子块会拆进两列栅格；承接字段对应整行放在留资方式下一行 */
#page-drawer .v24-form-section-grid > .v24-form-field-pair {
  grid-column: 1 / -1;
}
#page-drawer form > [data-entry-block] { min-width:0; }
#page-drawer .v24-pane-hint { grid-column:1 / -1; line-height:1.7; color:#8c8c8c; font-size:12px; }
.v24-pane-actions { display:flex; gap:10px; padding:16px 20px; justify-content:flex-end; flex-shrink:0; }
.v24-test-result { padding:14px; background:#f5f9ff; border:1px solid #d6e7ff; border-radius:6px; line-height:1.8; }
.v24-list-filters { display:flex; gap:10px; flex-wrap:wrap; padding:10px 0; align-items:center; }
.v24-list-filters label { display:flex; gap:6px; align-items:center; font-size:12px; color:#6b7280; }
.v24-list-filters select { border:1px solid #e5e7eb; border-radius:6px; padding:5px 8px; background:white; min-width:90px; }
.v24-list-filters + .expense-grid-wrap { min-height:80px; }
.v24-list-empty { text-align:center; padding:24px; color:#9ca3af; }
.activity-logo { object-fit:contain; }
@media(max-width:760px) { #page-drawer .v24-form-section-grid { grid-template-columns:minmax(0,1fr); } #page-drawer .v24-form-field-pair { grid-template-columns:minmax(0,1fr); } }

#page-drawer [data-v24-tag-form] .v24-cond-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; }
#page-drawer [data-v24-tag-form] .v24-cond-table th, #page-drawer [data-v24-tag-form] .v24-cond-table td { padding:8px; border:1px solid #edf0f5; text-align:left; }
#page-drawer [data-v24-tag-form] .v24-cond-table th { background:#f8f9fb; }
#page-drawer [data-v24-tag-form] .v24-cond-table th:last-child { width:64px; }
#page-drawer input[type="color"] { max-width:88px; padding:4px; }

/* 2026-10-29 列表更多筛选：分区导航、日期和分类弹窗 */
.v24-more-filter { display:inline-flex; align-items:center; gap:7px; border:0; background:#f5f6f8; color:#4b5563; border-radius:7px; padding:8px 13px; white-space:nowrap; height:34px; }
.v24-more-filter.is-active { color:#1890ff; background:#edf5ff; }
.v24-filter-count { min-width:18px; border-radius:9px; background:#1890ff; color:white; font-size:11px; text-align:center; padding:0 4px; }
.v24-filter-entry { display:flex; padding:6px 0 12px; }
.v24-filter-overlay { position:fixed; inset:0; z-index:11000; display:flex; align-items:center; justify-content:center; padding:20px; font-size:14px; }
.v24-filter-backdrop { position:absolute; inset:0; background:rgba(0,0,0,.38); }
.v24-filter-dialog { position:relative; width:min(1080px,calc(100vw - 40px)); height:min(760px,calc(100dvh - 40px)); background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 16px 64px #0002; display:flex; flex-direction:column; color:#303740; }
.v24-filter-dialog > header { height:68px; flex-shrink:0; display:flex; align-items:center; justify-content:space-between; background:#f1f3f6; padding:0 25px; }
.v24-filter-dialog h2 { font-size:20px; font-weight:600; margin:0; }
.v24-filter-dialog > header button { border:0; background:none; color:#68707a; font-size:28px; padding:4px 8px; cursor:pointer; }
.v24-filter-body { flex:1; min-height:0; display:flex; border:1px solid #e9edf3; border-radius:9px; overflow:hidden; margin:20px; }
.v24-filter-body > nav { width:180px; flex-shrink:0; background:#f5f6f8; padding:15px 0; display:flex; flex-direction:column; gap:4px; }
.v24-filter-body > nav button { text-align:left; padding:13px 20px; border:0; background:none; font-size:15px; color:#434b55; cursor:pointer; border-left:3px solid transparent; }
.v24-filter-body > nav button.is-active { color:#1890ff; border-left-color:#1890ff; font-weight:600; }
.v24-filter-content { flex:1; min-width:0; padding:22px 26px; overflow-y:auto; scroll-behavior:smooth; }
.v24-filter-content > section { margin-bottom:28px; scroll-margin-top:10px; }
.v24-filter-content h3 { margin:0 0 18px; font-size:16px; font-weight:600; }
.v24-filter-scope { display:flex; gap:70px; align-items:center; flex-wrap:wrap; }
.v24-filter-scope label { display:flex; gap:9px; align-items:center; }
.v24-filter-scope input { width:17px; height:17px; accent-color:#1890ff; }
.v24-filter-hint { color:#929aa5; font-size:12px; line-height:1.6; margin:12px 0 0; }
.v24-filter-time { display:flex; align-items:center; border:1px solid #dfe3eb; border-radius:7px; overflow:hidden; width:100%; max-width:650px; }
.v24-filter-time select, .v24-filter-time input { min-width:0; width:100%; height:40px; padding:7px 10px; background:#fff; border:0; outline:none; font-size:13px; }
.v24-filter-time select { max-width:150px; border-right:1px solid #dfe3eb; }
.v24-filter-time span { color:#b4bac2; }
.v24-filter-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
.v24-filter-grid label { min-width:0; }
.v24-filter-grid label > span { display:block; font-size:12px; color:#737d89; margin-bottom:7px; }
.v24-filter-grid select { width:100%; height:39px; padding:7px 9px; font-size:13px; color:#4b5563; border:1px solid #dfe3eb; border-radius:7px; background:#fff; }
.v24-filter-error { color:#e5484d; font-size:12px; }
.v24-filter-dialog > footer { flex-shrink:0; display:flex; justify-content:center; align-items:center; gap:14px; padding:16px 24px; background:#f1f3f6; }
.v24-filter-reset { background:none; border:0; padding:8px 3px; color:#1890ff; cursor:pointer; font-size:14px; }
.v24-filter-dialog button:focus-visible, .v24-filter-dialog input:focus-visible, .v24-filter-dialog select:focus-visible { outline:2px solid #1890ff; outline-offset:2px; }
@media(max-width:760px) { .v24-filter-body > nav { width:115px; } .v24-filter-content { padding:18px; } .v24-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .v24-filter-scope { gap:20px; } }

/* 详情子列表快捷搜索 · 与主列表 page-search 同结构 */
.v24-detail-search { padding: 0 0 12px; }
.v24-detail-search .page-search-wrap {
  flex: none;
  max-width: 220px;
  min-width: 120px;
}
/* 抽屉内嵌列表：操作按钮与下方表格左缘对齐 */
.v24-drawer-embedded-list { min-width: 0; max-width: 100%; width: 100%; }
.v24-drawer-embedded-list__action {
  display: inline-flex;
  margin: 0 0 8px;
}
.v24-drawer-embedded-list > .v24-detail-table-control {
  margin-top: 0;
}
.v24-bind-source-dialog__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.v24-bind-source-dialog__title { flex: 1; min-width: 0; }
.v24-bind-source-dialog__head .v24-detail-search { padding: 0; flex-shrink: 0; align-self: flex-start; }
#page-drawer a.v24-related-button { display:inline-flex; align-items:center; gap:6px; text-decoration:none; background:#fff; color:#42526b; border:1px solid #dce3ee; }
#page-drawer a.v24-related-button:hover { color:#1890ff; border-color:#1890ff; background:#f5faff; }
.v24-test-result[hidden] { display:none !important; }

.v24-rule-oneline { white-space: normal; word-break: break-word; }

/* 进线规则详情抽屉（与应用详情共用 v23-rule-panel，须同时带 v24-detail-drawer 才限宽） */
#page-drawer.v23-rule-drawer.v24-detail-drawer .drawer-panel.v23-rule-panel {
  max-width: 920px;
}
#page-drawer.v23-rule-drawer .v23-drawer-pane__scroll {
  padding: 16px 20px 12px;
}
#page-drawer.v23-rule-drawer .v24-rule-overview-pane,
#page-drawer.v23-rule-drawer .v24-rule-try-pane {
  max-width: 1100px;
  margin: 0;
}
#page-drawer.v23-rule-drawer .v24-rule-try-pane--stack {
  display: flex;
  flex-direction: column;
  gap: 0;
}
#page-drawer.v23-rule-drawer .v24-rule-try-pane--stack .v24-detail-section + .v24-detail-section {
  margin-top: 16px;
}
#page-drawer.v23-rule-drawer .v24-rule-try-head .v24-detail-section__head {
  margin-bottom: 0;
}
#page-drawer.v23-rule-drawer .v24-rule-try-outcome > .drawer-section-title {
  margin-bottom: 12px;
}
#page-drawer.v23-rule-drawer .v24-rule-try-form .drawer-input-field {
  margin-bottom: 0;
}
#page-drawer.v23-rule-drawer .v24-rule-try-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 28px;
  margin-bottom: 0;
}
#page-drawer .v24-flow-form-box {
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding: 12px 16px;
  background: #fafbfc;
  border: 1px solid #eef1f5;
  border-radius: 8px;
  margin-bottom: 0;
}
#page-drawer .v24-flow-form-box .v24-view-field {
  margin-bottom: 0;
}
#page-drawer.v23-rule-drawer .v24-rule-hero {
  padding: 16px 18px;
  background: #fafbfc;
  border: 1px solid #eef1f5;
  border-radius: 8px;
}
#page-drawer.v23-rule-drawer .v24-rule-hero__top {
  margin-bottom: 10px;
}
#page-drawer.v23-rule-drawer .v24-rule-hero__title,
#page-drawer.v23-rule-drawer .v24-rule-hero__name {
  font-size: 15px;
  font-weight: 600;
  color: #262626;
  line-height: 1.4;
  margin-bottom: 6px;
}
#page-drawer.v23-rule-drawer .v24-rule-hero__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
#page-drawer.v23-rule-drawer .v24-rule-hero__prio {
  font-size: 12px;
  color: #8c8c8c;
}
#page-drawer.v23-rule-drawer .v24-rule-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 10px 14px;
  align-items: stretch;
}
@media (max-width: 720px) {
  #page-drawer.v23-rule-drawer .v24-rule-flow {
    grid-template-columns: 1fr;
  }
  #page-drawer.v23-rule-drawer .v24-rule-flow__arrow {
    display: none;
  }
}
#page-drawer.v23-rule-drawer .v24-rule-flow__col {
  padding: 10px 12px;
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  min-height: 88px;
}
#page-drawer.v23-rule-drawer .v24-rule-flow__label {
  font-size: 12px;
  font-weight: 600;
  color: #595959;
  margin-bottom: 8px;
}
#page-drawer.v23-rule-drawer .v24-rule-flow__body {
  font-size: 13px;
  line-height: 1.65;
  color: #434343;
}
#page-drawer.v23-rule-drawer .v24-rule-flow__body .v24-rule-cond-list {
  margin: 0;
  padding-left: 18px;
}
#page-drawer.v23-rule-drawer .v24-rule-flow__sub {
  margin-top: 8px;
  font-size: 12px;
  color: #8c8c8c;
  line-height: 1.5;
}
#page-drawer.v23-rule-drawer .v24-rule-flow__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #bfbfbf;
  padding-top: 20px;
}
#page-drawer.v23-rule-drawer .v24-rule-queue-note {
  margin-left: 6px;
  font-size: 12px;
  color: #8c8c8c;
  font-weight: 400;
}
#page-drawer.v23-rule-drawer .v24-rule-meta-inline {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #eef1f5;
  font-size: 12px;
  line-height: 1.5;
  color: #8c8c8c;
}
#page-drawer.v23-rule-drawer .v24-rule-queue-link {
  font-size: 15px;
  font-weight: 600;
}
#page-drawer.v23-rule-drawer .v24-rule-meta-fold {
  margin-top: 14px;
  font-size: 13px;
  color: #595959;
}
#page-drawer.v23-rule-drawer .v24-rule-meta-fold summary {
  cursor: pointer;
  color: #1890ff;
  user-select: none;
  padding: 4px 0;
}
#page-drawer.v23-rule-drawer .v24-rule-meta-form {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed #f0f0f0;
}
#page-drawer.v23-rule-drawer .v24-rule-try-result {
  max-width: 100%;
  min-height: 0;
  padding: 12px 14px;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  background: #fafbfc;
  font-size: 13px;
  line-height: 1.6;
  color: #303740;
  box-sizing: border-box;
}
#page-drawer.v23-rule-drawer .v24-rule-try-result details summary {
  cursor: pointer;
  color: #1890ff;
  user-select: none;
}

/* legacy aliases */
#page-drawer.v23-rule-drawer .v24-rule-oneline {
  font-size: 14px;
  line-height: 1.65;
  color: #303740;
  padding: 12px 14px;
  margin-bottom: 10px;
  background: #f6f8fa;
  border: 1px solid #eef1f5;
  border-radius: 6px;
}
#page-drawer.v23-rule-drawer .v24-rule-section-hint {
  margin: 0 0 16px;
  font-size: 12px;
  line-height: 1.55;
  color: #8c8c8c;
}
#page-drawer.v23-rule-drawer .v24-rule-cond-list {
  margin: 0;
  padding-left: 18px;
  font-size: 13px;
  line-height: 1.75;
  color: #434343;
}

/* 表单选填提示（非列表） */
.v24-label-optional { font-size:11px; color:#bfbfbf; font-weight:400; margin-left:4px; }

/* 资源分组详情抽屉 · 各 Tab 正文区（与线索详情同宽，内边距由 scroll 统一 16px 20px） */
#page-drawer.v24-detail-drawer .v24-group-drawer-pane {
  max-width: none;
  margin: 0;
  padding: 0;
}
#page-drawer.v24-detail-drawer .v24-group-drawer-pane .v24-detail-section + .v24-detail-section {
  margin-top: 20px;
}
#page-drawer.v24-detail-drawer .v24-group-drawer-pane .v24-detail-section > .drawer-section-title {
  margin: 0 0 12px;
}
#page-drawer.v24-detail-drawer .v24-group-drawer-pane .drawer-section-title:first-of-type {
  margin-top: 0;
}
#page-drawer .v24-group-inline-add-minimal {
  margin-bottom: 4px;
}
#page-drawer .v24-group-inline-add-minimal .v24-group-member-pick {
  padding: 0;
  background: transparent;
  border: none;
}
#page-drawer .v24-group-inline-add-minimal .btn-drawer-secondary.v24-group-pick-btn {
  min-height: 32px;
  padding: 0 14px;
  font-size: 13px;
}
#page-drawer .v24-group-members-form {
  margin-bottom: 4px;
}

/* 资源分组客服选择与规则试跑结果 */
.v24-customer-picker-field > .drawer-input-control { display:block; min-width:0; }
.v24-customer-pick-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:8px; padding:12px; max-height:260px; background:#fafbfc; }
.v24-customer-pick-grid .v24-member-pick-row { display:flex; align-items:center; gap:8px; min-height:44px; padding:10px 12px; border:1px solid #e8ebf0; border-radius:6px; background:#fff; cursor:pointer; }
.v24-customer-pick-grid .v24-member-pick-row:has(input:checked) { border-color:#1890ff; background:#e6f4ff; }
.v24-customer-pick-grid .v24-member-pick-row span { margin-left:auto; font-size:12px; color:#8c8c8c; }
.v24-group-member-pick { width:100%; min-width:0; }
.v24-result-summary { display:flex; flex-direction:column; gap:14px; }
.v24-result-destination { display:flex; flex-direction:column; gap:6px; }
.v24-result-destination > span,.v24-result-rule > span:first-child { color:#8c8c8c; font-size:12px; }
.v24-result-destination > strong { font-size:20px; line-height:1.5; color:#1677ff; font-weight:600; overflow-wrap:anywhere; }
.v24-result-rule { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; font-size:13px; }
.v24-result-rule > strong { font-weight:500; overflow-wrap:anywhere; }
.v24-result-priority { border:1px solid #d6e4ff; border-radius:4px; padding:2px 8px; color:#1677ff; background:#f0f5ff; font-size:12px; }
.v24-result-comparison { border-top:1px solid #e8ebf0; padding-top:12px; }
.v24-result-comparison li { padding:5px 0; line-height:1.6; }
.v24-rule-try-result { padding:18px !important; }

/* 客服双栏选择器 */
.v24-transfer { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); border:1px solid #dcdfe6; border-radius:8px; overflow:hidden; background:#fff; }
.v24-transfer-pane { min-width:0; display:flex; flex-direction:column; height:360px; }
.v24-transfer-pane + .v24-transfer-pane { border-left:1px solid #dcdfe6; }
.v24-transfer-header { display:flex; align-items:center; gap:12px; min-height:50px; padding:12px 16px; color:#737b86; font-size:13px; }
.v24-transfer-header > button:last-child:not(:first-child) { margin-left:auto; }
.v24-transfer-action { color:#1677ff; border:0; background:#f0f5ff; border-radius:4px; padding:4px 10px; cursor:pointer; }
.v24-transfer-action:disabled { color:#bfbfbf; background:#fafafa; cursor:default; }
.v24-transfer-search { padding:0 16px 12px; }
.v24-transfer-search input { width:100%; }
.v24-transfer-filter { padding:0 16px 10px; font-size:12px; color:#737b86; }
.v24-transfer-filter label { display:flex; align-items:center; gap:8px; }
.v24-transfer-filter select { flex:1; }
.v24-transfer-options,.v24-transfer-selected { overflow:auto; flex:1; min-height:0; padding:0 12px 12px; }
.v24-transfer-option { display:flex; align-items:center; gap:10px; min-height:42px; padding:9px 8px; margin:0; border-radius:4px; font-size:13px; cursor:pointer; }
.v24-transfer-option:hover { background:#f5f7fa; }
.v24-transfer-option[hidden],.v24-transfer [hidden] { display:none !important; }
.v24-transfer-option > small { color:#8c8c8c; font-size:12px; margin-left:auto; }
.v24-transfer-option input { accent-color:#1677ff; width:15px; height:15px; flex:none; }
.v24-transfer-chosen > button { border:0; background:none; color:#8c8c8c; font-size:20px; cursor:pointer; padding:0 4px; }
.v24-transfer-empty { height:100%; min-height:160px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:#bfbfbf; font-size:13px; }
.v24-transfer-empty > span { font-size:40px; line-height:1; }
.v24-transfer-no-match { color:#bfbfbf; text-align:center; padding:28px 12px; font-size:13px; }
@media(max-width:640px) { .v24-transfer { grid-template-columns:1fr; } .v24-transfer-pane { height:280px; } .v24-transfer-pane + .v24-transfer-pane { border-left:0; border-top:1px solid #dcdfe6; } }

.v24-group-rule-choices { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:10px; }
.v24-group-rule-choice { display:flex; align-items:flex-start; gap:10px; padding:14px; border:1px solid #e3e8ef; border-radius:6px; cursor:pointer; background:#fff; }
.v24-group-rule-choice:has(input:checked) { border-color:#91caff; background:#f0f7ff; }
.v24-group-rule-choice input { margin-top:4px; accent-color:#1677ff; }
.v24-group-rule-choice strong { display:block; font-weight:500; font-size:13px; }
.v24-group-rule-choice small { display:block; margin-top:6px; color:#8c8c8c; line-height:1.8; font-size:12px; }

.v24-group-rule-table{width:100%;overflow:auto;max-height:360px;}
.v24-group-rule-table table{min-width:1000px;}
.v24-group-rule-table td,.v24-group-rule-table th{padding:10px 12px;}

.v24-scope-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;max-height:280px;overflow:auto;}
.v24-scope-option{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #e5e9f0;border-radius:6px;cursor:pointer;font-size:13px;}
.v24-scope-option:has(input:checked){background:#f0f7ff;border-color:#91caff;}
.v24-scope-option small{display:block;color:#8c8c8c;margin-top:4px;}
[data-rule-scope][hidden]{display:none !important;}
.v24-rule-scope-summary{display:flex;gap:14px;line-height:1.8;margin:16px 0;padding:12px 16px;background:#f5f8fc;border-radius:6px;font-size:13px;}
.v24-rule-scope-summary span{flex:none;color:#8c8c8c;}.v24-rule-scope-summary strong{font-weight:500;}

.v24-lead-inline-form{padding:8px 4px 16px;}.v24-lead-inline-form .v24-form-section{width:100%;}.v24-lead-inline-form textarea{min-height:100px;}
.v24-lead-inline-form .v24-lead-segment-row .drawer-input-control { display:flex; align-items:flex-start; flex-wrap:wrap; min-width:0; }

/* 少量固定选项：分段切换 */
select[data-v24-segment-select][hidden]{display:none !important;}
.v24-segment,.pg-segment{display:inline-flex;align-items:stretch;flex-wrap:wrap;gap:0;width:max-content;max-width:100%;flex:0 1 auto;vertical-align:middle;border:1px solid #dcdfe6;border-radius:8px;overflow:hidden;background:#fff;}
.v24-segment > button{appearance:none;border:0;border-right:1px solid #dcdfe6;background:#fff;color:#303133;padding:0 18px;min-height:34px;line-height:1.5;font-size:13px;font-family:inherit;cursor:pointer;white-space:nowrap;flex:0 0 auto;}
.v24-segment > button:last-child{border-right:0;}
.v24-segment > button[aria-checked="true"]{background:#2f8cf3;color:#fff;border-color:#2f8cf3;}
.v24-segment > button:hover:not(:disabled):not([aria-checked="true"]){background:#f0f7ff;color:#1677ff;}
.v24-segment > button:focus-visible{outline:2px solid #91caff;outline-offset:-3px;}
.v24-segment > button:disabled{cursor:not-allowed;opacity:.5;}
.pg-segment label{position:relative;margin:0;cursor:pointer;}
.pg-segment input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;}
.pg-segment label > span{display:flex;align-items:center;justify-content:center;min-height:34px;height:auto;padding:0 18px;margin:0;border:0;border-right:1px solid #dcdfe6;border-radius:0 !important;font-size:13px;background:#fff;color:#303133;flex:0 0 auto;white-space:nowrap;}
.pg-segment label:last-child > span{border-right:0;}
.pg-segment input:checked + span{background:#2f8cf3;color:#fff;border-color:#2f8cf3;}
.pg-segment input:focus-visible + span{outline:2px solid #91caff;outline-offset:-3px;}
@media(max-width:640px){.v24-segment > button,.pg-segment label > span{padding:0 12px;}}

[data-entry-block][hidden]{display:none !important;}

/* 资源分组：规则双栏选择与紧凑客服选择 */
.v24-rule-transfer { width:100%; }
.v24-rule-transfer .v24-transfer-pane { height:340px; }
.v24-rule-pick-row { align-items:flex-start; }
.v24-rule-pick-row > input { margin-top:4px; flex-shrink:0; }
.v24-rule-pick-content { display:flex; flex-direction:column; gap:4px; min-width:0; }
.v24-rule-pick-content strong { font-size:13px; font-weight:500; }
.v24-rule-pick-content small { font-size:12px; color:#8c8c8c; white-space:normal; line-height:1.6; }
.v24-rule-transfer .v24-transfer-chosen { align-items:flex-start; }
.v24-rule-transfer .v24-transfer-chosen > span { flex:1; overflow-wrap:anywhere; }
.v24-transfer-chosen button:disabled { width:auto; color:#8c8c8c; cursor:default; font-size:12px; }
#page-drawer .v24-group-add-field > .drawer-input-control { display:block; min-width:0; }
#page-drawer .v24-group-add-field .v24-group-inline-add-minimal { width:100%; max-width:850px; border:1px solid #dcdfe6; border-radius:8px; overflow:hidden; margin:0; }
#page-drawer .v24-group-add-field .v24-transfer { border-radius:0; border-bottom:1px solid #edf0f5; }
#page-drawer .v24-group-add-field .v24-transfer-pane { height:240px; }
#page-drawer .v24-group-add-field .v24-transfer-header { min-height:40px; padding:8px 12px; }
#page-drawer .v24-group-add-field .v24-transfer-search { padding:0 12px 8px; }
#page-drawer .v24-group-add-field .v24-transfer-filter { padding:0 12px 8px; }
#page-drawer .v24-group-add-field .v24-transfer-option { min-height:36px; }
#page-drawer .v24-group-add-actions { padding:10px 12px; background:#fafbfc; }

/* 统一新增、编辑表单为左侧字段标签 */
#page-drawer .v24-nested-form .drawer-form .drawer-input-field,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-field,
#page-drawer.v24-form-drawer .drawer-form .drawer-input-field {
  flex-direction:row; align-items:flex-start; gap:12px;
}
#page-drawer .v24-nested-form .drawer-form .drawer-input-label,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-label,
#page-drawer.v24-form-drawer .drawer-form .drawer-input-label {
  flex:0 0 128px; width:128px; text-align:right; padding-top:8px;
  line-height:20px; font-weight:500; color:#667282;
}
#page-drawer .v24-nested-form .drawer-form .drawer-input-control,
#page-drawer.is-center-modal .config-form-body .drawer-form .drawer-input-control,
#page-drawer.v24-form-drawer .drawer-form .drawer-input-control {
  flex:1; min-width:0;
}
.v24-rule-pick-row { padding:12px 8px; gap:10px; }
.v24-rule-pick-content { gap:8px; }
.v24-rule-pick-content strong { color:#303846; line-height:1.5; }
.v24-rule-pick-tags { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.v24-rule-chip { display:inline-flex; align-items:center; font-size:11px; line-height:20px; padding:0 6px; border-radius:4px; background:#f4f5f7; color:#737b86; white-space:nowrap; font-weight:400; }
.v24-rule-chip--scene { color:#1677ff; background:#edf5ff; }
.v24-rule-chip--active { color:#389e0d; background:#f0f9e9; }
.v24-rule-transfer .v24-transfer-chosen > small.v24-rule-chip { color:#1677ff; font-size:11px; }
@media(max-width:760px) {
  #page-drawer .v24-nested-form .drawer-form,
  #page-drawer.is-center-modal .config-form-body > .drawer-form,
  #page-drawer.v24-form-drawer .drawer-form,
  #page-drawer .v24-form-section-grid { grid-template-columns:minmax(0,1fr); }
}

/* 各详情、嵌套编辑与独立配置区块共用左侧标题列 */
#page-drawer .drawer-form .drawer-input-field {
  display:flex; flex-direction:row; align-items:flex-start; gap:12px;
}
#page-drawer .drawer-form .drawer-input-field > .drawer-input-label {
  box-sizing:border-box; flex:0 0 128px; width:128px; padding:8px 0 0;
  text-align:right; line-height:20px; color:#667282; font-weight:500;
}
#page-drawer .drawer-form .drawer-input-field > .drawer-input-control {
  flex:1; width:auto; min-width:0; max-width:100%;
}
#page-drawer .config-form-body .drawer-form .drawer-input-field > .drawer-input-label {
  flex:0 0 128px; width:128px;
}
#page-drawer .config-form-body .drawer-form .drawer-input-field > .drawer-input-control {
  flex:1; width:auto; min-width:0;
}
/* 嵌套弹窗：识别方式 + 状态等分段控件占满一行两列，避免挤成两行 */
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
  width: 100%;
  min-width: 0;
}
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog > .drawer-input-field {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  margin: 0;
  min-width: 0;
}
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog > .drawer-input-field > .drawer-input-label {
  flex: none;
  width: auto;
  padding: 0;
  text-align: left;
  font-weight: 600;
  color: #2d3746;
}
#page-drawer .drawer-form .drawer-input-field > .drawer-input-control:has(.v24-segment),
#page-drawer .drawer-form .drawer-input-field > .drawer-input-control:has(.pg-segment) {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog .v24-segment,
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog .pg-segment {
  display: inline-flex;
  flex-wrap: wrap;
  width: max-content;
  max-width: 100%;
}
#page-drawer .config-form-body .drawer-form .v24-form-field-pair--dialog .v24-segment > button {
  flex: 0 0 auto;
  min-width: 0;
  padding: 0 14px;
  font-size: 13px;
  white-space: nowrap;
}
#page-drawer .v24-aligned-section { width:100%; display:block; margin:0 0 16px; }
#page-drawer .v24-labeled-block { width:100%; grid-column:1 / -1; min-width:0; }
#page-drawer .v24-labeled-block > .drawer-input-control { display:block; }
#page-drawer .v24-detail-table-control { width:100%; min-width:0; overflow-x:auto; }
#page-drawer .v24-detail-table-control > .expense-grid-wrap { min-height:0; margin:0; }
#page-drawer .v24-detail-table-control table { margin-top:0; }
#page-drawer .v24-form-section-grid > .v24-pane-hint { padding-left:140px; }
#page-drawer .v24-option-editor { width:100%; min-width:0; }
#page-drawer .v24-rule-try-outcome .v24-pane-actions { padding-left:140px; }


/* 详情与配置弹窗：表格统一外描边 */
#page-drawer table.expense-grid-table,
#page-drawer table.v24-cond-table {
  border:1px solid #e4e8ef;
}
#page-drawer .v24-detail-table-control {
  box-sizing:border-box; border:1px solid #e4e8ef; border-radius:6px;
}
#page-drawer .v24-detail-table-control > table.expense-grid-table {
  border:0; margin-bottom:0;
}

/* 线索意向度、适用车型：白底描边平铺单选 */
.v24-segment.v24-segment--outline { border:0; overflow:visible; border-radius:0; background:transparent; gap:0; }
.v24-segment.v24-segment--outline > button {
  position:relative; border:1px solid #dcdfe6; margin-left:-1px; border-radius:0;
  background:#fff; color:#606266; min-height:38px; padding:0 18px;
}
.v24-segment.v24-segment--outline > button:first-child { margin-left:0; border-radius:8px 0 0 8px; }
.v24-segment.v24-segment--outline > button:last-child { border:1px solid #dcdfe6; border-radius:0 8px 8px 0; }
.v24-segment.v24-segment--outline > button:only-child { border-radius:8px; }
.v24-segment.v24-segment--outline > button[aria-checked="true"] { z-index:1; color:#1890ff; border-color:#1890ff; background:#fff; box-shadow:inset 0 0 0 1px #1890ff; }
.v24-segment.v24-segment--outline > button:hover:not(:disabled) { color:#1890ff; }
.v24-segment--empty { color:#bfbfbf; padding:8px 0; font-size:13px; }

/* 资源分组详情：统一区域宽度、表单节奏和表格对齐，不改变分配逻辑。 */
#page-drawer .v24-group-drawer-pane { width:100%; }
#page-drawer .v24-group-drawer-pane .v24-detail-section,
#page-drawer .v24-group-drawer-pane .drawer-form,
#page-drawer .v24-group-drawer-pane .v24-pane-hint,
#page-drawer .v24-group-drawer-pane .v24-group-add-field .v24-group-inline-add-minimal { width:100%; max-width:none; box-sizing:border-box; }
#page-drawer .v24-group-drawer-pane .v24-detail-section + .v24-detail-section,
#page-drawer .v24-group-drawer-pane [data-v24-assign-root] { margin-top:24px; }
#page-drawer .v24-group-drawer-pane .v24-detail-section > .drawer-section-title { margin:0 0 12px; }
#page-drawer .v24-group-drawer-pane .v24-detail-section__hint { margin:0 0 12px; }
#page-drawer .v24-group-drawer-pane .v24-group-members-form { margin:0; }
#page-drawer .v24-group-drawer-pane .v24-group-add-field { display:block; padding:0; margin:0; }
#page-drawer .v24-group-drawer-pane .v24-group-add-field > .drawer-input-control { width:100%; padding:0; margin:0; }
#page-drawer .v24-group-drawer-pane .v24-group-member-pick { margin:0; }
#page-drawer .v24-group-drawer-pane .v24-transfer-pane { height:280px; }
#page-drawer .v24-group-drawer-pane .v24-transfer-header { min-height:44px; padding:10px 12px; }
#page-drawer .v24-group-drawer-pane .v24-transfer-search,
#page-drawer .v24-group-drawer-pane .v24-transfer-filter { padding:0 12px 12px; }
#page-drawer .v24-group-drawer-pane .v24-transfer-header > span { white-space:nowrap; }
#page-drawer .v24-group-drawer-pane .v24-transfer-options,
#page-drawer .v24-group-drawer-pane .v24-transfer-selected { padding:0 12px 12px; }
#page-drawer .v24-group-drawer-pane .v24-group-add-actions { padding:12px; min-height:56px; }
#page-drawer .v24-group-drawer-pane .expense-grid-wrap { width:100%; margin:0; padding:0; min-height:0; }
#page-drawer .v24-group-drawer-pane .expense-grid-table { width:100%; margin:0; }
#page-drawer .v24-group-drawer-pane .expense-grid-table th,
#page-drawer .v24-group-drawer-pane .expense-grid-table td { padding:12px; vertical-align:middle; }
#page-drawer .v24-group-drawer-pane input[data-v24-member-weight] { width:96px; max-width:100%; height:32px; display:inline-block; }
#page-drawer .v24-group-drawer-pane .v24-to-sub { margin:20px 0 12px; }
#page-drawer .v24-group-drawer-pane .v24-to-fields { margin:12px 0 0; }
#page-drawer .v24-group-drawer-pane [data-v24-timeout-preview] { margin:0; }
#page-drawer .v24-group-drawer-pane .v24-group-inline-add-minimal .drawer-input { height:32px; }
#page-drawer .v24-group-drawer-pane .v24-detail-table-control > .expense-grid-wrap { border:0; border-radius:0; box-shadow:none; }
#page-drawer .v24-group-drawer-pane .v24-detail-table-control > .expense-grid-wrap table { border:0; }
#page-drawer .v24-group-drawer-pane .drawer-input-control { min-width:0; }

.meeting-model-form { width:100%;max-width:none!important;display:block!important; }
#page-drawer .meeting-model-form .v24-detail-table-control { border:0; border-radius:0; box-shadow:none; }
#page-drawer .meeting-model-form .v24-detail-table-control > .expense-grid-wrap { border:0; border-radius:0; box-shadow:none; }
#page-drawer .meeting-model-form .v24-detail-table-control table.expense-grid-table { border:0; }
.meeting-package-pick {display:flex;gap:16px;flex-wrap:wrap;padding:12px 0;}
.meeting-model-table {min-width:1100px;}
.meeting-model-table .drawer-input {width:100%;min-width:100px;height:32px;}
#page-drawer .v24-group-drawer-pane input[data-meeting-cap] {width:96px;height:32px;}

/* 资源分组 · 分配设置 Tab */
.v24-assign-pane { display:flex; flex-direction:column; gap:0; width:100%; }
.v24-assign-pane > .v24-detail-section { margin:0; padding:0 0 20px; border-bottom:1px solid #f0f0f0; }
.v24-assign-pane > .v24-detail-section:last-child { border-bottom:0; padding-bottom:0; }
.v24-assign-pane > .v24-detail-section + .v24-detail-section { margin-top:20px; }
.v24-assign-pane .drawer-section-title { margin-bottom:12px; }
.v24-assign-strategy-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 16px; margin-bottom:12px; }
.v24-assign-strategy-field { display:flex; align-items:center; gap:12px; margin:0; }
.v24-assign-strategy-field .drawer-input-label { margin:0; white-space:nowrap; }
.v24-assign-meta { font-size:12px; color:#8c8c8c; }
.v24-assign-meta strong { color:#595959; font-weight:500; }
.v24-assign-table-wrap { margin:0; }
.v24-assign-note { margin:8px 0 0; font-size:12px; color:#8c8c8c; line-height:1.5; }
.v24-assign-timeout-top { margin-bottom:12px; }
.v24-assign-timeout-top .drawer-input-field { margin-bottom:0; }
.v24-assign-records { margin-top:16px; }
.v24-assign-records__title { font-size:12px; color:#8c8c8c; margin-bottom:8px; }
.v24-assign-global-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 20px; margin-bottom:16px; }
.v24-assign-global-grid .drawer-input-field { margin:0; }
.v24-assign-global-actions { margin-top:12px; }
#page-drawer .v24-assign-pane .v24-to-fields--compact { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 20px; margin:0; }
#page-drawer .v24-assign-pane .v24-assign-global-grid + .v24-to-fields--compact { margin-top:8px; }
#page-drawer .v24-assign-pane .v24-to-fields--compact .drawer-input-field { margin:0; align-items:center; }
#page-drawer .v24-assign-pane .v24-to-fields--compact .drawer-input-field > .drawer-input-label {
  padding-top:0; padding-bottom:0; line-height:34px;
}
#page-drawer .v24-assign-pane .v24-to-fields--compact .drawer-input-field > .drawer-input-control {
  display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-height:34px;
}
#page-drawer .v24-assign-pane .v24-to-fields--compact .drawer-input-field--full { grid-column:1 / -1; }
#page-drawer .v24-assign-pane .v24-assign-global-grid .drawer-input-field { align-items:center; }
#page-drawer .v24-assign-pane .v24-assign-global-grid .drawer-input-field > .drawer-input-label {
  padding-top:0; padding-bottom:0; line-height:34px;
}
#page-drawer .v24-assign-pane .v24-assign-global-grid .drawer-input-field > .drawer-input-control {
  display:flex; flex-wrap:wrap; align-items:center; min-height:34px;
}
#page-drawer .v24-assign-pane .v24-assign-timeout-top .drawer-input-field { align-items:flex-start; }
#page-drawer .v24-assign-pane .v24-assign-timeout-top .drawer-input-field > .drawer-input-label {
  padding-top:7px; padding-bottom:7px; line-height:20px;
}
#page-drawer .v24-assign-pane .v24-assign-timeout-top .drawer-input-field > .drawer-input-control {
  display:flex; flex-direction:column; align-items:flex-start; gap:8px; min-height:0;
}
#page-drawer .v24-assign-pane .v24-assign-strategy-field .drawer-input-label {
  padding-top:0; padding-bottom:0; line-height:34px;
}
#page-drawer .v24-assign-pane .v24-assign-strategy-row { align-items:center; }
#page-drawer .v24-assign-pane [data-v24-assign-root] { margin-top:0; }

.meeting-list-action-column { display:none !important; }
.meeting-detail-row { cursor:pointer; }
.meeting-detail-row:focus-visible { outline:2px solid #1890ff; outline-offset:-2px; }
.meeting-detail-actions { display:flex; align-items:center; gap:8px; margin-right:12px; }
