/*
 * P11-ORDER-001 经纪人“会员与续费”。沿用 UI088 第二版原型与 DESIGN.md：
 * Linear 细边框层级、Stripe 金额等宽右对齐、Cal.com 留白；保留优房浅色工作区与蓝色主动作。
 * 全部收在 .mo- 作用域；覆盖全局 table min-width:760px，避免窄窗横向溢出。
 */
.mo-root { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; min-width: 0; max-width: 1120px; color: var(--ink, #18202a); }
.mo-root > * { min-width: 0; }
.mo-header h3 { margin: 0 0 4px; font-size: 22px; font-weight: 650; }
.mo-header p { margin: 0; color: var(--muted, #6c7683); font-size: 14px; }
.mo-boundary { margin: 0; padding: 10px 14px; border: 1px dashed #c3ccd6; border-radius: 8px; background: #fff; color: var(--muted-strong, #465160); font-size: 13px; }

.mo-tabs { display: flex; gap: 24px; border-bottom: 1px solid var(--line, #dce3ea); }
.mo-tab { position: relative; padding: 0 2px 10px; border: 0; background: none; color: var(--muted-strong, #465160); font: inherit; font-size: 15px; cursor: pointer; }
.mo-tab[aria-selected="true"] { color: var(--blue, #2f64c8); font-weight: 600; }
.mo-tab[aria-selected="true"]::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; border-radius: 2px; background: var(--blue, #2f64c8); }

.mo-panel { padding: 20px 22px; border: 1px solid var(--line, #dce3ea); border-radius: 12px; background: var(--panel, #fff); }
.mo-panel h4 { margin: 0; font-size: 16px; font-weight: 650; }
.mo-h-gap { margin-top: 22px !important; }
.mo-sub { margin: 4px 0 0; color: var(--muted, #6c7683); font-size: 13px; }
.mo-eyebrow, .mo-label { color: var(--muted, #6c7683); font-size: 13px; }
.mo-mono { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; font-size: 13px; }
.mo-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mo-list { margin: 10px 0 0; padding-left: 18px; font-size: 13px; }
.mo-note { margin: 10px 0 0; padding: 8px 10px; border-radius: 8px; background: #fbf1e3; color: #6f420f; font-size: 13px; }
.mo-warn-text { color: var(--amber, #a96318); }
.mo-error { margin: 10px 0 0; color: var(--red, #b43d3d); font-size: 13px; }

.mo-notice { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 10px 14px; border: 1px solid; border-radius: 10px; font-size: 13px; }
.mo-notice p { margin: 4px 0 0; }
.mo-notice ul { margin: 6px 0 0; padding-left: 18px; }
.mo-notice.info { border-color: #cbd9f2; background: #eef3fc; color: #23457f; }
.mo-notice.ok { border-color: #bfdccb; background: #e9f5ee; color: #1f5a3f; }
.mo-notice.bad { display: block; border-color: #efc2c0; background: #fbeceb; color: #7c2626; }
.mo-notice.warn { border-color: #efd3ad; background: #fbf1e3; color: #6f420f; }
[data-mo-readiness], [data-mo-pending-error] { display: block; }
.mo-summary .mo-notice { display: block; margin-top: 12px; }

/* 会员卡（沿用原型） */
.mo-member { padding: 0; overflow: hidden; }
.mo-member-top { display: flex; justify-content: space-between; gap: 16px; padding: 18px 22px; background: var(--panel-muted, #f7f9fb); border-bottom: 1px solid var(--line-soft, #e8edf2); }
.mo-member-top h3 { margin: 4px 0 0; font-size: 22px; font-weight: 650; }
.mo-member-body { display: grid; grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr); gap: 0 28px; padding: 18px 22px 16px; }
.mo-divider { background: var(--line-soft, #e8edf2); }
.mo-value { margin-top: 4px; font-size: 20px; font-weight: 650; font-variant-numeric: tabular-nums; }
.mo-value small { font-size: 14px; font-weight: 500; color: var(--muted, #6c7683); }
.mo-member-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 22px; border-top: 1px solid var(--line-soft, #e8edf2); color: var(--muted, #6c7683); font-size: 13px; }
.mo-dot { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--muted-strong, #465160); white-space: nowrap; }
.mo-dot::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.mo-dot.ok { color: var(--green, #2f7a57); }
.mo-dot.warn { color: var(--amber, #a96318); }
.mo-dot.bad { color: var(--red, #b43d3d); }
.mo-dot.muted { color: var(--muted, #6c7683); }

/* 按钮 */
.mo-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.mo-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 16px; border: 1px solid var(--line, #dce3ea); border-radius: 8px; background: #fff; color: var(--ink, #18202a); font: inherit; font-size: 14px; font-weight: 500; white-space: nowrap; cursor: pointer; }
.mo-btn:hover { border-color: #c6d0da; background: var(--panel-muted, #f7f9fb); }
.mo-btn.primary { border-color: var(--blue, #2f64c8); background: var(--blue, #2f64c8); color: #fff; font-weight: 600; }
.mo-btn.primary:hover { background: #244f9f; }
.mo-btn.danger { border-color: #e2b4b2; color: var(--red, #b43d3d); }
.mo-btn.block { width: 100%; margin-top: 12px; min-height: 44px; }
.mo-btn:disabled { cursor: not-allowed; border-color: var(--line, #dce3ea); background: #e9edf2; color: #8f99a5; }
.mo-btn:focus-visible, .mo-link:focus-visible, .mo-tab:focus-visible, .mo-back:focus-visible { outline: none; box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); }
.mo-link, .mo-back { padding: 2px 0; border: 0; background: none; color: var(--blue, #2f64c8); font: inherit; font-size: 13px; font-weight: 500; cursor: pointer; }
.mo-back { justify-self: start; }
.mo-link:hover, .mo-back:hover { text-decoration: underline; }

/* 续费报价 */
.mo-renew, .mo-detail { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }
.mo-cycles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.mo-cycle { display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 8px 14px; border: 1px solid var(--line, #dce3ea); border-radius: 10px; background: #fff; cursor: pointer; }
.mo-cycle input { width: 16px; height: 16px; margin: 0; accent-color: var(--blue, #2f64c8); }
.mo-cycle small { color: var(--muted, #6c7683); }
.mo-cycle.selected { border-color: var(--blue, #2f64c8); background: #eef3fc; box-shadow: 0 0 0 1px var(--blue, #2f64c8) inset; }
.mo-cycle:has(input:disabled) { cursor: not-allowed; opacity: 0.6; }
.mo-cycle:has(input:focus-visible) { box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); }
.mo-summary { position: sticky; top: 16px; }
.mo-total { margin: 8px 0 2px; font-size: 30px; font-weight: 700; font-variant-numeric: tabular-nums; }
.mo-total.muted { color: #9aa7b5; }
.mo-facts { display: grid; gap: 6px; margin: 12px 0 0; font-size: 13px; }
.mo-facts div { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 10px; }
.mo-facts dt { color: var(--muted, #6c7683); }
.mo-facts dd { margin: 0; overflow-wrap: anywhere; }

/* 表格 */
.mo-table-wrap { margin-top: 12px; overflow-x: auto; }
.mo-table { width: 100%; min-width: 0; border-collapse: collapse; font-size: 13px; }
.mo-table th { padding: 9px 12px; background: var(--panel-muted, #f7f9fb); color: var(--muted-strong, #465160); font-weight: 600; text-align: left; border-bottom: 1px solid var(--line-soft, #e8edf2); white-space: nowrap; }
.mo-table td { padding: 10px 12px; border-bottom: 1px solid var(--line-soft, #e8edf2); vertical-align: top; }
.mo-table tbody tr:last-child td { border-bottom: 0; }
.mo-click { cursor: pointer; }
.mo-click:hover td { background: #f9fbfd; }
.mo-click:focus-visible { outline: 2px solid var(--blue, #2f64c8); outline-offset: -2px; }

.mo-badge { display: inline-flex; height: 22px; align-items: center; margin-left: 8px; padding: 0 8px; border-radius: 6px; font-size: 12px; font-weight: 600; white-space: nowrap; vertical-align: middle; }
td > .mo-badge { margin-left: 0; }
.mo-badge.pending { background: #eef3fc; color: var(--blue, #2f64c8); }
.mo-badge.warn { background: #fbf1e3; color: var(--amber, #a96318); }
.mo-badge.ok { background: #e9f5ee; color: var(--green, #2f7a57); }
.mo-badge.muted { background: #eef1f4; color: var(--muted, #6c7683); }
.mo-detail-head h3 { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font-size: 20px; font-weight: 650; }

.mo-field { display: grid; gap: 6px; margin-top: 12px; font-size: 13px; color: var(--muted-strong, #465160); }
.mo-field input { min-height: 38px; padding: 8px 10px; border: 1px solid var(--line, #dce3ea); border-radius: 8px; font: inherit; font-size: 14px; }
.mo-field input:focus-visible { outline: none; border-color: var(--blue, #2f64c8); box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); }

.mo-state { display: grid; justify-items: start; gap: 8px; }
.mo-state strong { font-size: 16px; }
.mo-state span { color: var(--muted, #6c7683); }

@media (max-width: 1200px) {
  .mo-renew, .mo-detail { grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; }
  .mo-panel { padding: 18px; }
}

/* P11-FREE-ACTIVATION-001：本人持续活动列表与免费开通回执（沿用 mo- 组件，不新增视觉体系） */
.mo-camps { list-style: none; padding-left: 0; }
.mo-camp { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 0; border-top: 1px solid var(--line, #e3e7ec); }
.mo-camp:first-child { border-top: 0; }
.mo-camp > div { min-width: 0; }
.mo-camp .mo-btn { flex: none; }
.mo-camp .mo-dot { white-space: normal; }
[data-mo-activation] p { margin: 4px 0 0; }

/* P11-PAID-RENEWAL：付款渠道、付款码与付款结果（沿用 mo- 组件与色系） */
.mo-pay { margin-top: 0; }
.mo-detail + .mo-pay, .mo-pay + .mo-detail { margin-top: 16px; }
.mo-pay .mo-facts { margin-top: 8px; }
.mo-pay-actions { display: flex; flex: none; flex-wrap: wrap; gap: 8px; align-items: flex-start; }
.mo-pay-choose h4 { margin: 0; }
.mo-channels .mo-btn { min-width: 128px; }
.mo-pay-qr { display: grid; grid-template-columns: 216px minmax(0, 1fr); gap: 24px; align-items: start; }
.mo-qr-wrap { padding: 8px; border: 1px solid var(--line, #e3e7ec); border-radius: 10px; background: #fff; }
.mo-qr { display: block; width: 200px; height: 200px; image-rendering: pixelated; }
.mo-qr-text h4 { margin: 0; }
@media (max-width: 1180px) { .mo-pay-qr { grid-template-columns: 1fr; } .mo-qr-wrap { justify-self: start; } }

/* ───────── P11-PAYMENT-CHECKOUT-UI：付费订单收银界面 ─────────
   参考 awesome-design-md Linear：单一表面 + 细边线分区、单一蓝色强调、显示级金额负字距与等宽数字。
   保留优房浅色画布与系统中文字体；状态以文字标签表达，颜色只作辅助。 */
.mo-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mo-checkout { display: grid; grid-template-columns: minmax(250px, 320px) minmax(0, 1fr); margin-top: 12px; border: 1px solid var(--line, #dce3ea); border-radius: 12px; background: var(--panel, #fff); overflow: hidden; }
.mo-co-summary { padding: 24px; border-right: 1px solid var(--line, #dce3ea); background: #fbfcfd; }
.mo-co-action { display: grid; align-content: start; gap: 16px; padding: 24px; min-width: 0; }
.mo-co-eyebrow { margin: 0; color: var(--muted, #6c7683); font-size: 13px; font-weight: 500; letter-spacing: 0.4px; }
.mo-co-amount { display: grid; gap: 2px; margin: 12px 0 0; }
.mo-co-amount span { color: var(--muted, #6c7683); font-size: 13px; }
.mo-co-amount strong { color: var(--ink, #18202a); font-size: 40px; font-weight: 600; line-height: 1.1; letter-spacing: -1px; font-variant-numeric: tabular-nums; }
.mo-co-plan { margin: 6px 0 0; color: var(--muted-strong, #465160); font-size: 14px; }
.mo-co-status { margin: 16px 0 0; }
.mo-co-pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border: 1px solid; border-radius: 999px; font-size: 13px; font-weight: 600; }
.mo-co-pill::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.mo-co-pill.wait { border-color: #cbd9f2; background: #eef3fc; color: #23457f; }
.mo-co-pill.ok { border-color: #bfdccb; background: #e9f5ee; color: #1f5a3f; }
.mo-co-pill.warn { border-color: #efd3ad; background: #fbf1e3; color: #6f420f; }
.mo-co-pill.muted { border-color: var(--line, #dce3ea); background: #f1f4f7; color: #465160; }
.mo-co-steps { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 16px 0 0; padding: 0; list-style: none; font-size: 13px; color: var(--muted, #6c7683); }
.mo-co-steps li { display: inline-flex; align-items: center; gap: 6px; }
.mo-co-steps li > span[aria-hidden] { display: inline-grid; place-items: center; width: 20px; height: 20px; border: 1px solid var(--line, #dce3ea); border-radius: 50%; background: #fff; font-size: 12px; font-variant-numeric: tabular-nums; }
.mo-co-steps li.current { color: var(--ink, #18202a); font-weight: 600; }
.mo-co-steps li.current > span[aria-hidden] { border-color: var(--blue, #2f64c8); background: var(--blue, #2f64c8); color: #fff; }
.mo-co-steps li.done > span[aria-hidden] { border-color: #bfdccb; background: #e9f5ee; color: #1f5a3f; }
.mo-co-keyfacts { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--line, #dce3ea); }
.mo-co-keyfacts div { display: grid; gap: 2px; }
.mo-co-keyfacts dt { color: var(--muted, #6c7683); font-size: 12px; }
.mo-co-keyfacts dd { margin: 0; color: var(--ink, #18202a); font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; }
/* 动作区内的付款状态：去掉框中框，标题+说明+动作纵向排列 */
.mo-co-action .mo-pay { margin: 0; }
.mo-co-action .mo-pay.mo-panel { padding: 0; border: 0; background: none; }
.mo-co-action .mo-pay.mo-notice { display: grid; gap: 12px; padding: 0; border: 0; background: none; color: var(--ink, #18202a); }
.mo-co-action .mo-pay.mo-notice strong, .mo-co-action .mo-pay h4, .mo-pay-legacy strong { display: block; margin: 0; font-size: 18px; font-weight: 600; letter-spacing: -0.2px; }
.mo-co-action .mo-pay.mo-notice p, .mo-pay-legacy p { margin: 6px 0 0; color: var(--muted-strong, #465160); font-size: 14px; line-height: 1.6; }
.mo-co-action .mo-pay-actions { justify-content: flex-start; }
.mo-co-action .mo-pay .mo-btn { min-height: 40px; }
/* “核对付款结果”在收银界面中始终是当前主动作 */
.mo-co-action .mo-btn[data-mo-action="pay-query"] { border-color: var(--blue, #2f64c8); background: var(--blue, #2f64c8); color: #fff; font-weight: 600; }
.mo-co-action .mo-btn[data-mo-action="pay-query"]:hover { background: #244f9f; }
.mo-co-action .mo-btn[data-mo-action="pay-query"]:disabled { border-color: var(--line, #dce3ea); background: #e9edf2; color: #8f99a5; }
/* 渠道选择：大号选项按钮，不预选；悬停/聚焦用唯一蓝色强调 */
.mo-channels { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; margin-top: 12px; }
.mo-channel { display: grid; justify-items: start; gap: 4px; min-height: 64px; padding: 12px 16px; border: 1px solid var(--line, #dce3ea); border-radius: 10px; background: #fff; color: var(--ink, #18202a); font: inherit; font-size: 16px; font-weight: 600; text-align: left; cursor: pointer; }
.mo-channel small { color: var(--muted, #6c7683); font-size: 12px; font-weight: 400; }
.mo-channel:hover { border-color: var(--blue, #2f64c8); box-shadow: 0 0 0 1px var(--blue, #2f64c8) inset; }
.mo-channel:focus-visible { outline: none; border-color: var(--blue, #2f64c8); box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); }
.mo-channel:disabled { cursor: not-allowed; background: #f1f4f7; color: #8f99a5; box-shadow: none; }
/* 付款码：码在左、说明与核对在右 */
.mo-co-action .mo-pay-qr { grid-template-columns: 216px minmax(0, 1fr); gap: 20px; }
.mo-co-action .mo-pay-qr .mo-actions { margin-top: 12px; }
.mo-co-close { padding-top: 14px; border-top: 1px dashed var(--line, #dce3ea); }
.mo-co-secondary { padding: 0; border: 0; background: none; color: var(--muted-strong, #465160); font: inherit; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.mo-co-secondary:hover { color: var(--red, #b43d3d); }
.mo-co-secondary:focus-visible { outline: none; box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); border-radius: 4px; }
/* 订单明细：原生折叠的次级信息 */
.mo-co-details { margin-top: 12px; border: 1px solid var(--line, #dce3ea); border-radius: 12px; background: var(--panel, #fff); }
.mo-co-details > summary { display: flex; align-items: center; gap: 12px; padding: 14px 20px; color: var(--ink, #18202a); font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; }
.mo-co-details > summary::-webkit-details-marker { display: none; }
.mo-co-details > summary::before { content: "▸"; color: var(--muted, #6c7683); font-size: 12px; transition: transform .15s; }
.mo-co-details[open] > summary::before { transform: rotate(90deg); }
.mo-co-details > summary .mo-mono { margin-left: auto; color: var(--muted, #6c7683); font-size: 12px; font-weight: 400; }
.mo-co-details > summary:focus-visible { outline: none; box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); border-radius: 12px; }
.mo-co-details-body { padding: 4px 20px 20px; border-top: 1px solid var(--line, #dce3ea); }
.mo-co-details-body h4 { margin: 18px 0 0; font-size: 14px; }
.mo-co-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (prefers-reduced-motion: reduce) { .mo-co-details > summary::before { transition: none; } }
/* R2：桌面窄窗（1101）仍保持“摘要 | 动作”两栏，使完整付款码与“核对付款结果”留在首屏 */
.mo-root-checkout { gap: 12px; }
.mo-header-compact { display: flex; align-items: baseline; gap: 14px; }
.mo-header-compact h3 { margin: 0; font-size: 20px; }
.mo-root-checkout .mo-checkout { margin-top: 0; }
@media (max-width: 1180px) {
  .mo-co-summary, .mo-co-action { padding: 20px; }
  .mo-co-amount strong { font-size: 34px; letter-spacing: -0.8px; }
  .mo-co-status, .mo-co-steps { margin-top: 12px; }
  .mo-co-keyfacts { margin-top: 14px; padding-top: 12px; }
  .mo-co-steps { gap: 6px 10px; }
  .mo-co-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mo-co-action .mo-pay-qr { grid-template-columns: 216px minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 960px) {
  .mo-checkout { grid-template-columns: 1fr; }
  .mo-co-summary { border-right: 0; border-bottom: 1px solid var(--line, #dce3ea); }
  .mo-co-action .mo-pay-qr { grid-template-columns: 1fr; }
}

/* P11-PAYMENT-MANAGEMENT-R2-001：报价退出规则勾选、本人退出清算与订单退款事实（沿用 .mo- 视觉）。 */
.mo-terms { margin-top: 12px; padding: 10px 12px; border: 1px solid #efd3ad; border-radius: 10px; background: #fffaf2; font-size: 13px; line-height: 1.6; color: var(--muted-strong, #465160); }
.mo-terms p { margin: 4px 0 8px; white-space: pre-wrap; overflow-wrap: anywhere; }
.mo-check { display: flex; align-items: flex-start; gap: 8px; margin-top: 12px; font-size: 13px; color: var(--ink, #18202a); cursor: pointer; }
.mo-terms .mo-check { margin-top: 0; }
.mo-check input { width: 16px; height: 16px; margin: 2px 0 0; flex: none; accent-color: var(--blue, #2f64c8); }
.mo-check:has(input:disabled) { cursor: not-allowed; opacity: 0.65; }
.mo-field textarea { width: 100%; box-sizing: border-box; min-height: 76px; padding: 8px 10px; border: 1px solid var(--line, #dce3ea); border-radius: 8px; font: inherit; font-size: 14px; color: var(--ink, #18202a); resize: vertical; }
.mo-field textarea:focus-visible { outline: none; border-color: var(--blue, #2f64c8); box-shadow: var(--focus, 0 0 0 3px rgba(47, 100, 200, 0.2)); }
.mo-exit-case { display: grid; gap: 10px; }
.mo-exit-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.mo-exit-head h4 .mo-badge { margin-left: 0; }
.mo-exit-total { display: grid; justify-items: end; gap: 2px; }
.mo-exit-total span { color: var(--muted, #6c7683); font-size: 12px; }
.mo-exit-total strong { font-size: 22px; font-weight: 650; font-variant-numeric: tabular-nums; }
.mo-exit-case .mo-table-wrap { margin-top: 0; }
.mo-exit-form .mo-list { line-height: 1.7; }
.mo-refund-fact { margin-top: 12px; }
.mo-co-summary .mo-refund-fact { display: block; }
.mo-exit-case .mo-table th.mo-num { text-align: right; }

/* P11-CREDIT-EXIT-001 抵扣与资金分解（.mf- 作用域，会员订单与总部收支共用）：白面板、#dce3ea 细线、数字右对齐等宽，单一蓝色强调。 */
.mf-break { display: grid; gap: 8px; margin: 10px 0; padding: 12px 14px; border: 1px solid #dce3ea; border-radius: 10px; background: #fafbfc; font-size: 13px; }
.mf-break dl, .mf-exit-sum { display: grid; gap: 6px; margin: 0; }
.mf-break dl > div, .mf-exit-sum > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.mf-break dt, .mf-exit-sum dt { color: #6c7683; }
.mf-break dd, .mf-exit-sum dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; color: #18202a; }
.mf-exit-sum dd small { display: block; color: #6c7683; font-size: 12px; }
.mf-break .mf-sum { padding-top: 6px; border-top: 1px solid #e8edf2; }
.mf-cash { padding-top: 6px; border-top: 1px solid #dce3ea; font-weight: 600; }
.mf-cash dd { color: #2f64c8; font-size: 15px; }
.mf-allocs summary, .mf-lots summary { cursor: pointer; color: #2f64c8; font-size: 13px; }
.mf-allocs ul { display: grid; gap: 4px; margin: 6px 0 0; padding: 0; list-style: none; }
.mf-allocs li { display: flex; justify-content: space-between; gap: 12px; font-variant-numeric: tabular-nums; }
.mf-mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; overflow-wrap: anywhere; }
.mf-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mf-hint { margin: 0; color: #6c7683; font-size: 12px; line-height: 1.6; }
.mf-warn { margin: 0; color: #6f420f; font-size: 13px; }
.mf-status { margin: 0; font-size: 12px; font-weight: 600; }
.mf-status.ok { color: #1f5a3f; } .mf-status.wait { color: #23457f; } .mf-status.muted { color: #465160; }
.mf-credit { display: grid; gap: 10px; }
.mf-credit h4 { margin: 0; }
.mf-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.mf-tiles > div { display: grid; gap: 2px; padding: 10px 12px; border: 1px solid #dce3ea; border-radius: 8px; background: #fff; }
.mf-tiles span { color: #6c7683; font-size: 12px; }
.mf-tiles strong { font-size: 16px; font-variant-numeric: tabular-nums; }
.mf-tiles > div:first-child strong { color: #2f64c8; }
.mf-table-wrap { overflow-x: auto; margin-top: 6px; border: 1px solid #dce3ea; border-radius: 8px; background: #fff; }
.mf-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.mf-table th, .mf-table td { padding: 8px 10px; border-bottom: 1px solid #e8edf2; text-align: left; vertical-align: top; }
.mf-table th { background: #f6f8fa; color: #6c7683; font-weight: 600; white-space: nowrap; }
.mf-table th.mf-num { text-align: right; }
.mf-table tbody tr:last-child td { border-bottom: 0; }
.mf-exit { display: grid; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #e8edf2; }
.mf-exit h5 { margin: 0; font-size: 14px; }
.mf-exit-sum { padding: 12px 14px; border: 1px solid #dce3ea; border-radius: 10px; background: #fafbfc; font-size: 13px; }
