/* Scoped to the native business entry point; the desktop cascade is unchanged. */
html.mobile-business { --mobile-nav-height: 76px; scroll-padding-bottom: calc(var(--mobile-nav-height) + 16px); }
.mobile-business body { font-size: 1rem; background: #fff; color: #25333c; }
.mobile-business *, .mobile-business *::before, .mobile-business *::after { letter-spacing: 0; }
.mobile-business :is(main, section, article, header, form, fieldset, nav, div, details) { min-width: 0; }
.mobile-business :is(h1, h2, h3, h4, p, a, span, strong, label, legend, small, button, dt, dd, summary) { overflow-wrap: anywhere; }
.mobile-business :is(img, video, canvas, input, select, textarea) { max-width: 100%; }
.mobile-business :is(button, .btn, summary) { min-height: 44px; white-space: normal; }
.mobile-business :is(.btn, .tab, summary, input, select, textarea) { font-size: 1rem; line-height: 1.5; }
.mobile-business :is(input:not([type=checkbox]):not([type=radio]):not(.image-file-input), select, textarea) { min-width: 0; min-height: 44px; }
.mobile-business :is(.field > label, .notice, .muted, .cell-sub, .key-value, .check-row, .form-error, .message, .evidence) { font-size: .875rem; }
.mobile-business :is(small, .field small, .badge) { font-size: .8125rem; }
.mobile-business .badge { white-space: normal; }
.mobile-business .image-file-input { max-width: 1px; min-height: 1px; }
.mobile-business .btn { max-width: 100%; padding: 9px 12px; }
.mobile-business :is(h1, .page-head h1) { font-size: 1.5rem; line-height: 1.4; }
.mobile-business :is(h2, .order-ai-heading h2, .batch-band h2) { font-size: 1.125rem; }
.mobile-business h3 { font-size: 1rem; }
.mobile-business .mobile-business-shell { display: block; min-height: 100dvh; padding-bottom: calc(var(--mobile-nav-height) + 16px); }
.mobile-business .main { width: 100%; max-width: 1080px; padding: 18px 12px 28px; }
.mobile-business .mobile-business-header { display: flex; padding: 8px 12px; gap: 12px; min-height: 60px; background: #fff; }
.mobile-business .mobile-business-header strong { flex: 1; }
.mobile-business .mobile-icon-button { flex: 0 0 max(44px, 1.75rem); width: max(44px, 1.75rem); height: max(44px, 1.75rem); padding: 0; font-size: 1.5rem; }
.mobile-business .mobile-business-nav { position: fixed; bottom: 0; left: 0; right: 0; z-index: 5; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; padding: 6px max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)); border-top: 1px solid #dce4ee; background: #fff; }
.mobile-business-nav > :is(a, button) { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 4px; min-height: 52px; padding: 8px 4px; border: 0; border-radius: 6px; color: #54636c; background: #fff; font: inherit; text-align: center; }
.mobile-business-nav > :is([aria-current=page], .active) { color: #126d5e; background: #edf6f2; font-weight: 650; }
.mobile-business .mobile-more { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mobile-more a { display: flex; align-items: center; min-height: 52px; padding: 12px; border-bottom: 1px solid #dce4ee; }
.mobile-more a[aria-current=page] { color: #126d5e; font-weight: 650; }
.mobile-business .mobile-session-ended { min-height: 100dvh; display: grid; align-content: center; justify-items: start; gap: 20px; padding: 24px; max-width: 560px; margin: auto; }
.mobile-business .mobile-session-ended .brand { padding: 0; }
.mobile-business .page-head { flex-direction: column; gap: 12px; margin-bottom: 20px; }
.mobile-business .page-head .eyebrow { display: none; }
.mobile-business .page-head p:empty { display: none; }
.mobile-business .page-head p { font-size: .875rem; }
.mobile-business .actions { flex-wrap: wrap; min-width: 0; gap: 8px; }
.mobile-business .page-head > .actions { width: 100%; }
.mobile-business .page-head > .actions > .btn { flex: 1 1 130px; }
.mobile-business .toolbar { flex-direction: column; align-items: stretch; gap: 8px; }
.mobile-business .search { width: 100%; }
.mobile-record-list { display: grid; gap: 10px; }
.mobile-record { border: 1px solid #dce4ee; border-radius: 6px; background: #fff; }
.mobile-record-link { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 16px; color: inherit; }
.mobile-record-link:hover { text-decoration: none; background: #f6f9f8; }
.mobile-record-link strong { color: #185f99; font-size: 1rem; }
.mobile-record-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: .875rem; }
.mobile-business .mobile-load-more { width: 100%; margin-top: 14px; }
.mobile-business :is(.detail-grid, .assistant-layout, .manager-home, .manager-desk) { grid-template-columns: minmax(0, 1fr); }
.mobile-business .panel { border: 0; border-radius: 0; border-top: 1px solid #dce4ee; overflow: visible; }
.mobile-business :is(.panel-head, .panel-body) { padding: 16px 0; }
.mobile-business .panel-head { flex-wrap: wrap; }
.mobile-business .panel-head > div { flex: 1 1 160px; }
.mobile-business .table-wrap { max-width: 100%; overflow: auto; overscroll-behavior-inline: contain; }
.mobile-business :is(.table-wrap, .batch-table-scroll) :is(th, td) { font-size: .875rem; }
.mobile-business :is(.lifecycle-row, .order-ai-heading, .order-ai-footer, .order-ai-review-head, .message-head, .milestone-management-card header) { flex-wrap: wrap; }
.mobile-business :is(.lifecycle-row, .order-ai-heading, .order-ai-footer) > div { min-width: 0; }
.mobile-business .order-ai-update { padding: 16px 12px; border-radius: 6px; }
.mobile-business .order-ai-form textarea { font-size: 1rem; }
.mobile-business .order-ai-form label { font-size: .875rem; }
.mobile-business .order-media-picker .image-dropzone { grid-template-columns: minmax(0, 1fr); padding: 12px; }
.mobile-business .order-media-picker .field { max-width: none; }
.mobile-business .order-media-picker .image-dropzone > .btn { justify-self: start; }
.mobile-business .order-media-actions { width: 100%; }
.mobile-business .order-media-actions .btn { flex: 1 1 120px; }
.mobile-business .order-media-caption { flex-wrap: wrap; }
.mobile-business :is(.batch-overall, .batch-summary .batch-overall) { grid-template-columns: minmax(0, 1fr); gap: 22px; }
.mobile-business .batch-summary .batch-delivery-progress::before { display: none; }
.mobile-business .batch-summary .batch-journey-track { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px 4px; }
.mobile-business .batch-summary .batch-journey-track li::before { display: none; }
.mobile-business .batch-summary .batch-stage-dot { width: 48px; height: 48px; }
.mobile-business .batch-summary :is(.batch-stage-name, .batch-node-caption, .batch-node-state, .batch-node-values, .batch-stage-dates dd, .batch-node-note) { font-size: .8125rem; }
.mobile-business .batch-summary .batch-node-heading { flex-wrap: wrap; }
.mobile-business :is(.batch-stat-grid, .batch-payment-totals, .batch-key-quantities) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mobile-business .batch-toolbar { align-items: stretch; }
.mobile-business .batch-toolbar .field { flex: 1 1 180px; }
.mobile-business :is(.payment-summary, .form-grid, .batch-form .form-grid) { grid-template-columns: minmax(0, 1fr); }
.mobile-business :is(.key-value, .order-ai-change dl) { grid-template-columns: minmax(0, 1fr); gap: 4px; }
.mobile-business :is(.key-value dd, .order-ai-change dd) { margin: 0 0 8px; }
.mobile-business .form-footer { flex-wrap: wrap; }
.mobile-business .form-footer .btn { flex: 1 1 110px; }
.mobile-business fieldset { max-width: 100%; margin-inline: 0; }
.mobile-business dialog { width: 680px; max-width: calc(100% - 16px); max-height: calc(100dvh - 16px); border-radius: 8px; }
.mobile-business .dialog-head { padding: 12px; gap: 12px; }
.mobile-business .dialog-close { flex: 0 0 44px; width: 44px; height: 44px; }
.mobile-business .dialog-body { padding: 16px 12px; }
.mobile-business :is(.portal-share, .portal-item-editor) { padding: 12px; }
.mobile-business #toast { bottom: calc(var(--mobile-nav-height) + 12px); font-size: .875rem; }
.mobile-business .order-message-alert { width: calc(100% - 24px); margin: 12px; flex-wrap: wrap; }
.mobile-business :is(.manager-dossier, .manager-ledger, .manager-rail) { grid-column: 1; grid-row: auto; position: static; }
.mobile-business :is(.manager-welcome, .manager-composer, .prospect-lead, .prospect-research) { padding: 16px 12px; }
@media (min-width: 760px) {
  .mobile-business .main { padding-inline: 24px; }
  .mobile-business .mobile-record-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mobile-business :is(.form-grid, .batch-form .form-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
