/* Mobile project/contract editors reuse the original controls and submission. */
@media (max-width:768px), (hover:none) and (pointer:coarse) and (max-width:1024px) {
body.mobile-ui-active .project-contract-page-shell :is(#projectContractForm,#projectEditForm) {padding-bottom:8px!important;}
body.mobile-ui-active .project-contract-page-shell .project-contract-create-panel {scroll-margin-top:62px;}
body.mobile-ui-active .project-contract-page-shell .project-contract-create-panel>.section-head {display:flex;align-items:center;justify-content:space-between;gap:8px;}
body.mobile-ui-active .project-contract-page-shell .project-contract-create-panel>.section-head h3 {font-size:14px;margin:0;}
body.mobile-ui-active .project-contract-page-shell .project-mobile-create-back {width:auto;min-height:32px;padding:5px 8px;font-size:11px;margin:0;}
body.mobile-ui-active .project-contract-page-shell .project-form-nav {gap:0;position:sticky;top:54px;z-index:3;background:#fff;padding:0;margin:0 0 6px;border-bottom:1px solid #e5ebf2;overflow:visible;}
body.mobile-ui-active .project-contract-page-shell .project-form-nav-button {flex:1;min-width:0;min-height:38px;padding:8px 2px;border:0;border-radius:0;background:transparent;font-size:12px;}
body.mobile-ui-active .project-contract-page-shell .project-form-nav-button[aria-current=step] {background:transparent;border-bottom:2px solid #1d63ca;color:#1d63ca;}
body.mobile-ui-active .project-contract-page-shell .project-form-section-head {margin:10px 0 4px;gap:0;}
body.mobile-ui-active .project-contract-page-shell .project-form-section-head h4 {font-size:13px;line-height:1.5;}
body.mobile-ui-active .project-contract-page-shell .project-form-section-head p {display:none;}
body.mobile-ui-active .project-contract-page-shell :is(#projectContractForm-amounts,#projectEditForm-amounts) .project-form-section-head p {display:block;font-size:12px;line-height:1.5;color:#718197;margin:4px 0 6px;}
body.mobile-ui-active .project-contract-page-shell :is(#projectContractForm,#projectEditForm) .project-form-fields {display:block;}
body.mobile-ui-active .project-contract-page-shell .project-form-fields>.mpf-field,
body.mobile-ui-active .project-contract-page-shell .mpf-fold>.mpf-field {display:grid;grid-template-columns:106px minmax(0,1fr);align-items:center;gap:3px 7px;padding:6px 0;margin:0;border-bottom:1px solid #eef2f7;}
body.mobile-ui-active .project-contract-page-shell .mpf-field>label,
body.mobile-ui-active .project-contract-page-shell label.mpf-field>span {font-size:12px;line-height:1.5;margin:0;color:#4f647d;font-weight:500;}
body.mobile-ui-active .project-contract-page-shell .mpf-field>:is(small,.muted,.project-profile-help,.af-contract-help,.voucher-thumbs,[id$="ScanList"]) {grid-column:2;font-size:11px;line-height:1.5;}
body.mobile-ui-active .project-contract-page-shell .mpf-field :is(input,select,textarea) {min-width:0!important;min-height:36px!important;height:auto;padding:7px 5px;font-size:13px!important;line-height:20px;flex:0 0 auto;font-weight:400;border:0;border-bottom:1px solid #dfe7f1;border-radius:0;background:#fff;box-shadow:none;box-sizing:border-box;}
body.mobile-ui-active .project-contract-page-shell .mpf-field input[type=file] {font-size:11px;}
body.mobile-ui-active .project-contract-page-shell .mpf-field :is(input,select,textarea):focus {outline:2px solid #8ab7f2;outline-offset:1px;background:#f7faff;}
body.mobile-ui-active .project-contract-page-shell .mpf-field :is(input,select,textarea):disabled {color:#718096;background:#f6f8fa;}
body.mobile-ui-active .project-contract-page-shell .mpf-field:has(textarea) {grid-template-columns:1fr;}
body.mobile-ui-active .project-contract-page-shell .mpf-field textarea {min-height:78px;resize:vertical;}
body.mobile-ui-active .project-contract-page-shell .mpf-field .inline-select-action {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;min-width:0;}
body.mobile-ui-active .project-contract-page-shell .mpf-field .inline-master-toggle {font-size:11px;padding:4px;min-height:32px;margin:0;}
body.mobile-ui-active .project-contract-page-shell .mpf-fold,
body.mobile-ui-active #contractDraftsDialog .mpf-fold {grid-column:1/-1;margin:0;padding:0;border-bottom:1px solid #e6edf5;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-fold>summary {display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding:8px 0;cursor:pointer;list-style:none;font-size:12px;font-weight:500;color:#405c7b;box-sizing:border-box;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-fold>summary::-webkit-details-marker {display:none;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-fold>summary small {margin-left:auto;color:#8291a2;font-size:11px;font-weight:400;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-fold>summary:after {content:'⌄';color:#8291a2;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-fold[open]>summary:after {content:'⌃';}
body.mobile-ui-active .project-contract-page-shell .mpf-fold:not([open])>:not(summary),
body.mobile-ui-active #contractDraftsDialog .mpf-fold:not([open])>:not(summary) {display:none!important;}
body.mobile-ui-active .project-contract-page-shell .project-form-actions {position:sticky;bottom:calc(62px + var(--mpf-keyboard-inset,0px));z-index:4;display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:wrap;gap:5px;padding:8px 0;background:#fff;border-top:1px solid #dfe7f1;margin:10px 0 0;box-shadow:0 -5px 10px #fff;}
body.mobile-ui-active .project-contract-page-shell .project-form-actions>button {flex:0 1 auto;width:auto!important;font-size:12px;min-height:36px;padding:7px 10px;}
body.mobile-ui-active .project-contract-page-shell .project-form-actions>button[type=submit] {flex:1;order:1;background:#1d61c7;border-color:#1d61c7;color:#fff;}
body.mobile-ui-active .project-contract-page-shell .mpf-step-actions {display:flex;gap:4px;margin-right:auto;}
body.mobile-ui-active .project-contract-page-shell .mpf-step-actions button {width:auto;font-size:11px;min-height:36px;margin:0;padding:7px 6px;}
body.mobile-ui-active .project-contract-page-shell .mpf-step-actions button[hidden] {display:none!important;}
body.mobile-ui-active .project-contract-page-shell #discardProjectDraft {flex-basis:100%;order:2;min-height:28px;padding:3px;border:0;background:transparent;color:#7c8796;text-align:left;font-size:11px;}
body.mobile-ui-active .project-contract-page-shell #projectEditModal .project-form-nav {top:0;}
body.mobile-ui-active .project-contract-page-shell #projectEditModal .project-form-actions {bottom:calc(var(--mpf-keyboard-inset,0px) - 14px);}
body.mobile-ui-active .project-contract-page-shell .project-form-organized .quote-editor-table>tbody {gap:0;}
body.mobile-ui-active .project-contract-page-shell .project-form-organized .quote-editor-table>tbody>tr.mpf-node {padding:6px 0;background:#fff;border:0;border-bottom:1px solid #e3eaf3;border-radius:0;gap:7px;}
body.mobile-ui-active .project-contract-page-shell .mpf-node:not(.mpf-node-open)>td:not(:first-child):not(:last-child) {display:none!important;}
body.mobile-ui-active .project-contract-page-shell .mpf-node>td:first-child:before,
body.mobile-ui-active .project-contract-page-shell .mpf-node>td:last-child:before {display:none!important;}
body.mobile-ui-active .project-contract-page-shell .mpf-node>td.mpf-node-empty-actions {display:none!important;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-summary {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;align-items:start;min-width:0;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-main {grid-column:1;grid-row:1;display:flex;flex-wrap:wrap;align-items:baseline;align-self:center;gap:2px 8px;min-width:0;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-title {flex:0 1 auto;min-width:0;font-size:14px;line-height:21px;font-weight:600;white-space:normal;overflow-wrap:anywhere;color:#274461;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-meta {grid-column:1/-1;grid-row:2;display:block;font-size:12px;font-weight:400;color:#6a7c91;line-height:18px;white-space:normal;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-amount {flex:0 1 auto;font-size:14px;line-height:21px;font-weight:600;color:#274461;overflow-wrap:anywhere;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-dates {font-size:12px;line-height:18px;font-weight:400;overflow-wrap:anywhere;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions {grid-column:2;grid-row:1;display:flex;align-items:center;gap:5px;padding:1px 0 0;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions>button {display:inline-flex!important;align-items:center;justify-content:center;flex:none;width:auto!important;min-width:40px;min-height:36px;margin:0!important;padding:6px 7px!important;border:1px solid #dce5ef!important;border-radius:5px;background:#fff!important;font-size:12px!important;line-height:20px;font-weight:400;color:#3b5c80;box-shadow:none;white-space:nowrap;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions>.mpf-node-toggle {color:#1b61bd;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions>button.danger:not(:disabled) {color:#b44646;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions>button:disabled {color:#8290a1;background:#f7f9fc!important;border-color:#e7edf4!important;opacity:1;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-actions>:is([hidden],.hidden) {display:none!important;}
body.mobile-ui-active :is(.project-contract-page-shell,#contractDraftsDialog) .mpf-node-state {flex:none;font-size:12px;}
body.mobile-ui-active .project-contract-page-shell .mpf-node.mpf-node-open>td:not(:first-child):not(:last-child) {display:grid;grid-template-columns:92px minmax(0,1fr);gap:7px;align-items:center;}
body.mobile-ui-active .project-contract-page-shell .mpf-node td:before {font-size:12px;color:#61738a;margin:0;}
body.mobile-ui-active .project-contract-page-shell .mpf-node :is(input,select,textarea) {font-size:13px!important;font-weight:400;min-height:36px;width:100%;min-width:0;padding:6px;border:0;border-bottom:1px solid #dde6f1;border-radius:0;}
body.mobile-ui-active .project-contract-page-shell .project-form-organized .quote-editor-head {display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;margin:10px 0 6px;}
body.mobile-ui-active .project-contract-page-shell .project-form-organized .quote-editor-head strong {font-size:13px;}
body.mobile-ui-active .project-contract-page-shell .project-form-organized .quote-editor-head>button {flex:0 0 auto;width:auto!important;margin:0;font-size:12px;min-height:36px!important;padding:5px 8px;}
body.mobile-ui-active #contractDraftsDialog .cd-header {padding:10px 12px;}
body.mobile-ui-active #contractDraftsDialog .cd-header h2 {font-size:15px;}
body.mobile-ui-active #contractDraftsDialog .cd-body {padding:10px 12px;scroll-padding-bottom:100px;}
body.mobile-ui-active #contractDraftsDialog .cd-grid {gap:0;display:block;}
body.mobile-ui-active #contractDraftsDialog .cd-field {display:grid;grid-template-columns:108px minmax(0,1fr);align-items:center;gap:4px 8px;padding:6px 0;border-bottom:1px solid #edf1f5;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog .cd-field :is(input,select,textarea) {font-size:13px!important;min-height:36px!important;flex:0 0 auto;padding:7px 4px;border:0;border-bottom:1px solid #dfe7f1;border-radius:0;}
body.mobile-ui-active #contractDraftsDialog .cd-field>small {grid-column:2;font-size:11px;}
body.mobile-ui-active #contractDraftsDialog .cd-field:has(textarea) {grid-template-columns:1fr;}
body.mobile-ui-active #contractDraftsDialog .cd-field textarea {min-height:70px;}
body.mobile-ui-active #contractDraftsDialog .cd-steps {gap:0;margin:6px 0 8px;padding:0;border-bottom:1px solid #e1e8f1;position:sticky;top:-10px;z-index:2;background:#fff;}
body.mobile-ui-active #contractDraftsDialog .cd-steps .cd-button {border:0;background:transparent;min-height:38px;border-radius:0;}
body.mobile-ui-active #contractDraftsDialog .cd-steps .cd-button[aria-current] {border-bottom:2px solid #1c62c4;color:#1c62c4;}
body.mobile-ui-active #contractDraftsDialog .cd-editor-top {gap:6px;flex-wrap:wrap;margin-bottom:6px;}
body.mobile-ui-active #contractDraftsDialog .cd-save-state {font-size:10px;}
body.mobile-ui-active #contractDraftsDialog .cd-footer {bottom:calc(-10px + var(--mpf-keyboard-inset,0px));margin:12px -12px -10px;padding:8px 12px;gap:6px;flex-wrap:wrap;z-index:3;}
body.mobile-ui-active #contractDraftsDialog .cd-footer>.cd-actions {gap:5px;}
body.mobile-ui-active #contractDraftsDialog .cd-footer .cd-button {padding:6px 8px;font-size:11px;min-height:34px;}
body.mobile-ui-active #contractDraftsDialog .cd-payment-lines>[data-cd-payment] {display:block;min-width:0;margin:0;padding:6px 0;border:0;border-bottom:1px solid #e3eaf3;border-radius:0;}
body.mobile-ui-active #contractDraftsDialog .mpf-node:not(.mpf-node-open)>.cd-field {display:none;}
body.mobile-ui-active #contractDraftsDialog .cd-contact-details {margin-top:6px;padding-top:9px;}
body.mobile-ui-active #contractDraftsDialog .cd-confirm {align-items:center;padding:18px;}
body.mobile-ui-active #contractDraftsDialog .cd-confirm section {padding:16px;transform:translateY(-4vh);}
}
@supports (appearance:base-select) and selector(select::picker(select)) {
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size]),
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size])::picker(select) {appearance:base-select;}
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size])::picker(select) {min-inline-size:anchor-size(self-inline);max-inline-size:calc(100vw - 28px);max-block-size:min(232px,calc(50dvh - 28px));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;margin:4px 0;padding:4px;border:1px solid #d5dfea;border-radius:7px;background:#fff;color:#30465e;box-shadow:0 6px 20px #1a355e26;font:12px/18px inherit;}
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size]) option {min-block-size:32px;padding:6px 8px;border:0;border-radius:4px;font-size:12px;font-weight:400;line-height:18px;white-space:normal;overflow-wrap:anywhere;background:#fff;color:#30465e;}
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size]) option:checked {background:#edf5ff;color:#155fc0;}
body.mobile-ui-active :is(#projectContractForm,#projectEditForm,#contractDraftsDialog) select:not([multiple]):not([size])::picker-icon {font-size:10px;color:#78899b;}
}

/* The edit confirmation must stay above its parent editor and fit its short message. */
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] {z-index:4300;display:flex;align-items:center;justify-content:center;height:var(--mobile-visible-height,100dvh);padding:16px 16px max(16px,10dvh);box-sizing:border-box;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .bf-shell {width:min(360px,100%);height:auto;min-height:0;max-height:calc(var(--mobile-visible-height,100dvh) - 64px);border-radius:12px;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .bf-header {padding:10px 14px 0;gap:8px;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] h2 {font-size:16px;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .bf-content {flex:0 1 auto;min-height:0;padding:10px 14px 14px;overflow:auto;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .workflow-message:empty {display:none;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .system-dialog-message {margin:0 0 16px;font-size:14px;line-height:1.6;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .system-dialog-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;}
body.mobile-ui-active:has(#projectEditModal:not(.hidden)) > .bf-modal[id^="systemConfirm-"] .system-dialog-actions button {width:100%;min-width:0;margin:0;padding:8px 6px;}

/* Keep the original editor header visible, with its guarded close action at the left. */
body.mobile-ui-active .project-contract-page-shell .project-contract-create-panel>.section-head {justify-content:flex-start;}
body.mobile-ui-active .project-contract-page-shell .project-mobile-create-back {order:-1;flex:none;}
body.mobile-ui-active .project-contract-page-shell .mpf-shared-list-back>.section-head>.project-mobile-create-back {display:none!important;}
body.mobile-ui-active .project-contract-page-shell #projectEditModal:not(.hidden) {box-sizing:border-box;inset:auto 0;top:var(--mpf-visible-top,0px);height:var(--mpf-visible-height,100dvh);padding:8px;}
body.mobile-ui-active .project-contract-page-shell #projectEditModal .project-edit-modal-card {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);align-items:start;gap:8px;padding:10px;height:100%!important;max-height:100%!important;min-height:0;overflow:hidden!important;}
body.mobile-ui-active .project-contract-page-shell #projectEditClose {position:static;grid-row:1;grid-column:1;min-width:0;min-height:34px;margin:0;padding:5px 8px;font-size:12px;line-height:22px;}
body.mobile-ui-active .project-contract-page-shell #projectEditTitle {grid-row:1;grid-column:2;min-width:0;min-height:0;margin:0;padding:0;font-size:15px;line-height:22px;overflow-wrap:anywhere;}
body.mobile-ui-active .project-contract-page-shell #projectEditForm {grid-column:1/-1;min-height:0;max-height:100%;overflow:auto;margin:0;scroll-padding-top:48px;scroll-padding-bottom:66px;}
body.mobile-ui-active .project-contract-page-shell #projectEditModal .project-form-actions {bottom:-8px;margin-bottom:0;padding-bottom:8px;}
body.mobile-ui-active .project-contract-page-shell .project-form-fields>.mpf-field,
body.mobile-ui-active .project-contract-page-shell .mpf-fold>.mpf-field {grid-template-columns:92px minmax(0,1fr);padding:5px 0;}
body.mobile-ui-active .project-contract-page-shell .mpf-field :is(input,select,textarea) {font-size:14px!important;}
body.mobile-ui-active .project-contract-page-shell .mpf-fold[data-mpf-fold="contract-extra"]:not(:has(>.mpf-field:not(.hidden):not([hidden]))) {display:none;}

/* Contract drafts keep their original three steps inside the visible phone viewport. */
body.mobile-ui-active #contractDraftsDialog {box-sizing:border-box;inset:auto 0;top:var(--mpf-visible-top,0px);height:var(--mpf-visible-height,100dvh);padding:8px;}
body.mobile-ui-active #contractDraftsDialog .cd-shell {height:100%;max-height:100%;min-height:0;}
body.mobile-ui-active #contractDraftsDialog .cd-header {justify-content:flex-start;gap:8px;padding:8px 10px;}
body.mobile-ui-active #contractDraftsDialog .cd-header>[data-cd-action=close] {order:-1;flex:none;min-height:34px!important;padding:5px 8px;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog .cd-header h2 {font-size:15px;line-height:22px;}
body.mobile-ui-active #contractDraftsDialog .cd-header p {margin:2px 0 0;font-size:11px;line-height:16px;}
body.mobile-ui-active #contractDraftsDialog .cd-body {padding:8px 10px 10px;scroll-padding-top:48px;scroll-padding-bottom:72px;}
body.mobile-ui-active #contractDraftsDialog .cd-editor-top {margin-bottom:4px;gap:4px;}
body.mobile-ui-active #contractDraftsDialog .cd-editor-top>.cd-actions {gap:5px;}
body.mobile-ui-active #contractDraftsDialog .cd-editor-top .cd-button {min-height:32px!important;padding:4px 7px;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog .cd-badge {font-size:11px;padding:4px 6px;}
body.mobile-ui-active #contractDraftsDialog .cd-save-state {font-size:11px;}
body.mobile-ui-active #contractDraftsDialog .cd-steps {top:-8px;margin-top:4px;}
body.mobile-ui-active #contractDraftsDialog .cd-steps .cd-button {min-height:36px!important;padding:6px 2px;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog .cd-notice {padding:8px 10px;margin-bottom:8px;font-size:12px;line-height:18px;}
body.mobile-ui-active #contractDraftsDialog .cd-field {grid-template-columns:92px minmax(0,1fr);padding:5px 0;}
body.mobile-ui-active #contractDraftsDialog .cd-field :is(input,select,textarea) {font-size:14px!important;}
body.mobile-ui-active #contractDraftsDialog .cd-footer {bottom:-10px;margin:8px -10px -10px;padding:8px 10px;}
body.mobile-ui-active #contractDraftsDialog .cd-footer .cd-button {min-height:34px!important;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog .cd-preview-actions {gap:6px;margin:8px 0;}
body.mobile-ui-active #contractDraftsDialog .cd-preview-actions .cd-button {min-height:34px!important;padding:5px 8px;font-size:12px;}

/* The draft directory uses the same compact card and single-row pager proportions. */
body.mobile-ui-active #contractDraftsDialog .cd-list-top {gap:6px;margin-bottom:6px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-top .cd-actions {gap:6px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-button {min-height:32px!important;padding:4px 7px;font-size:12px;line-height:20px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-filters {display:grid;grid-template-columns:108px minmax(0,1fr);gap:6px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-filters :is(input,select) {min-height:34px!important;height:34px;padding:5px;font-size:12px!important;}
body.mobile-ui-active #contractDraftsDialog .cd-list-filters [data-cd-action=list-clear] {grid-column:2;justify-self:end;border-color:transparent;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary {display:grid;grid-template-columns:minmax(0,1fr) 116px;align-items:center;gap:8px;margin:4px 0 6px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary p {margin:0;font-size:11px;line-height:16px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary [data-cd-sort] {flex:none;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary [data-cd-sort]>label>span {display:none;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary .business-list-sort-inline {margin:0;gap:3px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary .business-list-sort-inline>span {display:none;}
body.mobile-ui-active #contractDraftsDialog .cd-list-summary select {width:116px;min-height:32px!important;height:32px;margin:0;padding:4px;font-size:12px!important;}
body.mobile-ui-active #contractDraftsDialog .cd-table-wrap {border:0;border-radius:0;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table tr {grid-template-columns:minmax(0,1fr) auto;gap:3px 7px;margin:0 0 6px;padding:6px 8px;background:#fff;border-radius:7px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td {display:block;font-size:12px;line-height:17px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:first-child {grid-row:1;grid-column:1/-1;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:nth-child(2) {grid-row:2;grid-column:1;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:nth-child(3) {grid-row:2;grid-column:2;text-align:right;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:is(:nth-child(2),:nth-child(3))::before {content:none;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:nth-child(4) {grid-row:3;grid-column:1;font-size:11px;line-height:16px;align-self:center;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:nth-child(4)::before {content:'更新 ';font-size:11px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table td:last-child:not([colspan]) {grid-row:3;grid-column:2;align-self:center;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table strong {font-size:14px;line-height:20px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table small {margin-top:2px;font-size:12px;line-height:17px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table .cd-row-actions {gap:4px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-page .cd-table .cd-row-actions .cd-button {padding:4px;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination {display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:6px;padding:6px 0;margin:0;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination:has([data-page-step="-1"]:disabled):has([data-page-step="1"]:disabled),
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination>[data-page-summary],
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-page-jump {display:none!important;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-pagination-controls {display:contents!important;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-page-size {display:flex!important;flex:none;width:auto;margin:0;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-page-size>span {display:none;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination [data-page-size] {width:78px;min-width:0;height:32px!important;min-height:32px!important;margin:0;padding:4px;font-size:12px!important;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-page-turns {display:flex;align-items:center;gap:6px;flex:none;width:auto;}
body.mobile-ui-active #contractDraftsDialog .customer-fixed-pagination .list-page-turns>button {width:auto;min-height:32px!important;min-width:0;padding:4px 7px;font-size:12px;line-height:20px;}
body.mobile-ui-active #contractDraftsDialog .cd-list-top:has([data-cd-action=templates-back]) {justify-content:flex-start;}
body.mobile-ui-active #contractDraftsDialog [data-cd-action=templates-back] {order:-1;min-height:34px!important;padding:5px 8px;font-size:12px;}
body.mobile-ui-active #contractDraftsDialog :is(.cd-primary,.cd-footer>.cd-actions:last-child>.cd-button:last-child) {background:#175cc3;border-color:#175cc3;color:#fff;}

/* These original project actions are separate from the completion-record workflow. */
body.mobile-ui-active .project-contract-page-shell #projectActionModal:not(.hidden) {position:fixed;inset:auto 0;top:var(--mpf-visible-top,0px);height:var(--mpf-visible-height,100dvh);z-index:4300;display:flex;align-items:center;justify-content:center;padding:8px;overflow:hidden;box-sizing:border-box;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-card {position:relative;inset:auto;transform:none;display:grid;grid-template-rows:auto minmax(0,auto) minmax(0,1fr);width:100%;max-width:420px;min-height:0;max-height:100%;overflow:hidden;margin:0;padding:10px;border-radius:10px;box-sizing:border-box;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-header {display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-header h3 {margin:0;min-width:0;font-size:15px;line-height:22px;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-header button {position:static;order:-1;flex:none;width:auto!important;min-height:34px!important;margin:0;padding:5px 8px;font-size:12px;line-height:22px;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-message {min-height:0;overflow:auto;margin:8px 0;font-size:12px;line-height:18px;}
body.mobile-ui-active .project-contract-page-shell #projectActionForm {min-height:0;overflow:auto;margin:0;scroll-padding-top:8px;scroll-padding-bottom:58px;}
body.mobile-ui-active .project-contract-page-shell #projectActionFields {gap:8px;}
body.mobile-ui-active .project-contract-page-shell #projectActionFields:empty {display:none;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-field {font-size:12px;line-height:18px;font-weight:500;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-field>span {margin-bottom:4px;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal :is(select,textarea) {min-height:36px!important;margin:0;padding:6px 8px;font-size:14px!important;line-height:20px;font-weight:400;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal textarea {min-height:74px!important;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-actions {position:sticky;bottom:0;z-index:2;display:flex!important;flex-direction:row!important;flex-wrap:nowrap;gap:6px;align-items:center;margin:8px 0 0;padding:8px 0 0;background:#fff;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-actions>button {flex:1;min-width:0;width:auto!important;min-height:36px!important;margin:0;padding:6px;font-size:12px;line-height:20px;}
body.mobile-ui-active .project-contract-page-shell #projectActionModal .system-dialog-actions>[data-project-action-discard] {flex:none;}
body.mobile-ui-active .project-contract-page-shell #projectActionConfirm {background:#175cc3;border-color:#175cc3;color:#fff;}

body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal {inset:auto 0;top:var(--mpf-visible-top,0px);height:var(--mpf-visible-height,100dvh);padding:8px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-shell {max-height:100%;min-height:0;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-header {justify-content:flex-start;gap:8px;padding:8px 10px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-header h2 {font-size:15px;line-height:22px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-header>[data-pcr-action=close] {position:static;order:-1;flex:none;min-height:34px;padding:5px 8px;font-size:12px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-content {padding:8px 10px 10px;scroll-padding-top:8px;scroll-padding-bottom:58px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-toolbar {justify-content:flex-start;gap:6px;margin-bottom:8px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-button {min-height:34px;padding:5px 8px;font-size:12px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal :is(.cdel-muted,.cdel-empty,.cdel-notice) {margin-bottom:8px;font-size:12px;line-height:18px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-notice {padding:8px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal h3 {margin-bottom:8px;font-size:14px;line-height:20px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-field {margin:8px 0;gap:4px;font-size:12px;line-height:18px;font-weight:500;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-field>:is(input,select,textarea) {min-height:36px;padding:6px 8px;font-size:14px;line-height:20px;font-weight:400;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-field>textarea {min-height:76px;}
body.mobile-ui-active:has(.project-contract-page-shell) #projectContractRequestModal .cdel-form-actions {position:sticky;bottom:-10px;display:flex;flex-wrap:nowrap;gap:6px;padding:8px 0;margin-top:8px;background:#fff;}
