@erpsquad/common 1.11.8 → 1.11.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (648) hide show
  1. package/dist/api-client/index.esm.js +2 -2
  2. package/dist/chunks/{DynamicDependentField-C0XXmMlG.esm.js → DynamicDependentField-DOGY6cA_.esm.js} +2 -2
  3. package/dist/chunks/{DynamicDependentField-C0XXmMlG.esm.js.map → DynamicDependentField-DOGY6cA_.esm.js.map} +1 -1
  4. package/dist/chunks/{DynamicDependentField-CQIfDDqc.js → DynamicDependentField-GTIwrPfP.js} +2 -2
  5. package/dist/chunks/{DynamicDependentField-CQIfDDqc.js.map → DynamicDependentField-GTIwrPfP.js.map} +1 -1
  6. package/dist/chunks/{ERPUIProvider-I4j_X_SD.esm.js → ERPUIProvider-Dz0s77BR.esm.js} +3 -3
  7. package/dist/chunks/{ERPUIProvider-I4j_X_SD.esm.js.map → ERPUIProvider-Dz0s77BR.esm.js.map} +1 -1
  8. package/dist/chunks/EditorSection-BLGcgQFm.esm.js +849 -0
  9. package/dist/chunks/EditorSection-BLGcgQFm.esm.js.map +1 -0
  10. package/dist/chunks/EditorSection-D6yaBfjP.js +848 -0
  11. package/dist/chunks/EditorSection-D6yaBfjP.js.map +1 -0
  12. package/dist/chunks/{FORMS-pxf6g6xE.esm.js → FORMS-CR_DlD1m.esm.js} +8 -8
  13. package/dist/chunks/{FORMS-pxf6g6xE.esm.js.map → FORMS-CR_DlD1m.esm.js.map} +1 -1
  14. package/dist/chunks/{FORMS-CUx32b_4.js → FORMS-EouVYay1.js} +5 -5
  15. package/dist/chunks/{FORMS-CUx32b_4.js.map → FORMS-EouVYay1.js.map} +1 -1
  16. package/dist/chunks/{FlexibleReduxExample-C-2qOGIw.esm.js → FlexibleReduxExample-B2e7Wa_S.esm.js} +4 -4
  17. package/dist/chunks/{FlexibleReduxExample-C-2qOGIw.esm.js.map → FlexibleReduxExample-B2e7Wa_S.esm.js.map} +1 -1
  18. package/dist/chunks/{FlexibleReduxExample--GtoEJhc.js → FlexibleReduxExample-CMUylyy1.js} +3 -3
  19. package/dist/chunks/{FlexibleReduxExample--GtoEJhc.js.map → FlexibleReduxExample-CMUylyy1.js.map} +1 -1
  20. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js +12543 -0
  21. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js.map +1 -0
  22. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js +12542 -0
  23. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js.map +1 -0
  24. package/dist/chunks/{action-bar-C7Alva4T.esm.js → action-bar-Ci6RlMBM.esm.js} +6 -6
  25. package/dist/chunks/{action-bar-C7Alva4T.esm.js.map → action-bar-Ci6RlMBM.esm.js.map} +1 -1
  26. package/dist/chunks/{action-bar-DdtpxWNk.js → action-bar-jLqQTqU7.js} +3 -3
  27. package/dist/chunks/{action-bar-DdtpxWNk.js.map → action-bar-jLqQTqU7.js.map} +1 -1
  28. package/dist/chunks/{actionCreator-CpePNxQM.esm.js → actionCreator-B6lXR_k1.esm.js} +2 -2
  29. package/dist/chunks/{actionCreator-CpePNxQM.esm.js.map → actionCreator-B6lXR_k1.esm.js.map} +1 -1
  30. package/dist/chunks/{actionCreator-Cl8vPLVO.esm.js → actionCreator-D3uwEAua.esm.js} +3 -3
  31. package/dist/chunks/{actionCreator-Cl8vPLVO.esm.js.map → actionCreator-D3uwEAua.esm.js.map} +1 -1
  32. package/dist/chunks/{actionCreator-CL5ICuqZ.esm.js → actionCreator-DIdMRO9L.esm.js} +2 -2
  33. package/dist/chunks/{actionCreator-CL5ICuqZ.esm.js.map → actionCreator-DIdMRO9L.esm.js.map} +1 -1
  34. package/dist/chunks/{actionCreator-Cb3NxILP.esm.js → actionCreator-DKYufGAZ.esm.js} +2 -2
  35. package/dist/chunks/{actionCreator-Cb3NxILP.esm.js.map → actionCreator-DKYufGAZ.esm.js.map} +1 -1
  36. package/dist/chunks/{actionCreator-Dar9Z8_d.esm.js → actionCreator-DcdyGsIX.esm.js} +3 -3
  37. package/dist/chunks/{actionCreator-Dar9Z8_d.esm.js.map → actionCreator-DcdyGsIX.esm.js.map} +1 -1
  38. package/dist/chunks/add-template-CUPbU0z7.js +10 -0
  39. package/dist/chunks/add-template-CUPbU0z7.js.map +1 -0
  40. package/dist/chunks/add-template-CxvhzFMF.esm.js +11 -0
  41. package/dist/chunks/add-template-CxvhzFMF.esm.js.map +1 -0
  42. package/dist/chunks/{address-modal-CYhiC7ui.js → address-modal-DFd5sQtR.js} +2 -2
  43. package/dist/chunks/{address-modal-CYhiC7ui.js.map → address-modal-DFd5sQtR.js.map} +1 -1
  44. package/dist/chunks/{address-modal-CkDBjnye.esm.js → address-modal-DYGLjrqd.esm.js} +2 -2
  45. package/dist/chunks/{address-modal-CkDBjnye.esm.js.map → address-modal-DYGLjrqd.esm.js.map} +1 -1
  46. package/dist/chunks/{ai-summary-SKK5KN2s.esm.js → ai-summary-x2t8BZCx.esm.js} +2 -2
  47. package/dist/chunks/{ai-summary-SKK5KN2s.esm.js.map → ai-summary-x2t8BZCx.esm.js.map} +1 -1
  48. package/dist/chunks/{api-BIVCMSwW.esm.js → api-8jutPLh0.esm.js} +3 -3
  49. package/dist/chunks/{api-BIVCMSwW.esm.js.map → api-8jutPLh0.esm.js.map} +1 -1
  50. package/dist/chunks/{api-DBmWILBN.esm.js → api-yLpQ3k5s.esm.js} +9 -9
  51. package/dist/chunks/{api-DBmWILBN.esm.js.map → api-yLpQ3k5s.esm.js.map} +1 -1
  52. package/dist/chunks/{app-switcher-D-Bvz9uO.esm.js → app-switcher-B6eapuGG.esm.js} +2 -2
  53. package/dist/chunks/{app-switcher-D-Bvz9uO.esm.js.map → app-switcher-B6eapuGG.esm.js.map} +1 -1
  54. package/dist/chunks/{app-switcher-CyEQmYAN.js → app-switcher-VhH9z0Rd.js} +2 -2
  55. package/dist/chunks/{app-switcher-CyEQmYAN.js.map → app-switcher-VhH9z0Rd.js.map} +1 -1
  56. package/dist/chunks/{appbar-BRbO--as.esm.js → appbar-B8EgZsrn.esm.js} +2 -2
  57. package/dist/chunks/{appbar-BRbO--as.esm.js.map → appbar-B8EgZsrn.esm.js.map} +1 -1
  58. package/dist/chunks/{appbar-rqqjZ99v.js → appbar-Is_7kfVo.js} +2 -2
  59. package/dist/chunks/{appbar-rqqjZ99v.js.map → appbar-Is_7kfVo.js.map} +1 -1
  60. package/dist/chunks/{approval-wrapper-BTtmXMlk.esm.js → approval-wrapper-_kYfACQp.esm.js} +2 -2
  61. package/dist/chunks/{approval-wrapper-BTtmXMlk.esm.js.map → approval-wrapper-_kYfACQp.esm.js.map} +1 -1
  62. package/dist/chunks/{chat-bot-osiGMG3g.js → chat-bot-2Ga_xA_K.js} +32 -38
  63. package/dist/chunks/chat-bot-2Ga_xA_K.js.map +1 -0
  64. package/dist/chunks/{chat-bot-BpNtrZEL.esm.js → chat-bot-DO3vAGxA.esm.js} +33 -39
  65. package/dist/chunks/chat-bot-DO3vAGxA.esm.js.map +1 -0
  66. package/dist/chunks/common-BgXEAs_y.esm.js +851 -0
  67. package/dist/chunks/common-BgXEAs_y.esm.js.map +1 -0
  68. package/dist/chunks/{common-yORBIVv-.esm.js → common-Cl5oGXmX.esm.js} +2 -2
  69. package/dist/chunks/{common-yORBIVv-.esm.js.map → common-Cl5oGXmX.esm.js.map} +1 -1
  70. package/dist/chunks/common-D6T6NGWY.js +850 -0
  71. package/dist/chunks/common-D6T6NGWY.js.map +1 -0
  72. package/dist/chunks/{common-CS5L0Ld_.js → common-PH2uWkqL.js} +2 -2
  73. package/dist/chunks/{common-CS5L0Ld_.js.map → common-PH2uWkqL.js.map} +1 -1
  74. package/dist/chunks/common-utility-CA_Upser.js.map +1 -1
  75. package/dist/chunks/{common-utility-DGpbsf7S.esm.js → common-utility-CS_sNoAC.esm.js} +2 -2
  76. package/dist/chunks/common-utility-CS_sNoAC.esm.js.map +1 -0
  77. package/dist/chunks/company-selection-modal-B7jFVWWs.js.map +1 -1
  78. package/dist/chunks/company-selection-modal-Dn2L_skh.esm.js.map +1 -1
  79. package/dist/chunks/{constant-Bwg2s_Sn.esm.js → constant-BXPcBhJN.esm.js} +35 -5
  80. package/dist/chunks/constant-BXPcBhJN.esm.js.map +1 -0
  81. package/dist/chunks/{constant-ZYAN_teD.js → constant-BXeJD4Af.js} +35 -5
  82. package/dist/chunks/constant-BXeJD4Af.js.map +1 -0
  83. package/dist/chunks/{constants-nmkxkzps.esm.js → constants-BrmMAwu2.esm.js} +2 -2
  84. package/dist/chunks/{constants-nmkxkzps.esm.js.map → constants-BrmMAwu2.esm.js.map} +1 -1
  85. package/dist/chunks/{constants-06kIVUBw.js → constants-D_xuLHSu.js} +2 -2
  86. package/dist/chunks/{constants-06kIVUBw.js.map → constants-D_xuLHSu.js.map} +1 -1
  87. package/dist/chunks/{custom-editor-6-xqhKz6.esm.js → custom-editor-C-B5BK-H.esm.js} +3 -3
  88. package/dist/chunks/{custom-editor-6-xqhKz6.esm.js.map → custom-editor-C-B5BK-H.esm.js.map} +1 -1
  89. package/dist/chunks/{custom-form-DD7YOHMF.esm.js → custom-form-DNUpk0nq.esm.js} +7 -7
  90. package/dist/chunks/{custom-form-DD7YOHMF.esm.js.map → custom-form-DNUpk0nq.esm.js.map} +1 -1
  91. package/dist/chunks/{custom-form-CFU7NEVb.js → custom-form-T4yc_sE_.js} +4 -4
  92. package/dist/chunks/{custom-form-CFU7NEVb.js.map → custom-form-T4yc_sE_.js.map} +1 -1
  93. package/dist/chunks/{dashboard-DL83yYRR.esm.js → dashboard-B4xzJ1Xc.esm.js} +4 -4
  94. package/dist/chunks/{dashboard-DL83yYRR.esm.js.map → dashboard-B4xzJ1Xc.esm.js.map} +1 -1
  95. package/dist/chunks/{dashboard-BcWVkWZt.js → dashboard-eMHQayU_.js} +3 -3
  96. package/dist/chunks/{dashboard-BcWVkWZt.js.map → dashboard-eMHQayU_.js.map} +1 -1
  97. package/dist/chunks/default-data-6IxhqPTP.esm.js.map +1 -1
  98. package/dist/chunks/default-data-yreKVx_z.js.map +1 -1
  99. package/dist/chunks/{dynamic-report-tKn-KqAd.esm.js → dynamic-report-CMguvXj2.esm.js} +4 -4
  100. package/dist/chunks/{dynamic-report-tKn-KqAd.esm.js.map → dynamic-report-CMguvXj2.esm.js.map} +1 -1
  101. package/dist/chunks/{dynamic-rows-CTGETfcP.esm.js → dynamic-rows-CmAE9nbA.esm.js} +2 -2
  102. package/dist/chunks/{dynamic-rows-CTGETfcP.esm.js.map → dynamic-rows-CmAE9nbA.esm.js.map} +1 -1
  103. package/dist/chunks/{dynamic-text-editor-CPvlGcLK.esm.js → dynamic-text-editor-CSWdR1lK.esm.js} +2 -2
  104. package/dist/chunks/{dynamic-text-editor-CPvlGcLK.esm.js.map → dynamic-text-editor-CSWdR1lK.esm.js.map} +1 -1
  105. package/dist/chunks/edit-section-modal-Br2ITvLk.js.map +1 -1
  106. package/dist/chunks/{edit-section-modal-BW-aZmUv.esm.js → edit-section-modal-HihKbN6K.esm.js} +2 -2
  107. package/dist/chunks/edit-section-modal-HihKbN6K.esm.js.map +1 -0
  108. package/dist/chunks/{filter-COXKBEER.esm.js → filter-D9BHP_qc.esm.js} +5 -5
  109. package/dist/chunks/{filter-COXKBEER.esm.js.map → filter-D9BHP_qc.esm.js.map} +1 -1
  110. package/dist/chunks/{filter-Cr_OSIpb.js → filter-DtCrOG6W.js} +3 -3
  111. package/dist/chunks/{filter-Cr_OSIpb.js.map → filter-DtCrOG6W.js.map} +1 -1
  112. package/dist/chunks/{footer-m3_dlNl8.esm.js → footer-Bv5NOAf9.esm.js} +2 -2
  113. package/dist/chunks/{footer-m3_dlNl8.esm.js.map → footer-Bv5NOAf9.esm.js.map} +1 -1
  114. package/dist/chunks/{footer-CD3kMRdS.js → footer-DioOh69g.js} +2 -2
  115. package/dist/chunks/{footer-CD3kMRdS.js.map → footer-DioOh69g.js.map} +1 -1
  116. package/dist/chunks/{form-fields-yE9kwjvb.js → form-fields-BYDhbAgB.js} +2 -2
  117. package/dist/chunks/{form-fields-yE9kwjvb.js.map → form-fields-BYDhbAgB.js.map} +1 -1
  118. package/dist/chunks/{form-fields-hMMnB_wE.esm.js → form-fields-Di-p9XKG.esm.js} +2 -2
  119. package/dist/chunks/{form-fields-hMMnB_wE.esm.js.map → form-fields-Di-p9XKG.esm.js.map} +1 -1
  120. package/dist/chunks/{form-parser-m4fnw38a.js → form-parser-BnMdMDSb.js} +2 -2
  121. package/dist/chunks/{form-parser-m4fnw38a.js.map → form-parser-BnMdMDSb.js.map} +1 -1
  122. package/dist/chunks/{form-parser-DbnSn5eY.esm.js → form-parser-ZQpEVrzG.esm.js} +2 -2
  123. package/dist/chunks/{form-parser-DbnSn5eY.esm.js.map → form-parser-ZQpEVrzG.esm.js.map} +1 -1
  124. package/dist/chunks/{form-section-TMjdOVeW.esm.js → form-section-BJ7Iqb9R.esm.js} +5 -5
  125. package/dist/chunks/{form-section-TMjdOVeW.esm.js.map → form-section-BJ7Iqb9R.esm.js.map} +1 -1
  126. package/dist/chunks/{form-section-CPIyMdk2.js → form-section-CFeWD-tF.js} +5 -5
  127. package/dist/chunks/{form-section-CPIyMdk2.js.map → form-section-CFeWD-tF.js.map} +1 -1
  128. package/dist/chunks/{fullScreen-DFgzE41_.esm.js → fullScreen-Cz3FIdU4.esm.js} +5 -5
  129. package/dist/chunks/fullScreen-Cz3FIdU4.esm.js.map +1 -0
  130. package/dist/chunks/{fullScreen-BLLa9ogA.js → fullScreen-h0JqBN4O.js} +5 -5
  131. package/dist/chunks/fullScreen-h0JqBN4O.js.map +1 -0
  132. package/dist/chunks/{global-search-BjKPmzsQ.js → global-search-BTV5iL6-.js} +2 -2
  133. package/dist/chunks/{global-search-BjKPmzsQ.js.map → global-search-BTV5iL6-.js.map} +1 -1
  134. package/dist/chunks/{global-search-BOkxXiZ0.esm.js → global-search-CGmupYFQ.esm.js} +3 -3
  135. package/dist/chunks/{global-search-BOkxXiZ0.esm.js.map → global-search-CGmupYFQ.esm.js.map} +1 -1
  136. package/dist/chunks/{grid-view-Bo86x7YL.esm.js → grid-view-BMfleQMC.esm.js} +2 -2
  137. package/dist/chunks/{grid-view-Bo86x7YL.esm.js.map → grid-view-BMfleQMC.esm.js.map} +1 -1
  138. package/dist/chunks/{header-B-HaoeK7.esm.js → header-BnVzqpGs.esm.js} +12 -10
  139. package/dist/chunks/{header-B-HaoeK7.esm.js.map → header-BnVzqpGs.esm.js.map} +1 -1
  140. package/dist/chunks/{header-enhanced-BjfqyQ1a.esm.js → header-enhanced-CkROCaOF.esm.js} +3 -3
  141. package/dist/chunks/{header-enhanced-BjfqyQ1a.esm.js.map → header-enhanced-CkROCaOF.esm.js.map} +1 -1
  142. package/dist/chunks/{header-enhanced-gJl4iC4m.js → header-enhanced-Dxdetx0I.js} +3 -3
  143. package/dist/chunks/{header-enhanced-gJl4iC4m.js.map → header-enhanced-Dxdetx0I.js.map} +1 -1
  144. package/dist/chunks/{header-BHsex2As.js → header-jWPMgcy6.js} +11 -9
  145. package/dist/chunks/{header-BHsex2As.js.map → header-jWPMgcy6.js.map} +1 -1
  146. package/dist/chunks/{index-ALqg8b5U.esm.js → index-BCmGHdos.esm.js} +2 -2
  147. package/dist/chunks/{index-ALqg8b5U.esm.js.map → index-BCmGHdos.esm.js.map} +1 -1
  148. package/dist/chunks/{index-BBWIBqaP.js → index-DBvje0t5.js} +73 -66
  149. package/dist/chunks/{index-BBWIBqaP.js.map → index-DBvje0t5.js.map} +1 -1
  150. package/dist/chunks/{index-BuPgYdiN.esm.js → index-DqwpZRkl.esm.js} +73 -66
  151. package/dist/chunks/{index-BuPgYdiN.esm.js.map → index-DqwpZRkl.esm.js.map} +1 -1
  152. package/dist/chunks/{inline-edit-fields-atDP84QL.js → inline-edit-fields-Cd_qUOjU.js} +2 -2
  153. package/dist/chunks/{inline-edit-fields-atDP84QL.js.map → inline-edit-fields-Cd_qUOjU.js.map} +1 -1
  154. package/dist/chunks/{inline-edit-fields-BYhRpPcH.esm.js → inline-edit-fields-VOIx3qmC.esm.js} +2 -2
  155. package/dist/chunks/{inline-edit-fields-BYhRpPcH.esm.js.map → inline-edit-fields-VOIx3qmC.esm.js.map} +1 -1
  156. package/dist/chunks/{inventory-reports-title-bar-Bog2i0dr.js → inventory-reports-title-bar-BfUMM54c.js} +2 -2
  157. package/dist/chunks/{inventory-reports-title-bar-Bog2i0dr.js.map → inventory-reports-title-bar-BfUMM54c.js.map} +1 -1
  158. package/dist/chunks/{inventory-reports-title-bar-CP8FzW6A.esm.js → inventory-reports-title-bar-CZZFFqDc.esm.js} +3 -3
  159. package/dist/chunks/{inventory-reports-title-bar-CP8FzW6A.esm.js.map → inventory-reports-title-bar-CZZFFqDc.esm.js.map} +1 -1
  160. package/dist/chunks/{item-response-details-SHSD-nBh.esm.js → item-response-details-BTHf6ZvN.esm.js} +4 -4
  161. package/dist/chunks/{item-response-details-SHSD-nBh.esm.js.map → item-response-details-BTHf6ZvN.esm.js.map} +1 -1
  162. package/dist/chunks/{item-response-details-DsGQ7Dlc.js → item-response-details-BheThTTK.js} +2 -2
  163. package/dist/chunks/{item-response-details-DsGQ7Dlc.js.map → item-response-details-BheThTTK.js.map} +1 -1
  164. package/dist/chunks/{listing-DIuzQrzb.js → listing-Dr_1DDBr.js} +4 -4
  165. package/dist/chunks/{listing-DIuzQrzb.js.map → listing-Dr_1DDBr.js.map} +1 -1
  166. package/dist/chunks/{listing-C0Yb6MVq.esm.js → listing-ELQeM6S3.esm.js} +4 -4
  167. package/dist/chunks/{listing-C0Yb6MVq.esm.js.map → listing-ELQeM6S3.esm.js.map} +1 -1
  168. package/dist/chunks/{location-select-g5uczAUF.js → location-select-CLyRUilk.js} +2 -2
  169. package/dist/chunks/{location-select-g5uczAUF.js.map → location-select-CLyRUilk.js.map} +1 -1
  170. package/dist/chunks/{location-select-CFa00fy4.esm.js → location-select-z1C88kCy.esm.js} +2 -2
  171. package/dist/chunks/{location-select-CFa00fy4.esm.js.map → location-select-z1C88kCy.esm.js.map} +1 -1
  172. package/dist/chunks/{material-editable-table-BGLjrTzT.js → material-editable-table-DFGB0q-s.js} +3 -3
  173. package/dist/chunks/{material-editable-table-BGLjrTzT.js.map → material-editable-table-DFGB0q-s.js.map} +1 -1
  174. package/dist/chunks/{material-editable-table-pAyK7KYf.esm.js → material-editable-table-DyGdqNkX.esm.js} +4 -4
  175. package/dist/chunks/{material-editable-table-pAyK7KYf.esm.js.map → material-editable-table-DyGdqNkX.esm.js.map} +1 -1
  176. package/dist/chunks/{metaComponent-B6kkj54U.esm.js → metaComponent-BqgfR7kW.esm.js} +2 -2
  177. package/dist/chunks/{metaComponent-B6kkj54U.esm.js.map → metaComponent-BqgfR7kW.esm.js.map} +1 -1
  178. package/dist/chunks/{metaComponent-D9sAbeXz.js → metaComponent-GukpY87Z.js} +2 -2
  179. package/dist/chunks/{metaComponent-D9sAbeXz.js.map → metaComponent-GukpY87Z.js.map} +1 -1
  180. package/dist/chunks/{module-reducer-DMxxForv.esm.js → module-reducer-CEv3LZCX.esm.js} +2 -2
  181. package/dist/chunks/{module-reducer-DMxxForv.esm.js.map → module-reducer-CEv3LZCX.esm.js.map} +1 -1
  182. package/dist/chunks/{modules-maXT99-4.js → modules-DTRr7zwt.js} +5 -5
  183. package/dist/chunks/{modules-maXT99-4.js.map → modules-DTRr7zwt.js.map} +1 -1
  184. package/dist/chunks/{modules-BBu2Y-K9.esm.js → modules-enwLrpfQ.esm.js} +5 -5
  185. package/dist/chunks/{modules-BBu2Y-K9.esm.js.map → modules-enwLrpfQ.esm.js.map} +1 -1
  186. package/dist/chunks/{notification-menu-D7ASm-K1.js → notification-menu-B00hDUbn.js} +2 -2
  187. package/dist/chunks/{notification-menu-D7ASm-K1.js.map → notification-menu-B00hDUbn.js.map} +1 -1
  188. package/dist/chunks/{notification-menu-XAadkn-e.esm.js → notification-menu-CehCt5fA.esm.js} +4 -4
  189. package/dist/chunks/{notification-menu-XAadkn-e.esm.js.map → notification-menu-CehCt5fA.esm.js.map} +1 -1
  190. package/dist/chunks/{page-action-C07iGjvN.esm.js → page-action-RqVevciV.esm.js} +4 -4
  191. package/dist/chunks/{page-action-C07iGjvN.esm.js.map → page-action-RqVevciV.esm.js.map} +1 -1
  192. package/dist/chunks/{page-action-BPzaL2KJ.js → page-action-TMFOytDw.js} +2 -2
  193. package/dist/chunks/{page-action-BPzaL2KJ.js.map → page-action-TMFOytDw.js.map} +1 -1
  194. package/dist/chunks/{page-navigator-8gZpp9_P.esm.js → page-navigator-CuIJ0KGf.esm.js} +2 -2
  195. package/dist/chunks/{page-navigator-8gZpp9_P.esm.js.map → page-navigator-CuIJ0KGf.esm.js.map} +1 -1
  196. package/dist/chunks/{page-navigator-Cgbh3tTG.js → page-navigator-DdRsmtLy.js} +2 -2
  197. package/dist/chunks/{page-navigator-Cgbh3tTG.js.map → page-navigator-DdRsmtLy.js.map} +1 -1
  198. package/dist/chunks/{page-view-DJ6HS_dV.js → page-view-CvfqzV03.js} +3 -3
  199. package/dist/chunks/{page-view-DJ6HS_dV.js.map → page-view-CvfqzV03.js.map} +1 -1
  200. package/dist/chunks/{page-view-CokUNMBn.esm.js → page-view-Daz-OKd_.esm.js} +3 -3
  201. package/dist/chunks/{page-view-CokUNMBn.esm.js.map → page-view-Daz-OKd_.esm.js.map} +1 -1
  202. package/dist/chunks/{pathname.rental-qsAe3XFd.esm.js → pathname.rental-CqHO_l_D.esm.js} +76 -81
  203. package/dist/chunks/{pathname.rental-qsAe3XFd.esm.js.map → pathname.rental-CqHO_l_D.esm.js.map} +1 -1
  204. package/dist/chunks/{pathname.rental-DgH4LoG7.js → pathname.rental-CwK6JuID.js} +2 -7
  205. package/dist/chunks/{pathname.rental-DgH4LoG7.js.map → pathname.rental-CwK6JuID.js.map} +1 -1
  206. package/dist/chunks/{quick-approval-modal-CPWs8htH.esm.js → quick-approval-modal-B-jvkgue.esm.js} +2 -2
  207. package/dist/chunks/{quick-approval-modal-CPWs8htH.esm.js.map → quick-approval-modal-B-jvkgue.esm.js.map} +1 -1
  208. package/dist/chunks/{reducer-CdJ6znKF.esm.js → reducer-BMkh_0Py.esm.js} +3 -3
  209. package/dist/chunks/{reducer-CdJ6znKF.esm.js.map → reducer-BMkh_0Py.esm.js.map} +1 -1
  210. package/dist/chunks/{reducer-3tSO6RW6.esm.js → reducer-BOwyP0QZ.esm.js} +3 -3
  211. package/dist/chunks/{reducer-3tSO6RW6.esm.js.map → reducer-BOwyP0QZ.esm.js.map} +1 -1
  212. package/dist/chunks/{reducer-IsgN83rP.esm.js → reducer-BTfG9J4W.esm.js} +2 -2
  213. package/dist/chunks/{reducer-IsgN83rP.esm.js.map → reducer-BTfG9J4W.esm.js.map} +1 -1
  214. package/dist/chunks/{reducer-yyZtsg1A.esm.js → reducer-BWiX5vxL.esm.js} +2 -2
  215. package/dist/chunks/{reducer-yyZtsg1A.esm.js.map → reducer-BWiX5vxL.esm.js.map} +1 -1
  216. package/dist/chunks/{reducer-sgaK2vfW.esm.js → reducer-CD1VDqeT.esm.js} +2 -2
  217. package/dist/chunks/{reducer-sgaK2vfW.esm.js.map → reducer-CD1VDqeT.esm.js.map} +1 -1
  218. package/dist/chunks/{reports-title-bar-Kz6JjqsY.js → reports-title-bar-B1_IweEc.js} +2 -2
  219. package/dist/chunks/{reports-title-bar-Kz6JjqsY.js.map → reports-title-bar-B1_IweEc.js.map} +1 -1
  220. package/dist/chunks/{reports-title-bar-Cay4E8SQ.esm.js → reports-title-bar-Kl8XQe-K.esm.js} +4 -4
  221. package/dist/chunks/{reports-title-bar-Cay4E8SQ.esm.js.map → reports-title-bar-Kl8XQe-K.esm.js.map} +1 -1
  222. package/dist/chunks/{route-page-map-Dn-SAbdf.js → route-page-map-CzFUh-SC.js} +3 -60
  223. package/dist/chunks/{route-page-map-Dn-SAbdf.js.map → route-page-map-CzFUh-SC.js.map} +1 -1
  224. package/dist/chunks/{route-page-map-DkWoisiB.esm.js → route-page-map-D6-7jBQT.esm.js} +76 -133
  225. package/dist/chunks/{route-page-map-DkWoisiB.esm.js.map → route-page-map-D6-7jBQT.esm.js.map} +1 -1
  226. package/dist/chunks/{routes-CAc76Zan.esm.js → routes-D9y_XQRu.esm.js} +4 -4
  227. package/dist/chunks/{routes-CAc76Zan.esm.js.map → routes-D9y_XQRu.esm.js.map} +1 -1
  228. package/dist/chunks/{routes-CfqLAYgR.js → routes-Dsumzjw0.js} +4 -4
  229. package/dist/chunks/{routes-CfqLAYgR.js.map → routes-Dsumzjw0.js.map} +1 -1
  230. package/dist/chunks/{schedule-report-B4ZfEuiU.js → schedule-report-BwmZ5jea.js} +4 -4
  231. package/dist/chunks/{schedule-report-B4ZfEuiU.js.map → schedule-report-BwmZ5jea.js.map} +1 -1
  232. package/dist/chunks/{schedule-report-CLXjjfjc.esm.js → schedule-report-CJXHVZ68.esm.js} +6 -6
  233. package/dist/chunks/{schedule-report-CLXjjfjc.esm.js.map → schedule-report-CJXHVZ68.esm.js.map} +1 -1
  234. package/dist/chunks/{schedule-report-modal-CB3G9H7x.esm.js → schedule-report-modal-D8Y-TZ4u.esm.js} +3 -3
  235. package/dist/chunks/{schedule-report-modal-CB3G9H7x.esm.js.map → schedule-report-modal-D8Y-TZ4u.esm.js.map} +1 -1
  236. package/dist/chunks/{schedule-report-modal-iwoDI-sg.js → schedule-report-modal-iNnWP9s4.js} +2 -2
  237. package/dist/chunks/{schedule-report-modal-iwoDI-sg.js.map → schedule-report-modal-iNnWP9s4.js.map} +1 -1
  238. package/dist/chunks/{searchable-select-0F6E4XAr.esm.js → searchable-select-BQtcqBKV.esm.js} +6 -6
  239. package/dist/chunks/{searchable-select-0F6E4XAr.esm.js.map → searchable-select-BQtcqBKV.esm.js.map} +1 -1
  240. package/dist/chunks/{searchable-select-_DCkITfk.js → searchable-select-DVUCWWti.js} +2 -2
  241. package/dist/chunks/{searchable-select-_DCkITfk.js.map → searchable-select-DVUCWWti.js.map} +1 -1
  242. package/dist/chunks/{share-modal-BaEyZs2h.esm.js → share-modal-BOyLBawK.esm.js} +3 -3
  243. package/dist/chunks/{share-modal-BaEyZs2h.esm.js.map → share-modal-BOyLBawK.esm.js.map} +1 -1
  244. package/dist/chunks/{share-modal-DrXvh-fV.js → share-modal-CobK7BN7.js} +2 -2
  245. package/dist/chunks/{share-modal-DrXvh-fV.js.map → share-modal-CobK7BN7.js.map} +1 -1
  246. package/dist/chunks/{share-modal-enhanced-DnEdDBmu.esm.js → share-modal-enhanced-CTp-tQw8.esm.js} +2 -2
  247. package/dist/chunks/{share-modal-enhanced-DnEdDBmu.esm.js.map → share-modal-enhanced-CTp-tQw8.esm.js.map} +1 -1
  248. package/dist/chunks/{share-modal-enhanced-BTr0zRhF.js → share-modal-enhanced-DVarD-jt.js} +2 -2
  249. package/dist/chunks/{share-modal-enhanced-BTr0zRhF.js.map → share-modal-enhanced-DVarD-jt.js.map} +1 -1
  250. package/dist/chunks/{sidebarScreen-DpYj_wlK.js → sidebarScreen-K-dlM6NA.js} +3 -3
  251. package/dist/chunks/{sidebarScreen-DpYj_wlK.js.map → sidebarScreen-K-dlM6NA.js.map} +1 -1
  252. package/dist/chunks/{sidebarScreen-DiOAiXeU.esm.js → sidebarScreen-lR6rw8bW.esm.js} +4 -4
  253. package/dist/chunks/{sidebarScreen-DiOAiXeU.esm.js.map → sidebarScreen-lR6rw8bW.esm.js.map} +1 -1
  254. package/dist/chunks/{store-BL5VFPie.esm.js → store-DJh8C3Vv.esm.js} +6 -6
  255. package/dist/chunks/{store-BL5VFPie.esm.js.map → store-DJh8C3Vv.esm.js.map} +1 -1
  256. package/dist/chunks/{table-DWx7x8zw.js → table-Bpt6ggr3.js} +2 -2
  257. package/dist/chunks/{table-DWx7x8zw.js.map → table-Bpt6ggr3.js.map} +1 -1
  258. package/dist/chunks/{table-gxAlAeTq.esm.js → table-DI3MyTNm.esm.js} +3 -3
  259. package/dist/chunks/{table-gxAlAeTq.esm.js.map → table-DI3MyTNm.esm.js.map} +1 -1
  260. package/dist/chunks/{table-form-DsTwCUcs.esm.js → table-form-8_f3FwhX.esm.js} +2 -2
  261. package/dist/chunks/{table-form-DsTwCUcs.esm.js.map → table-form-8_f3FwhX.esm.js.map} +1 -1
  262. package/dist/chunks/{template-editor-router-D4NIwVws.js → template-editor-router-DugWbCh0.js} +2 -2
  263. package/dist/chunks/{template-editor-router-D4NIwVws.js.map → template-editor-router-DugWbCh0.js.map} +1 -1
  264. package/dist/chunks/{template-editor-router-BXLUTvsk.esm.js → template-editor-router-uzghBOap.esm.js} +2 -2
  265. package/dist/chunks/{template-editor-router-BXLUTvsk.esm.js.map → template-editor-router-uzghBOap.esm.js.map} +1 -1
  266. package/dist/chunks/{template-modal-B2VgotrF.esm.js → template-modal-D7aLacan.esm.js} +7 -6
  267. package/dist/chunks/template-modal-D7aLacan.esm.js.map +1 -0
  268. package/dist/chunks/{template-modal-X-iSmlki.js → template-modal-Df7gF4QI.js} +5 -4
  269. package/dist/chunks/template-modal-Df7gF4QI.js.map +1 -0
  270. package/dist/chunks/{template-name-modal-CeqxIE2r.js → template-name-modal-ClreVUaz.js} +12 -5
  271. package/dist/chunks/template-name-modal-ClreVUaz.js.map +1 -0
  272. package/dist/chunks/{template-name-modal-Dctn8t3t.esm.js → template-name-modal-Dwe7U72p.esm.js} +12 -5
  273. package/dist/chunks/template-name-modal-Dwe7U72p.esm.js.map +1 -0
  274. package/dist/chunks/{templates-CCy1eG6A.esm.js → templates-9ZMHwRR6.esm.js} +10 -17
  275. package/dist/chunks/templates-9ZMHwRR6.esm.js.map +1 -0
  276. package/dist/chunks/{templates-CUREMwYo.js → templates-DCXbeOtH.js} +7 -14
  277. package/dist/chunks/templates-DCXbeOtH.js.map +1 -0
  278. package/dist/chunks/{text-area-B3nAZgFI.js → text-area-DxJs3eyE.js} +2 -2
  279. package/dist/chunks/{text-area-B3nAZgFI.js.map → text-area-DxJs3eyE.js.map} +1 -1
  280. package/dist/chunks/{text-area-xMWbJY0H.esm.js → text-area-zcBhicgg.esm.js} +2 -2
  281. package/dist/chunks/{text-area-xMWbJY0H.esm.js.map → text-area-zcBhicgg.esm.js.map} +1 -1
  282. package/dist/chunks/{text-measurement-BCjauPbB.esm.js → text-measurement-DMVkqP6b.esm.js} +2 -2
  283. package/dist/chunks/{text-measurement-BCjauPbB.esm.js.map → text-measurement-DMVkqP6b.esm.js.map} +1 -1
  284. package/dist/chunks/{translations-BrwQcVN3.esm.js → translations-JcE6qyDJ.esm.js} +3 -3
  285. package/dist/chunks/{translations-BrwQcVN3.esm.js.map → translations-JcE6qyDJ.esm.js.map} +1 -1
  286. package/dist/chunks/{uom-field-wrapper-DXZgzOYB.js → uom-field-wrapper-CSqeiVPY.js} +2 -2
  287. package/dist/chunks/{uom-field-wrapper-DXZgzOYB.js.map → uom-field-wrapper-CSqeiVPY.js.map} +1 -1
  288. package/dist/chunks/{uom-field-wrapper-CTbEc-MB.esm.js → uom-field-wrapper-CWTsSsSi.esm.js} +2 -2
  289. package/dist/chunks/{uom-field-wrapper-CTbEc-MB.esm.js.map → uom-field-wrapper-CWTsSsSi.esm.js.map} +1 -1
  290. package/dist/chunks/{upload-excel-BZPP13tP.esm.js → upload-excel-CkEQqZW2.esm.js} +2 -2
  291. package/dist/chunks/{upload-excel-BZPP13tP.esm.js.map → upload-excel-CkEQqZW2.esm.js.map} +1 -1
  292. package/dist/chunks/{use-translations-CcjSFA3F.esm.js → use-translations-BqBPN1DM.esm.js} +3 -3
  293. package/dist/chunks/{use-translations-CcjSFA3F.esm.js.map → use-translations-BqBPN1DM.esm.js.map} +1 -1
  294. package/dist/chunks/{use-translations-5wUQBxMm.js → use-translations-Cn3b4Kqh.js} +2 -2
  295. package/dist/chunks/{use-translations-5wUQBxMm.js.map → use-translations-Cn3b4Kqh.js.map} +1 -1
  296. package/dist/chunks/{useAccountSetting-vAqgEiJB.esm.js → useAccountSetting-DsU5zsjb.esm.js} +2 -2
  297. package/dist/chunks/{useAccountSetting-vAqgEiJB.esm.js.map → useAccountSetting-DsU5zsjb.esm.js.map} +1 -1
  298. package/dist/chunks/{useCheckSkuAndName-Dl24wQO-.esm.js → useCheckSkuAndName-5ua30aZf.esm.js} +2 -2
  299. package/dist/chunks/{useCheckSkuAndName-Dl24wQO-.esm.js.map → useCheckSkuAndName-5ua30aZf.esm.js.map} +1 -1
  300. package/dist/chunks/{useReduxIntegration-DZBfKF7d.esm.js → useReduxIntegration-BlLpfwk6.esm.js} +2 -2
  301. package/dist/chunks/{useReduxIntegration-DZBfKF7d.esm.js.map → useReduxIntegration-BlLpfwk6.esm.js.map} +1 -1
  302. package/dist/chunks/{useUniquenessCheck-bYjnp_0P.esm.js → useUniquenessCheck-CiR2q5bM.esm.js} +2 -2
  303. package/dist/chunks/{useUniquenessCheck-bYjnp_0P.esm.js.map → useUniquenessCheck-CiR2q5bM.esm.js.map} +1 -1
  304. package/dist/chunks/{useVendorAICompare-DZRFDk4i.esm.js → useVendorAICompare-DMJvJJ3Y.esm.js} +2 -2
  305. package/dist/chunks/{useVendorAICompare-DZRFDk4i.esm.js.map → useVendorAICompare-DMJvJJ3Y.esm.js.map} +1 -1
  306. package/dist/chunks/{value-editor-BSS9Ns2T.js → value-editor-Br7X_wEB.js} +2 -2
  307. package/dist/chunks/{value-editor-BSS9Ns2T.js.map → value-editor-Br7X_wEB.js.map} +1 -1
  308. package/dist/chunks/{value-editor-DQ1qgZ2u.esm.js → value-editor-BxFdnUyM.esm.js} +4 -4
  309. package/dist/chunks/{value-editor-DQ1qgZ2u.esm.js.map → value-editor-BxFdnUyM.esm.js.map} +1 -1
  310. package/dist/chunks/{vendor-ai-summary-BA6m2dH9.esm.js → vendor-ai-summary-Cpx90QOx.esm.js} +2 -2
  311. package/dist/chunks/{vendor-ai-summary-BA6m2dH9.esm.js.map → vendor-ai-summary-Cpx90QOx.esm.js.map} +1 -1
  312. package/dist/chunks/{vendor-ai-summary-DWmAaQ_N.js → vendor-ai-summary-zranZkfk.js} +2 -2
  313. package/dist/chunks/{vendor-ai-summary-DWmAaQ_N.js.map → vendor-ai-summary-zranZkfk.js.map} +1 -1
  314. package/dist/components/action-bar/action-bar/index.esm.js +1 -1
  315. package/dist/components/action-bar/action-bar/index.js +1 -1
  316. package/dist/components/action-bar/index.esm.js +1 -1
  317. package/dist/components/action-bar/index.js +1 -1
  318. package/dist/components/address-modal/index.esm.js +1 -1
  319. package/dist/components/address-modal/index.js +1 -1
  320. package/dist/components/ai-summary/ai-summary/index.esm.js +1 -1
  321. package/dist/components/ai-summary/index.esm.js +1 -1
  322. package/dist/components/appbar/appbar/index.esm.js +1 -1
  323. package/dist/components/appbar/appbar/index.js +1 -1
  324. package/dist/components/appbar/index.esm.js +1 -1
  325. package/dist/components/appbar/index.js +1 -1
  326. package/dist/components/approval-wrapper/approval-wrapper/index.esm.js +1 -1
  327. package/dist/components/approval-wrapper/index.esm.js +1 -1
  328. package/dist/components/chat-bot/index.esm.js +1 -1
  329. package/dist/components/chat-bot/index.js +1 -1
  330. package/dist/components/custom-forms/FORMS/index.esm.js +1 -1
  331. package/dist/components/custom-forms/FORMS/index.js +1 -1
  332. package/dist/components/custom-forms/grid-view/grid-view/index.esm.js +1 -1
  333. package/dist/components/custom-forms/grid-view/index.esm.js +1 -1
  334. package/dist/components/custom-forms/index.esm.js +2 -2
  335. package/dist/components/custom-forms/index.js +1 -1
  336. package/dist/components/department-add-modal/index.esm.js +1 -1
  337. package/dist/components/department-add-modal/index.js +1 -1
  338. package/dist/components/designation-add-modal/index.esm.js +1 -1
  339. package/dist/components/designation-add-modal/index.js +1 -1
  340. package/dist/components/editor/custom-editor/index.esm.js +1 -1
  341. package/dist/components/editor/index.esm.js +1 -1
  342. package/dist/components/examples/FlexibleReduxExample/index.esm.js +1 -1
  343. package/dist/components/examples/FlexibleReduxExample/index.js +1 -1
  344. package/dist/components/examples/index.esm.js +1 -1
  345. package/dist/components/examples/index.js +1 -1
  346. package/dist/components/filter/components/index.esm.js +1 -1
  347. package/dist/components/filter/components/index.js +1 -1
  348. package/dist/components/filter/components/value-editor/index.esm.js +1 -1
  349. package/dist/components/filter/components/value-editor/index.js +1 -1
  350. package/dist/components/filter/filter/index.esm.js +1 -1
  351. package/dist/components/filter/filter/index.js +1 -1
  352. package/dist/components/filter/index.esm.js +2 -2
  353. package/dist/components/filter/index.js +2 -2
  354. package/dist/components/footer/footer/index.esm.js +1 -1
  355. package/dist/components/footer/footer/index.js +1 -1
  356. package/dist/components/footer/index.esm.js +1 -1
  357. package/dist/components/footer/index.js +1 -1
  358. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.esm.js +1 -1
  359. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.js +1 -1
  360. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.esm.js +1 -1
  361. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.js +1 -1
  362. package/dist/components/form-control/form-builder/form-builder-element/dynamic-text-editor/index.esm.js +1 -1
  363. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.esm.js +1 -1
  364. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.js +1 -1
  365. package/dist/components/form-control/form-builder/form-builder-element/index.esm.js +4 -4
  366. package/dist/components/form-control/form-builder/form-builder-element/index.js +3 -3
  367. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.esm.js +1 -1
  368. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.js +1 -1
  369. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.esm.js +1 -1
  370. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.js +1 -1
  371. package/dist/components/form-control/form-builder/form-builder-element/table/index.esm.js +1 -1
  372. package/dist/components/form-control/form-builder/form-builder-element/table/index.js +1 -1
  373. package/dist/components/form-control/form-builder/index.esm.js +4 -4
  374. package/dist/components/form-control/form-builder/index.js +3 -3
  375. package/dist/components/form-control/form-parser/form-parser/index.esm.js +1 -1
  376. package/dist/components/form-control/form-parser/form-parser/index.js +1 -1
  377. package/dist/components/form-control/form-parser/form-section/index.esm.js +1 -1
  378. package/dist/components/form-control/form-parser/form-section/index.js +1 -1
  379. package/dist/components/form-control/form-parser/index.esm.js +2 -2
  380. package/dist/components/form-control/form-parser/index.js +2 -2
  381. package/dist/components/form-control/index.esm.js +6 -6
  382. package/dist/components/form-control/index.js +5 -5
  383. package/dist/components/header/components/app-switcher/index.esm.js +1 -1
  384. package/dist/components/header/components/app-switcher/index.js +1 -1
  385. package/dist/components/header/components/global-search/index.esm.js +1 -1
  386. package/dist/components/header/components/global-search/index.js +1 -1
  387. package/dist/components/header/components/index.esm.js +1 -1
  388. package/dist/components/header/components/index.js +1 -1
  389. package/dist/components/header/components/notification-menu/index.esm.js +1 -1
  390. package/dist/components/header/components/notification-menu/index.js +1 -1
  391. package/dist/components/header/components/notification-menu/notification-menu/index.esm.js +1 -1
  392. package/dist/components/header/components/notification-menu/notification-menu/index.js +1 -1
  393. package/dist/components/header/header/index.esm.js +1 -1
  394. package/dist/components/header/header/index.js +1 -1
  395. package/dist/components/header/header-enhanced/index.esm.js +1 -1
  396. package/dist/components/header/header-enhanced/index.js +1 -1
  397. package/dist/components/header/index.esm.js +5 -5
  398. package/dist/components/header/index.js +3 -3
  399. package/dist/components/header/redux/actionCreator/index.esm.js +1 -1
  400. package/dist/components/header/redux/index.esm.js +2 -2
  401. package/dist/components/header/redux/reducer/index.esm.js +1 -1
  402. package/dist/components/index.esm.js +37 -37
  403. package/dist/components/index.js +28 -28
  404. package/dist/components/inventory-reports-title-bar/index.esm.js +3 -3
  405. package/dist/components/inventory-reports-title-bar/index.js +1 -1
  406. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.esm.js +1 -1
  407. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.js +1 -1
  408. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  409. package/dist/components/inventory-reports-title-bar/redux/index.esm.js +2 -2
  410. package/dist/components/inventory-reports-title-bar/redux/reducer/index.esm.js +1 -1
  411. package/dist/components/listing/index.esm.js +1 -1
  412. package/dist/components/listing/index.js +1 -1
  413. package/dist/components/listing/listing/index.esm.js +1 -1
  414. package/dist/components/listing/listing/index.js +1 -1
  415. package/dist/components/location-select/index.esm.js +1 -1
  416. package/dist/components/location-select/index.js +1 -1
  417. package/dist/components/material-editable-table/components/index.esm.js +1 -1
  418. package/dist/components/material-editable-table/components/index.js +1 -1
  419. package/dist/components/material-editable-table/components/inline-edit-fields/index.esm.js +1 -1
  420. package/dist/components/material-editable-table/components/inline-edit-fields/index.js +1 -1
  421. package/dist/components/material-editable-table/index.esm.js +2 -2
  422. package/dist/components/material-editable-table/index.js +2 -2
  423. package/dist/components/material-editable-table/material-editable-table/index.esm.js +1 -1
  424. package/dist/components/material-editable-table/material-editable-table/index.js +1 -1
  425. package/dist/components/material-table/components/index.esm.js +1 -1
  426. package/dist/components/material-table/components/index.js +1 -1
  427. package/dist/components/material-table/components/inline-edit-fields/index.esm.js +1 -1
  428. package/dist/components/material-table/components/inline-edit-fields/index.js +1 -1
  429. package/dist/components/material-table/index.esm.js +1 -1
  430. package/dist/components/material-table/index.js +1 -1
  431. package/dist/components/material-table/material-table/index.esm.js +1 -1
  432. package/dist/components/material-table/material-table/index.js +1 -1
  433. package/dist/components/page-navigator/components/index.esm.js +1 -1
  434. package/dist/components/page-navigator/components/index.js +1 -1
  435. package/dist/components/page-navigator/components/page-action/index.esm.js +1 -1
  436. package/dist/components/page-navigator/components/page-action/index.js +1 -1
  437. package/dist/components/page-navigator/index.esm.js +2 -2
  438. package/dist/components/page-navigator/index.js +2 -2
  439. package/dist/components/page-navigator/page-navigator/index.esm.js +1 -1
  440. package/dist/components/page-navigator/page-navigator/index.js +1 -1
  441. package/dist/components/parties-modal/index.esm.js +1 -1
  442. package/dist/components/parties-modal/index.js +1 -1
  443. package/dist/components/parties-modal/parties-modal/index.esm.js +1 -1
  444. package/dist/components/parties-modal/parties-modal/index.js +1 -1
  445. package/dist/components/providers/ERPUIProvider/index.esm.js +1 -1
  446. package/dist/components/providers/index.esm.js +1 -1
  447. package/dist/components/quick-approval-modal/index.esm.js +1 -1
  448. package/dist/components/quick-approval-modal/quick-approval-modal/index.esm.js +1 -1
  449. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js +1 -1
  450. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js +1 -1
  451. package/dist/components/reports/dynamic-report/index.esm.js +2 -2
  452. package/dist/components/reports/index.esm.js +2 -2
  453. package/dist/components/reports-title-bar/index.esm.js +3 -3
  454. package/dist/components/reports-title-bar/index.js +1 -1
  455. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  456. package/dist/components/reports-title-bar/redux/index.esm.js +2 -2
  457. package/dist/components/reports-title-bar/redux/reducer/index.esm.js +1 -1
  458. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +1 -1
  459. package/dist/components/reports-title-bar/reports-title-bar/index.js +1 -1
  460. package/dist/components/rfq-response/index.esm.js +1 -1
  461. package/dist/components/rfq-response/index.js +1 -1
  462. package/dist/components/rfq-response/item-response-details/index.esm.js +1 -1
  463. package/dist/components/rfq-response/item-response-details/index.js +1 -1
  464. package/dist/components/schedule-report/index.esm.js +2 -2
  465. package/dist/components/schedule-report/index.js +2 -2
  466. package/dist/components/schedule-report/schedule-report/index.esm.js +1 -1
  467. package/dist/components/schedule-report/schedule-report/index.js +1 -1
  468. package/dist/components/schedule-report/schedule-report-modal/index.esm.js +1 -1
  469. package/dist/components/schedule-report/schedule-report-modal/index.js +1 -1
  470. package/dist/components/schedule-report/utils/common/index.esm.js +1 -1
  471. package/dist/components/searchable-select/index.esm.js +1 -1
  472. package/dist/components/searchable-select/index.js +1 -1
  473. package/dist/components/share-modal/index.esm.js +4 -4
  474. package/dist/components/share-modal/index.js +2 -2
  475. package/dist/components/share-modal/redux/actionCreator/index.esm.js +1 -1
  476. package/dist/components/share-modal/redux/index.esm.js +2 -2
  477. package/dist/components/share-modal/redux/reducer/index.esm.js +1 -1
  478. package/dist/components/share-modal/share-modal/index.esm.js +1 -1
  479. package/dist/components/share-modal/share-modal/index.js +1 -1
  480. package/dist/components/share-modal/share-modal-enhanced/index.esm.js +1 -1
  481. package/dist/components/share-modal/share-modal-enhanced/index.js +1 -1
  482. package/dist/components/team-add-modal/index.esm.js +1 -1
  483. package/dist/components/team-add-modal/index.js +1 -1
  484. package/dist/components/text-area/index.esm.js +1 -1
  485. package/dist/components/text-area/index.js +1 -1
  486. package/dist/components/text-area/text-area/index.esm.js +1 -1
  487. package/dist/components/text-area/text-area/index.js +1 -1
  488. package/dist/components/uom-field-wrapper/index.esm.js +1 -1
  489. package/dist/components/uom-field-wrapper/index.js +1 -1
  490. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.esm.js +1 -1
  491. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.js +1 -1
  492. package/dist/components/upload-excel/index.esm.js +1 -1
  493. package/dist/components/upload-excel/upload-excel/index.esm.js +1 -1
  494. package/dist/components/vendor-ai-summary/index.esm.js +1 -1
  495. package/dist/components/vendor-ai-summary/index.js +1 -1
  496. package/dist/constants/index.esm.js +143 -145
  497. package/dist/constants/index.js +3 -5
  498. package/dist/constants/index.js.map +1 -1
  499. package/dist/hooks/index.esm.js +6 -6
  500. package/dist/hooks/index.js +1 -1
  501. package/dist/hooks/use-translations/index.esm.js +1 -1
  502. package/dist/hooks/use-translations/index.js +1 -1
  503. package/dist/hooks/useAccountSetting/index.esm.js +1 -1
  504. package/dist/hooks/useCheckSkuAndName/index.esm.js +1 -1
  505. package/dist/hooks/useReduxIntegration/index.esm.js +1 -1
  506. package/dist/hooks/useUniquenessCheck/index.esm.js +1 -1
  507. package/dist/images/index.esm.js +5 -5
  508. package/dist/images/index.esm.js.map +1 -1
  509. package/dist/images/index.js +5 -5
  510. package/dist/images/index.js.map +1 -1
  511. package/dist/index.esm.js +237 -234
  512. package/dist/index.esm.js.map +1 -1
  513. package/dist/index.js +69 -66
  514. package/dist/index.js.map +1 -1
  515. package/dist/layout/fullScreen/index.esm.js +1 -1
  516. package/dist/layout/fullScreen/index.js +1 -1
  517. package/dist/layout/index.esm.js +2 -2
  518. package/dist/layout/index.js +2 -2
  519. package/dist/layout/sidebarScreen/index.esm.js +1 -1
  520. package/dist/layout/sidebarScreen/index.js +1 -1
  521. package/dist/redux/index.esm.js +3 -3
  522. package/dist/runtime/index.esm.js +4 -4
  523. package/dist/runtime/index.js +2 -2
  524. package/dist/src/components/chat-bot/chat-bot-welcome.d.ts +1 -2
  525. package/dist/src/components/chat-bot/chat-bot.d.ts +1 -5
  526. package/dist/src/constants/defaultColumns.d.ts +0 -1
  527. package/dist/src/constants/pathnames/pathname.procurement.d.ts +0 -4
  528. package/dist/src/layout/fullScreen/fullScreen.d.ts +0 -1
  529. package/dist/src/views/template-editor/components/EditorCanvas/FreeCanvas.d.ts +34 -0
  530. package/dist/src/views/template-editor/components/EditorCanvas/FreeElement.d.ts +30 -0
  531. package/dist/src/views/template-editor/components/EditorCanvas.d.ts +30 -12
  532. package/dist/src/views/template-editor/components/EditorHeader.d.ts +6 -0
  533. package/dist/src/views/template-editor/components/EditorSection.d.ts +1 -0
  534. package/dist/src/views/template-editor/components/SectionFlowEditor.d.ts +2 -3
  535. package/dist/src/views/template-editor/components/SectionFormatPanel.d.ts +2 -1
  536. package/dist/src/views/template-editor/components/controllers/TableControls.d.ts +23 -0
  537. package/dist/src/views/template-editor/components/controllers/TextControls.d.ts +3 -0
  538. package/dist/src/views/template-editor/components/stationery/StationeryPreview.d.ts +24 -0
  539. package/dist/src/views/template-editor/components/stationery/StationerySidebar.d.ts +9 -0
  540. package/dist/src/views/template-editor/engine/ai.d.ts +12 -0
  541. package/dist/src/views/template-editor/engine/app.d.ts +1 -0
  542. package/dist/src/views/template-editor/engine/controls.d.ts +4 -0
  543. package/dist/src/views/template-editor/engine/design-canvas.d.ts +24 -0
  544. package/dist/src/views/template-editor/engine/editor.d.ts +17 -0
  545. package/dist/src/views/template-editor/engine/engine.d.ts +18 -0
  546. package/dist/src/views/template-editor/engine/icons.d.ts +91 -0
  547. package/dist/src/views/template-editor/engine/letterpads.d.ts +1 -0
  548. package/dist/src/views/template-editor/engine/model.d.ts +20 -0
  549. package/dist/src/views/template-editor/engine/paginator.d.ts +30 -0
  550. package/dist/src/views/template-editor/engine/picker.d.ts +20 -0
  551. package/dist/src/views/template-editor/engine/schema.d.ts +647 -0
  552. package/dist/src/views/template-editor/engine/stationery-app.d.ts +10 -0
  553. package/dist/src/views/template-editor/engine/stationery-doc.d.ts +62 -0
  554. package/dist/src/views/template-editor/engine/stationery-free-element.d.ts +22 -0
  555. package/dist/src/views/template-editor/engine/stationery-store.d.ts +154 -0
  556. package/dist/src/views/template-editor/engine/templatebuilder.d.ts +51 -0
  557. package/dist/src/views/template-editor/engine/templates.d.ts +11 -0
  558. package/dist/src/views/template-editor/icons/custom-styled-icon.d.ts +7 -0
  559. package/dist/src/views/template-editor/icons/edit.d.ts +4 -0
  560. package/dist/src/views/template-editor/icons/trash.d.ts +4 -0
  561. package/dist/src/views/template-editor/types/editor.d.ts +20 -108
  562. package/dist/src/views/template-editor/types/stationery.d.ts +66 -0
  563. package/dist/src/views/template-editor/utils/common.d.ts +10 -1
  564. package/dist/src/views/template-editor/utils/compiler.d.ts +12 -0
  565. package/dist/src/views/template-editor/utils/constant.d.ts +4 -1
  566. package/dist/style.css +4629 -100
  567. package/dist/utils/api/index.esm.js +1 -1
  568. package/dist/utils/common/index.esm.js +1 -1
  569. package/dist/utils/common-utility/index.esm.js +1 -1
  570. package/dist/utils/export-filters/index.esm.js +0 -1
  571. package/dist/utils/export-filters/index.esm.js.map +1 -1
  572. package/dist/utils/export-filters/index.js +0 -1
  573. package/dist/utils/export-filters/index.js.map +1 -1
  574. package/dist/utils/index.esm.js +9 -9
  575. package/dist/utils/index.js +1 -1
  576. package/dist/utils/metaComponent/index.esm.js +1 -1
  577. package/dist/utils/metaComponent/index.js +1 -1
  578. package/dist/utils/server/index.esm.js +2 -2
  579. package/dist/utils/text-measurement/index.esm.js +1 -1
  580. package/dist/views/afterAuth/dashboard/index.esm.js +1 -1
  581. package/dist/views/afterAuth/dashboard/index.js +1 -1
  582. package/dist/views/afterAuth/index.esm.js +2 -2
  583. package/dist/views/afterAuth/index.js +2 -2
  584. package/dist/views/afterAuth/page-view/index.esm.js +1 -1
  585. package/dist/views/afterAuth/page-view/index.js +1 -1
  586. package/dist/views/form-builder/custom-form/index.esm.js +1 -1
  587. package/dist/views/form-builder/custom-form/index.js +1 -1
  588. package/dist/views/form-builder/element-edit-forms/index.esm.js +1 -1
  589. package/dist/views/form-builder/form-fields/index.esm.js +1 -1
  590. package/dist/views/form-builder/form-fields/index.js +1 -1
  591. package/dist/views/form-builder/index.esm.js +5 -5
  592. package/dist/views/form-builder/index.js +3 -3
  593. package/dist/views/form-builder/redux/index.esm.js +1 -1
  594. package/dist/views/form-builder/utils/index.esm.js +1 -1
  595. package/dist/views/form-builder/utils/index.js +1 -1
  596. package/dist/views/index.esm.js +39 -34
  597. package/dist/views/index.esm.js.map +1 -1
  598. package/dist/views/index.js +36 -31
  599. package/dist/views/index.js.map +1 -1
  600. package/dist/views/template-editor/add-template/index.esm.js +1 -1
  601. package/dist/views/template-editor/add-template/index.js +1 -1
  602. package/dist/views/template-editor/components/index.esm.js +7 -6
  603. package/dist/views/template-editor/components/index.esm.js.map +1 -1
  604. package/dist/views/template-editor/components/index.js +4 -3
  605. package/dist/views/template-editor/components/index.js.map +1 -1
  606. package/dist/views/template-editor/edit-section-modal/index.esm.js +1 -1
  607. package/dist/views/template-editor/index.esm.js +25 -20
  608. package/dist/views/template-editor/index.esm.js.map +1 -1
  609. package/dist/views/template-editor/index.js +16 -11
  610. package/dist/views/template-editor/index.js.map +1 -1
  611. package/dist/views/template-editor/routes/index.esm.js +1 -1
  612. package/dist/views/template-editor/routes/index.js +1 -1
  613. package/dist/views/template-editor/template-modal/index.esm.js +1 -1
  614. package/dist/views/template-editor/template-modal/index.js +1 -1
  615. package/dist/views/template-editor/template-name-modal/index.esm.js +1 -1
  616. package/dist/views/template-editor/template-name-modal/index.js +1 -1
  617. package/dist/views/template-editor/templates/index.esm.js +1 -1
  618. package/dist/views/template-editor/templates/index.js +1 -1
  619. package/dist/views/template-editor/utils/index.esm.js +10 -6
  620. package/dist/views/template-editor/utils/index.js +6 -2
  621. package/dist/views/template-editor/utils/index.js.map +1 -1
  622. package/package.json +1 -1
  623. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js +0 -5479
  624. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js.map +0 -1
  625. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js +0 -5478
  626. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js.map +0 -1
  627. package/dist/chunks/add-template-DVvbD9a4.esm.js +0 -11
  628. package/dist/chunks/add-template-DVvbD9a4.esm.js.map +0 -1
  629. package/dist/chunks/add-template-Dohg2bHJ.js +0 -10
  630. package/dist/chunks/add-template-Dohg2bHJ.js.map +0 -1
  631. package/dist/chunks/chat-bot-BpNtrZEL.esm.js.map +0 -1
  632. package/dist/chunks/chat-bot-osiGMG3g.js.map +0 -1
  633. package/dist/chunks/common-C5AokA7z.js +0 -368
  634. package/dist/chunks/common-C5AokA7z.js.map +0 -1
  635. package/dist/chunks/common-CaomnEjX.esm.js +0 -369
  636. package/dist/chunks/common-CaomnEjX.esm.js.map +0 -1
  637. package/dist/chunks/common-utility-DGpbsf7S.esm.js.map +0 -1
  638. package/dist/chunks/constant-Bwg2s_Sn.esm.js.map +0 -1
  639. package/dist/chunks/constant-ZYAN_teD.js.map +0 -1
  640. package/dist/chunks/edit-section-modal-BW-aZmUv.esm.js.map +0 -1
  641. package/dist/chunks/fullScreen-BLLa9ogA.js.map +0 -1
  642. package/dist/chunks/fullScreen-DFgzE41_.esm.js.map +0 -1
  643. package/dist/chunks/template-modal-B2VgotrF.esm.js.map +0 -1
  644. package/dist/chunks/template-modal-X-iSmlki.js.map +0 -1
  645. package/dist/chunks/template-name-modal-CeqxIE2r.js.map +0 -1
  646. package/dist/chunks/template-name-modal-Dctn8t3t.esm.js.map +0 -1
  647. package/dist/chunks/templates-CCy1eG6A.esm.js.map +0 -1
  648. package/dist/chunks/templates-CUREMwYo.js.map +0 -1
package/dist/style.css CHANGED
@@ -1298,63 +1298,6 @@
1298
1298
  }
1299
1299
  .chatBot--disclaimer-text .MuiTypography-root {
1300
1300
  margin-top: 0 !important;
1301
- }
1302
-
1303
- .chatBot--panel.chatBot--panel--inline {
1304
- position: relative;
1305
- top: auto;
1306
- right: auto;
1307
- bottom: auto;
1308
- width: 100%;
1309
- max-width: 600px;
1310
- margin: 0 auto;
1311
- height: 100%; /* Fill the container so input sits at the bottom */
1312
- min-height: calc(100vh - 80px); /* Fallback for FullScreenLayout padding */
1313
- border: none;
1314
- box-shadow: none;
1315
- animation: none;
1316
- background: transparent;
1317
- overflow: visible; /* Ensure floating button is not clipped */
1318
- }
1319
- .chatBot--panel.chatBot--panel--inline .chatBot--body {
1320
- padding-top: 40px;
1321
- flex: 1; /* Ensure body takes available space, pushing input down */
1322
- }
1323
- .chatBot--panel.chatBot--panel--inline .chatBot--input-area {
1324
- background: transparent;
1325
- border-top: none;
1326
- padding-bottom: 24px; /* Add some padding so it's not flush with the very bottom edge */
1327
- }
1328
- .chatBot--panel.chatBot--panel--inline .chatBot--input-wrap {
1329
- background: #fff;
1330
- }
1331
- .chatBot--panel.chatBot--panel--inline .chatBot--inline-actions {
1332
- position: absolute;
1333
- top: 24px;
1334
- right: -60px; /* Float outside the message flow */
1335
- z-index: 10;
1336
- }
1337
- .chatBot--panel.chatBot--panel--inline .chatBot--new-chat-btn {
1338
- display: flex;
1339
- align-items: center;
1340
- justify-content: center;
1341
- width: 36px;
1342
- height: 36px;
1343
- padding: 0;
1344
- background: transparent;
1345
- border: none;
1346
- color: #666;
1347
- cursor: pointer;
1348
- transition: all 0.2s ease;
1349
- }
1350
- .chatBot--panel.chatBot--panel--inline .chatBot--new-chat-btn:hover {
1351
- color: #000;
1352
- transform: scale(1.1);
1353
- }
1354
-
1355
- .chatBot--welcome--center .chatBot--greeting,
1356
- .chatBot--welcome--center .chatBot--greeting-sub {
1357
- text-align: center;
1358
1301
  }.action-bar {
1359
1302
  display: flex;
1360
1303
  padding: 0.75rem 0rem;
@@ -9823,32 +9766,11 @@ th .hbs-placeholder {
9823
9766
 
9824
9767
  .formSection--Button :disabled {
9825
9768
  color: rgba(0, 0, 0, 0.25);
9826
- }.editSectionModal--Divider {
9827
- border-color: #eeeff1;
9828
- }
9829
- .editSectionModal--DialogTitle {
9830
- padding: 0.75rem 1.5rem !important;
9831
- border-bottom: 1px solid #d3d3d4;
9832
- }
9833
- .editSectionModal--SectionTitle {
9834
- padding-left: 1.5rem;
9835
- }
9836
- .editSectionModal--DialogContents {
9837
- padding: 1.5rem !important;
9838
- }
9839
- .editSectionModal--DialogAction {
9840
- justify-content: flex-end !important;
9841
- padding: 0.5rem 1.5rem !important;
9842
- background-color: #eeeff1;
9843
- }
9844
- .editSectionModal--DialogAction--WhiteBtn {
9845
- background-color: #fff !important;
9846
- color: #1f2125;
9847
9769
  }.companySelectionModal--Divider {
9848
- border-color: #eeeff1;
9770
+ border-color: #d3d3d4;
9849
9771
  }
9850
9772
  .companySelectionModal--DialogTitle {
9851
- border-bottom: 1px solid #d3d3d4;
9773
+ border-bottom: 1px solid #bdbebf;
9852
9774
  }
9853
9775
  .companySelectionModal--SectionTitle {
9854
9776
  padding-left: 1.5rem;
@@ -9859,36 +9781,4643 @@ th .hbs-placeholder {
9859
9781
  .companySelectionModal--DialogAction {
9860
9782
  justify-content: flex-end !important;
9861
9783
  padding: 0.5rem 1.5rem !important;
9862
- background-color: #eeeff1;
9784
+ background-color: #d3d3d4;
9863
9785
  }
9864
9786
  .companySelectionModal--DialogAction--WhiteBtn {
9865
9787
  background-color: #fff !important;
9866
9788
  color: #1f2125;
9867
- }.black-outlined-btn {
9868
- color: #1f2125 !important;
9869
- }.companySelectionModal--Divider {
9870
- border-color: #eeeff1;
9789
+ }:root,
9790
+ .templates,
9791
+ .pb {
9792
+
9793
+ /* ── Brand ──────────────────────────────────────────────── */
9794
+ --brand-green: #2EB273;
9795
+ --brand-green-deep: #1A8A56;
9796
+ --brand-green-dark: #146B43;
9797
+ --brand-navy: #001866;
9798
+ --brand-navy-soft: #1B2C6E;
9799
+
9800
+ /* ── Primary scale (green) ──────────────────────────────── */
9801
+ --green-50: #F1FBF6;
9802
+ --green-100: #E2F5EC;
9803
+ --green-200: #C8EBD8;
9804
+ --green-300: #A7DEC2;
9805
+ --green-400: #6DCB9D;
9806
+ --green-500: #2EB273;
9807
+ --green-600: #1A8A56;
9808
+ --green-700: #146B43;
9809
+ --green-800: #0E4D31;
9810
+ --green-900: #073220;
9811
+
9812
+ /* ── Neutrals — warm-tinted, calm ───────────────────────── */
9813
+ --n-0: #FFFFFF;
9814
+ --n-25: #FCFCFD;
9815
+ --n-50: #F7F8F9;
9816
+ --n-75: #F2F3F5;
9817
+ --n-100: #ECEDEF;
9818
+ --n-150: #E1E3E6;
9819
+ --n-200: #D2D5D9;
9820
+ --n-300: #B6BABF;
9821
+ --n-400: #9498A0;
9822
+ --n-450: #767B83;
9823
+ /* AA-capable mid-grey — quaternary text floor (4.5:1 on white) */
9824
+ --n-500: #6D7178;
9825
+ --n-600: #54585F;
9826
+ --n-700: #3D4046;
9827
+ --n-800: #25272C;
9828
+ --n-900: #15171B;
9829
+ --n-950: #0B0C0F;
9830
+
9831
+ /* ── Surfaces ───────────────────────────────────────────── */
9832
+ --surface-canvas: var(--n-25);
9833
+ /* page bg */
9834
+ --surface-raised: var(--n-0);
9835
+ /* cards, top bar, main panels */
9836
+ --surface-sunken: var(--n-50);
9837
+ /* sidebars, toolbars */
9838
+ --surface-muted: var(--n-75);
9839
+ /* inactive inputs, subtle wells */
9840
+ --surface-hover: var(--n-75);
9841
+ --surface-active: var(--n-100);
9842
+ --surface-overlay: rgba(15, 17, 21, 0.32);
9843
+ /* modal/sheet scrim (added 2A) */
9844
+ --surface-overlay-strong: rgba(15, 17, 21, 0.56);
9845
+ /* fullscreen scrim (added 2A) */
9846
+ --surface-inverse: var(--n-900);
9847
+ /* tooltip, snackbar surface (added 2A) */
9848
+ --text-on-inverse: var(--n-0);
9849
+ /* text on inverse surface (added 2A) */
9850
+
9851
+ /* ── Borders ────────────────────────────────────────────── */
9852
+ --border-subtle: var(--n-100);
9853
+ --border-default: var(--n-150);
9854
+ --border-strong: var(--n-200);
9855
+ --border-divider: var(--n-100);
9856
+ /* inline cell dividers (added 2A) */
9857
+ --border-focus: var(--green-500);
9858
+ --border-focus-ai: var(--ai-fg);
9859
+ /* added 2A */
9860
+ --border-focus-danger: var(--danger);
9861
+ /* added 2A */
9862
+
9863
+ /* ── Text ───────────────────────────────────────────────── */
9864
+ --text-primary: var(--n-900);
9865
+ --text-secondary: var(--n-700);
9866
+ --text-tertiary: var(--n-500);
9867
+ --text-quaternary: var(--n-450);
9868
+ /* a11y 4.3 — was n-400 (2.89:1, sub-AA on real text) */
9869
+ --text-disabled: var(--n-300);
9870
+ --text-inverse: var(--n-0);
9871
+ --text-brand: var(--green-700);
9872
+ /* a11y 4.4 — was green-600 (4.36:1, just-misses AA for text) */
9873
+ --text-brand-strong: var(--green-700);
9874
+
9875
+ /* ── Action role — 3-tier brand indirection (primitive → brand → role)
9876
+ Components consume --color-action ONLY; a new product/white-label
9877
+ theme reskins by overriding --brand-action, never by touching a
9878
+ component (gap-audit F1). Fill is green-700 so white text clears AA
9879
+ at 6.53:1 — brand-green #2EB273 (2.72:1) stays for logo/identity. ── */
9880
+ --brand-action: var(--green-700);
9881
+ /* tier 2 — overridable per product/theme */
9882
+ --brand-action-hover: var(--green-800);
9883
+ --brand-action-active: var(--green-900);
9884
+ --color-action: var(--brand-action);
9885
+ /* tier 3 — the role components use */
9886
+ --color-action-hover: var(--brand-action-hover);
9887
+ --color-action-active: var(--brand-action-active);
9888
+ --color-on-action: #FFFFFF;
9889
+ /* text/icon on action fill */
9890
+
9891
+ /* ── Semantic colors ────────────────────────────────────── */
9892
+ --success: #0C8C6A;
9893
+ /* OWN teal-shifted ramp (~+15° off brand green) so brand green never signals routine status (1.1/7.1) */
9894
+ --success-bg: #D8F3EB;
9895
+ --success-bg-strong: #B6E8D8;
9896
+
9897
+ --warning: #B26B0F;
9898
+ --warning-bg: #FEF1DD;
9899
+ --warning-bg-strong: #FCDFB1;
9900
+
9901
+ --danger: #C2363A;
9902
+ --danger-bg: #FBE3E5;
9903
+ --danger-bg-strong: #F5C7CB;
9904
+
9905
+ --info: #2A6FDB;
9906
+ --info-bg: #E6EEF9;
9907
+ --info-bg-strong: #CDDDF3;
9908
+
9909
+ --neutral-bg: var(--n-100);
9910
+ --neutral-fg: var(--n-700);
9911
+
9912
+ /* ── Row selection (brand-tinted, dark-aware) ──────────── */
9913
+ --row-selected-bg: #EAF1FB;
9914
+ /* neutral/info tint — NOT brand green (1.1) */
9915
+ --row-selected-bg-hover: #D9E7F8;
9916
+
9917
+ /* ── Semantic strong-fg (text on *-bg-strong) — added 2A ── */
9918
+ --success-fg-strong: #07543F;
9919
+ /* teal-dark — matches de-branded success ramp */
9920
+ --warning-fg-strong: #5C3604;
9921
+ --danger-fg-strong: #7A1A1F;
9922
+ --info-fg-strong: #133A7E;
9923
+
9924
+ /* ── AI accent (purple) — for AI-suggested fields, agents ── */
9925
+ --ai-fg: #6D45D9;
9926
+ --ai-bg: #EFE9FC;
9927
+ --ai-bg-strong: #DDD0F8;
9928
+ --ai-fg-deep: #5535B8;
9929
+ /* filled-AI button bg (added 2A) */
9930
+ --ai-on-fill: #FFFFFF;
9931
+ /* text on ai-fg-deep (added 2A) */
9932
+
9933
+ /* ── Tag palette (8 hues, low-chroma) ───────────────────── */
9934
+ --tag-slate-bg: #ECEDEF;
9935
+ --tag-slate-fg: #3D4046;
9936
+ --tag-green-bg: #E2F5EC;
9937
+ --tag-green-fg: #1A6B43;
9938
+ --tag-blue-bg: #E6EEF9;
9939
+ --tag-blue-fg: #1F4FA8;
9940
+ --tag-purple-bg: #EFE9FC;
9941
+ --tag-purple-fg: #5535B8;
9942
+ --tag-amber-bg: #FEF1DD;
9943
+ --tag-amber-fg: #8A540B;
9944
+ --tag-rose-bg: #FCE5E8;
9945
+ --tag-rose-fg: #A8232A;
9946
+ --tag-teal-bg: #DDF3F1;
9947
+ --tag-teal-fg: #156B66;
9948
+ --tag-pink-bg: #FBE4F1;
9949
+ --tag-pink-fg: #9D2B6F;
9950
+
9951
+ /* ── Typography ─────────────────────────────────────────── */
9952
+ --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
9953
+ --font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, monospace;
9954
+
9955
+ /* compact scale — Attio-tight
9956
+ Half-step tokens (3xs, 2_5xs) added during audit to absorb stray sizes
9957
+ (9.5px, 10.5px, 11.5px) that were hardcoded across components. */
9958
+ --text-3xs: 9px;
9959
+ /* @restricted — numeric count-chips ONLY, never words (a11y 1.4); enforced by the font-size disallow-list in .stylelintrc.json. Legit count-chip uses opt in with a stylelint-disable-line comment. */
9960
+ --text-2_5xs: 10px;
9961
+ /* meta, kbd, eyebrows — section heads */
9962
+ --text-2xs: 10px;
9963
+ /* @deprecated — duplicate of --text-2_5xs; migrate to --text-2_5xs (1.2) */
9964
+ --text-xs: 11px;
9965
+ /* table meta, captions, footer text */
9966
+ --text-sm: 12px;
9967
+ /* default body in dense UI, buttons, chips, table cells */
9968
+ --text-md: 13px;
9969
+ /* preferred body, primary buttons */
9970
+ --text-base: 14px;
9971
+ /* page titles in narrow chrome */
9972
+ --text-lg: 15px;
9973
+ /* page title default */
9974
+ --text-xl: 18px;
9975
+ /* h2 */
9976
+ --text-2xl: 22px;
9977
+ /* h1 */
9978
+ --text-3xl: 26px;
9979
+ /* display */
9980
+ --text-4xl: 32px;
9981
+ /* hero */
9982
+ --text-5xl: 44px;
9983
+ /* hero page title */
9984
+
9985
+ --leading-1: 1;
9986
+ /* @kind font */
9987
+ /* single-line dense cells (added 2A) */
9988
+ --leading-tight-1: 1.15;
9989
+ /* @kind font */
9990
+ /* dense headings (added 2A) */
9991
+ --leading-tight: 1.25;
9992
+ /* @kind font */
9993
+ --leading-snug: 1.35;
9994
+ /* @kind font */
9995
+ --leading-normal: 1.5;
9996
+ /* @kind font */
9997
+
9998
+ /* Font weights — explicit tokens so HC theme can shift +100 (added 2A) */
9999
+ --fw-regular: 400;
10000
+ /* @kind font */
10001
+ --fw-medium: 500;
10002
+ /* @kind font */
10003
+ --fw-semibold: 600;
10004
+ /* @kind font */
10005
+ --fw-bold: 700;
10006
+ /* @kind font */
10007
+
10008
+ --tracking-tight: -0.018em;
10009
+ /* @kind font */
10010
+ /* display */
10011
+ --tracking-snug: -0.011em;
10012
+ /* @kind font */
10013
+ /* headings */
10014
+ --tracking-normal: -0.003em;
10015
+ /* @kind font */
10016
+ /* body — Attio is barely-tracked */
10017
+ --tracking-wide: 0.04em;
10018
+ /* @kind font */
10019
+ /* uppercase eyebrows */
10020
+
10021
+ /* ── Spacing — 4px grid ─────────────────────────────────── */
10022
+ --s-0: 0px;
10023
+ --s-1: 2px;
10024
+ --s-2: 4px;
10025
+ --s-3: 6px;
10026
+ --s-4: 8px;
10027
+ --s-5: 10px;
10028
+ --s-6: 12px;
10029
+ --s-7: 14px;
10030
+ /* added 2A — absorbs ~80 stray 14px values across composites */
10031
+ --s-8: 16px;
10032
+ --s-10: 20px;
10033
+ --s-12: 24px;
10034
+ --s-16: 32px;
10035
+ --s-20: 40px;
10036
+ --s-24: 48px;
10037
+ --s-32: 64px;
10038
+
10039
+ /* ── Radius ─────────────────────────────────────────────── */
10040
+ --r-xs: 3px;
10041
+ --r-sm: 4px;
10042
+ --r-md: 6px;
10043
+ /* default — buttons, inputs, chips */
10044
+ --r-lg: 8px;
10045
+ /* cards, popovers */
10046
+ --r-xl: 10px;
10047
+ /* sheets, modals */
10048
+ --r-2xl: 14px;
10049
+ --r-full: 9999px;
10050
+
10051
+ /* ── Shadows — ultra subtle ─────────────────────────────── */
10052
+ --shadow-xs: 0 1px 0 rgba(15, 17, 21, .04);
10053
+ --shadow-sm: 0 1px 2px rgba(15, 17, 21, .04),
10054
+ 0 0 0 1px rgba(15, 17, 21, .04);
10055
+ --shadow-md: 0 2px 4px rgba(15, 17, 21, .04),
10056
+ 0 1px 2px rgba(15, 17, 21, .04),
10057
+ 0 0 0 1px rgba(15, 17, 21, .05);
10058
+ --shadow-lg: 0 12px 32px -8px rgba(15, 17, 21, .14),
10059
+ 0 4px 8px -2px rgba(15, 17, 21, .06),
10060
+ 0 0 0 1px rgba(15, 17, 21, .04);
10061
+ --shadow-xl: 0 24px 48px -12px rgba(15, 17, 21, .22),
10062
+ 0 8px 16px -4px rgba(15, 17, 21, .08),
10063
+ 0 0 0 1px rgba(15, 17, 21, .04);
10064
+ --shadow-focus: 0 0 0 3px rgba(46, 178, 115, .18);
10065
+ --shadow-focus-ai: 0 0 0 3px rgba(109, 69, 217, .18);
10066
+ --shadow-focus-danger: 0 0 0 3px rgba(194, 54, 58, .18);
10067
+ /* added 2A */
10068
+ --shadow-inset-divider-b: inset 0 -1px 0 var(--border-subtle);
10069
+ /* added 2A */
10070
+ --shadow-inset-divider-t: inset 0 1px 0 var(--border-subtle);
10071
+ /* added 2A */
10072
+
10073
+ /* ── Motion ─────────────────────────────────────────────── */
10074
+ --ease-out: cubic-bezier(.16, 1, .3, 1);
10075
+ /* @kind other */
10076
+ --ease-in-out: cubic-bezier(.65, 0, .35, 1);
10077
+ /* @kind other */
10078
+ --ease-emphasized: cubic-bezier(.2, 0, 0, 1);
10079
+ /* @kind other */
10080
+ /* modal entry (added 2A) */
10081
+ --ease-decelerate: cubic-bezier(0, 0, .2, 1);
10082
+ /* @kind other */
10083
+ /* sheet entry (added 2A) */
10084
+ --dur-fast: 120ms;
10085
+ /* @kind other */
10086
+ --dur-base: 180ms;
10087
+ /* @kind other */
10088
+ --dur-slow: 260ms;
10089
+ /* @kind other */
10090
+
10091
+ /* ── Component heights — Attio-compact ──────────────────── */
10092
+ --h-xs: 20px;
10093
+ --h-sm: 24px;
10094
+ --h-md: 28px;
10095
+ /* default buttons, inputs */
10096
+ --h-lg: 32px;
10097
+ --row-h: 30px;
10098
+ /* table row */
10099
+ --row-h-c: 28px;
10100
+ /* table row, compact */
10101
+
10102
+ /* ── Layout ─────────────────────────────────────────────── */
10103
+ --sidebar-w: 220px;
10104
+ --sidebar-w-mini: 56px;
10105
+ --topbar-h: 44px;
10106
+ --subbar-h: 40px;
10107
+ --content-pad-x: 20px;
10108
+ --content-pad-y: 16px;
10109
+
10110
+ /* ── Responsive scale standards ─────────────────────────────
10111
+ Five breakpoints (added 2A). Tokens above are *desktop* values.
10112
+ Mobile/tablet overrides live in responsive.css. */
10113
+ --bp-sm: 480px;
10114
+ --bp-md: 768px;
10115
+ --bp-mobile: 640px;
10116
+ /* @deprecated alias — use --bp-md/--bp-sm (1.2) */
10117
+ --bp-tablet: 1024px;
10118
+ /* @deprecated alias — use --bp-lg (1.2) */
10119
+ --bp-lg: 1280px;
10120
+ --bp-xl: 1440px;
10121
+ --bp-2xl: 1920px;
10122
+
10123
+ /* Container-query breakpoints — for composites that need to
10124
+ respond to their container width, not the viewport (added 2A) */
10125
+ --cq-sm: 360px;
10126
+ --cq-md: 600px;
10127
+ --cq-lg: 900px;
10128
+
10129
+ /* Touch-target floor for mobile (WCAG 2.5.5 ≥ 44px) */
10130
+ --touch-min: 44px;
10131
+ /* @kind spacing */
10132
+
10133
+ /* Interactive hit-target floor — decoupled from painted size (T1).
10134
+ Fine pointer 32px; coarse (touch) bumped to --touch-min below. */
10135
+ --hit-min: 32px;
10136
+ /* @kind spacing */
10137
+
10138
+ /* ── Z-index scale (added 2A) — every overlay must use these.
10139
+ Raw values (49, 48, 30, 2, 1) flagged in audit are replaced. */
10140
+ --z-base: 1;
10141
+ /* @kind other */
10142
+ --z-sticky: 20;
10143
+ /* @kind other */
10144
+ --z-dropdown: 30;
10145
+ /* @kind other */
10146
+ --z-drawer: 35;
10147
+ /* @kind other */
10148
+ --z-popover: 40;
10149
+ /* @kind other */
10150
+ --z-tooltip: 45;
10151
+ /* @kind other */
10152
+ --z-modal-scrim: 48;
10153
+ /* @kind other */
10154
+ --z-modal: 50;
10155
+ /* @kind other */
10156
+ --z-toast: 60;
10157
+ /* @kind other */
10158
+ --z-debug: 99;
10159
+ /* @kind other */
10160
+
10161
+ /* Density mode — set by responsive.css per breakpoint.
10162
+ Components consume these instead of hardcoding heights. */
10163
+ --h-control: var(--h-md);
10164
+ /* default control height */
10165
+ --h-control-sm: var(--h-sm);
10166
+ --h-row: var(--row-h);
10167
+ --pad-x: var(--content-pad-x);
10168
+ --pad-y: var(--content-pad-y);
10169
+
10170
+ }
10171
+
10172
+ /* ═══════════════════════════════════════════════════════════════
10173
+ ERPForce PDF / Document Template Builder
10174
+ Builder chrome + the paginated A4 document (.pbd-*)
10175
+ Light theme · matches Reports app · uses v2 tokens
10176
+ ═══════════════════════════════════════════════════════════════ */
10177
+
10178
+ html,
10179
+ body {
10180
+ height: 100%;
9871
10181
  }
9872
- .companySelectionModal--DialogTitle {
9873
- border-bottom: 1px solid #d3d3d4;
10182
+
10183
+ body {
10184
+ background: var(--surface-sunken);
10185
+ overflow: hidden;
9874
10186
  }
9875
- .companySelectionModal--SectionTitle {
9876
- padding-left: 1.5rem;
10187
+
10188
+ #root {
10189
+ height: 100%;
9877
10190
  }
9878
- .companySelectionModal--DialogContents {
9879
- padding: 1.5rem !important;
10191
+
10192
+ .pb,
10193
+ .pb *,
10194
+ .pb *::before,
10195
+ .pb *::after {
10196
+ box-sizing: border-box;
9880
10197
  }
9881
- .companySelectionModal--DialogAction {
9882
- justify-content: flex-end !important;
9883
- padding: 0.5rem 1.5rem !important;
9884
- background-color: #eeeff1;
10198
+
10199
+ .pb {
10200
+ height: 100%;
10201
+ display: flex;
10202
+ flex-direction: column;
10203
+ color: var(--text-primary);
10204
+ font-family: var(--font-sans);
10205
+ font-size: var(--text-sm);
10206
+ line-height: 1.5;
9885
10207
  }
9886
- .companySelectionModal--DialogAction--WhiteBtn {
9887
- background-color: #fff !important;
9888
- color: #1f2125;
9889
- }.templates {
9890
- padding: 0rem 2rem;
10208
+
10209
+ /* ── top bar ────────────────────────────────────────────────── */
10210
+ .pb-top {
10211
+ height: 48px;
10212
+ flex-shrink: 0;
10213
+ display: flex;
10214
+ align-items: center;
10215
+ gap: var(--s-5);
10216
+ padding: 0 var(--s-6);
10217
+ background: var(--surface-raised);
10218
+ border-bottom: 1px solid var(--border-default);
10219
+ z-index: var(--z-sticky);
10220
+ }
10221
+
10222
+ .pb-brand {
10223
+ display: flex;
10224
+ align-items: center;
10225
+ gap: var(--s-4);
10226
+ }
10227
+
10228
+ .pb-brand img {
10229
+ height: 18px;
10230
+ width: auto;
10231
+ display: block;
10232
+ }
10233
+
10234
+ .pb-brand-tag {
10235
+ font-size: var(--text-2_5xs);
10236
+ font-weight: 700;
10237
+ letter-spacing: var(--tracking-wide);
10238
+ text-transform: uppercase;
10239
+ color: var(--text-quaternary);
10240
+ padding: 3px 7px;
10241
+ border: 1px solid var(--border-default);
10242
+ border-radius: var(--r-sm);
10243
+ }
10244
+
10245
+ .pb-crumb {
10246
+ display: flex;
10247
+ align-items: center;
10248
+ gap: var(--s-3);
10249
+ font-size: var(--text-sm);
10250
+ color: var(--text-tertiary);
10251
+ }
10252
+
10253
+ .pb-crumb svg {
10254
+ width: 13px;
10255
+ height: 13px;
10256
+ }
10257
+
10258
+ .pb-crumb b {
10259
+ color: var(--text-primary);
10260
+ font-weight: 600;
10261
+ }
10262
+
10263
+ .pb-doc-input {
10264
+ font: inherit;
10265
+ font-size: var(--text-sm);
10266
+ font-weight: 600;
10267
+ color: var(--text-primary);
10268
+ border: 1px solid transparent;
10269
+ border-radius: var(--r-sm);
10270
+ padding: 3px 7px;
10271
+ max-width: 240px;
10272
+ background: transparent;
10273
+ }
10274
+
10275
+ .pb-doc-input:hover {
10276
+ border-color: var(--border-default);
10277
+ }
10278
+
10279
+ .pb-doc-input:focus {
10280
+ border-color: var(--border-focus);
10281
+ box-shadow: var(--shadow-focus);
10282
+ outline: none;
10283
+ background: var(--surface-raised);
10284
+ }
10285
+
10286
+ .pb-top-sp {
10287
+ flex: 1;
10288
+ }
10289
+
10290
+ /* generic buttons */
10291
+ .pbtn {
10292
+ display: inline-flex;
10293
+ align-items: center;
10294
+ gap: var(--s-3);
10295
+ height: 30px;
10296
+ padding: 0 var(--s-5);
10297
+ border-radius: var(--r-md);
10298
+ font-size: var(--text-sm);
10299
+ font-weight: 500;
10300
+ color: var(--text-secondary);
10301
+ border: 1px solid var(--border-default);
10302
+ background: var(--surface-raised);
10303
+ white-space: nowrap;
10304
+ transition: background var(--dur-fast), border-color var(--dur-fast);
10305
+ }
10306
+
10307
+ .pbtn svg {
10308
+ width: 14px;
10309
+ height: 14px;
10310
+ }
10311
+
10312
+ .pbtn:hover {
10313
+ background: var(--surface-hover);
10314
+ color: var(--text-primary);
10315
+ }
10316
+
10317
+ .pbtn--primary {
10318
+ background: var(--color-action);
10319
+ border-color: transparent;
10320
+ color: var(--color-on-action);
10321
+ box-shadow: var(--shadow-sm);
10322
+ }
10323
+
10324
+ .pbtn--primary:hover {
10325
+ background: var(--color-action-hover);
10326
+ color: var(--color-on-action);
10327
+ }
10328
+
10329
+ .pbtn--ai {
10330
+ background: var(--ai-fg-deep);
10331
+ border-color: transparent;
10332
+ color: #fff;
10333
+ }
10334
+
10335
+ .pbtn--ai:hover {
10336
+ background: var(--ai-fg);
10337
+ color: #fff;
10338
+ }
10339
+
10340
+ .pbtn--ghost {
10341
+ border-color: transparent;
10342
+ background: transparent;
10343
+ }
10344
+
10345
+ .pbtn--ghost:hover {
10346
+ background: var(--surface-hover);
10347
+ }
10348
+
10349
+ .pbtn--sm {
10350
+ height: 26px;
10351
+ padding: 0 var(--s-4);
10352
+ font-size: var(--text-xs);
10353
+ }
10354
+
10355
+ .pbtn--icon {
10356
+ width: 30px;
10357
+ padding: 0;
10358
+ justify-content: center;
10359
+ }
10360
+
10361
+ .pbtn.is-on {
10362
+ background: var(--green-50);
10363
+ border-color: var(--green-300);
10364
+ color: var(--text-brand-strong);
10365
+ }
10366
+
10367
+ .pbtn:disabled {
10368
+ opacity: .45;
10369
+ cursor: not-allowed;
10370
+ }
10371
+
10372
+ /* segmented */
10373
+ .pb-seg {
10374
+ display: inline-flex;
10375
+ background: var(--surface-muted);
10376
+ border-radius: var(--r-md);
10377
+ padding: 2px;
10378
+ gap: 2px;
10379
+ }
10380
+
10381
+ .pb-seg button {
10382
+ height: 24px;
10383
+ padding: 0 var(--s-4);
10384
+ border-radius: var(--r-sm);
10385
+ font-size: var(--text-xs);
10386
+ font-weight: 500;
10387
+ color: var(--text-tertiary);
10388
+ display: inline-flex;
10389
+ align-items: center;
10390
+ gap: var(--s-2);
10391
+ }
10392
+
10393
+ .pb-seg button svg {
10394
+ width: 12px;
10395
+ height: 12px;
10396
+ }
10397
+
10398
+ .pb-seg button.is-active {
10399
+ background: var(--surface-raised);
10400
+ color: var(--text-primary);
10401
+ box-shadow: var(--shadow-xs);
10402
+ font-weight: 600;
10403
+ }
10404
+
10405
+ .pb-seg button:not(.is-active):hover {
10406
+ color: var(--text-secondary);
10407
+ }
10408
+
10409
+ /* ── body 3-column workspace ────────────────────────────────── */
10410
+ .pb-body {
10411
+ flex: 1;
10412
+ display: flex;
10413
+ min-height: 0;
10414
+ }
10415
+
10416
+ /* left rail */
10417
+ .pb-rail {
10418
+ width: 248px;
10419
+ flex-shrink: 0;
10420
+ background: var(--surface-raised);
10421
+ border-right: 1px solid var(--border-default);
10422
+ display: flex;
10423
+ flex-direction: column;
10424
+ min-height: 0;
10425
+ }
10426
+
10427
+ .pb-rail--collapsed {
10428
+ width: 0;
10429
+ overflow: hidden;
10430
+ border: 0;
10431
+ }
10432
+
10433
+ .pb-rail-tabs {
10434
+ display: flex;
10435
+ padding: var(--s-4) var(--s-4) 0;
10436
+ gap: var(--s-2);
10437
+ }
10438
+
10439
+ .pb-rail-tab {
10440
+ flex: 1;
10441
+ height: 28px;
10442
+ border-radius: var(--r-md);
10443
+ font-size: var(--text-xs);
10444
+ font-weight: 600;
10445
+ color: var(--text-tertiary);
10446
+ display: inline-flex;
10447
+ align-items: center;
10448
+ justify-content: center;
10449
+ gap: var(--s-2);
10450
+ }
10451
+
10452
+ .pb-rail-tab svg {
10453
+ width: 13px;
10454
+ height: 13px;
10455
+ }
10456
+
10457
+ .pb-rail-tab.is-active {
10458
+ background: var(--surface-active);
10459
+ color: var(--text-primary);
10460
+ }
10461
+
10462
+ .pb-rail-body {
10463
+ flex: 1;
10464
+ overflow: auto;
10465
+ padding: var(--s-4);
10466
+ scrollbar-width: thin;
10467
+ }
10468
+
10469
+ /* field tree */
10470
+ .pb-fnote {
10471
+ font-size: var(--text-xs);
10472
+ color: var(--text-tertiary);
10473
+ line-height: 1.5;
10474
+ margin-bottom: var(--s-5);
10475
+ padding: var(--s-4) var(--s-5);
10476
+ background: var(--surface-muted);
10477
+ border-radius: var(--r-md);
10478
+ }
10479
+
10480
+ .pb-fnote code {
10481
+ font-family: var(--font-mono);
10482
+ font-size: 10.5px;
10483
+ color: var(--text-brand-strong);
10484
+ background: var(--green-50);
10485
+ padding: 1px 4px;
10486
+ border-radius: 3px;
10487
+ }
10488
+
10489
+ .pb-fgroup {
10490
+ margin-bottom: var(--s-2);
10491
+ }
10492
+
10493
+ .pb-fgroup-h {
10494
+ display: flex;
10495
+ align-items: center;
10496
+ gap: var(--s-3);
9891
10497
  width: 100%;
10498
+ height: 30px;
10499
+ padding: 0 var(--s-3);
10500
+ border-radius: var(--r-md);
10501
+ font-size: var(--text-sm);
10502
+ font-weight: 600;
10503
+ color: var(--text-secondary);
10504
+ }
10505
+
10506
+ .pb-fgroup-h:hover {
10507
+ background: var(--surface-hover);
10508
+ }
10509
+
10510
+ .pb-fgroup-h svg.pb-fchev {
10511
+ width: 13px;
10512
+ height: 13px;
10513
+ color: var(--text-quaternary);
10514
+ transition: transform var(--dur-fast);
10515
+ }
10516
+
10517
+ .pb-fgroup-h.is-open svg.pb-fchev {
10518
+ transform: rotate(90deg);
10519
+ }
10520
+
10521
+ .pb-fgroup-ic {
10522
+ width: 22px;
10523
+ height: 22px;
10524
+ border-radius: var(--r-sm);
10525
+ display: grid;
10526
+ place-items: center;
10527
+ background: var(--surface-muted);
10528
+ color: var(--text-tertiary);
10529
+ }
10530
+
10531
+ .pb-fgroup-ic svg {
10532
+ width: 13px;
10533
+ height: 13px;
10534
+ }
10535
+
10536
+ .pb-fgroup-c {
10537
+ font-size: var(--text-2xs);
10538
+ color: var(--text-quaternary);
10539
+ margin-left: auto;
10540
+ font-variant-numeric: tabular-nums;
10541
+ }
10542
+
10543
+ .pb-fields {
10544
+ display: flex;
10545
+ flex-direction: column;
10546
+ padding: var(--s-1) 0 var(--s-3) 30px;
10547
+ gap: 1px;
10548
+ }
10549
+
10550
+ .pb-field {
10551
+ display: flex;
10552
+ align-items: center;
10553
+ gap: var(--s-3);
10554
+ height: 28px;
10555
+ padding: 0 var(--s-3);
10556
+ border-radius: var(--r-sm);
10557
+ cursor: pointer;
10558
+ }
10559
+
10560
+ .pb-field:hover {
10561
+ background: var(--green-50);
10562
+ }
10563
+
10564
+ .pb-field-tag {
10565
+ font-family: var(--font-mono);
10566
+ font-size: 10.5px;
10567
+ color: var(--text-brand-strong);
10568
+ white-space: nowrap;
10569
+ }
10570
+
10571
+ .pb-field-lbl {
10572
+ font-size: var(--text-xs);
10573
+ color: var(--text-tertiary);
10574
+ margin-left: auto;
10575
+ white-space: nowrap;
10576
+ overflow: hidden;
10577
+ text-overflow: ellipsis;
10578
+ }
10579
+
10580
+ .pb-field-ins {
10581
+ width: 18px;
10582
+ height: 18px;
10583
+ border-radius: 4px;
10584
+ display: grid;
10585
+ place-items: center;
10586
+ color: var(--brand-green);
10587
+ opacity: 0;
10588
+ flex-shrink: 0;
10589
+ }
10590
+
10591
+ .pb-field:hover .pb-field-ins {
10592
+ opacity: 1;
10593
+ }
10594
+
10595
+ .pb-field-ins svg {
10596
+ width: 12px;
10597
+ height: 12px;
10598
+ }
10599
+
10600
+ .pb-field--loop .pb-field-tag {
10601
+ color: var(--ai-fg);
10602
+ }
10603
+
10604
+ /* template switcher list */
10605
+ .pb-tlist {
10606
+ display: flex;
10607
+ flex-direction: column;
10608
+ gap: var(--s-2);
10609
+ }
10610
+
10611
+ .pb-titem {
10612
+ display: flex;
10613
+ align-items: center;
10614
+ gap: var(--s-4);
10615
+ padding: var(--s-4);
10616
+ border-radius: var(--r-md);
10617
+ border: 1px solid var(--border-subtle);
10618
+ cursor: pointer;
10619
+ text-align: left;
10620
+ }
10621
+
10622
+ .pb-titem:hover {
10623
+ border-color: var(--border-strong);
10624
+ background: var(--surface-hover);
10625
+ }
10626
+
10627
+ .pb-titem.is-active {
10628
+ border-color: var(--green-400);
10629
+ background: var(--green-50);
10630
+ }
10631
+
10632
+ .pb-titem-ic {
10633
+ width: 30px;
10634
+ height: 30px;
10635
+ border-radius: var(--r-md);
10636
+ display: grid;
10637
+ place-items: center;
10638
+ flex-shrink: 0;
10639
+ }
10640
+
10641
+ .pb-titem-ic svg {
10642
+ width: 15px;
10643
+ height: 15px;
10644
+ }
10645
+
10646
+ .pb-titem-t {
10647
+ font-size: var(--text-sm);
10648
+ font-weight: 600;
10649
+ }
10650
+
10651
+ .pb-titem-s {
10652
+ font-size: var(--text-xs);
10653
+ color: var(--text-tertiary);
10654
+ margin-top: 1px;
10655
+ }
10656
+
10657
+ /* ── center: editor + preview ───────────────────────────────── */
10658
+ .pb-center {
10659
+ flex: 1;
10660
+ display: flex;
10661
+ min-width: 0;
10662
+ min-height: 0;
10663
+ }
10664
+
10665
+ /* code editor */
10666
+ .pb-editor {
10667
+ width: 44%;
10668
+ min-width: 360px;
10669
+ max-width: 620px;
10670
+ flex-shrink: 0;
10671
+ display: flex;
10672
+ flex-direction: column;
10673
+ background: #fbfbfc;
10674
+ border-right: 1px solid var(--border-default);
10675
+ min-height: 0;
10676
+ }
10677
+
10678
+ .pb-editor--hidden {
10679
+ display: none;
10680
+ }
10681
+
10682
+ .pb-editor-bar {
10683
+ height: 36px;
10684
+ flex-shrink: 0;
10685
+ display: flex;
10686
+ align-items: center;
10687
+ gap: var(--s-4);
10688
+ padding: 0 var(--s-5);
10689
+ border-bottom: 1px solid var(--border-subtle);
10690
+ background: var(--surface-raised);
10691
+ }
10692
+
10693
+ .pb-editor-bar-t {
10694
+ font-size: var(--text-xs);
10695
+ font-weight: 600;
10696
+ color: var(--text-secondary);
10697
+ display: flex;
10698
+ align-items: center;
10699
+ gap: var(--s-3);
10700
+ }
10701
+
10702
+ .pb-editor-bar-t svg {
10703
+ width: 13px;
10704
+ height: 13px;
10705
+ color: var(--text-tertiary);
10706
+ }
10707
+
10708
+ .pb-editor-dirty {
10709
+ width: 6px;
10710
+ height: 6px;
10711
+ border-radius: 50%;
10712
+ background: var(--warning);
10713
+ }
10714
+
10715
+ .pb-editor-wrap {
10716
+ flex: 1;
10717
+ position: relative;
10718
+ min-height: 0;
10719
+ overflow: hidden;
10720
+ display: flex;
10721
+ }
10722
+
10723
+ .pb-gutter {
10724
+ flex-shrink: 0;
10725
+ padding: 12px 0;
10726
+ text-align: right;
10727
+ background: #f4f5f7;
10728
+ color: var(--text-quaternary);
10729
+ font-family: var(--font-mono);
10730
+ font-size: 11px;
10731
+ line-height: 1.55;
10732
+ user-select: none;
10733
+ overflow: hidden;
10734
+ border-right: 1px solid var(--border-subtle);
10735
+ }
10736
+
10737
+ .pb-gutter-inner span {
10738
+ display: block;
10739
+ padding: 0 10px 0 12px;
10740
+ }
10741
+
10742
+ .pb-code-scroll {
10743
+ flex: 1;
10744
+ position: relative;
10745
+ overflow: hidden;
10746
+ min-width: 0;
10747
+ }
10748
+
10749
+ .pb-code-area,
10750
+ .pb-code-hl {
10751
+ margin: 0;
10752
+ padding: 12px 14px;
10753
+ font-family: var(--font-mono);
10754
+ font-size: 11px;
10755
+ line-height: 1.55;
10756
+ tab-size: 2;
10757
+ white-space: pre;
10758
+ word-wrap: normal;
10759
+ box-sizing: border-box;
10760
+ }
10761
+
10762
+ .pb-code-hl {
10763
+ position: absolute;
10764
+ top: 0;
10765
+ left: 0;
10766
+ right: 0;
10767
+ pointer-events: none;
10768
+ color: var(--n-800);
10769
+ overflow: visible;
10770
+ will-change: transform;
10771
+ }
10772
+
10773
+ .pb-code-area {
10774
+ position: absolute;
10775
+ inset: 0;
10776
+ overflow: auto;
10777
+ background: transparent;
10778
+ color: transparent;
10779
+ caret-color: var(--n-900);
10780
+ border: 0;
10781
+ outline: none;
10782
+ resize: none;
10783
+ -webkit-text-fill-color: transparent;
10784
+ scrollbar-width: thin;
10785
+ }
10786
+
10787
+ .pb-code-area::selection {
10788
+ background: rgba(46, 178, 115, .24);
10789
+ -webkit-text-fill-color: transparent;
10790
+ }
10791
+
10792
+ /* token colors */
10793
+ .tk-mus {
10794
+ color: var(--ai-fg);
10795
+ }
10796
+
10797
+ .tk-blk {
10798
+ color: #1f7a4d;
10799
+ font-weight: 600;
10800
+ }
10801
+
10802
+ .tk-tag {
10803
+ color: #2a6fdb;
10804
+ }
10805
+
10806
+ .tk-attr {
10807
+ color: #8a540b;
10808
+ }
10809
+
10810
+ .tk-str {
10811
+ color: #1a8a56;
10812
+ }
10813
+
10814
+ .tk-com {
10815
+ color: var(--text-quaternary);
10816
+ font-style: italic;
10817
+ }
10818
+
10819
+ /* preview surface */
10820
+ .pb-preview {
10821
+ flex: 1;
10822
+ min-width: 0;
10823
+ display: flex;
10824
+ flex-direction: column;
10825
+ background: #4b4f54;
10826
+ min-height: 0;
10827
+ }
10828
+
10829
+ .pb-preview-bar {
10830
+ height: 36px;
10831
+ flex-shrink: 0;
10832
+ display: flex;
10833
+ align-items: center;
10834
+ gap: var(--s-4);
10835
+ padding: 0 var(--s-5);
10836
+ background: var(--surface-raised);
10837
+ border-bottom: 1px solid var(--border-default);
10838
+ }
10839
+
10840
+ .pb-preview-bar-t {
10841
+ font-size: var(--text-xs);
10842
+ font-weight: 600;
10843
+ color: var(--text-secondary);
10844
+ }
10845
+
10846
+ .pb-preview-pages {
10847
+ font-size: var(--text-xs);
10848
+ color: var(--text-tertiary);
10849
+ font-variant-numeric: tabular-nums;
10850
+ }
10851
+
10852
+ .pb-zoom {
10853
+ display: inline-flex;
10854
+ align-items: center;
10855
+ gap: var(--s-2);
10856
+ }
10857
+
10858
+ .pb-zoom-val {
10859
+ font-size: var(--text-xs);
10860
+ color: var(--text-tertiary);
10861
+ min-width: 38px;
10862
+ text-align: center;
10863
+ font-variant-numeric: tabular-nums;
10864
+ }
10865
+
10866
+ .pb-zbtn {
10867
+ width: 24px;
10868
+ height: 24px;
10869
+ border-radius: var(--r-sm);
10870
+ display: grid;
10871
+ place-items: center;
10872
+ color: var(--text-tertiary);
10873
+ }
10874
+
10875
+ .pb-zbtn:hover {
10876
+ background: var(--surface-hover);
10877
+ color: var(--text-primary);
10878
+ }
10879
+
10880
+ .pb-preview-scroll {
10881
+ flex: 1;
10882
+ overflow: auto;
10883
+ padding: 28px;
10884
+ scrollbar-width: thin;
10885
+ }
10886
+
10887
+ .pb-pages {
10888
+ display: flex;
10889
+ flex-direction: column;
10890
+ align-items: center;
10891
+ gap: 22px;
10892
+ transform-origin: top center;
10893
+ }
10894
+
10895
+ /* selection halo on a doc block */
10896
+ .pb-sel-outline {
10897
+ outline: 2px solid var(--ai-fg);
10898
+ outline-offset: 2px;
10899
+ border-radius: 2px;
10900
+ }
10901
+
10902
+ .pbd [data-block] {
10903
+ cursor: default;
10904
+ }
10905
+
10906
+ .pb-pick .pbd [data-block] {
10907
+ cursor: pointer;
10908
+ }
10909
+
10910
+ .pb-pick .pbd [data-block]:hover {
10911
+ outline: 1.5px dashed var(--info);
10912
+ outline-offset: 2px;
10913
+ }
10914
+
10915
+ /* ── AI panel (right dock) ──────────────────────────────────── */
10916
+ .pb-ai {
10917
+ width: 340px;
10918
+ flex-shrink: 0;
10919
+ background: var(--surface-raised);
10920
+ border-left: 1px solid var(--border-default);
10921
+ display: flex;
10922
+ flex-direction: column;
10923
+ min-height: 0;
10924
+ }
10925
+
10926
+ .pb-ai--collapsed {
10927
+ width: 0;
10928
+ overflow: hidden;
10929
+ border: 0;
10930
+ }
10931
+
10932
+ .pb-ai-head {
10933
+ flex-shrink: 0;
10934
+ display: flex;
10935
+ align-items: center;
10936
+ gap: var(--s-4);
10937
+ padding: var(--s-5) var(--s-5) var(--s-4);
10938
+ border-bottom: 1px solid var(--border-subtle);
10939
+ }
10940
+
10941
+ .pb-ai-spark {
10942
+ width: 26px;
10943
+ height: 26px;
10944
+ border-radius: var(--r-md);
10945
+ background: var(--ai-fg);
10946
+ color: #fff;
10947
+ display: grid;
10948
+ place-items: center;
10949
+ box-shadow: 0 1px 2px rgba(85, 53, 184, .3);
10950
+ }
10951
+
10952
+ .pb-ai-spark svg {
10953
+ width: 15px;
10954
+ height: 15px;
10955
+ }
10956
+
10957
+ .pb-ai-head-t {
10958
+ font-size: var(--text-sm);
10959
+ font-weight: 600;
10960
+ }
10961
+
10962
+ .pb-ai-head-s {
10963
+ font-size: var(--text-xs);
10964
+ color: var(--text-tertiary);
10965
+ margin-top: 1px;
10966
+ }
10967
+
10968
+ .pb-ai-scroll {
10969
+ flex: 1;
10970
+ overflow: auto;
10971
+ padding: var(--s-5);
10972
+ display: flex;
10973
+ flex-direction: column;
10974
+ gap: var(--s-5);
10975
+ scrollbar-width: thin;
10976
+ }
10977
+
10978
+ .pb-msg {
10979
+ display: flex;
10980
+ gap: var(--s-4);
10981
+ font-size: var(--text-sm);
10982
+ line-height: 1.5;
10983
+ }
10984
+
10985
+ .pb-msg-av {
10986
+ width: 22px;
10987
+ height: 22px;
10988
+ border-radius: var(--r-sm);
10989
+ flex-shrink: 0;
10990
+ display: grid;
10991
+ place-items: center;
10992
+ }
10993
+
10994
+ .pb-msg-av svg {
10995
+ width: 13px;
10996
+ height: 13px;
10997
+ }
10998
+
10999
+ .pb-msg--ai .pb-msg-av {
11000
+ background: var(--ai-bg);
11001
+ color: var(--ai-fg);
11002
+ }
11003
+
11004
+ .pb-msg--user .pb-msg-av {
11005
+ background: var(--surface-active);
11006
+ color: var(--text-secondary);
11007
+ }
11008
+
11009
+ .pb-msg-body {
11010
+ flex: 1;
11011
+ min-width: 0;
11012
+ padding-top: 2px;
11013
+ color: var(--text-secondary);
11014
+ }
11015
+
11016
+ .pb-msg-body b {
11017
+ color: var(--text-primary);
11018
+ font-weight: 600;
11019
+ }
11020
+
11021
+ .pb-msg-body code {
11022
+ font-family: var(--font-mono);
11023
+ font-size: 10.5px;
11024
+ background: var(--surface-muted);
11025
+ padding: 1px 4px;
11026
+ border-radius: 3px;
11027
+ color: var(--text-brand-strong);
11028
+ }
11029
+
11030
+ .pb-msg--user .pb-msg-body {
11031
+ color: var(--text-primary);
11032
+ }
11033
+
11034
+ .pb-msg-tag {
11035
+ display: inline-flex;
11036
+ align-items: center;
11037
+ gap: 5px;
11038
+ margin-top: var(--s-3);
11039
+ font-size: var(--text-xs);
11040
+ font-weight: 600;
11041
+ color: var(--ai-fg);
11042
+ background: var(--ai-bg);
11043
+ border-radius: var(--r-sm);
11044
+ padding: 3px 7px;
11045
+ }
11046
+
11047
+ .pb-msg-tag svg {
11048
+ width: 11px;
11049
+ height: 11px;
11050
+ }
11051
+
11052
+ .pb-msg-undo {
11053
+ margin-top: var(--s-3);
11054
+ font-size: var(--text-xs);
11055
+ font-weight: 600;
11056
+ color: var(--text-tertiary);
11057
+ text-decoration: underline;
11058
+ text-underline-offset: 2px;
11059
+ }
11060
+
11061
+ .pb-msg-undo:hover {
11062
+ color: var(--text-primary);
11063
+ }
11064
+
11065
+ .pb-ai-typing {
11066
+ display: flex;
11067
+ gap: 4px;
11068
+ padding: 4px 0;
11069
+ }
11070
+
11071
+ .pb-ai-typing i {
11072
+ width: 6px;
11073
+ height: 6px;
11074
+ border-radius: 50%;
11075
+ background: var(--ai-fg);
11076
+ opacity: .4;
11077
+ animation: pb-blink 1.2s infinite;
11078
+ }
11079
+
11080
+ .pb-ai-typing i:nth-child(2) {
11081
+ animation-delay: .2s;
11082
+ }
11083
+
11084
+ .pb-ai-typing i:nth-child(3) {
11085
+ animation-delay: .4s;
11086
+ }
11087
+
11088
+ @keyframes pb-blink {
11089
+
11090
+ 0%,
11091
+ 60%,
11092
+ 100% {
11093
+ opacity: .25;
11094
+ }
11095
+
11096
+ 30% {
11097
+ opacity: 1;
11098
+ }
11099
+ }
11100
+
11101
+ .pb-ai-foot {
11102
+ flex-shrink: 0;
11103
+ border-top: 1px solid var(--border-subtle);
11104
+ padding: var(--s-4);
11105
+ }
11106
+
11107
+ /* AI scope selector — pick which part of the document to improve */
11108
+ .pb-scope {
11109
+ position: relative;
11110
+ display: flex;
11111
+ flex-wrap: wrap;
11112
+ align-items: center;
11113
+ gap: var(--s-3);
11114
+ margin-bottom: var(--s-4);
11115
+ }
11116
+
11117
+ .pb-scope-lbl {
11118
+ font-size: var(--text-xs);
11119
+ font-weight: 600;
11120
+ color: var(--text-tertiary);
11121
+ }
11122
+
11123
+ .pb-scope-btn {
11124
+ display: inline-flex;
11125
+ align-items: center;
11126
+ gap: var(--s-2);
11127
+ height: 28px;
11128
+ padding: 0 var(--s-3);
11129
+ border-radius: var(--r-md);
11130
+ font-size: var(--text-xs);
11131
+ font-weight: 600;
11132
+ color: var(--text-secondary);
11133
+ background: var(--surface-raised);
11134
+ border: 1px solid var(--border-default);
11135
+ }
11136
+
11137
+ .pb-scope-btn:hover {
11138
+ border-color: var(--ai-bg-strong);
11139
+ }
11140
+
11141
+ .pb-scope-btn>svg {
11142
+ width: 13px;
11143
+ height: 13px;
11144
+ color: var(--ai-fg);
11145
+ }
11146
+
11147
+ .pb-scope-btn>svg:last-child {
11148
+ width: 12px;
11149
+ height: 12px;
11150
+ color: var(--text-quaternary);
11151
+ margin-left: -1px;
11152
+ }
11153
+
11154
+ .pb-scope-btn.is-scoped {
11155
+ color: var(--ai-fg-deep);
11156
+ background: var(--ai-bg);
11157
+ border-color: var(--ai-bg-strong);
11158
+ }
11159
+
11160
+ .pb-scope-menu {
11161
+ position: absolute;
11162
+ bottom: calc(100% + 6px);
11163
+ left: 0;
11164
+ z-index: 40;
11165
+ width: 248px;
11166
+ max-height: 320px;
11167
+ overflow-y: auto;
11168
+ background: var(--surface-raised);
11169
+ border: 1px solid var(--border-default);
11170
+ border-radius: var(--r-lg);
11171
+ box-shadow: var(--shadow-xl);
11172
+ padding: var(--s-2);
11173
+ scrollbar-width: thin;
11174
+ }
11175
+
11176
+ .pb-scope-menu button {
11177
+ display: flex;
11178
+ align-items: center;
11179
+ gap: var(--s-3);
11180
+ width: 100%;
11181
+ padding: var(--s-3);
11182
+ border-radius: var(--r-sm);
11183
+ font-size: var(--text-sm);
11184
+ color: var(--text-secondary);
11185
+ text-align: left;
11186
+ }
11187
+
11188
+ .pb-scope-menu button:hover {
11189
+ background: var(--ai-bg);
11190
+ color: var(--ai-fg-deep);
11191
+ }
11192
+
11193
+ .pb-scope-menu button.is-current {
11194
+ color: var(--ai-fg-deep);
11195
+ font-weight: 600;
11196
+ }
11197
+
11198
+ .pb-scope-menu button svg {
11199
+ width: 14px;
11200
+ height: 14px;
11201
+ flex-shrink: 0;
11202
+ color: var(--ai-fg);
11203
+ }
11204
+
11205
+ .pb-scope-menu button span {
11206
+ flex: 1;
11207
+ }
11208
+
11209
+ .pb-scope-menu button .pb-scope-chk,
11210
+ .pb-scope-menu button svg:last-child:not(:first-child) {
11211
+ color: var(--brand-green);
11212
+ }
11213
+
11214
+ .pb-scope-sep {
11215
+ font-size: var(--text-2_5xs);
11216
+ font-weight: 700;
11217
+ letter-spacing: .04em;
11218
+ text-transform: uppercase;
11219
+ color: var(--text-quaternary);
11220
+ padding: var(--s-3) var(--s-3) var(--s-1);
11221
+ }
11222
+
11223
+ .pb-scope-hint {
11224
+ font-size: var(--text-2_5xs);
11225
+ color: var(--ai-fg);
11226
+ background: var(--ai-bg);
11227
+ border-radius: var(--r-full);
11228
+ padding: 3px 9px;
11229
+ }
11230
+
11231
+ .pb-msg-scope {
11232
+ display: inline-flex;
11233
+ align-items: center;
11234
+ gap: 4px;
11235
+ font-size: var(--text-2_5xs);
11236
+ font-weight: 700;
11237
+ color: var(--ai-fg-deep);
11238
+ background: var(--ai-bg);
11239
+ border-radius: var(--r-sm);
11240
+ padding: 2px 6px;
11241
+ margin-bottom: 4px;
11242
+ vertical-align: middle;
11243
+ }
11244
+
11245
+ .pb-msg-scope svg {
11246
+ color: var(--ai-fg);
11247
+ }
11248
+
11249
+ .pb-chips {
11250
+ display: flex;
11251
+ flex-wrap: wrap;
11252
+ gap: var(--s-2);
11253
+ margin-bottom: var(--s-4);
11254
+ }
11255
+
11256
+ .pb-chip {
11257
+ display: inline-flex;
11258
+ align-items: center;
11259
+ gap: 5px;
11260
+ height: 26px;
11261
+ padding: 0 var(--s-4);
11262
+ border-radius: var(--r-full);
11263
+ font-size: var(--text-xs);
11264
+ font-weight: 500;
11265
+ color: var(--text-secondary);
11266
+ border: 1px solid var(--border-default);
11267
+ background: var(--surface-raised);
11268
+ }
11269
+
11270
+ .pb-chip svg {
11271
+ width: 12px;
11272
+ height: 12px;
11273
+ color: var(--ai-fg);
11274
+ }
11275
+
11276
+ .pb-chip:hover {
11277
+ background: var(--ai-bg);
11278
+ border-color: var(--ai-bg-strong);
11279
+ color: var(--ai-fg-deep);
11280
+ }
11281
+
11282
+ .pb-ai-input {
11283
+ display: flex;
11284
+ align-items: flex-end;
11285
+ gap: var(--s-3);
11286
+ border: 1px solid var(--border-default);
11287
+ border-radius: var(--r-lg);
11288
+ padding: var(--s-3) var(--s-3) var(--s-3) var(--s-5);
11289
+ background: var(--surface-raised);
11290
+ }
11291
+
11292
+ .pb-ai-input:focus-within {
11293
+ border-color: var(--border-focus-ai);
11294
+ box-shadow: var(--shadow-focus-ai);
11295
+ }
11296
+
11297
+ .pb-ai-input textarea {
11298
+ flex: 1;
11299
+ border: 0;
11300
+ outline: none;
11301
+ resize: none;
11302
+ font-size: var(--text-sm);
11303
+ line-height: 1.45;
11304
+ max-height: 96px;
11305
+ background: transparent;
11306
+ }
11307
+
11308
+ .pb-ai-send {
11309
+ width: 28px;
11310
+ height: 28px;
11311
+ border-radius: var(--r-md);
11312
+ background: var(--ai-fg-deep);
11313
+ color: #fff;
11314
+ display: grid;
11315
+ place-items: center;
11316
+ flex-shrink: 0;
11317
+ }
11318
+
11319
+ .pb-ai-send svg {
11320
+ width: 14px;
11321
+ height: 14px;
11322
+ }
11323
+
11324
+ .pb-ai-send:disabled {
11325
+ background: var(--surface-active);
11326
+ color: var(--text-quaternary);
11327
+ }
11328
+
11329
+ /* inline suggestion card (selected element) */
11330
+ .pb-inline {
11331
+ border: 1px solid var(--ai-bg-strong);
11332
+ border-radius: var(--r-md);
11333
+ background: color-mix(in oklch, var(--ai-bg) 45%, var(--surface-raised));
11334
+ padding: var(--s-4);
11335
+ }
11336
+
11337
+ .pb-inline-h {
11338
+ display: flex;
11339
+ align-items: center;
11340
+ gap: var(--s-3);
11341
+ font-size: var(--text-xs);
11342
+ font-weight: 600;
11343
+ color: var(--ai-fg-deep);
11344
+ margin-bottom: var(--s-3);
11345
+ }
11346
+
11347
+ .pb-inline-h svg {
11348
+ width: 13px;
11349
+ height: 13px;
11350
+ }
11351
+
11352
+ .pb-inline-acts {
11353
+ display: flex;
11354
+ flex-direction: column;
11355
+ gap: var(--s-2);
11356
+ }
11357
+
11358
+ .pb-inline-act {
11359
+ display: flex;
11360
+ align-items: center;
11361
+ gap: var(--s-3);
11362
+ height: 28px;
11363
+ padding: 0 var(--s-4);
11364
+ border-radius: var(--r-sm);
11365
+ font-size: var(--text-sm);
11366
+ color: var(--text-secondary);
11367
+ background: var(--surface-raised);
11368
+ border: 1px solid var(--border-subtle);
11369
+ text-align: left;
11370
+ }
11371
+
11372
+ .pb-inline-act svg {
11373
+ width: 13px;
11374
+ height: 13px;
11375
+ color: var(--ai-fg);
11376
+ }
11377
+
11378
+ .pb-inline-act:hover {
11379
+ border-color: var(--ai-bg-strong);
11380
+ color: var(--text-primary);
11381
+ }
11382
+
11383
+ /* toast */
11384
+ .pb-toast {
11385
+ position: fixed;
11386
+ bottom: 22px;
11387
+ left: 50%;
11388
+ transform: translateX(-50%);
11389
+ z-index: var(--z-toast);
11390
+ background: var(--surface-inverse);
11391
+ color: var(--text-on-inverse);
11392
+ font-size: var(--text-sm);
11393
+ font-weight: 500;
11394
+ padding: var(--s-4) var(--s-6);
11395
+ border-radius: var(--r-md);
11396
+ box-shadow: var(--shadow-lg);
11397
+ display: flex;
11398
+ align-items: center;
11399
+ gap: var(--s-3);
11400
+ animation: pb-toast-in var(--dur-base) var(--ease-out);
11401
+ }
11402
+
11403
+ .pb-toast svg {
11404
+ width: 14px;
11405
+ height: 14px;
11406
+ color: var(--green-400);
11407
+ }
11408
+
11409
+ @keyframes pb-toast-in {
11410
+ from {
11411
+ opacity: 0;
11412
+ transform: translate(-50%, 8px);
11413
+ }
11414
+ }
11415
+
11416
+ /* ═══════════════ GALLERY (landing) ═══════════════════════════ */
11417
+ .pb-gallery {
11418
+ flex: 1;
11419
+ overflow: auto;
11420
+ background: var(--surface-canvas);
11421
+ }
11422
+
11423
+ .pb-gal-inner {
11424
+ max-width: 1120px;
11425
+ margin: 0 auto;
11426
+ padding: 40px 32px 64px;
11427
+ }
11428
+
11429
+ .pb-gal-eye {
11430
+ font-size: var(--text-2_5xs);
11431
+ font-weight: 700;
11432
+ letter-spacing: var(--tracking-wide);
11433
+ text-transform: uppercase;
11434
+ color: var(--text-brand);
11435
+ }
11436
+
11437
+ .pb-gal-h {
11438
+ font-size: var(--text-3xl);
11439
+ font-weight: 700;
11440
+ letter-spacing: var(--tracking-tight);
11441
+ margin-top: var(--s-3);
11442
+ }
11443
+
11444
+ .pb-gal-sub {
11445
+ font-size: var(--text-base);
11446
+ color: var(--text-tertiary);
11447
+ margin-top: var(--s-3);
11448
+ max-width: 620px;
11449
+ line-height: 1.5;
11450
+ }
11451
+
11452
+ .pb-gal-ai {
11453
+ display: flex;
11454
+ align-items: center;
11455
+ gap: var(--s-6);
11456
+ margin-top: var(--s-12);
11457
+ padding: var(--s-8);
11458
+ border: 1px solid var(--ai-bg-strong);
11459
+ border-radius: var(--r-xl);
11460
+ background: linear-gradient(180deg, color-mix(in oklch, var(--ai-bg) 50%, var(--surface-raised)), var(--surface-raised) 80px);
11461
+ }
11462
+
11463
+ .pb-gal-ai-spark {
11464
+ width: 40px;
11465
+ height: 40px;
11466
+ border-radius: var(--r-lg);
11467
+ background: var(--ai-fg);
11468
+ color: #fff;
11469
+ display: grid;
11470
+ place-items: center;
11471
+ flex-shrink: 0;
11472
+ box-shadow: 0 2px 6px rgba(85, 53, 184, .3);
11473
+ }
11474
+
11475
+ .pb-gal-ai-spark svg {
11476
+ width: 22px;
11477
+ height: 22px;
11478
+ }
11479
+
11480
+ .pb-gal-ai-field {
11481
+ flex: 1;
11482
+ display: flex;
11483
+ align-items: center;
11484
+ gap: var(--s-4);
11485
+ background: var(--surface-raised);
11486
+ border: 1px solid var(--border-default);
11487
+ border-radius: var(--r-lg);
11488
+ padding: var(--s-3) var(--s-3) var(--s-3) var(--s-5);
11489
+ }
11490
+
11491
+ .pb-gal-ai-field:focus-within {
11492
+ border-color: var(--border-focus-ai);
11493
+ box-shadow: var(--shadow-focus-ai);
11494
+ }
11495
+
11496
+ .pb-gal-ai-field input {
11497
+ flex: 1;
11498
+ border: 0;
11499
+ outline: none;
11500
+ font-size: var(--text-md);
11501
+ background: transparent;
11502
+ }
11503
+
11504
+ .pb-gal-sec {
11505
+ margin-top: var(--s-16);
11506
+ }
11507
+
11508
+ .pb-gal-sec-h {
11509
+ font-size: var(--text-sm);
11510
+ font-weight: 600;
11511
+ color: var(--text-secondary);
11512
+ margin-bottom: var(--s-6);
11513
+ display: flex;
11514
+ align-items: center;
11515
+ gap: var(--s-3);
11516
+ }
11517
+
11518
+ .pb-gal-sec-h .pb-fgroup-c {
11519
+ margin-left: 0;
11520
+ }
11521
+
11522
+ .pb-gal-grid {
11523
+ display: grid;
11524
+ grid-template-columns: repeat(auto-fill, minmax(248px, 1fr));
11525
+ gap: var(--s-6);
11526
+ }
11527
+
11528
+ .pb-card {
11529
+ border: 1px solid var(--border-default);
11530
+ border-radius: var(--r-lg);
11531
+ background: var(--surface-raised);
11532
+ overflow: hidden;
11533
+ position: relative;
11534
+ cursor: pointer;
11535
+ transition: box-shadow var(--dur-base), border-color var(--dur-base), transform var(--dur-base);
11536
+ }
11537
+
11538
+ .pb-card-primary {
11539
+ position: absolute;
11540
+ top: 10px;
11541
+ right: 10px;
11542
+ z-index: 2;
11543
+ display: inline-flex;
11544
+ align-items: center;
11545
+ gap: 4px;
11546
+ font-size: var(--text-2_5xs);
11547
+ font-weight: 800;
11548
+ letter-spacing: .05em;
11549
+ text-transform: uppercase;
11550
+ color: var(--color-on-action);
11551
+ background: var(--color-action);
11552
+ border-radius: var(--r-full);
11553
+ padding: 3px 9px 3px 7px;
11554
+ box-shadow: var(--shadow-sm);
11555
+ }
11556
+
11557
+ .pb-card-primary svg {
11558
+ width: 11px;
11559
+ height: 11px;
11560
+ }
11561
+
11562
+ /* template-variant picker (toolbar) */
11563
+ .pb-varpick {
11564
+ position: relative;
11565
+ }
11566
+
11567
+ .pb-varpick .pb-stnpick-menu {
11568
+ right: auto;
11569
+ left: 0;
11570
+ width: 332px;
11571
+ }
11572
+
11573
+ .pb-varpick-dot {
11574
+ width: 11px;
11575
+ height: 11px;
11576
+ border-radius: var(--r-full);
11577
+ flex-shrink: 0;
11578
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12);
11579
+ }
11580
+
11581
+ .pb-varpick-star {
11582
+ display: inline-grid;
11583
+ place-items: center;
11584
+ width: 15px;
11585
+ height: 15px;
11586
+ border-radius: 50%;
11587
+ background: var(--color-action);
11588
+ color: var(--color-on-action);
11589
+ flex-shrink: 0;
11590
+ }
11591
+
11592
+ .pb-varpick-star svg {
11593
+ width: 10px;
11594
+ height: 10px;
11595
+ }
11596
+
11597
+ .pb-varpick-tag {
11598
+ margin-left: auto;
11599
+ font-size: var(--text-2_5xs);
11600
+ font-weight: 800;
11601
+ letter-spacing: .04em;
11602
+ text-transform: uppercase;
11603
+ color: var(--brand-green);
11604
+ background: var(--green-50, rgba(46, 178, 115, .1));
11605
+ border: 1px solid var(--green-100, rgba(46, 178, 115, .25));
11606
+ border-radius: var(--r-full);
11607
+ padding: 2px 7px;
11608
+ }
11609
+
11610
+ .pb-varpick-menu .pb-stnpick-foot button:disabled {
11611
+ opacity: .6;
11612
+ cursor: default;
11613
+ }
11614
+
11615
+ .pb-card:hover {
11616
+ border-color: var(--border-strong);
11617
+ box-shadow: var(--shadow-md);
11618
+ transform: translateY(-2px);
11619
+ }
11620
+
11621
+ .pb-card-thumb {
11622
+ height: 156px;
11623
+ background: var(--surface-sunken);
11624
+ border-bottom: 1px solid var(--border-subtle);
11625
+ position: relative;
11626
+ overflow: hidden;
11627
+ display: grid;
11628
+ place-items: center;
11629
+ }
11630
+
11631
+ .pb-card-mini {
11632
+ width: 116px;
11633
+ background: #fff;
11634
+ box-shadow: var(--shadow-md);
11635
+ transform: scale(1);
11636
+ border-radius: 2px;
11637
+ overflow: hidden;
11638
+ }
11639
+
11640
+ .pb-card-meta {
11641
+ padding: var(--s-5);
11642
+ display: flex;
11643
+ align-items: flex-start;
11644
+ gap: var(--s-4);
11645
+ }
11646
+
11647
+ .pb-card-ic {
11648
+ width: 30px;
11649
+ height: 30px;
11650
+ border-radius: var(--r-md);
11651
+ display: grid;
11652
+ place-items: center;
11653
+ flex-shrink: 0;
11654
+ }
11655
+
11656
+ .pb-card-ic svg {
11657
+ width: 15px;
11658
+ height: 15px;
11659
+ }
11660
+
11661
+ .pb-card-t {
11662
+ font-size: var(--text-sm);
11663
+ font-weight: 600;
11664
+ }
11665
+
11666
+ .pb-card-s {
11667
+ font-size: var(--text-xs);
11668
+ color: var(--text-tertiary);
11669
+ margin-top: 2px;
11670
+ line-height: 1.4;
11671
+ }
11672
+
11673
+ /* accent helpers */
11674
+ .acc-green {
11675
+ background: var(--green-100);
11676
+ color: var(--green-700);
11677
+ }
11678
+
11679
+ .acc-blue {
11680
+ background: var(--info-bg);
11681
+ color: var(--info);
11682
+ }
11683
+
11684
+ .acc-purple {
11685
+ background: var(--ai-bg);
11686
+ color: var(--ai-fg);
11687
+ }
11688
+
11689
+ .acc-amber {
11690
+ background: var(--warning-bg);
11691
+ color: var(--warning);
11692
+ }
11693
+
11694
+ .acc-teal {
11695
+ background: var(--tag-teal-bg);
11696
+ color: var(--tag-teal-fg);
11697
+ }
11698
+
11699
+ .acc-rose {
11700
+ background: var(--tag-rose-bg);
11701
+ color: var(--tag-rose-fg);
11702
+ }
11703
+
11704
+ .acc-slate {
11705
+ background: var(--tag-slate-bg);
11706
+ color: var(--tag-slate-fg);
11707
+ }
11708
+
11709
+ .acc-navy {
11710
+ background: #E3E8F7;
11711
+ color: var(--brand-navy);
11712
+ }
11713
+
11714
+ /* ═══════════════ PREVIEW-FIRST BUILDER ═══════════════════════ */
11715
+ /* slim option bar (à la print preview) */
11716
+ .pb-bar {
11717
+ height: 50px;
11718
+ flex-shrink: 0;
11719
+ display: flex;
11720
+ align-items: center;
11721
+ gap: var(--s-5);
11722
+ padding: 0 var(--s-6);
11723
+ background: var(--surface-raised);
11724
+ border-bottom: 1px solid var(--border-default);
11725
+ z-index: var(--z-sticky);
11726
+ }
11727
+
11728
+ .pb-bar-title {
11729
+ display: flex;
11730
+ align-items: center;
11731
+ gap: var(--s-4);
11732
+ min-width: 0;
11733
+ }
11734
+
11735
+ .pb-bar-back {
11736
+ display: inline-flex;
11737
+ align-items: center;
11738
+ gap: var(--s-3);
11739
+ height: 30px;
11740
+ padding: 0 var(--s-4) 0 var(--s-3);
11741
+ border-radius: var(--r-md);
11742
+ font-size: var(--text-sm);
11743
+ font-weight: 500;
11744
+ color: var(--text-secondary);
11745
+ }
11746
+
11747
+ .pb-bar-back:hover {
11748
+ background: var(--surface-hover);
11749
+ color: var(--text-primary);
11750
+ }
11751
+
11752
+ .pb-bar-back svg {
11753
+ width: 15px;
11754
+ height: 15px;
11755
+ }
11756
+
11757
+ .pb-bar-doc {
11758
+ display: flex;
11759
+ align-items: center;
11760
+ gap: var(--s-3);
11761
+ }
11762
+
11763
+ .pb-bar-doc-ic {
11764
+ width: 24px;
11765
+ height: 24px;
11766
+ border-radius: var(--r-sm);
11767
+ display: grid;
11768
+ place-items: center;
11769
+ flex-shrink: 0;
11770
+ }
11771
+
11772
+ .pb-bar-doc-ic svg {
11773
+ width: 14px;
11774
+ height: 14px;
11775
+ }
11776
+
11777
+ .pb-bar-name {
11778
+ font: inherit;
11779
+ font-size: var(--text-sm);
11780
+ font-weight: 600;
11781
+ color: var(--text-primary);
11782
+ border: 1px solid transparent;
11783
+ border-radius: var(--r-sm);
11784
+ padding: 3px 7px;
11785
+ max-width: 220px;
11786
+ background: transparent;
11787
+ }
11788
+
11789
+ .pb-bar-name:hover {
11790
+ border-color: var(--border-default);
11791
+ }
11792
+
11793
+ .pb-bar-name:focus {
11794
+ border-color: var(--border-focus);
11795
+ box-shadow: var(--shadow-focus);
11796
+ outline: none;
11797
+ }
11798
+
11799
+ .pb-bar-sp {
11800
+ flex: 1;
11801
+ }
11802
+
11803
+ .pb-bar-grp {
11804
+ display: flex;
11805
+ align-items: center;
11806
+ gap: var(--s-3);
11807
+ }
11808
+
11809
+ .pb-bar-grp+.pb-bar-grp {
11810
+ padding-inline-start: var(--s-5);
11811
+ border-inline-start: 1px solid var(--border-subtle);
11812
+ }
11813
+
11814
+ .pb-bar-lbl {
11815
+ font-size: var(--text-2_5xs);
11816
+ font-weight: 700;
11817
+ letter-spacing: var(--tracking-wide);
11818
+ text-transform: uppercase;
11819
+ color: var(--text-quaternary);
11820
+ }
11821
+
11822
+ .pb-toggle {
11823
+ display: inline-flex;
11824
+ align-items: center;
11825
+ gap: var(--s-3);
11826
+ font-size: var(--text-sm);
11827
+ color: var(--text-secondary);
11828
+ cursor: pointer;
11829
+ white-space: nowrap;
11830
+ }
11831
+
11832
+ .pb-toggle input {
11833
+ accent-color: var(--brand-green);
11834
+ width: 14px;
11835
+ height: 14px;
11836
+ }
11837
+
11838
+ /* dark stage + preview */
11839
+ .pb-stage {
11840
+ flex: 1;
11841
+ position: relative;
11842
+ min-height: 0;
11843
+ display: flex;
11844
+ background: #4b4f54;
11845
+ overflow: hidden;
11846
+ }
11847
+
11848
+ .pb-stage-scroll {
11849
+ flex: 1;
11850
+ overflow: auto;
11851
+ padding: 30px 24px 80px;
11852
+ scrollbar-width: thin;
11853
+ }
11854
+
11855
+ .pb-stage .pb-pages {
11856
+ display: flex;
11857
+ flex-direction: column;
11858
+ align-items: center;
11859
+ gap: 22px;
11860
+ transform-origin: top center;
11861
+ }
11862
+
11863
+ /* floating zoom pill */
11864
+ .pb-zoomfloat {
11865
+ position: absolute;
11866
+ bottom: 18px;
11867
+ left: 50%;
11868
+ transform: translateX(-50%);
11869
+ z-index: var(--z-popover);
11870
+ display: inline-flex;
11871
+ align-items: center;
11872
+ gap: var(--s-2);
11873
+ background: rgba(20, 23, 27, .82);
11874
+ backdrop-filter: blur(6px);
11875
+ border-radius: var(--r-full);
11876
+ padding: 5px 8px;
11877
+ box-shadow: var(--shadow-lg);
11878
+ }
11879
+
11880
+ .pb-zoomfloat button {
11881
+ width: 26px;
11882
+ height: 26px;
11883
+ border-radius: var(--r-full);
11884
+ display: grid;
11885
+ place-items: center;
11886
+ color: #d4d6d9;
11887
+ }
11888
+
11889
+ .pb-zoomfloat button.pb-zf-text-btn {
11890
+ width: auto;
11891
+ padding: 0 10px;
11892
+ gap: 4px;
11893
+ display: flex;
11894
+ font-size: var(--text-xs);
11895
+ font-weight: 500;
11896
+ }
11897
+
11898
+ .pb-zoomfloat button:hover {
11899
+ background: rgba(255, 255, 255, .12);
11900
+ color: #fff;
11901
+ }
11902
+
11903
+ .pb-zoomfloat .pb-zoom-val {
11904
+ color: #fff;
11905
+ font-size: var(--text-xs);
11906
+ min-width: 40px;
11907
+ text-align: center;
11908
+ font-variant-numeric: tabular-nums;
11909
+ }
11910
+
11911
+ .pb-zoomfloat .pb-zoom-pages {
11912
+ color: #9da1a6;
11913
+ font-size: var(--text-xs);
11914
+ padding-left: var(--s-3);
11915
+ margin-left: var(--s-2);
11916
+ border-left: 1px solid rgba(255, 255, 255, .16);
11917
+ }
11918
+
11919
+ /* slide-in customize drawer */
11920
+ .pb-drawer {
11921
+ position: absolute;
11922
+ top: 0;
11923
+ right: 0;
11924
+ bottom: 0;
11925
+ width: 408px;
11926
+ background: var(--surface-raised);
11927
+ border-left: 1px solid var(--border-default);
11928
+ box-shadow: -12px 0 32px -16px rgba(0, 0, 0, .4);
11929
+ display: flex;
11930
+ flex-direction: column;
11931
+ transform: translateX(0);
11932
+ transition: transform var(--dur-slow) var(--ease-out), width var(--dur-base);
11933
+ z-index: var(--z-drawer);
11934
+ min-height: 0;
11935
+ }
11936
+
11937
+ .pb-drawer--wide {
11938
+ width: 660px;
11939
+ }
11940
+
11941
+ .pb-drawer--closed {
11942
+ transform: translateX(101%);
11943
+ box-shadow: none;
11944
+ }
11945
+
11946
+ .pb-drawer-tabs {
11947
+ flex-shrink: 0;
11948
+ display: flex;
11949
+ align-items: center;
11950
+ gap: var(--s-2);
11951
+ padding: var(--s-4) var(--s-4) 0;
11952
+ border-bottom: 1px solid var(--border-subtle);
11953
+ }
11954
+
11955
+ .pb-dtab {
11956
+ height: 32px;
11957
+ padding: 0 var(--s-5);
11958
+ border-radius: var(--r-md) var(--r-md) 0 0;
11959
+ font-size: var(--text-sm);
11960
+ font-weight: 500;
11961
+ color: var(--text-tertiary);
11962
+ display: inline-flex;
11963
+ align-items: center;
11964
+ gap: var(--s-3);
11965
+ border-bottom: 2px solid transparent;
11966
+ margin-bottom: -1px;
11967
+ }
11968
+
11969
+ .pb-dtab svg {
11970
+ width: 14px;
11971
+ height: 14px;
11972
+ }
11973
+
11974
+ .pb-dtab.is-active {
11975
+ color: var(--text-primary);
11976
+ font-weight: 600;
11977
+ border-bottom-color: var(--brand-green);
11978
+ }
11979
+
11980
+ .pb-dtab:not(.is-active):hover {
11981
+ color: var(--text-secondary);
11982
+ }
11983
+
11984
+ .pb-drawer-close {
11985
+ margin-left: auto;
11986
+ width: 30px;
11987
+ height: 30px;
11988
+ border-radius: var(--r-md);
11989
+ display: grid;
11990
+ place-items: center;
11991
+ color: var(--text-tertiary);
11992
+ margin-bottom: 2px;
11993
+ }
11994
+
11995
+ .pb-drawer-close:hover {
11996
+ background: var(--surface-hover);
11997
+ color: var(--text-primary);
11998
+ }
11999
+
12000
+ .pb-drawer-close svg {
12001
+ width: 15px;
12002
+ height: 15px;
12003
+ }
12004
+
12005
+ .pb-drawer-body {
12006
+ flex: 1;
12007
+ min-height: 0;
12008
+ display: flex;
12009
+ }
12010
+
12011
+ /* brand / header-footer form */
12012
+ .pb-form {
12013
+ flex: 1;
12014
+ overflow: auto;
12015
+ padding: var(--s-6);
12016
+ scrollbar-width: thin;
12017
+ }
12018
+
12019
+ .pb-form-note {
12020
+ font-size: var(--text-xs);
12021
+ color: var(--text-tertiary);
12022
+ line-height: 1.5;
12023
+ margin-bottom: var(--s-6);
12024
+ padding: var(--s-4) var(--s-5);
12025
+ background: var(--ai-bg);
12026
+ border-radius: var(--r-md);
12027
+ color: var(--ai-fg-deep);
12028
+ display: flex;
12029
+ gap: var(--s-3);
12030
+ }
12031
+
12032
+ .pb-form-note svg {
12033
+ width: 14px;
12034
+ height: 14px;
12035
+ flex-shrink: 0;
12036
+ margin-top: 1px;
12037
+ }
12038
+
12039
+ .pb-form-sec {
12040
+ font-size: var(--text-2_5xs);
12041
+ font-weight: 700;
12042
+ letter-spacing: var(--tracking-wide);
12043
+ text-transform: uppercase;
12044
+ color: var(--text-quaternary);
12045
+ margin: var(--s-6) 0 var(--s-4);
12046
+ }
12047
+
12048
+ .pb-fld {
12049
+ display: flex;
12050
+ flex-direction: column;
12051
+ gap: var(--s-2);
12052
+ margin-bottom: var(--s-5);
12053
+ }
12054
+
12055
+ .pb-fld label {
12056
+ font-size: var(--text-xs);
12057
+ font-weight: 500;
12058
+ color: var(--text-secondary);
12059
+ }
12060
+
12061
+ .pb-fld input,
12062
+ .pb-fld textarea {
12063
+ height: 32px;
12064
+ border: 1px solid var(--border-default);
12065
+ border-radius: var(--r-md);
12066
+ padding: 0 var(--s-4);
12067
+ font-size: var(--text-sm);
12068
+ background: var(--surface-raised);
12069
+ color: var(--text-primary);
12070
+ }
12071
+
12072
+ .pb-fld textarea {
12073
+ height: auto;
12074
+ padding: var(--s-3) var(--s-4);
12075
+ resize: vertical;
12076
+ min-height: 52px;
12077
+ line-height: 1.45;
12078
+ }
12079
+
12080
+ .pb-fld input:focus,
12081
+ .pb-fld textarea:focus {
12082
+ border-color: var(--border-focus);
12083
+ box-shadow: var(--shadow-focus);
12084
+ outline: none;
12085
+ }
12086
+
12087
+ .pb-fld-row {
12088
+ display: grid;
12089
+ grid-template-columns: 1fr 1fr;
12090
+ gap: var(--s-4);
12091
+ }
12092
+
12093
+ .pb-fld-tag {
12094
+ font-family: var(--font-mono);
12095
+ font-size: 10px;
12096
+ color: var(--ai-fg-deep);
12097
+ }
12098
+
12099
+ /* swatches */
12100
+ .pb-swatches {
12101
+ display: flex;
12102
+ gap: var(--s-3);
12103
+ flex-wrap: wrap;
12104
+ }
12105
+
12106
+ .pb-swatch {
12107
+ width: 30px;
12108
+ height: 30px;
12109
+ border-radius: var(--r-md);
12110
+ border: 2px solid transparent;
12111
+ cursor: pointer;
12112
+ position: relative;
12113
+ }
12114
+
12115
+ .pb-swatch.is-sel {
12116
+ border-color: var(--text-primary);
12117
+ box-shadow: 0 0 0 2px var(--surface-raised) inset;
12118
+ }
12119
+
12120
+ /* HTML tab layout inside drawer */
12121
+ .pb-htmltab {
12122
+ flex: 1;
12123
+ display: flex;
12124
+ min-height: 0;
12125
+ min-width: 0;
12126
+ }
12127
+
12128
+ .pb-htmltab .pb-rail {
12129
+ width: 220px;
12130
+ }
12131
+
12132
+ .pb-htmltab .pb-editor {
12133
+ width: auto;
12134
+ flex: 1;
12135
+ min-width: 0;
12136
+ max-width: none;
12137
+ border-right: 0;
12138
+ }
12139
+
12140
+ .pb-ai-dock {
12141
+ flex: 1;
12142
+ min-height: 0;
12143
+ }
12144
+
12145
+ /* ═══════════════════════════════════════════════════════════════
12146
+ v3 — classic ERP designer shell (left rail · canvas · dock)
12147
+ ═══════════════════════════════════════════════════════════════ */
12148
+ .pb-bar-div {
12149
+ width: 1px;
12150
+ height: 20px;
12151
+ background: var(--border-default);
12152
+ }
12153
+
12154
+ .pb-bar-stat {
12155
+ display: inline-flex;
12156
+ align-items: center;
12157
+ gap: var(--s-2);
12158
+ font-size: var(--text-xs);
12159
+ font-weight: 600;
12160
+ padding: 3px 9px;
12161
+ border-radius: var(--r-full);
12162
+ margin-left: var(--s-2);
12163
+ white-space: nowrap;
12164
+ }
12165
+
12166
+ .pb-bar-stat svg {
12167
+ width: 12px;
12168
+ height: 12px;
12169
+ }
12170
+
12171
+ .pb-bar-stat.is-saved {
12172
+ color: var(--text-tertiary);
12173
+ }
12174
+
12175
+ .pb-bar-stat.is-dirty {
12176
+ color: var(--warning-fg-strong);
12177
+ background: var(--warning-bg);
12178
+ }
12179
+
12180
+ .pb-bar-dirty {
12181
+ color: var(--warning);
12182
+ display: grid;
12183
+ place-items: center;
12184
+ }
12185
+
12186
+ .pb-bar-dirty svg {
12187
+ width: 12px;
12188
+ height: 12px;
12189
+ }
12190
+
12191
+ .pb-srv {
12192
+ display: inline-flex;
12193
+ align-items: center;
12194
+ gap: var(--s-2);
12195
+ font-size: var(--text-xs);
12196
+ font-weight: 600;
12197
+ color: var(--text-brand-strong);
12198
+ background: var(--green-50);
12199
+ border: 1px solid var(--green-200);
12200
+ border-radius: var(--r-full);
12201
+ padding: 3px 9px;
12202
+ margin-right: var(--s-2);
12203
+ }
12204
+
12205
+ .pb-srv svg {
12206
+ width: 12px;
12207
+ height: 12px;
12208
+ }
12209
+
12210
+ .pb-work {
12211
+ flex: 1;
12212
+ display: flex;
12213
+ min-height: 0;
12214
+ }
12215
+
12216
+ /* left rail */
12217
+ .pb-side {
12218
+ width: 312px;
12219
+ flex-shrink: 0;
12220
+ background: var(--surface-raised);
12221
+ border-right: 1px solid var(--border-default);
12222
+ display: flex;
12223
+ flex-direction: column;
12224
+ min-height: 0;
12225
+ }
12226
+
12227
+ .pb-side-head {
12228
+ flex-shrink: 0;
12229
+ padding: var(--s-5) var(--s-6) var(--s-4);
12230
+ border-bottom: 1px solid var(--border-subtle);
12231
+ display: flex;
12232
+ align-items: baseline;
12233
+ gap: var(--s-3);
12234
+ }
12235
+
12236
+ .pb-side-h-t {
12237
+ font-size: var(--text-2_5xs);
12238
+ font-weight: 700;
12239
+ letter-spacing: var(--tracking-wide);
12240
+ text-transform: uppercase;
12241
+ color: var(--text-quaternary);
12242
+ }
12243
+
12244
+ .pb-side-h-s {
12245
+ font-size: var(--text-sm);
12246
+ font-weight: 600;
12247
+ color: var(--text-primary);
12248
+ margin-left: auto;
12249
+ }
12250
+
12251
+ .pb-side-collapse {
12252
+ width: 24px;
12253
+ height: 24px;
12254
+ border-radius: var(--r-sm);
12255
+ display: grid;
12256
+ place-items: center;
12257
+ color: var(--text-tertiary);
12258
+ margin-left: var(--s-3);
12259
+ flex-shrink: 0;
12260
+ }
12261
+
12262
+ .pb-side-collapse:hover {
12263
+ background: var(--surface-hover);
12264
+ color: var(--text-primary);
12265
+ }
12266
+
12267
+ .pb-side-collapse svg {
12268
+ width: 15px;
12269
+ height: 15px;
12270
+ }
12271
+
12272
+ .pb-side-scroll {
12273
+ flex: 1;
12274
+ overflow: auto;
12275
+ scrollbar-width: thin;
12276
+ }
12277
+
12278
+ /* control sections */
12279
+ .cx-sec {
12280
+ border-bottom: 1px solid var(--border-subtle);
12281
+ }
12282
+
12283
+ .cx-sec-h {
12284
+ display: flex;
12285
+ align-items: center;
12286
+ gap: var(--s-4);
12287
+ width: 100%;
12288
+ height: 42px;
12289
+ padding: 0 var(--s-6);
12290
+ text-align: left;
12291
+ }
12292
+
12293
+ .cx-sec-h:hover {
12294
+ background: var(--surface-hover);
12295
+ }
12296
+
12297
+ .cx-sec-ic {
12298
+ width: 24px;
12299
+ height: 24px;
12300
+ border-radius: var(--r-sm);
12301
+ display: grid;
12302
+ place-items: center;
12303
+ background: var(--surface-muted);
12304
+ color: var(--text-tertiary);
12305
+ flex-shrink: 0;
12306
+ }
12307
+
12308
+ .cx-sec-ic svg {
12309
+ width: 14px;
12310
+ height: 14px;
12311
+ }
12312
+
12313
+ .cx-sec-t {
12314
+ font-size: var(--text-md);
12315
+ font-weight: 600;
12316
+ color: var(--text-primary);
12317
+ flex: 1;
12318
+ }
12319
+
12320
+ .cx-sec-chev {
12321
+ width: 15px;
12322
+ height: 15px;
12323
+ color: var(--text-quaternary);
12324
+ transition: transform var(--dur-fast);
12325
+ }
12326
+
12327
+ .cx-sec.is-open .cx-sec-chev {
12328
+ transform: rotate(180deg);
12329
+ }
12330
+
12331
+ .cx-sec-body {
12332
+ padding: var(--s-3) var(--s-6) var(--s-6);
12333
+ }
12334
+
12335
+ .cx-hint {
12336
+ font-size: var(--text-xs);
12337
+ color: var(--text-tertiary);
12338
+ line-height: 1.5;
12339
+ margin-bottom: var(--s-4);
12340
+ padding: var(--s-3) var(--s-4);
12341
+ background: var(--surface-muted);
12342
+ border-radius: var(--r-sm);
12343
+ }
12344
+
12345
+ .cx-divline {
12346
+ height: 1px;
12347
+ background: var(--border-subtle);
12348
+ margin: var(--s-5) 0;
12349
+ }
12350
+
12351
+ .cx-row {
12352
+ display: flex;
12353
+ align-items: center;
12354
+ gap: var(--s-4);
12355
+ min-height: 34px;
12356
+ padding: var(--s-2) 0;
12357
+ }
12358
+
12359
+ .cx-row-l {
12360
+ display: flex;
12361
+ flex-direction: column;
12362
+ gap: 1px;
12363
+ flex-shrink: 0;
12364
+ }
12365
+
12366
+ .cx-row-lbl {
12367
+ font-size: var(--text-sm);
12368
+ color: var(--text-secondary);
12369
+ }
12370
+
12371
+ .cx-row-sub {
12372
+ font-size: var(--text-2_5xs);
12373
+ color: var(--text-quaternary);
12374
+ }
12375
+
12376
+ .cx-row-c {
12377
+ margin-left: auto;
12378
+ display: flex;
12379
+ justify-content: flex-end;
12380
+ min-width: 0;
12381
+ }
12382
+
12383
+ .cx-row:has(.cx-seg.is-full),
12384
+ .cx-row:has(.cx-area),
12385
+ .cx-row:has(.cx-range) {
12386
+ align-items: flex-start;
12387
+ flex-direction: column;
12388
+ gap: var(--s-3);
12389
+ }
12390
+
12391
+ .cx-row:has(.cx-seg.is-full) .cx-row-c,
12392
+ .cx-row:has(.cx-area) .cx-row-c,
12393
+ .cx-row:has(.cx-range) .cx-row-c {
12394
+ margin-left: 0;
12395
+ width: 100%;
12396
+ justify-content: stretch;
12397
+ }
12398
+
12399
+ /* toggle switch */
12400
+ .cx-switch {
12401
+ width: 34px;
12402
+ height: 20px;
12403
+ border-radius: var(--r-full);
12404
+ background: var(--n-200);
12405
+ position: relative;
12406
+ transition: background var(--dur-base);
12407
+ flex-shrink: 0;
12408
+ }
12409
+
12410
+ .cx-switch.is-on {
12411
+ background: var(--brand-green);
12412
+ }
12413
+
12414
+ .cx-switch-dot {
12415
+ position: absolute;
12416
+ top: 2px;
12417
+ left: 2px;
12418
+ width: 16px;
12419
+ height: 16px;
12420
+ border-radius: 50%;
12421
+ background: #fff;
12422
+ box-shadow: var(--shadow-sm);
12423
+ transition: transform var(--dur-base) var(--ease-out);
12424
+ }
12425
+
12426
+ .cx-switch.is-on .cx-switch-dot {
12427
+ transform: translateX(14px);
12428
+ }
12429
+
12430
+ /* segmented */
12431
+ .cx-seg {
12432
+ display: inline-flex;
12433
+ background: var(--surface-muted);
12434
+ border-radius: var(--r-md);
12435
+ padding: 2px;
12436
+ gap: 2px;
12437
+ }
12438
+
12439
+ .cx-seg.is-full {
12440
+ display: flex;
12441
+ width: 100%;
12442
+ }
12443
+
12444
+ .cx-seg button {
12445
+ height: 26px;
12446
+ padding: 0 var(--s-4);
12447
+ border-radius: var(--r-sm);
12448
+ font-size: var(--text-xs);
12449
+ font-weight: 500;
12450
+ color: var(--text-tertiary);
12451
+ white-space: nowrap;
12452
+ display: inline-flex;
12453
+ align-items: center;
12454
+ justify-content: center;
12455
+ gap: var(--s-2);
12456
+ }
12457
+
12458
+ .cx-seg.is-full button {
12459
+ flex: 1;
12460
+ }
12461
+
12462
+ .cx-seg button svg {
12463
+ width: 13px;
12464
+ height: 13px;
12465
+ }
12466
+
12467
+ .cx-seg button.is-active {
12468
+ background: var(--surface-raised);
12469
+ color: var(--text-primary);
12470
+ box-shadow: var(--shadow-xs);
12471
+ font-weight: 600;
12472
+ }
12473
+
12474
+ .cx-seg button:not(.is-active):hover {
12475
+ color: var(--text-secondary);
12476
+ }
12477
+
12478
+ /* select */
12479
+ .cx-select {
12480
+ height: 30px;
12481
+ border: 1px solid var(--border-default);
12482
+ border-radius: var(--r-md);
12483
+ padding: 0 var(--s-4);
12484
+ font-size: var(--text-sm);
12485
+ background: var(--surface-raised);
12486
+ color: var(--text-primary);
12487
+ min-width: 150px;
12488
+ cursor: pointer;
12489
+ }
12490
+
12491
+ .cx-select:focus {
12492
+ border-color: var(--border-focus);
12493
+ box-shadow: var(--shadow-focus);
12494
+ outline: none;
12495
+ }
12496
+
12497
+ /* range */
12498
+ .cx-range {
12499
+ display: flex;
12500
+ align-items: center;
12501
+ gap: var(--s-4);
12502
+ width: 100%;
12503
+ }
12504
+
12505
+ .cx-range input[type=range] {
12506
+ flex: 1;
12507
+ accent-color: var(--brand-green);
12508
+ height: 4px;
12509
+ }
12510
+
12511
+ .cx-range-v {
12512
+ font-size: var(--text-xs);
12513
+ color: var(--text-secondary);
12514
+ font-variant-numeric: tabular-nums;
12515
+ min-width: 40px;
12516
+ text-align: right;
12517
+ }
12518
+
12519
+ /* text inputs */
12520
+ .cx-input {
12521
+ height: 30px;
12522
+ border: 1px solid var(--border-default);
12523
+ border-radius: var(--r-md);
12524
+ padding: 0 var(--s-4);
12525
+ font-size: var(--text-sm);
12526
+ background: var(--surface-raised);
12527
+ color: var(--text-primary);
12528
+ width: 100%;
12529
+ min-width: 0;
12530
+ }
12531
+
12532
+ .cx-input:focus {
12533
+ border-color: var(--border-focus);
12534
+ box-shadow: var(--shadow-focus);
12535
+ outline: none;
12536
+ }
12537
+
12538
+ .cx-area {
12539
+ height: auto;
12540
+ min-height: 54px;
12541
+ padding: var(--s-3) var(--s-4);
12542
+ resize: vertical;
12543
+ line-height: 1.45;
12544
+ }
12545
+
12546
+ /* swatches */
12547
+ .cx-swatches {
12548
+ display: flex;
12549
+ gap: var(--s-3);
12550
+ flex-wrap: wrap;
12551
+ justify-content: flex-end;
12552
+ }
12553
+
12554
+ .cx-swatch {
12555
+ width: 26px;
12556
+ height: 26px;
12557
+ border-radius: var(--r-md);
12558
+ border: 2px solid transparent;
12559
+ cursor: pointer;
12560
+ }
12561
+
12562
+ .cx-swatch.is-sel {
12563
+ border-color: var(--text-primary);
12564
+ box-shadow: 0 0 0 2px var(--surface-raised) inset;
12565
+ }
12566
+
12567
+ /* line-items editor */
12568
+ .cx-items {
12569
+ display: flex;
12570
+ flex-direction: column;
12571
+ gap: var(--s-4);
12572
+ }
12573
+
12574
+ .cx-item {
12575
+ border: 1px solid var(--border-default);
12576
+ border-radius: var(--r-md);
12577
+ padding: var(--s-4);
12578
+ background: var(--surface-canvas);
12579
+ }
12580
+
12581
+ .cx-item-top {
12582
+ display: flex;
12583
+ align-items: center;
12584
+ gap: var(--s-3);
12585
+ }
12586
+
12587
+ .cx-item-n {
12588
+ width: 18px;
12589
+ height: 18px;
12590
+ border-radius: var(--r-xs);
12591
+ background: var(--surface-active);
12592
+ color: var(--text-tertiary);
12593
+ font-size: var(--text-2xs);
12594
+ font-weight: 700;
12595
+ display: grid;
12596
+ place-items: center;
12597
+ flex-shrink: 0;
12598
+ }
12599
+
12600
+ .cx-item-name {
12601
+ flex: 1;
12602
+ }
12603
+
12604
+ .cx-item-move {
12605
+ display: flex;
12606
+ gap: 2px;
12607
+ flex-shrink: 0;
12608
+ }
12609
+
12610
+ .cx-item-move button {
12611
+ width: 24px;
12612
+ height: 24px;
12613
+ border-radius: var(--r-sm);
12614
+ display: grid;
12615
+ place-items: center;
12616
+ color: var(--text-tertiary);
12617
+ }
12618
+
12619
+ .cx-item-move button:hover {
12620
+ background: var(--surface-hover);
12621
+ color: var(--text-primary);
12622
+ }
12623
+
12624
+ .cx-item-move button:disabled {
12625
+ opacity: .3;
12626
+ cursor: not-allowed;
12627
+ }
12628
+
12629
+ .cx-item-move button svg {
12630
+ width: 13px;
12631
+ height: 13px;
12632
+ }
12633
+
12634
+ .cx-item-del:hover {
12635
+ background: var(--danger-bg) !important;
12636
+ color: var(--danger) !important;
12637
+ }
12638
+
12639
+ .cx-item-grid {
12640
+ display: grid;
12641
+ grid-template-columns: repeat(4, 1fr);
12642
+ gap: var(--s-3);
12643
+ margin-top: var(--s-3);
12644
+ }
12645
+
12646
+ .cx-item-grid--2 {
12647
+ grid-template-columns: 1fr 1fr;
12648
+ }
12649
+
12650
+ .cx-item-grid label {
12651
+ display: flex;
12652
+ flex-direction: column;
12653
+ gap: 2px;
12654
+ }
12655
+
12656
+ .cx-item-grid label span {
12657
+ font-size: var(--text-2_5xs);
12658
+ color: var(--text-quaternary);
12659
+ font-weight: 600;
12660
+ letter-spacing: .02em;
12661
+ }
12662
+
12663
+ .cx-item-grid .cx-input {
12664
+ height: 28px;
12665
+ padding: 0 var(--s-3);
12666
+ }
12667
+
12668
+ .cx-add {
12669
+ display: flex;
12670
+ align-items: center;
12671
+ justify-content: center;
12672
+ gap: var(--s-2);
12673
+ height: 32px;
12674
+ border: 1px dashed var(--border-strong);
12675
+ border-radius: var(--r-md);
12676
+ font-size: var(--text-sm);
12677
+ font-weight: 500;
12678
+ color: var(--text-secondary);
12679
+ }
12680
+
12681
+ .cx-add:hover {
12682
+ border-color: var(--brand-green);
12683
+ color: var(--text-brand-strong);
12684
+ background: var(--green-50);
12685
+ }
12686
+
12687
+ .cx-add svg {
12688
+ width: 14px;
12689
+ height: 14px;
12690
+ }
12691
+
12692
+ /* table-column / document-field editors */
12693
+ .cx-cols {
12694
+ display: flex;
12695
+ flex-direction: column;
12696
+ gap: var(--s-3);
12697
+ }
12698
+
12699
+ .cx-col {
12700
+ border: 1px solid var(--border-default);
12701
+ border-radius: var(--r-md);
12702
+ padding: var(--s-3) var(--s-4);
12703
+ background: var(--surface-canvas);
12704
+ }
12705
+
12706
+ .cx-col-top {
12707
+ display: flex;
12708
+ align-items: center;
12709
+ gap: var(--s-2);
12710
+ }
12711
+
12712
+ .cx-grip {
12713
+ color: var(--text-disabled);
12714
+ display: grid;
12715
+ place-items: center;
12716
+ flex-shrink: 0;
12717
+ cursor: grab;
12718
+ }
12719
+
12720
+ .cx-grip svg {
12721
+ width: 14px;
12722
+ height: 14px;
12723
+ }
12724
+
12725
+ .cx-col-lbl {
12726
+ flex: 1;
12727
+ height: 28px;
12728
+ }
12729
+
12730
+ .cx-col-bind {
12731
+ display: flex;
12732
+ align-items: center;
12733
+ gap: var(--s-3);
12734
+ margin-top: var(--s-3);
12735
+ }
12736
+
12737
+ .cx-col-bind .cx-select {
12738
+ flex: 1;
12739
+ min-width: 0;
12740
+ height: 28px;
12741
+ }
12742
+
12743
+ .cx-col-bind .cx-seg {
12744
+ flex-shrink: 0;
12745
+ }
12746
+
12747
+ .cx-col-bind .cx-seg button {
12748
+ width: 26px;
12749
+ padding: 0;
12750
+ }
12751
+
12752
+ .cx-ph-tag {
12753
+ font-family: var(--font-mono);
12754
+ font-size: 10px;
12755
+ color: var(--ai-fg-deep);
12756
+ background: var(--ai-bg);
12757
+ border-radius: var(--r-sm);
12758
+ padding: 3px 6px;
12759
+ white-space: nowrap;
12760
+ overflow: hidden;
12761
+ text-overflow: ellipsis;
12762
+ max-width: 130px;
12763
+ }
12764
+
12765
+ /* lens bar above the canvas */
12766
+ .pb-lensbar {
12767
+ position: absolute;
12768
+ top: 12px;
12769
+ left: 50%;
12770
+ transform: translateX(-50%);
12771
+ z-index: var(--z-popover);
12772
+ display: flex;
12773
+ flex-wrap: wrap;
12774
+ align-items: center;
12775
+ justify-content: center;
12776
+ gap: var(--s-3);
12777
+ width: max-content;
12778
+ max-width: min(calc(100% - 24px), 640px);
12779
+ }
12780
+
12781
+ .pb-lens {
12782
+ display: inline-flex;
12783
+ background: rgba(20, 23, 27, .82);
12784
+ backdrop-filter: blur(6px);
12785
+ border-radius: var(--r-full);
12786
+ padding: 3px;
12787
+ box-shadow: var(--shadow-lg);
12788
+ flex-shrink: 0;
12789
+ }
12790
+
12791
+ .pb-lens button {
12792
+ display: inline-flex;
12793
+ align-items: center;
12794
+ gap: var(--s-2);
12795
+ height: 28px;
12796
+ padding: 0 var(--s-5);
12797
+ border-radius: var(--r-full);
12798
+ font-size: var(--text-xs);
12799
+ font-weight: 600;
12800
+ color: #c4c7cb;
12801
+ white-space: nowrap;
12802
+ }
12803
+
12804
+ .pb-lens button svg {
12805
+ width: 13px;
12806
+ height: 13px;
12807
+ }
12808
+
12809
+ .pb-lens button.is-active {
12810
+ background: #fff;
12811
+ color: var(--n-900);
12812
+ }
12813
+
12814
+ .pb-edithint-inline {
12815
+ display: inline-flex;
12816
+ align-items: center;
12817
+ gap: var(--s-2);
12818
+ font-size: var(--text-xs);
12819
+ color: #d4d6d9;
12820
+ background: rgba(20, 23, 27, .7);
12821
+ backdrop-filter: blur(6px);
12822
+ padding: 5px 10px;
12823
+ border-radius: var(--r-full);
12824
+ max-width: 100%;
12825
+ min-width: 0;
12826
+ }
12827
+
12828
+ .pb-edithint-inline svg {
12829
+ width: 12px;
12830
+ height: 12px;
12831
+ color: var(--green-400);
12832
+ flex-shrink: 0;
12833
+ }
12834
+
12835
+ .pb-edithint-inline--ph svg {
12836
+ color: var(--ai-bg-strong);
12837
+ }
12838
+
12839
+ /* field picker dropdown (Edit lens) */
12840
+ .pb-fp {
12841
+ position: fixed;
12842
+ z-index: 9999;
12843
+ display: flex;
12844
+ flex-direction: column;
12845
+ overflow: hidden;
12846
+ background: var(--surface-raised);
12847
+ border: 1px solid var(--border-default);
12848
+ border-radius: var(--r-lg);
12849
+ box-shadow: var(--shadow-xl);
12850
+ }
12851
+
12852
+ .pb-fp-head {
12853
+ display: flex;
12854
+ align-items: center;
12855
+ gap: var(--s-3);
12856
+ padding: var(--s-3) var(--s-4);
12857
+ border-bottom: 1px solid var(--border-subtle);
12858
+ }
12859
+
12860
+ .pb-fp-head svg {
12861
+ width: 14px;
12862
+ height: 14px;
12863
+ color: var(--text-tertiary);
12864
+ flex-shrink: 0;
12865
+ }
12866
+
12867
+ .pb-fp-head input {
12868
+ flex: 1;
12869
+ min-width: 0;
12870
+ border: 0;
12871
+ outline: none;
12872
+ background: transparent;
12873
+ font: inherit;
12874
+ font-size: var(--text-sm);
12875
+ color: var(--text-primary);
12876
+ }
12877
+
12878
+ .pb-fp-list {
12879
+ overflow-y: auto;
12880
+ padding: var(--s-2);
12881
+ scrollbar-width: thin;
12882
+ }
12883
+
12884
+ .pb-fp-grp+.pb-fp-grp {
12885
+ margin-top: var(--s-2);
12886
+ }
12887
+
12888
+ .pb-fp-grp-h {
12889
+ font-size: var(--text-2_5xs);
12890
+ font-weight: 700;
12891
+ letter-spacing: .04em;
12892
+ text-transform: uppercase;
12893
+ color: var(--text-quaternary);
12894
+ padding: var(--s-2) var(--s-3) var(--s-1);
12895
+ }
12896
+
12897
+ .pb-fp-item {
12898
+ display: flex;
12899
+ align-items: center;
12900
+ gap: var(--s-3);
12901
+ width: 100%;
12902
+ padding: var(--s-3);
12903
+ border-radius: var(--r-sm);
12904
+ font-size: var(--text-sm);
12905
+ color: var(--text-secondary);
12906
+ text-align: left;
12907
+ }
12908
+
12909
+ .pb-fp-item:hover {
12910
+ background: var(--surface-hover);
12911
+ color: var(--text-primary);
12912
+ }
12913
+
12914
+ .pb-fp-item.is-current {
12915
+ color: var(--text-brand-strong);
12916
+ font-weight: 600;
12917
+ }
12918
+
12919
+ .pb-fp-item-l {
12920
+ flex: 1;
12921
+ }
12922
+
12923
+ .pb-fp-item svg {
12924
+ width: 14px;
12925
+ height: 14px;
12926
+ color: var(--brand-green);
12927
+ flex-shrink: 0;
12928
+ }
12929
+
12930
+ .pb-fp-empty {
12931
+ padding: var(--s-6);
12932
+ text-align: center;
12933
+ font-size: var(--text-sm);
12934
+ color: var(--text-tertiary);
12935
+ }
12936
+
12937
+ .pb-fp-foot {
12938
+ padding: var(--s-3) var(--s-4);
12939
+ border-top: 1px solid var(--border-subtle);
12940
+ font-size: var(--text-2_5xs);
12941
+ color: var(--text-tertiary);
12942
+ background: var(--surface-sunken);
12943
+ line-height: 1.4;
12944
+ }
12945
+
12946
+ /* placeholder chips in the document (Placeholders lens) */
12947
+ .pbd .pbd-ph {
12948
+ font-family: var(--font-mono);
12949
+ font-size: .82em;
12950
+ color: var(--ai-fg-deep);
12951
+ background: #efe9fc;
12952
+ border: 1px solid #ddd0f8;
12953
+ border-radius: 3px;
12954
+ padding: 0 4px;
12955
+ white-space: normal;
12956
+ word-break: break-all;
12957
+ }
12958
+
12959
+ /* read-only template-source note */
12960
+ .pb-editor-note {
12961
+ display: flex;
12962
+ align-items: flex-start;
12963
+ gap: var(--s-3);
12964
+ padding: var(--s-3) var(--s-5);
12965
+ font-size: var(--text-xs);
12966
+ color: var(--text-brand-strong);
12967
+ background: var(--green-50);
12968
+ border-bottom: 1px solid var(--border-subtle);
12969
+ line-height: 1.45;
12970
+ }
12971
+
12972
+ .pb-editor-note svg {
12973
+ width: 13px;
12974
+ height: 13px;
12975
+ flex-shrink: 0;
12976
+ margin-top: 1px;
12977
+ color: var(--brand-green);
12978
+ }
12979
+
12980
+ /* edit hint chip */
12981
+ .pb-edithint {
12982
+ position: absolute;
12983
+ top: 14px;
12984
+ left: 50%;
12985
+ transform: translateX(-50%);
12986
+ z-index: var(--z-popover);
12987
+ display: inline-flex;
12988
+ align-items: center;
12989
+ gap: var(--s-3);
12990
+ background: rgba(20, 23, 27, .86);
12991
+ backdrop-filter: blur(6px);
12992
+ color: #eceef0;
12993
+ font-size: var(--text-xs);
12994
+ font-weight: 500;
12995
+ padding: 6px 8px 6px 12px;
12996
+ border-radius: var(--r-full);
12997
+ box-shadow: var(--shadow-lg);
12998
+ }
12999
+
13000
+ .pb-edithint svg {
13001
+ width: 14px;
13002
+ height: 14px;
13003
+ color: var(--green-400);
13004
+ }
13005
+
13006
+ .pb-edithint button {
13007
+ width: 20px;
13008
+ height: 20px;
13009
+ border-radius: 50%;
13010
+ display: grid;
13011
+ place-items: center;
13012
+ color: #aeb2b7;
13013
+ }
13014
+
13015
+ .pb-edithint button:hover {
13016
+ background: rgba(255, 255, 255, .14);
13017
+ color: #fff;
13018
+ }
13019
+
13020
+ .pb-edithint button svg {
13021
+ width: 12px;
13022
+ height: 12px;
13023
+ color: inherit;
13024
+ }
13025
+
13026
+ /* right dock */
13027
+ .pb-dock {
13028
+ width: 340px;
13029
+ flex-shrink: 0;
13030
+ background: var(--surface-raised);
13031
+ border-left: 1px solid var(--border-default);
13032
+ display: flex;
13033
+ flex-direction: column;
13034
+ min-height: 0;
13035
+ position: relative;
13036
+ }
13037
+
13038
+ .pb-dock--wide {
13039
+ width: 600px;
13040
+ }
13041
+
13042
+ .pb-dock-resizer {
13043
+ position: absolute;
13044
+ top: 0;
13045
+ left: -3px;
13046
+ width: 7px;
13047
+ height: 100%;
13048
+ cursor: col-resize;
13049
+ z-index: 2;
13050
+ }
13051
+
13052
+ .pb-dock-resizer:hover {
13053
+ background: linear-gradient(90deg, transparent, rgba(46, 178, 115, .35), transparent);
13054
+ }
13055
+
13056
+ .pb-dock .pb-htmltab {
13057
+ flex: 1;
13058
+ }
13059
+
13060
+ .pb-dock-close {
13061
+ width: 28px;
13062
+ height: 28px;
13063
+ border-radius: var(--r-md);
13064
+ display: grid;
13065
+ place-items: center;
13066
+ color: var(--text-tertiary);
13067
+ }
13068
+
13069
+ .pb-dock-close:hover {
13070
+ background: var(--surface-hover);
13071
+ color: var(--text-primary);
13072
+ }
13073
+
13074
+ .pb-dock-close svg {
13075
+ width: 15px;
13076
+ height: 15px;
13077
+ }
13078
+
13079
+ .pb-zoomwrap {
13080
+ transform-origin: top center;
13081
+ }
13082
+
13083
+ /* editor read-only / warn note + custom-lock banner */
13084
+ .pb-editor-note--warn {
13085
+ color: var(--warning-fg-strong);
13086
+ background: var(--warning-bg);
13087
+ }
13088
+
13089
+ .pb-editor-note--warn svg {
13090
+ color: var(--warning);
13091
+ }
13092
+
13093
+ .cx-lockbanner {
13094
+ display: flex;
13095
+ align-items: flex-start;
13096
+ gap: var(--s-3);
13097
+ margin: var(--s-5) var(--s-6) 0;
13098
+ padding: var(--s-4) var(--s-5);
13099
+ font-size: var(--text-xs);
13100
+ line-height: 1.45;
13101
+ color: var(--warning-fg-strong);
13102
+ background: var(--warning-bg);
13103
+ border: 1px solid var(--warning-bg-strong);
13104
+ border-radius: var(--r-md);
13105
+ }
13106
+
13107
+ .cx-lockbanner svg {
13108
+ width: 14px;
13109
+ height: 14px;
13110
+ flex-shrink: 0;
13111
+ margin-top: 1px;
13112
+ color: var(--warning);
13113
+ }
13114
+
13115
+ .cx-lockbanner-body {
13116
+ display: flex;
13117
+ flex-direction: column;
13118
+ align-items: flex-start;
13119
+ gap: var(--s-3);
13120
+ }
13121
+
13122
+ .cx-lockbanner-btn {
13123
+ display: inline-flex;
13124
+ align-items: center;
13125
+ gap: var(--s-2);
13126
+ padding: var(--s-2) var(--s-3);
13127
+ font: inherit;
13128
+ font-weight: 600;
13129
+ color: var(--warning-fg-strong);
13130
+ background: #fff;
13131
+ border: 1px solid var(--warning-bg-strong);
13132
+ border-radius: var(--r-sm);
13133
+ cursor: pointer;
13134
+ }
13135
+
13136
+ .cx-lockbanner-btn:hover {
13137
+ background: var(--warning-bg-strong);
13138
+ }
13139
+
13140
+ .cx-lockbanner-btn svg {
13141
+ margin-top: 0;
13142
+ }
13143
+
13144
+ .cx-customnote {
13145
+ display: flex;
13146
+ flex-direction: column;
13147
+ align-items: flex-start;
13148
+ gap: var(--s-3);
13149
+ padding: var(--s-2) 0;
13150
+ }
13151
+
13152
+ .cx-customnote p {
13153
+ margin: 0;
13154
+ font-size: var(--text-xs);
13155
+ line-height: 1.5;
13156
+ color: var(--text-tertiary);
13157
+ }
13158
+
13159
+ .cx-customnote .cx-lockbanner-btn {
13160
+ width: auto;
13161
+ white-space: nowrap;
13162
+ }
13163
+
13164
+ .cx-lockbanner-btn svg {
13165
+ width: 13px;
13166
+ height: 13px;
13167
+ flex-shrink: 0;
13168
+ }
13169
+
13170
+ /* ── Dynamic Table editor (cx-tbl-*) ─────────────────────── */
13171
+ .cx-tbl-editor {
13172
+ padding: 0 var(--s-4) var(--s-4);
13173
+ display: flex;
13174
+ flex-direction: column;
13175
+ gap: var(--s-3);
13176
+ }
13177
+
13178
+ .cx-tbl-source {
13179
+ display: flex;
13180
+ align-items: center;
13181
+ gap: var(--s-3);
13182
+ background: var(--surface-sunken);
13183
+ border: 1px solid var(--border-subtle);
13184
+ border-radius: var(--r-md);
13185
+ padding: var(--s-2) var(--s-3);
13186
+ }
13187
+
13188
+ .cx-tbl-source .cx-ph-tag {
13189
+ flex: 1;
13190
+ font-size: var(--text-2_5xs);
13191
+ }
13192
+
13193
+ .cx-tbl-cols-hd {
13194
+ display: flex;
13195
+ align-items: center;
13196
+ justify-content: space-between;
13197
+ padding: var(--s-2) 0;
13198
+ font-size: var(--text-xs);
13199
+ font-weight: 600;
13200
+ color: var(--text-secondary);
13201
+ }
13202
+
13203
+ /* ── Add Table Dialog ─────────────────────────────────────── */
13204
+ .cx-dialog-overlay {
13205
+ position: fixed;
13206
+ inset: 0;
13207
+ z-index: 9999;
13208
+ display: grid;
13209
+ place-items: center;
13210
+ background: rgba(0, 0, 0, .45);
13211
+ backdrop-filter: blur(2px);
13212
+ }
13213
+
13214
+ .cx-dialog {
13215
+ background: var(--surface-raised);
13216
+ border: 1px solid var(--border-default);
13217
+ border-radius: var(--r-lg);
13218
+ width: 420px;
13219
+ max-width: 95vw;
13220
+ display: flex;
13221
+ flex-direction: column;
13222
+ box-shadow: var(--shadow-xl);
13223
+ }
13224
+
13225
+ .cx-dialog-head {
13226
+ display: flex;
13227
+ align-items: center;
13228
+ padding: var(--s-4) var(--s-5);
13229
+ border-bottom: 1px solid var(--border-subtle);
13230
+ font-weight: 600;
13231
+ font-size: var(--text-sm);
13232
+ color: var(--text-primary);
13233
+ }
13234
+
13235
+ .cx-dialog-close {
13236
+ margin-left: auto;
13237
+ width: 26px;
13238
+ height: 26px;
13239
+ display: grid;
13240
+ place-items: center;
13241
+ color: var(--text-tertiary);
13242
+ border-radius: var(--r-sm);
13243
+ }
13244
+
13245
+ .cx-dialog-close:hover {
13246
+ background: var(--surface-hover);
13247
+ color: var(--text-primary);
13248
+ }
13249
+
13250
+ .cx-dialog-close svg {
13251
+ width: 14px;
13252
+ height: 14px;
13253
+ }
13254
+
13255
+ .cx-dialog-body {
13256
+ padding: var(--s-5);
13257
+ display: flex;
13258
+ flex-direction: column;
13259
+ gap: var(--s-4);
13260
+ }
13261
+
13262
+ .cx-dialog-body .cx-hint {
13263
+ margin: 0;
13264
+ }
13265
+
13266
+ .cx-dialog-lbl {
13267
+ font-size: var(--text-xs);
13268
+ font-weight: 500;
13269
+ color: var(--text-secondary);
13270
+ }
13271
+
13272
+ .cx-dialog-body .cx-ph-tag {
13273
+ font-size: var(--text-2_5xs);
13274
+ }
13275
+
13276
+ .cx-dialog-foot {
13277
+ display: flex;
13278
+ align-items: center;
13279
+ justify-content: flex-end;
13280
+ gap: var(--s-3);
13281
+ padding: var(--s-4) var(--s-5);
13282
+ border-top: 1px solid var(--border-subtle);
13283
+ }
13284
+
13285
+ /* V2 SVG and Button reset - required for icons (overrides hardcoded fills like white on white) */
13286
+ :where(.pb, .templates, .cx-dialog) button,
13287
+ button:where(.pbtn, .pb-bar-back) {
13288
+ font: inherit;
13289
+ cursor: pointer;
13290
+ background: none;
13291
+ border: 0;
13292
+ color: inherit;
13293
+ letter-spacing: inherit;
13294
+ }
13295
+
13296
+ :where(.pb, .templates, .pbtn, .te-sidebar, .cx-dialog, .pb-bar) svg:not(.MuiSvgIcon-root) {
13297
+ fill: none;
13298
+ stroke: currentColor;
13299
+ stroke-linecap: round;
13300
+ stroke-linejoin: round;
13301
+ }/* ═══════════════════════════════════════════════════════════════
13302
+ ERPForce PDF Builder — the document (.pbd-*)
13303
+ A real A4 paginated document. Same CSS drives screen preview,
13304
+ measurement pass, and @media print output.
13305
+ Tunable per-doc via CSS vars set by AI / inline edits:
13306
+ --pbd-accent heading rules, doctype, grand total
13307
+ --pbd-head-weight letterhead company weight
13308
+ data-density="compact" tightens the line-item table.
13309
+ ═══════════════════════════════════════════════════════════════ */
13310
+
13311
+ .pbd {
13312
+ --pbd-accent: #1B2C6E;
13313
+ --pbd-ink: #14171b;
13314
+ --pbd-muted: #6a6f76;
13315
+ --pbd-faint: #9aa0a6;
13316
+ --pbd-line: #e4e6e9;
13317
+ --pbd-line-strong: #c9ccd0;
13318
+ --pbd-fill: #f6f7f8;
13319
+ --pbd-head-weight: 700;
13320
+ --pbd-pad-y: 6.5px;
13321
+ color: var(--pbd-ink);
13322
+ font-family: 'Inter', sans-serif;
13323
+ font-size: 11px; line-height: 1.45;
13324
+ font-feature-settings: 'tnum';
13325
+ font-variant-numeric: tabular-nums;
13326
+ }
13327
+
13328
+ /* ── Page shell (built by the paginator / editor) ─────────────── */
13329
+ .pbd-page { width: var(--pbd-page-w, 794px); min-height: var(--pbd-page-h, 1123px); background: #fff; position: relative; flex-shrink: 0;
13330
+ box-shadow: 0 6px 30px rgba(0,0,0,.4); display: flex; flex-direction: column; }
13331
+ .pbd-page-inner { flex: 1; padding: 54px 52px 56px; display: flex; flex-direction: column; overflow-x: auto; }
13332
+
13333
+ /* running header / footer */
13334
+ .pbd-runhead { position: absolute; top: 0; left: 0; right: 0; display: flex; align-items: center; gap: 8px;
13335
+ padding: 0 16px; border-bottom: .8px solid var(--pbd-line); font-size: 8px; color: var(--pbd-muted); }
13336
+ .pbd-runhead img { height: 11px; opacity: .9; }
13337
+ .pbd-runhead .rh-l { font-weight: 700; color: var(--pbd-ink); }
13338
+ .pbd-runhead .rh-r { margin-left: auto; font-family: 'JetBrains Mono', monospace; }
13339
+ .pbd-runfoot { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; gap: 8px;
13340
+ padding: 0 16px; border-top: .8px solid var(--pbd-line); font-size: 8px; color: var(--pbd-muted); }
13341
+ .pbd-runfoot .rf-l { color: var(--pbd-muted); }
13342
+ .pbd-runfoot .rf-r { margin-left: auto; font-variant-numeric: tabular-nums; }
13343
+
13344
+ /* ── letterhead ─────────────────────────────────────────────── */
13345
+ .pbd-lh { display: flex; justify-content: space-between; align-items: flex-start; gap: 28px;
13346
+ padding-bottom: 14px; border-bottom: 2.5px solid var(--pbd-accent); }
13347
+ .pbd-lh-co { display: flex; flex-direction: column; gap: 2px; max-width: 56%; }
13348
+ .pbd-logo { height: var(--pbd-logo-h, 24px); width: auto; display: block; margin-bottom: 7px; }
13349
+
13350
+ /* compact letterhead — saves vertical space on the masthead */
13351
+ .pbd[data-head="compact"] .pbd-lh { padding-bottom: 9px; gap: 18px; }
13352
+ .pbd[data-head="compact"] .pbd-logo { margin-bottom: 4px; }
13353
+ .pbd[data-head="compact"] .pbd-co-name { font-size: 12.5px; }
13354
+ .pbd[data-head="compact"] .pbd-co-line { font-size: 8px; line-height: 1.35; }
13355
+ .pbd[data-head="compact"] .pbd-doctype { font-size: 19px; }
13356
+ .pbd[data-head="compact"] .pbd-ref { margin-top: 4px; font-size: 9px; }
13357
+ .pbd[data-head="compact"] .pbd-status { margin-top: 5px; }
13358
+ .pbd-co-name { font-size: 14px; font-weight: var(--pbd-head-weight); letter-spacing: -.01em; color: var(--pbd-ink); }
13359
+ .pbd-co-line { font-size: 9px; color: var(--pbd-muted); }
13360
+ .pbd-lh-doc { text-align: right; flex-shrink: 0; }
13361
+ .pbd-doctype { font-size: 23px; font-weight: 700; letter-spacing: -.02em; color: var(--pbd-accent); text-transform: uppercase; line-height: 1.08; }
13362
+ .pbd-ref { font-size: 9.5px; color: var(--pbd-muted); margin-top: 7px; font-family: 'JetBrains Mono', monospace; }
13363
+ .pbd-ref b { color: var(--pbd-ink); font-weight: 600; }
13364
+ .pbd-status { display: inline-block; margin-top: 8px; font-size: 8.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
13365
+ padding: 3px 8px; border-radius: 3px; }
13366
+ .pbd-status--draft { color: #8a540b; background: #fef1dd; }
13367
+ .pbd-status--paid { color: #156b43; background: #e2f5ec; }
13368
+ .pbd-status--due { color: #a8232a; background: #fce5e8; }
13369
+
13370
+ /* ── parties (bill to / ship to / from) ─────────────────────── */
13371
+ .pbd-parties { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 22px; }
13372
+ .pbd-parties--2 { grid-template-columns: 1fr 1fr; }
13373
+ .pbd-party-h { font-size: 8px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--pbd-faint); margin-bottom: 5px; }
13374
+ .pbd-party-name { font-size: 11.5px; font-weight: 600; color: var(--pbd-ink); }
13375
+ .pbd-party-line { font-size: 9.5px; color: var(--pbd-muted); line-height: 1.5; }
13376
+
13377
+ /* ── meta strip ─────────────────────────────────────────────── */
13378
+ .pbd-meta { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px 18px; margin-top: 18px;
13379
+ padding: 12px 16px; background: var(--pbd-fill); border: 1px solid var(--pbd-line); border-radius: 6px; }
13380
+ .pbd-meta-item { display: flex; flex-direction: column; gap: 1px; }
13381
+ .pbd-meta-k { font-size: 7.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pbd-faint); }
13382
+ .pbd-meta-v { font-size: 10.5px; font-weight: 600; color: var(--pbd-ink); }
13383
+ .pbd-meta--3 { grid-template-columns: repeat(3, 1fr); }
13384
+ .pbd-meta--2 { grid-template-columns: repeat(2, 1fr); }
13385
+
13386
+ /* ── section heading ────────────────────────────────────────── */
13387
+ .pbd-h { font-size: 10px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--pbd-accent);
13388
+ margin: 22px 0 8px; padding-bottom: 5px; border-bottom: 1px solid var(--pbd-line); }
13389
+ .pbd-intro { font-size: 10px; color: var(--pbd-muted); line-height: 1.55; margin-top: 16px; }
13390
+
13391
+ /* ── line-item table (the hard part) ────────────────────────── */
13392
+ .pbd-items-wrap { margin-top: 14px; }
13393
+ .pbd-items { width: 100%; border-collapse: collapse; }
13394
+ .pbd-items thead th { font-size: 8px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #fff;
13395
+ background: var(--pbd-accent); text-align: right; padding: 7px 9px; white-space: nowrap; }
13396
+ .pbd-items thead th:first-child { text-align: left; border-radius: 3px 0 0 0; }
13397
+ .pbd-items thead th:last-child { border-radius: 0 3px 0 0; }
13398
+ .pbd-items thead th.l { text-align: left; }
13399
+ .pbd-items tbody td { font-size: 10px; padding: var(--pbd-pad-y) 9px; text-align: right; border-bottom: 1px solid var(--pbd-line);
13400
+ color: #2c2f35; white-space: nowrap; vertical-align: top; }
13401
+ .pbd-items tbody td.l { text-align: left; }
13402
+ .pbd-items tbody tr:nth-child(even) td { background: #fafbfb; }
13403
+ .pbd-items .it-no { color: var(--pbd-faint); font-size: 9px; width: 22px; }
13404
+ .pbd-items .it-desc { white-space: normal; max-width: 230px; }
13405
+ .pbd-items .it-desc b { font-weight: 600; color: var(--pbd-ink); }
13406
+ .pbd-items .it-sku { display: block; font-family: 'JetBrains Mono', monospace; font-size: 8px; color: var(--pbd-faint); margin-top: 1px; }
13407
+ .pbd-items .it-tax { color: var(--pbd-muted); font-size: 9px; }
13408
+ .pbd-items .it-disc { color: #156b43; }
13409
+ .pbd-items tfoot td { font-size: 9.5px; padding: 6px 9px; }
13410
+
13411
+ /* "continued" caption when a table breaks across pages */
13412
+ .pbd-items-cont { font-size: 8px; font-style: italic; color: var(--pbd-faint); padding: 4px 9px 0; text-align: right; }
13413
+
13414
+ /* density */
13415
+ .pbd[data-density="compact"] { --pbd-pad-y: 4px; }
13416
+ .pbd[data-density="compact"] .pbd-items thead th { padding: 5px 8px; }
13417
+ .pbd[data-density="comfortable"] { --pbd-pad-y: 9px; }
13418
+
13419
+ /* ── totals ─────────────────────────────────────────────────── */
13420
+ .pbd-totals-wrap { display: flex; justify-content: flex-end; margin-top: 14px; }
13421
+ .pbd-totals { width: 280px; }
13422
+ .pbd-tot-row { display: flex; justify-content: space-between; padding: 5px 10px; font-size: 10px; color: var(--pbd-muted); }
13423
+ .pbd-tot-row .pbd-tot-v { color: var(--pbd-ink); font-weight: 500; font-variant-numeric: tabular-nums; }
13424
+ .pbd-tot-row--sub { border-top: 1px solid var(--pbd-line); }
13425
+ .pbd-tot-row--disc .pbd-tot-v { color: #156b43; }
13426
+ .pbd-tot-grand { display: flex; justify-content: space-between; align-items: baseline; padding: 9px 10px; margin-top: 4px;
13427
+ background: var(--pbd-accent); color: #fff; border-radius: 5px; }
13428
+ .pbd-tot-grand .pbd-tot-k { font-size: 10px; font-weight: 600; letter-spacing: .02em; }
13429
+ .pbd-tot-grand .pbd-tot-v { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
13430
+ .pbd-amountwords { margin-top: 10px; font-size: 9px; color: var(--pbd-muted); font-style: italic; }
13431
+ .pbd-amountwords b { font-style: normal; color: var(--pbd-ink); }
13432
+
13433
+ /* ── notes / terms / signature ──────────────────────────────── */
13434
+ .pbd-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: 22px; }
13435
+ .pbd-notes-h { font-size: 8px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pbd-faint); margin-bottom: 5px; }
13436
+ .pbd-notes-body { font-size: 9.5px; color: var(--pbd-muted); line-height: 1.55; }
13437
+ .pbd-notes-body ol, .pbd-notes-body ul { margin: 0; padding-left: 14px; display: flex; flex-direction: column; gap: 3px; }
13438
+ .pbd-pay { font-size: 9.5px; color: var(--pbd-muted); line-height: 1.7; }
13439
+ .pbd-pay b { color: var(--pbd-ink); font-weight: 600; }
13440
+ .pbd-pay .k { display: inline-block; min-width: 92px; color: var(--pbd-faint); }
13441
+
13442
+ .pbd-sign { display: flex; gap: 48px; margin-top: 36px; }
13443
+ .pbd-sign-line { flex: 1; max-width: 220px; }
13444
+ .pbd-sign-rule { border-top: 1px solid var(--pbd-ink); padding-top: 5px; font-size: 9px; color: var(--pbd-muted); }
13445
+ .pbd-sign-rule b { color: var(--pbd-ink); display: block; font-size: 10px; }
13446
+
13447
+ .pbd-foot { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--pbd-line); display: flex; justify-content: space-between;
13448
+ font-size: 8.5px; color: var(--pbd-faint); }
13449
+ .pbd-foot b { color: var(--pbd-muted); }
13450
+
13451
+ /* paid / draft stamp overlay */
13452
+ .pbd-stamp { position: absolute; top: 180px; right: 60px; transform: rotate(-14deg); border: 3px solid; border-radius: 8px;
13453
+ padding: 6px 18px; font-size: 26px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; opacity: .16; pointer-events: none; }
13454
+ .pbd-stamp--paid { color: #156b43; border-color: #156b43; }
13455
+ .pbd-stamp--due { color: #a8232a; border-color: #a8232a; }
13456
+
13457
+ /* ── inline WYSIWYG edit affordances ─────────────────────────── */
13458
+ .pb-editable [data-edit] { cursor: text; border-radius: 2px; transition: background .12s, box-shadow .12s; }
13459
+ .pb-editable [data-edit]:hover { background: rgba(46,178,115,.10); box-shadow: 0 0 0 2px rgba(46,178,115,.16); }
13460
+ .pb-editable [data-edit].is-editing { background: #fff; box-shadow: 0 0 0 2px var(--brand-green); outline: none; }
13461
+ .pb-editable [data-edit].is-editing:empty::before { content: 'Type…'; color: var(--pbd-faint); }
13462
+ .pbd-ed:focus { outline: none; }
13463
+
13464
+ /* ── template WYSIWYG edit affordances (Edit lens) ── */
13465
+ .pb-tpl-editable .pbd-lit { cursor: text; border-radius: 2px; transition: background .12s, box-shadow .12s; }
13466
+ .pb-tpl-editable .pbd-lit:hover { background: rgba(46,178,115,.10); box-shadow: 0 0 0 2px rgba(46,178,115,.16); }
13467
+ .pb-tpl-editable .pbd-lit.is-editing { background: #fff; box-shadow: 0 0 0 2px var(--brand-green); outline: none; }
13468
+ /* field chips: friendly, click-to-pick (not monospace, no raw paths) */
13469
+ .pb-tpl-editable .pbd-ph { font-family: inherit; font-size: .92em; cursor: pointer; padding: 0 4px 0 6px;
13470
+ display: inline-flex; align-items: center; gap: 3px; transition: box-shadow .12s, background .12s; }
13471
+ .pb-tpl-editable .pbd-ph::after { content: '▾'; font-size: .72em; opacity: .55; margin-left: 1px; }
13472
+ .pb-tpl-editable .pbd-ph:hover { background: #e6dcff; box-shadow: 0 0 0 2px rgba(110,86,207,.30); }
13473
+
13474
+ /* field-inspector pills (Fields preview mode) */
13475
+ .pbd-ph { font-family: 'JetBrains Mono', monospace; font-size: .82em; color: var(--ai-fg-deep);
13476
+ background: #efe9fc; border: 1px solid #ddd0f8; border-radius: 3px; padding: 0 4px; white-space: normal; word-break: break-all; }
13477
+
13478
+ /* ── financial report rows ──────────────────────────────────── */
13479
+ .pbd-items tr.is-section td, .pbd-items tr.is-section th { font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
13480
+ color: var(--pbd-faint); padding-top: 13px; border-bottom: 0; background: #fff !important; }
13481
+ .pbd-items tr.is-sub td { font-weight: 700; color: var(--pbd-ink); border-top: 1px solid var(--pbd-line-strong); background: var(--pbd-fill) !important; }
13482
+ .pbd-items tr.is-grand td { font-weight: 700; font-size: 11px; color: #fff; background: var(--pbd-accent) !important; }
13483
+ .pbd-items .pd-indent { padding-left: 22px; }
13484
+ .pbd-items .pd-neg { color: #b4282d; }
13485
+ .pbd-items .pd-pos { color: #156b43; }
13486
+
13487
+ /* KPI strip (reports) */
13488
+ .pbd-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 14px; }
13489
+ .pbd-kpi { border: 1px solid var(--pbd-line); border-radius: 5px; padding: 9px 11px; }
13490
+ .pbd-kpi-l { font-size: 8px; color: var(--pbd-faint); text-transform: uppercase; letter-spacing: .04em; }
13491
+ .pbd-kpi-v { font-size: 16px; font-weight: 700; letter-spacing: -.02em; margin-top: 3px; color: var(--pbd-ink); }
13492
+ .pbd-kpi-s { font-size: 8px; color: var(--pbd-muted); margin-top: 2px; }
13493
+
13494
+ /* ═══════════════════════════════════════════════════════════════
13495
+ KSA bilingual (ZATCA) Tax Invoice · .kx-*
13496
+ Self-contained English/Arabic invoice. Arabic runs RTL with the
13497
+ Kufi face; table styling is scoped under .kx-items-wrap so it
13498
+ survives the paginator's continuation rebuild (which keeps the
13499
+ wrap attributes but resets the table to class="pbd-items").
13500
+ ═══════════════════════════════════════════════════════════════ */
13501
+ .kx-ar, .kx-ar-h, .kx-ar-sm, .kx-col-ar, .kx-title-ar,
13502
+ .kx-tot-ar, [dir="rtl"] { font-family: 'Noto Kufi Arabic', 'Inter', sans-serif; }
13503
+
13504
+ /* ── header ─────────────────────────────────────────────────── */
13505
+ .kx-head { border-bottom: 2.5px solid var(--pbd-accent); padding-bottom: 12px; }
13506
+ .kx-head-row { display: flex; align-items: center; gap: 16px; }
13507
+ .kx-logo { height: 26px; width: auto; }
13508
+ .kx-title-block { flex: 1; display: flex; align-items: center; justify-content: center; gap: 14px; }
13509
+ .kx-title { font-size: 22px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--pbd-ink); }
13510
+ .kx-title-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--pbd-accent); }
13511
+ .kx-title-ar { font-size: 23px; font-weight: 700; color: var(--pbd-accent); }
13512
+ .kx-head-tag { font-size: 7px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; text-align: center;
13513
+ color: var(--pbd-accent); border: 1.2px solid var(--pbd-accent); border-radius: 5px; padding: 4px 7px; line-height: 1.25; }
13514
+ .kx-head-no { display: flex; justify-content: space-between; margin-top: 9px; }
13515
+ .kx-head-no-en, .kx-head-no-ar { display: flex; align-items: baseline; gap: 7px; }
13516
+ .kx-head-no .kx-k { font-size: 8px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--pbd-faint); }
13517
+ .kx-head-no-ar .kx-k { text-transform: none; letter-spacing: 0; font-size: 9.5px; }
13518
+ .kx-head-no b { font-family: 'JetBrains Mono', monospace; font-size: 13px; font-weight: 700; color: var(--pbd-accent); }
13519
+
13520
+ /* ── seller / buyer cards ───────────────────────────────────── */
13521
+ .kx-parties { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 12px; }
13522
+ .kx-party { border: 1px solid var(--pbd-line-strong); border-radius: 7px; overflow: hidden; }
13523
+ .kx-party-bar { display: flex; justify-content: space-between; align-items: center; padding: 4px 11px;
13524
+ background: var(--pbd-fill); border-bottom: 1px solid var(--pbd-line); }
13525
+ .kx-party-bar span:first-child { font-size: 9px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--pbd-accent); }
13526
+ .kx-party-bar .kx-ar { font-size: 11px; font-weight: 700; color: var(--pbd-accent); }
13527
+ .kx-party-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 6px 12px; }
13528
+ .kx-col-ar { text-align: right; }
13529
+ .kx-name { font-size: 11px; font-weight: 700; color: var(--pbd-ink); line-height: 1.35; }
13530
+ .kx-col-ar .kx-name { font-size: 12px; }
13531
+ .kx-line { font-size: 8.5px; color: var(--pbd-muted); line-height: 1.5; margin-top: 1px; }
13532
+ .kx-col-ar .kx-line { font-size: 9.5px; }
13533
+ .kx-kv { display: flex; gap: 6px; font-size: 8.5px; margin-top: 4px; }
13534
+ .kx-col-ar .kx-kv { flex-direction: row-reverse; }
13535
+ .kx-kv span { color: var(--pbd-faint); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; min-width: 46px; }
13536
+ .kx-col-ar .kx-kv span { text-transform: none; letter-spacing: 0; min-width: 64px; }
13537
+ .kx-kv b { font-family: 'JetBrains Mono', monospace; color: var(--pbd-ink); font-weight: 600; }
13538
+
13539
+ /* ── meta strip ─────────────────────────────────────────────── */
13540
+ .kx-meta { display: grid; grid-template-columns: repeat(6, 1fr); margin-top: 10px;
13541
+ border: 1px solid var(--pbd-line-strong); border-radius: 7px; overflow: hidden; }
13542
+ .kx-meta-item { padding: 6px 10px; border-right: 1px solid var(--pbd-line); display: flex; flex-direction: column; gap: 3px; }
13543
+ .kx-meta-item:last-child { border-right: 0; }
13544
+ .kx-meta-k { font-size: 7px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--pbd-faint);
13545
+ display: flex; flex-direction: column; gap: 1px; line-height: 1.25; }
13546
+ .kx-meta-k .kx-ar { font-size: 8.5px; font-weight: 600; text-transform: none; letter-spacing: 0; color: var(--pbd-muted); font-style: normal; }
13547
+ .kx-meta-v { font-size: 9.5px; font-weight: 700; color: var(--pbd-ink); font-variant-numeric: tabular-nums; }
13548
+
13549
+ /* ── line-item table (scoped to the wrap so splits keep styling) ── */
13550
+ .kx-items-wrap { margin-top: 8px; }
13551
+ .kx-items-wrap .pbd-items thead th { font-size: 7.5px; line-height: 1.2; padding: 5px 6px; vertical-align: top; }
13552
+ .kx-items-wrap .pbd-items thead th .kx-ar-h { display: block; font-size: 8px; font-weight: 600; opacity: .9; margin-top: 2px; }
13553
+ .kx-items-wrap .pbd-items tbody td { font-size: 9px; padding: 3.5px 6px; vertical-align: middle; }
13554
+ .kx-items-wrap .pbd-items .it-no { width: 18px; }
13555
+ .kx-items-wrap .kx-sku { font-family: 'JetBrains Mono', monospace; font-size: 8.5px; color: var(--pbd-ink); }
13556
+ .kx-items-wrap .kx-desc { white-space: normal; min-width: 150px; max-width: 220px; }
13557
+ .kx-items-wrap .kx-desc b { font-weight: 600; color: var(--pbd-ink); display: block; }
13558
+ .kx-items-wrap .kx-desc .kx-ar { display: block; font-size: 9px; color: var(--pbd-muted); margin-top: 2px; direction: rtl; }
13559
+ .kx-items-wrap .kx-unit { display: block; }
13560
+ .kx-items-wrap .kx-ar-sm { display: block; font-size: 8px; color: var(--pbd-muted); margin-top: 1px; }
13561
+ .kx-items-wrap .kx-rate { color: var(--pbd-muted); }
13562
+
13563
+ /* edit mode: the field chips ("Total with tax", "Tax amount"…) are wider than
13564
+ the sample numbers they stand in for, and headers/chips are nowrap — across
13565
+ 11 columns that pushes the table past the page edge. Let headers and chips
13566
+ wrap in template-edit mode so the width:100% table can shrink back to fit. */
13567
+ .pb-tpl-editable .pbd-items thead th { white-space: normal; }
13568
+ .pb-tpl-editable .pbd-items tbody td { padding-left: 4px; padding-right: 4px; }
13569
+ .pb-tpl-editable .pbd-items tbody .pbd-ph {
13570
+ font-size: .8em; line-height: 1.12; padding: 0 2px; }
13571
+
13572
+ /* ── totals (ZATCA grid: EN label · value · AR label) ───────── */
13573
+ .kx-totals { margin-top: 10px; }
13574
+ .kx-tot-grid { border: 1px solid var(--pbd-line-strong); border-radius: 7px; overflow: hidden; }
13575
+ .kx-tot-row { display: grid; grid-template-columns: 1fr 150px 1fr; align-items: center;
13576
+ border-bottom: 1px solid var(--pbd-line); }
13577
+ .kx-tot-row:last-child { border-bottom: 0; }
13578
+ .kx-tot-en { font-size: 9.5px; font-weight: 600; color: var(--pbd-ink); padding: 4px 12px; }
13579
+ .kx-tot-v { font-size: 10.5px; font-weight: 700; color: var(--pbd-ink); text-align: center; padding: 4px 12px;
13580
+ font-variant-numeric: tabular-nums; border-left: 1px solid var(--pbd-line); border-right: 1px solid var(--pbd-line); background: #fff; }
13581
+ .kx-tot-ar { font-size: 10px; font-weight: 600; color: var(--pbd-muted); text-align: right; padding: 4px 12px; }
13582
+ .kx-tot-grand { background: var(--pbd-fill); }
13583
+ .kx-tot-grand .kx-tot-en, .kx-tot-grand .kx-tot-ar { font-weight: 800; color: var(--pbd-ink); }
13584
+ .kx-tot-grand .kx-tot-v { font-size: 12px; }
13585
+ .kx-tot-due { background: var(--pbd-accent); }
13586
+ .kx-tot-due .kx-tot-en, .kx-tot-due .kx-tot-ar { color: #fff; font-weight: 800; }
13587
+ .kx-tot-due .kx-tot-v { color: #fff; font-size: 13px; background: transparent; border-color: rgba(255,255,255,.28); }
13588
+
13589
+ .kx-words { margin-top: 8px; border: 1px dashed var(--pbd-line-strong); border-radius: 7px; overflow: hidden; }
13590
+ .kx-words-row { display: flex; gap: 10px; align-items: baseline; padding: 5px 12px; }
13591
+ .kx-words-row:first-child { border-bottom: 1px solid var(--pbd-line); }
13592
+ .kx-words-k { font-size: 8px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--pbd-faint); white-space: nowrap; }
13593
+ .kx-words-row[dir="rtl"] .kx-words-k { text-transform: none; letter-spacing: 0; font-size: 9.5px; }
13594
+ .kx-words-v { font-size: 9.5px; font-weight: 600; color: var(--pbd-ink); }
13595
+ .kx-words-row[dir="rtl"] .kx-words-v { font-size: 10.5px; }
13596
+
13597
+ /* ── QR + bank details ──────────────────────────────────────── */
13598
+ .kx-bankqr { display: flex; gap: 16px; margin-top: 10px; align-items: stretch; }
13599
+ .kx-qr { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
13600
+ border: 1px solid var(--pbd-line-strong); border-radius: 7px; padding: 11px; width: 152px; flex-shrink: 0; }
13601
+ .kx-qr img { width: 124px; height: 124px; display: block; }
13602
+ .kx-qr-cap { font-size: 7px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; color: var(--pbd-faint); text-align: center; line-height: 1.35; }
13603
+ .kx-qr-cap .kx-ar { display: block; font-size: 8.5px; text-transform: none; letter-spacing: 0; color: var(--pbd-muted); margin-top: 1px; }
13604
+ .kx-bank { flex: 1; border: 1px solid var(--pbd-line-strong); border-radius: 7px; overflow: hidden; }
13605
+ .kx-bank-h { display: flex; justify-content: space-between; padding: 5px 11px; background: var(--pbd-fill); border-bottom: 1px solid var(--pbd-line); }
13606
+ .kx-bank-h span:first-child { font-size: 9px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--pbd-accent); }
13607
+ .kx-bank-h .kx-ar { font-size: 11px; font-weight: 700; color: var(--pbd-accent); }
13608
+ .kx-bank-tbl { width: 100%; border-collapse: collapse; }
13609
+ .kx-bank-tbl td { font-size: 9px; padding: 4px 11px; border-bottom: 1px solid var(--pbd-line); color: var(--pbd-ink); }
13610
+ .kx-bank-tbl tr:last-child td { border-bottom: 0; }
13611
+ .kx-bank-tbl tr:nth-child(even) td { background: #fafbfb; }
13612
+ .kx-bank-k { width: 130px; color: var(--pbd-faint); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; font-size: 7.5px; }
13613
+ .kx-bank-k .kx-ar { float: right; text-transform: none; letter-spacing: 0; font-size: 9px; color: var(--pbd-muted); font-weight: 600; }
13614
+ .kx-bank-tbl td:not(.kx-bank-k) { font-family: 'JetBrains Mono', monospace; font-weight: 600; }
13615
+
13616
+ /* ── footer note ────────────────────────────────────────────── */
13617
+ .kx-foot { margin-top: auto; padding-top: 10px; border-top: 1px solid var(--pbd-line); text-align: center;
13618
+ font-size: 8.5px; color: var(--pbd-faint); line-height: 1.5; }
13619
+
13620
+
13621
+ @media print {
13622
+ html, body { height: auto !important; overflow: visible !important; background: #fff !important; }
13623
+ .pb-top, .pb-bar, .pb-rail, .pb-editor, .pb-ai, .pb-drawer, .pb-side, .pb-dock, .pb-edithint, .pb-lensbar, .pb-lens, .pb-edithint-inline, .pb-preview-bar, .pb-zoomfloat, .tweaks-panel, .pb-toast { display: none !important; }
13624
+ .pb, .pb-body, .pb-work, .pb-center, .pb-preview, .pb-stage, .pb-stage-scroll { display: block !important; height: auto !important; overflow: visible !important; background: #fff !important; }
13625
+ .pb-editable [data-edit]:hover { background: none !important; box-shadow: none !important; }
13626
+ .pb-preview-scroll, .pb-stage-scroll { overflow: visible !important; padding: 0 !important; background: #fff !important; }
13627
+ .pb-pages { transform: none !important; gap: 0 !important; display: block !important; }
13628
+ .pb-zoomwrap { transform: none !important; margin: 0 !important; width: auto !important; }
13629
+ .pbd-page { box-shadow: none !important; margin: 0 auto !important; page-break-after: always; break-after: page; }
13630
+ .pbd-page:last-child { page-break-after: auto; break-after: auto; }
13631
+ .pbd-items thead th, .pbd-tot-grand, .pbd-meta, .pbd-status, .pbd-items tr.is-grand td, .pbd-items tr.is-sub td, .pbd-runhead, .pbd-runfoot, .pbd-stamp,
13632
+ .kx-items-wrap .pbd-items thead th, .kx-tot-due, .kx-tot-grand, .kx-party-bar, .kx-bank-h, .kx-meta {
13633
+ -webkit-print-color-adjust: exact; print-color-adjust: exact; }
13634
+ }
13635
+ .pbd-page-inner table:not(.pbd-items) { min-width: max-content; }
13636
+ /* ═══════════════════════════════════════════════════════════════
13637
+ ERPForce PDF Builder — Stationery Master
13638
+ The reusable header + footer + watermark that every document
13639
+ template inherits. Brand colour (--st-brand) is independent of
13640
+ the per-document accent (--pbd-accent).
13641
+ Builds on styles.css (chrome) + doc.css (.pbd document).
13642
+ ═══════════════════════════════════════════════════════════════ */
13643
+
13644
+ .st { --st-brand: #2EB273; }
13645
+
13646
+ /* the A4 sheet is a flex column: header · body(grows) · footer */
13647
+ .st .pbd-page { display: flex; flex-direction: column; overflow: hidden; }
13648
+ .st .pbd-page > * { position: relative; z-index: 1; }
13649
+ .st .pbd-page-inner { flex: 1; padding: 26px 52px 22px; }
13650
+
13651
+ /* ── watermark (behind everything, centred over the whole page) ── */
13652
+ .st .pbd-page > .st-wm { position: absolute; inset: 0; z-index: 0; display: grid; place-items: center; pointer-events: none; }
13653
+ .st-wm img { display: block; max-width: 70%; height: auto; filter: grayscale(1); }
13654
+
13655
+ /* ════════════════ HEADER MASTER ══════════════════════════════ */
13656
+ .st-head { display: flex; align-items: flex-start; gap: 28px; padding: 30px 52px 14px;
13657
+ border-bottom: 2.5px solid var(--st-brand); }
13658
+ .st-logo { width: auto; display: block; }
13659
+ .st-id { display: flex; flex-direction: column; gap: 2px; }
13660
+ .st-name-en { font-size: 16px; font-weight: 700; letter-spacing: -.01em; color: var(--pbd-ink); line-height: 1.2; }
13661
+ .st-name-ar { font-family: 'Noto Kufi Arabic', 'Cairo', 'IBM Plex Sans Arabic', 'Tahoma', sans-serif; font-size: 15px; font-weight: 600;
13662
+ color: #3a3f46; line-height: 1.4; direction: rtl; unicode-bidi: embed; }
13663
+ .st-tagline { font-size: 9.5px; font-family: 'JetBrains Mono', monospace; letter-spacing: .02em; color: var(--st-brand); margin-top: 2px; }
13664
+ .st-head-col { display: flex; flex-direction: column; gap: 3px; }
13665
+
13666
+ /* variant — standard: logo left, identity right */
13667
+ .st-head--standard { justify-content: space-between; }
13668
+ .st-head--standard .st-id,
13669
+ .st-head--standard .st-name-en,
13670
+ .st-head--standard .st-name-ar,
13671
+ .st-head--standard .st-tagline { text-align: right; width: 100%; align-items: flex-end; }
13672
+
13673
+ /* variant — split (client letterhead): logo+web left, bilingual name right */
13674
+ .st-head--split { justify-content: space-between; }
13675
+ .st-head--split .st-id,
13676
+ .st-head--split .st-name-en,
13677
+ .st-head--split .st-name-ar,
13678
+ .st-head--split .st-tagline { text-align: right; width: 100%; align-items: flex-end; }
13679
+
13680
+ /* variant — centered */
13681
+ .st-head--centered { flex-direction: column; align-items: center; gap: 8px; text-align: center; padding-top: 26px; }
13682
+ .st-head--centered .st-id,
13683
+ .st-head--centered .st-name-en,
13684
+ .st-head--centered .st-name-ar,
13685
+ .st-head--centered .st-tagline { text-align: center; width: 100%; align-items: center; }
13686
+ .st-head--centered .st-logo { margin-bottom: 2px; }
13687
+
13688
+ /* variant — compact (continuation pages / dense docs) */
13689
+ .st-head--compact { align-items: center; justify-content: space-between; padding: 11px 52px; gap: 16px; }
13690
+ .st-head--compact .st-head-cmp-l { display: flex; align-items: center; gap: 10px; }
13691
+ .st-head--compact .st-name-en { font-size: 11.5px; }
13692
+ .st-head--compact .st-tagline { margin-top: 0; }
13693
+
13694
+ /* ════════════════ BODY · doc-title bar ═══════════════════════ */
13695
+ /* the body masthead (doctype / number) — separate from the letterhead.
13696
+ uses the DOCUMENT accent, proving it is independent of --st-brand. */
13697
+ .st .pbd-page-inner > .st-doctitle:first-child { margin-top: 4px; }
13698
+ .st-doctitle { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 4px; }
13699
+ .st-doctitle-l { display: flex; flex-direction: column; align-items: flex-start; }
13700
+ .st-doctype { font-size: 22px; font-weight: 700; letter-spacing: -.02em; color: var(--pbd-accent); text-transform: uppercase; line-height: 1.05; white-space: nowrap; }
13701
+ .st-doctype-rule { width: 38px; height: 3px; background: var(--pbd-accent); border-radius: 2px; margin-top: 7px; }
13702
+ .st-doctitle-r { text-align: right; flex-shrink: 0; }
13703
+
13704
+ /* ════════════════ FOOTER MASTER ══════════════════════════════ */
13705
+ .st-foot { margin-top: auto; }
13706
+ .st-foot-band { background: var(--st-brand); color: #fff; display: flex; align-items: center; justify-content: center;
13707
+ flex-wrap: wrap; gap: 6px 22px; padding: 7px 52px; font-size: 10px; font-weight: 700; letter-spacing: .05em;
13708
+ font-family: 'JetBrains Mono', monospace; }
13709
+ .st-foot-band span { position: relative; }
13710
+ .st-foot-band span + span::before { content: '|'; position: absolute; left: -12px; opacity: .5; font-weight: 400; }
13711
+ .st-foot-contact { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px 16px;
13712
+ padding: 8px 52px 0; font-size: 9px; color: var(--pbd-muted); }
13713
+ .st-foot-contact span { display: inline-flex; align-items: center; gap: 5px; position: relative; }
13714
+ .st-foot-contact span + span::before { content: '·'; position: absolute; left: -9px; color: var(--pbd-faint); }
13715
+ .st-foot-contact svg { width: 11px; height: 11px; color: var(--st-brand); flex-shrink: 0; }
13716
+ .st-foot-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px;
13717
+ padding: 6px 52px 14px; font-size: 8px; color: var(--pbd-faint); }
13718
+ .st-foot-meta .st-foot-pg { font-variant-numeric: tabular-nums; margin-left: auto; }
13719
+
13720
+ /* continuation pages — slim single-line footer (no reg band / contact) */
13721
+ .st-foot--compact { border-top: 1px solid rgba(20,23,27,.08); }
13722
+ .st-foot--compact .st-foot-meta { padding-top: 8px; padding-bottom: 12px; }
13723
+
13724
+ /* ════════════════ PRE-PRINTED reserved margins ═══════════════ */
13725
+ .st-reserve { display: grid; place-items: center; flex-shrink: 0;
13726
+ background: repeating-linear-gradient(135deg, transparent, transparent 7px, rgba(99,102,108,.06) 7px, rgba(99,102,108,.06) 8px); }
13727
+ .st-reserve--top { border-bottom: 1.5px dashed var(--border-strong); }
13728
+ .st-reserve--bot { border-top: 1.5px dashed var(--border-strong); }
13729
+ .st-reserve span { display: inline-flex; align-items: center; gap: 6px; font-size: 9px; font-weight: 600; letter-spacing: .03em;
13730
+ text-transform: uppercase; color: var(--text-quaternary); background: rgba(255,255,255,.7); padding: 3px 10px; border-radius: var(--r-full); }
13731
+ .st-reserve svg { width: 12px; height: 12px; }
13732
+
13733
+ /* ════════════════ APP CHROME extras ═════════════════════════ */
13734
+ /* dock the toolbar on top; canvas scroll fills the rest */
13735
+ .st-stage { flex-direction: column; }
13736
+ /* a clean, non-overlapping toolbar above the canvas */
13737
+ .st-toolbar { display: flex; align-items: center; gap: var(--s-3); flex-wrap: wrap; width: 100%;
13738
+ padding: var(--s-3) var(--s-5); background: var(--surface-raised); border-bottom: 1px solid var(--border-subtle);
13739
+ box-shadow: var(--shadow-xs); }
13740
+ .st-toolbar-lbl { display: inline-flex; align-items: center; gap: 6px; font-size: var(--text-xs); font-weight: 600; color: var(--text-secondary); }
13741
+ .st-toolbar-lbl svg { width: 13px; height: 13px; color: var(--green-500); }
13742
+ .st-toolbar-sp { flex: 1; }
13743
+
13744
+ /* sample-content toggle */
13745
+ .st-sample-tg { display: inline-flex; align-items: center; gap: var(--s-2); height: 28px; padding: 0 var(--s-3) 0 5px;
13746
+ border-radius: var(--r-full); font-size: var(--text-xs); font-weight: 600; color: var(--text-secondary);
13747
+ background: var(--surface-muted); border: 1px solid var(--border-subtle); }
13748
+ .st-sample-tg:hover { background: var(--surface-sunken); }
13749
+ .st-sample-tg.is-on { color: var(--green-700); background: var(--green-50); border-color: var(--green-200); }
13750
+ .st-sample-tg .cx-switch { pointer-events: none; }
13751
+ .st-sample-tg.is-on .cx-switch { background: var(--green-500); }
13752
+ .st-sample-tg.is-on .cx-switch .cx-switch-dot { transform: translateX(14px); }
13753
+
13754
+ .st-docchips { display: flex; gap: 4px; }
13755
+ .st-docchip { display: inline-flex; align-items: center; gap: 5px; height: 28px; padding: 0 11px; border-radius: var(--r-full);
13756
+ font-size: var(--text-xs); font-weight: 600; color: var(--text-secondary); background: var(--surface-muted);
13757
+ border: 1px solid var(--border-subtle); white-space: nowrap; }
13758
+ .st-docchip svg { width: 12px; height: 12px; }
13759
+ .st-docchip:hover { background: var(--surface-sunken); color: var(--text-primary); }
13760
+ .st-docchip.is-active { background: var(--n-900); color: #fff; border-color: var(--n-900); }
13761
+ .st-docchip-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
13762
+
13763
+ /* blank letterpad placeholder (default view) */
13764
+ .st-blank { flex: 1; display: grid; place-items: center; min-height: 360px; }
13765
+ .st-blank span { font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pbd-faint);
13766
+ border: 1px dashed var(--border-subtle); border-radius: var(--r-full); padding: 4px 14px; opacity: .55; }
13767
+
13768
+ /* ── Edit / Preview lens, re-skinned light for the docked toolbar ── */
13769
+ .st-toolbar .pb-lens { background: var(--surface-muted); border: 1px solid var(--border-subtle); box-shadow: none; backdrop-filter: none; padding: 2px; }
13770
+ .st-toolbar .pb-lens button { color: var(--text-tertiary); height: 26px; padding: 0 var(--s-4); }
13771
+ .st-toolbar .pb-lens button.is-active { background: var(--surface-raised); color: var(--text-primary); box-shadow: var(--shadow-xs); }
13772
+ .st-edithint { display: inline-flex; align-items: center; gap: 6px; font-size: var(--text-xs); font-weight: 500; color: var(--text-brand-strong); }
13773
+ .st-edithint svg { width: 13px; height: 13px; color: var(--green-500); }
13774
+
13775
+ /* ── inline-editable text affordance (on the page) ────────────── */
13776
+ .st-ed { cursor: text; border-radius: 3px; outline: none; transition: box-shadow var(--dur-fast), background var(--dur-fast); }
13777
+ .st-head.is-edit .st-ed, .st-foot.is-edit .st-ed-inline { /* box-shadow removed as FreeWrap handles outlines */ }
13778
+ .st-head.is-edit .st-ed { padding: 0 3px; margin: 0 -3px; }
13779
+ .st-ed:hover { background: rgba(46,178,115,.05); }
13780
+ .st-ed:focus { background: rgba(46,178,115,.05); }
13781
+ .st-ed[data-empty="true"]::before { content: attr(data-ph); color: var(--pbd-faint); font-style: italic; opacity: .7; }
13782
+ .st-ed-inline[data-empty="true"]::before { content: attr(data-ph); opacity: .6; font-style: italic; }
13783
+ .st-ed-inline { cursor: text; border-radius: 3px; outline: none; padding: 0 2px; transition: box-shadow var(--dur-fast), background var(--dur-fast); }
13784
+ .st-foot-band .st-ed-inline:hover { background: rgba(255,255,255,.22); }
13785
+ .st-foot-band .st-ed-inline:focus { background: rgba(255,255,255,.28); box-shadow: 0 0 0 1px rgba(255,255,255,.7); }
13786
+ .st-foot-contact .st-ed-inline:hover, .st-foot-meta .st-ed-inline:hover { background: rgba(46,178,115,.12); box-shadow: 0 0 0 1px rgba(46,178,115,.45); }
13787
+ .st-foot-contact .st-ed-inline:focus, .st-foot-meta .st-ed-inline:focus { background: rgba(46,178,115,.06); box-shadow: 0 0 0 1.5px var(--brand-green); }
13788
+
13789
+ /* ── logo replace slot on the canvas (edit mode) ──────────────── */
13790
+ .st-logo-slot { position: relative; display: inline-flex; align-items: center; cursor: pointer; border-radius: var(--r-sm); }
13791
+ .st-logo-slot input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
13792
+ .st-logo-slot .st-logo-hint { position: absolute; left: 50%; top: 100%; transform: translateX(-50%); margin-top: 4px;
13793
+ display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; font-size: 9px; font-weight: 600; color: #fff;
13794
+ background: var(--n-900); padding: 3px 7px; border-radius: var(--r-full); opacity: 0; pointer-events: none; transition: opacity var(--dur-fast); z-index: 5; }
13795
+ .st-logo-slot .st-logo-hint svg { width: 10px; height: 10px; }
13796
+ .st-logo-slot:hover { box-shadow: 0 0 0 2px rgba(46,178,115,.5); }
13797
+ .st-logo-slot:hover .st-logo-hint { opacity: 1; }
13798
+
13799
+ /* ── logo upload control in the rail ──────────────────────────── */
13800
+ .st-logo-up { display: flex; align-items: center; gap: var(--s-3); padding: var(--s-3) 0 var(--s-2); }
13801
+ .st-logo-up-preview { width: 78px; height: 46px; flex-shrink: 0; border: 1px solid var(--border-subtle); border-radius: var(--r-md);
13802
+ background: var(--surface-muted); display: grid; place-items: center; padding: 6px; }
13803
+ .st-logo-up-preview img { max-width: 100%; max-height: 100%; object-fit: contain; }
13804
+ .st-logo-up-actions { display: flex; flex-direction: column; gap: var(--s-2); }
13805
+ .cx-btn { position: relative; display: inline-flex; align-items: center; gap: var(--s-2); height: 30px; padding: 0 var(--s-4);
13806
+ border-radius: var(--r-md); font-size: var(--text-xs); font-weight: 600; color: #fff; background: var(--n-900); cursor: pointer; white-space: nowrap; }
13807
+ .cx-btn:hover { background: var(--n-800); }
13808
+ .cx-btn svg { width: 13px; height: 13px; }
13809
+ .cx-btn input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
13810
+ .cx-btn--ghost { background: var(--surface-muted); color: var(--text-secondary); border: 1px solid var(--border-subtle); }
13811
+ .cx-btn--ghost:hover { background: var(--surface-sunken); color: var(--text-primary); }
13812
+ .cx-btn--sm { height: 28px; }
13813
+
13814
+ /* ── stationery PRESET bar (top bar of the Master editor) ─────── */
13815
+ .st-presetbar { display: inline-flex; align-items: center; gap: var(--s-2); }
13816
+ .st-preset-pick { position: relative; display: inline-flex; align-items: center; }
13817
+ .st-preset-select { -webkit-appearance: none; appearance: none; height: 30px; max-width: 190px; padding: 0 26px 0 11px;
13818
+ border-radius: var(--r-md); border: 1px solid var(--border-subtle); background: var(--surface-muted); cursor: pointer;
13819
+ font-size: var(--text-sm); font-weight: 600; color: var(--text-primary); text-overflow: ellipsis; }
13820
+ .st-preset-select:hover { background: var(--surface-sunken); }
13821
+ .st-preset-caret { position: absolute; right: 8px; width: 13px; height: 13px; color: var(--text-tertiary); pointer-events: none; }
13822
+ .st-preset-name { height: 30px; width: 168px; padding: 0 10px; border-radius: var(--r-md);
13823
+ border: 1px solid transparent; background: transparent; font-size: var(--text-sm); font-weight: 600; color: var(--text-primary); }
13824
+ .st-preset-name:hover { border-color: var(--border-subtle); background: var(--surface-muted); }
13825
+ .st-preset-name:focus { border-color: var(--brand-green); background: var(--surface-raised); box-shadow: 0 0 0 3px var(--green-100, rgba(46,178,115,.18)); outline: none; }
13826
+ .st-preset-acts { display: inline-flex; gap: 2px; }
13827
+ .st-preset-acts button { width: 28px; height: 28px; border-radius: var(--r-sm); display: grid; place-items: center;
13828
+ color: var(--text-tertiary); }
13829
+ .st-preset-acts button:hover { background: var(--surface-sunken); color: var(--text-primary); }
13830
+ .st-preset-acts button:disabled { opacity: .35; pointer-events: none; }
13831
+ .st-preset-acts button svg { width: 14px; height: 14px; }
13832
+ .st-preset-acts button:last-child:hover { background: var(--danger-bg); color: var(--danger); }
13833
+ .pb-bar-stat-count { font-size: var(--text-2_5xs); font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
13834
+ color: var(--text-quaternary); padding: 0 var(--s-2); }
13835
+
13836
+ /* ── builder toolbar: stationery picker dropdown ─────────────── */
13837
+ /* lift the top bar above the floating lens pill (z-popover) so the
13838
+ stationery dropdown isn't painted over by the Edit/Preview controls */
13839
+ .pb-bar { z-index: var(--z-tooltip); }
13840
+ .pb-stnpick { position: relative; }
13841
+ .pb-stnpick-btn { display: inline-flex; align-items: center; gap: var(--s-2); height: 30px; max-width: 220px; padding: 0 8px 0 10px;
13842
+ border-radius: var(--r-md); border: 1px solid var(--border-subtle); background: var(--surface-muted);
13843
+ font-size: var(--text-xs); font-weight: 600; color: var(--text-primary); cursor: pointer; }
13844
+ .pb-stnpick-btn:hover { background: var(--surface-sunken); }
13845
+ .pb-stnpick-btn.is-open { border-color: var(--brand-green); box-shadow: 0 0 0 3px var(--green-100, rgba(46,178,115,.16)); }
13846
+ .pb-stnpick-btn > svg { width: 13px; height: 13px; color: var(--text-tertiary); flex-shrink: 0; }
13847
+ .pb-stnpick-btn > svg:last-child { color: var(--text-quaternary); }
13848
+ .pb-stnpick-lbl { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
13849
+ .pb-stnpick-dot { width: 11px; height: 11px; border-radius: var(--r-full); flex-shrink: 0; box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); }
13850
+
13851
+ .pb-stnpick-menu { position: absolute; top: calc(100% + 6px); right: 0; width: 288px; z-index: 60;
13852
+ background: var(--surface-raised); border: 1px solid var(--border-subtle); border-radius: var(--r-lg);
13853
+ box-shadow: var(--shadow-lg, 0 16px 40px rgba(0,0,0,.18)); padding: var(--s-2); }
13854
+ .pb-stnpick-grp { font-size: var(--text-2_5xs); font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
13855
+ color: var(--text-quaternary); padding: var(--s-3) var(--s-3) var(--s-2); }
13856
+ .pb-stnpick-grp:not(:first-child) { border-top: 1px solid var(--border-subtle); margin-top: var(--s-2); }
13857
+ .pb-stnpick-item { display: flex; align-items: center; gap: var(--s-3); width: 100%; padding: var(--s-2) var(--s-3);
13858
+ border-radius: var(--r-md); text-align: left; cursor: pointer; color: var(--text-primary); }
13859
+ .pb-stnpick-item:hover { background: var(--surface-muted); }
13860
+ .pb-stnpick-item.is-sel { background: var(--green-50, rgba(46,178,115,.08)); }
13861
+ .pb-stnpick-item > .pb-stnpick-dot { margin: 2px 1px; }
13862
+ .pb-stnpick-ic { width: 13px; display: grid; place-items: center; color: var(--text-tertiary); }
13863
+ .pb-stnpick-ic svg { width: 14px; height: 14px; }
13864
+ .pb-stnpick-itemt { flex: 1; display: flex; flex-direction: column; font-size: var(--text-sm); font-weight: 600; line-height: 1.2; min-width: 0; }
13865
+ .pb-stnpick-itemt small { font-size: var(--text-2_5xs); font-weight: 500; color: var(--text-tertiary); margin-top: 2px;
13866
+ text-transform: capitalize; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
13867
+ .pb-stnpick-item > svg { width: 15px; height: 15px; color: var(--brand-green); flex-shrink: 0; }
13868
+ .pb-stnpick-foot { border-top: 1px solid var(--border-subtle); margin-top: var(--s-2); padding-top: var(--s-2); }
13869
+ .pb-stnpick-foot button { display: flex; align-items: center; gap: var(--s-2); width: 100%; padding: var(--s-2) var(--s-3);
13870
+ border-radius: var(--r-md); font-size: var(--text-xs); font-weight: 600; color: var(--text-secondary); cursor: pointer; }
13871
+ .pb-stnpick-foot button:hover { background: var(--surface-muted); color: var(--text-primary); }
13872
+ .pb-stnpick-foot button svg { width: 14px; height: 14px; color: var(--text-tertiary); }
13873
+
13874
+ /* ── builder: body masthead/footer SUPPRESSED when a stationery owns them ──
13875
+ Every template body ships with its own .pbd-lh company letterhead and
13876
+ .pbd-foot footer. When the document uses a Stationery preset / Pre-printed
13877
+ / Blank, the stationery (or nothing) provides those — so we hide the body's
13878
+ built-in company block + footer but KEEP the doc-type/number bar. Applied to
13879
+ the live pages AND the off-screen measure surface so pagination stays exact. */
13880
+ .pb-stn .pbd-lh .pbd-logo,
13881
+ .pb-stn .pbd-lh .pbd-lh-co { display: none !important; }
13882
+ .pb-stn .pbd-lh { border-bottom: none; padding-bottom: 0; margin-bottom: 2px; gap: 0; }
13883
+ .pb-stn .pbd-lh-doc { text-align: left; }
13884
+ .pb-stn .pbd-foot { display: none !important; }
13885
+
13886
+ /* mode segmented in the top bar */
13887
+ .st-mode { display: inline-flex; background: var(--surface-muted); border-radius: var(--r-md); padding: 2px; gap: 2px; }.st-mode button { height: 26px; padding: 0 var(--s-4); border-radius: var(--r-sm); font-size: var(--text-xs); font-weight: 600;
13888
+ color: var(--text-tertiary); display: inline-flex; align-items: center; gap: var(--s-2); white-space: nowrap; }
13889
+ .st-mode button svg { width: 13px; height: 13px; }
13890
+ .st-mode button.is-active { background: var(--surface-raised); color: var(--text-primary); box-shadow: var(--shadow-xs); }
13891
+
13892
+ /* registration-items editor (rail) */
13893
+ .st-reg { display: flex; flex-direction: column; gap: var(--s-3); }
13894
+ .st-reg-row { display: flex; align-items: center; gap: var(--s-2); }
13895
+ .st-reg-row .cx-input { height: 28px; }
13896
+ .st-reg-row .st-reg-lbl { width: 92px; flex-shrink: 0; }
13897
+ .st-reg-del { width: 26px; height: 28px; border-radius: var(--r-sm); display: grid; place-items: center; color: var(--text-tertiary); flex-shrink: 0; }
13898
+ .st-reg-del:hover { background: var(--danger-bg); color: var(--danger); }
13899
+ .st-reg-del svg { width: 13px; height: 13px; }
13900
+
13901
+ /* rail brand-colour swatches incl. a custom picker */
13902
+ .st-brandsw { display: flex; gap: var(--s-3); flex-wrap: wrap; justify-content: flex-end; align-items: center; }
13903
+ .st-brandsw .cx-swatch { width: 26px; height: 26px; }
13904
+ .st-brandsw .st-swatch-custom { position: relative; width: 26px; height: 26px; border-radius: var(--r-md); overflow: hidden;
13905
+ border: 1px dashed var(--border-strong); display: grid; place-items: center; cursor: pointer; }
13906
+ .st-brandsw .st-swatch-custom input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
13907
+ .st-brandsw .st-swatch-custom svg { width: 13px; height: 13px; color: var(--text-tertiary); }
13908
+
13909
+ /* preprinted hint card in rail */
13910
+ .st-prehint { display: flex; gap: var(--s-3); padding: var(--s-4) var(--s-5); margin: 0 0 var(--s-4); font-size: var(--text-xs);
13911
+ line-height: 1.5; color: var(--ai-fg-deep); background: var(--ai-bg); border-radius: var(--r-md); }
13912
+ .st-prehint svg { width: 14px; height: 14px; flex-shrink: 0; margin-top: 1px; }
13913
+
13914
+ /* small caption under variant picker */
13915
+ .st-variantnote { font-size: var(--text-2_5xs); color: var(--text-quaternary); margin-top: var(--s-3); line-height: 1.4; }
13916
+
13917
+ /* print */
13918
+ @media print {
13919
+ /* A4 with NO browser margins → removes the date/title chrome AND keeps
13920
+ the 794×1123px page on a single sheet (no footer spilling to page 2) */
13921
+ @page { size: A4 portrait; margin: 0; }
13922
+ html, body { width: 794px; height: auto !important; margin: 0 !important; background: #fff !important; }
13923
+ .pb-bar, .pb-side, .st-toolbar, .st-stage > .st-toolbar, .pb-zoomfloat, .pb-toast, .pb-lensbar, .pb-lens { display: none !important; }
13924
+ .pb, .pb-work, .pb-stage, .st-stage, .pb-stage-scroll { display: block !important; height: auto !important; min-height: 0 !important; overflow: visible !important; background: #fff !important; padding: 0 !important; }
13925
+ .pb-zoomwrap { transform: none !important; margin: 0 !important; width: auto !important; }
13926
+ .pb-pages { gap: 0 !important; transform: none !important; }
13927
+ .pbd-page { box-shadow: none !important; margin: 0 !important; min-height: 1122px !important; break-after: page; page-break-after: always; }
13928
+ .pbd-page:last-child { break-after: auto; page-break-after: auto; }
13929
+ .st-ed, .st-ed-inline { box-shadow: none !important; background: none !important; }
13930
+ .st-logo-slot .st-logo-hint { display: none !important; }
13931
+ .st-reserve { background: none !important; border: none !important; }
13932
+ .st-reserve span { display: none !important; }
13933
+ .st-head, .st-foot-band, .pbd-items thead th, .pbd-tot-grand, .st-doctype, .pbd-status { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
13934
+ }
13935
+ .st-free-content {
13936
+ display: flex;
13937
+ align-items: center;
13938
+ justify-content: center;
13939
+ height: 100%;
13940
+ width: 100%;
13941
+ }
13942
+ .st-free-content > * {
13943
+ margin: 0 !important;
13944
+ width: 100% !important;
13945
+ box-sizing: border-box !important;
13946
+ word-break: break-word;
13947
+ pointer-events: none !important;
13948
+ }
13949
+ /* ═══════════════════════════════════════════════════════════════
13950
+ ERPForce Stationery — creative letterhead directions · v2
13951
+ Six distinct "letter pad" treatments, all on the same A4 sheet
13952
+ (794×1123) and the same brand kit:
13953
+ · green mark #2EB273 / deep #1A8A56 · ink #1A1F26
13954
+ · Inter (text) + JetBrains Mono (codes) + Noto Kufi Arabic (RTL)
13955
+ Each is a full pad: header + (blank body) + footer.
13956
+ ═══════════════════════════════════════════════════════════════ */
13957
+ :root {
13958
+ --lp-green: #2EB273;
13959
+ --lp-green-deep: #1A8A56;
13960
+ --lp-green-dark: #146B43;
13961
+ --lp-ink: #1A1F26;
13962
+ --lp-ink-soft: #3D4046;
13963
+ --lp-muted: #6D7178;
13964
+ --lp-faint: #9aa0a8;
13965
+ --lp-line: #e6e8eb;
13966
+ --lp-line-soft: #f0f1f3;
13967
+ --lp-mg: 64px; /* baseline content margin */
13968
+ }
13969
+
13970
+ /* the sheet */
13971
+ .lp { width: 794px; height: 1123px; background: #fff; position: relative; overflow: hidden;
13972
+ font-family: 'Inter', sans-serif; color: var(--lp-ink); display: flex; flex-direction: column;
13973
+ -webkit-font-smoothing: antialiased; }
13974
+ .lp * { box-sizing: border-box; }
13975
+ .lp-mono { font-family: 'JetBrains Mono', monospace; }
13976
+ .lp-ar { font-family: 'Noto Kufi Arabic', 'Tahoma', sans-serif; }
13977
+
13978
+ /* layering: decorative elements behind, content in front */
13979
+ .lp > * { position: relative; z-index: 1; }
13980
+ .lp > .lp-wm { position: absolute; z-index: 0; }
13981
+
13982
+ /* faint corner watermark shared by all — subtle, never over content */
13983
+ .lp-wm { position: absolute; inset: 0; pointer-events: none; }
13984
+ .lp-wm img { position: absolute; right: -60px; bottom: 88px; width: 360px; filter: grayscale(1); opacity: .035; }
13985
+
13986
+ /* the blank body area (where document content would flow) */
13987
+ .lp-body { flex: 1; position: relative; }
13988
+ .lp-bodyhint { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
13989
+ font-size: 9.5px; letter-spacing: .26em; text-transform: uppercase; color: var(--lp-faint);
13990
+ opacity: .45; white-space: nowrap; }
13991
+
13992
+ .lp-logo { display: block; width: auto; }
13993
+ .lp-name-en { font-weight: 700; letter-spacing: -.01em; line-height: 1.12; }
13994
+ .lp-name-ar { font-weight: 600; line-height: 1.45; color: var(--lp-ink-soft); display: inline-block; }
13995
+
13996
+ /* ───────────────────────────────────────────────────────────────
13997
+ 1 · LEFT SPINE — a full-height colour spine carries the brand
13998
+ ─────────────────────────────────────────────────────────────── */
13999
+ .lp--spine { padding-left: 44px; }
14000
+ .lp--spine .sp-rail { position: absolute; left: 0; top: 0; bottom: 0; width: 44px;
14001
+ background: linear-gradient(180deg, var(--lp-green), var(--lp-green-deep)); z-index: 2; }
14002
+ .lp--spine .sp-rail .sp-mark { position: absolute; top: 34px; left: 50%; transform: translateX(-50%); width: 22px; }
14003
+ .lp--spine .sp-rail span { position: absolute; bottom: 40px; left: 50%; transform: translate(-50%,0) rotate(180deg);
14004
+ writing-mode: vertical-rl; color: rgba(255,255,255,.92); font-size: 8.5px; letter-spacing: .34em;
14005
+ text-transform: uppercase; font-weight: 600; }
14006
+ .lp--spine .sp-head { display: flex; justify-content: space-between; align-items: flex-start;
14007
+ padding: 70px 64px 0 40px; }
14008
+ .lp--spine .sp-logo { height: 38px; }
14009
+ .lp--spine .lp-name-en { font-size: 16px; }
14010
+ .lp--spine .lp-name-ar { font-size: 14px; margin-top: 3px; }
14011
+ .lp--spine .sp-head-r { text-align: right; padding-top: 2px; }
14012
+ .lp--spine .sp-tag { margin-top: 8px; font-size: 9px; color: var(--lp-green-deep); letter-spacing: .04em; }
14013
+ .lp--spine .sp-foot { padding: 0 64px 56px 40px; display: flex; justify-content: space-between;
14014
+ align-items: flex-end; gap: 24px; }
14015
+ .lp--spine .sp-foot::before { content: ''; position: absolute; left: 40px; right: 64px; top: -22px;
14016
+ height: 1px; background: var(--lp-line); }
14017
+ .lp--spine .sp-foot-l { font-size: 9px; color: var(--lp-muted); line-height: 1.85; }
14018
+ .lp--spine .sp-foot-r { font-size: 8.5px; color: var(--lp-faint); text-align: right; line-height: 1.85; letter-spacing: .03em; }
14019
+
14020
+ /* ───────────────────────────────────────────────────────────────
14021
+ 2 · MONOGRAM CREST — centred, formal, double-rule divider
14022
+ ─────────────────────────────────────────────────────────────── */
14023
+ .lp--crest { align-items: center; text-align: center; }
14024
+ .lp--crest .cr-head { padding: 78px 80px 0; display: flex; flex-direction: column; align-items: center;
14025
+ gap: 16px; width: 100%; }
14026
+ .lp--crest .cr-mark { width: 52px; }
14027
+ .lp--crest .lp-name-en { font-size: 22px; letter-spacing: .015em; }
14028
+ .lp--crest .lp-name-ar { font-size: 16px; margin-top: -2px; }
14029
+ .lp--crest .cr-rule { display: flex; align-items: center; gap: 14px; width: 300px; margin-top: 6px; }
14030
+ .lp--crest .cr-rule::before, .lp--crest .cr-rule::after { content: ''; height: 1px; flex: 1; background: var(--lp-line); }
14031
+ .lp--crest .cr-rule span { font-size: 8px; letter-spacing: .3em; text-transform: uppercase;
14032
+ color: var(--lp-green-deep); font-weight: 600; white-space: nowrap; }
14033
+ .lp--crest .cr-foot { width: 100%; padding: 0 80px 56px; display: flex; flex-direction: column;
14034
+ align-items: center; gap: 12px; }
14035
+ .lp--crest .cr-foot-rule { width: 64px; height: 2px; background: var(--lp-green); }
14036
+ .lp--crest .cr-reg { display: flex; gap: 22px; font-size: 9px; color: var(--lp-muted); letter-spacing: .02em; }
14037
+ .lp--crest .cr-reg b { color: var(--lp-ink); font-weight: 600; }
14038
+ .lp--crest .cr-contact { font-size: 8.5px; color: var(--lp-faint); letter-spacing: .05em; }
14039
+
14040
+ /* ───────────────────────────────────────────────────────────────
14041
+ 3 · COLOUR BLOCK — bold solid header, logo reversed white
14042
+ ─────────────────────────────────────────────────────────────── */
14043
+ .lp--block .bl-head { background: linear-gradient(120deg, var(--lp-green-deep), var(--lp-green));
14044
+ padding: 52px 64px; display: flex; justify-content: space-between; align-items: center; color: #fff; }
14045
+ .lp--block .bl-mark { width: 46px; filter: brightness(0) invert(1); }
14046
+ .lp--block .bl-head-r { text-align: right; }
14047
+ .lp--block .lp-name-en { font-size: 20px; color: #fff; }
14048
+ .lp--block .lp-name-ar { font-size: 15px; color: rgba(255,255,255,.92); margin-top: 2px; }
14049
+ .lp--block .bl-tag { margin-top: 9px; font-size: 9px; color: rgba(255,255,255,.85);
14050
+ letter-spacing: .1em; text-transform: uppercase; }
14051
+ .lp--block .bl-foot { padding: 0 64px 52px; }
14052
+ .lp--block .bl-foot-rule { height: 3px; width: 56px; background: var(--lp-green); margin-bottom: 16px; }
14053
+ .lp--block .bl-foot-row { display: flex; justify-content: space-between; align-items: baseline;
14054
+ gap: 18px; font-size: 9px; color: var(--lp-muted); letter-spacing: .02em; }
14055
+ .lp--block .bl-foot-row b { color: var(--lp-ink); font-weight: 600; }
14056
+
14057
+ /* ───────────────────────────────────────────────────────────────
14058
+ 4 · HAIRLINE MINIMAL — Swiss, one rule, lots of air
14059
+ ─────────────────────────────────────────────────────────────── */
14060
+ .lp--min .mn-head { padding: 72px 64px 20px; display: flex; justify-content: space-between; align-items: flex-end; }
14061
+ .lp--min .mn-logo { width: 92px; }
14062
+ .lp--min .mn-head-r { text-align: right; }
14063
+ .lp--min .lp-name-en { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
14064
+ .lp--min .lp-name-ar { font-size: 12px; margin-top: 3px; font-weight: 500; }
14065
+ .lp--min .mn-rule { height: 1px; background: var(--lp-ink); margin: 0 64px; }
14066
+ .lp--min .mn-foot { padding: 18px 64px 56px; display: flex; justify-content: space-between; align-items: flex-end; }
14067
+ .lp--min .mn-foot-rule { height: 1px; background: var(--lp-line); margin: 0 64px 18px; }
14068
+ .lp--min .mn-foot-l, .lp--min .mn-foot-r { font-size: 8.5px; color: var(--lp-faint); letter-spacing: .07em; line-height: 1.9; }
14069
+ .lp--min .mn-foot-r { text-align: right; }
14070
+ .lp--min .mn-dot { color: var(--lp-green); }
14071
+
14072
+ /* ───────────────────────────────────────────────────────────────
14073
+ 5 · CORNER ACCENT — geometric angled shape, modern
14074
+ ─────────────────────────────────────────────────────────────── */
14075
+ .lp--corner .cn-shape { position: absolute; top: 0; right: 0; width: 260px; height: 188px; z-index: 0;
14076
+ background: linear-gradient(135deg, var(--lp-green) 0%, var(--lp-green-deep) 100%);
14077
+ clip-path: polygon(100% 0, 100% 100%, 0 0); }
14078
+ .lp--corner .cn-shape2 { position: absolute; top: 0; right: 0; width: 140px; height: 140px; z-index: 0;
14079
+ background: rgba(255,255,255,.16); clip-path: polygon(100% 0, 100% 100%, 0 0); }
14080
+ .lp--corner .cn-head { padding: 76px 64px 0; }
14081
+ .lp--corner .cn-logo { width: 118px; margin-bottom: 18px; }
14082
+ .lp--corner .lp-name-en { font-size: 18px; }
14083
+ .lp--corner .lp-name-ar { font-size: 14px; margin-top: 2px; }
14084
+ .lp--corner .cn-tag { margin-top: 9px; font-size: 9px; color: var(--lp-green-deep); letter-spacing: .04em; }
14085
+ .lp--corner .cn-foot { padding: 0 64px 56px; display: flex; align-items: center; gap: 16px; }
14086
+ .lp--corner .cn-foot-bar { width: 32px; height: 32px; flex-shrink: 0; background: var(--lp-green);
14087
+ clip-path: polygon(0 0, 100% 100%, 0 100%); }
14088
+ .lp--corner .cn-foot-txt { font-size: 9px; color: var(--lp-muted); line-height: 1.75; letter-spacing: .02em; }
14089
+ .lp--corner .cn-foot-txt b { color: var(--lp-ink); font-weight: 600; }
14090
+
14091
+ /* ───────────────────────────────────────────────────────────────
14092
+ 6 · INDUSTRIAL MONO — technical, monospace, full footer band
14093
+ ─────────────────────────────────────────────────────────────── */
14094
+ .lp--mono .mo-head { padding: 64px 64px 0; }
14095
+ .lp--mono .mo-top { display: flex; align-items: center; gap: 20px; }
14096
+ .lp--mono .mo-logo { width: 104px; }
14097
+ .lp--mono .mo-id { border-left: 2px solid var(--lp-green); padding-left: 18px; }
14098
+ .lp--mono .lp-name-en { font-size: 17px; }
14099
+ .lp--mono .lp-name-ar { font-size: 13px; margin-top: 2px; }
14100
+ .lp--mono .mo-meta { margin-top: 22px; display: flex; gap: 0; border: 1px solid var(--lp-line);
14101
+ border-radius: 8px; overflow: hidden; }
14102
+ .lp--mono .mo-meta div { flex: 1; padding: 11px 16px; border-right: 1px solid var(--lp-line); }
14103
+ .lp--mono .mo-meta div:last-child { border-right: 0; }
14104
+ .lp--mono .mo-meta .k { font-size: 7px; letter-spacing: .16em; text-transform: uppercase; color: var(--lp-faint); }
14105
+ .lp--mono .mo-meta .v { font-size: 10px; color: var(--lp-ink); margin-top: 3px; }
14106
+ .lp--mono .mo-foot-band { background: var(--lp-ink); color: #fff; padding: 14px 64px;
14107
+ display: flex; justify-content: space-between; align-items: center; gap: 18px; font-size: 8.5px;
14108
+ letter-spacing: .06em; }
14109
+ .lp--mono .mo-foot-band .g { color: var(--lp-green); }
14110
+ .lp--mono .mo-foot-contact { padding: 11px 64px 0; font-size: 8.5px; color: var(--lp-faint);
14111
+ text-align: center; letter-spacing: .06em; }
14112
+ .black-outlined-btn {
14113
+ color: #1f2125 !important;
14114
+ }.companySelectionModal--Divider {
14115
+ border-color: #d3d3d4;
14116
+ }
14117
+ .companySelectionModal--DialogTitle {
14118
+ border-bottom: 1px solid #bdbebf;
14119
+ }
14120
+ .companySelectionModal--SectionTitle {
14121
+ padding-left: 1.5rem;
14122
+ }
14123
+ .companySelectionModal--DialogContents {
14124
+ padding: 1.5rem !important;
14125
+ }
14126
+ .companySelectionModal--DialogAction {
14127
+ justify-content: flex-end !important;
14128
+ padding: 0.5rem 1.5rem !important;
14129
+ background-color: #d3d3d4;
14130
+ }
14131
+ .companySelectionModal--DialogAction--WhiteBtn {
14132
+ background-color: #fff !important;
14133
+ color: #1f2125;
14134
+ }.templates {
14135
+ padding: 0rem 2rem;
14136
+ width: 100%;
14137
+ }.editSectionModal--Divider {
14138
+ border-color: #d3d3d4;
14139
+ }
14140
+ .editSectionModal--DialogTitle {
14141
+ padding: 0.75rem 1.5rem !important;
14142
+ border-bottom: 1px solid #bdbebf;
14143
+ }
14144
+ .editSectionModal--SectionTitle {
14145
+ padding-left: 1.5rem;
14146
+ }
14147
+ .editSectionModal--DialogContents {
14148
+ padding: 1.5rem !important;
14149
+ }
14150
+ .editSectionModal--DialogAction {
14151
+ justify-content: flex-end !important;
14152
+ padding: 0.5rem 1.5rem !important;
14153
+ background-color: #d3d3d4;
14154
+ }
14155
+ .editSectionModal--DialogAction--WhiteBtn {
14156
+ background-color: #fff !important;
14157
+ color: #1f2125;
14158
+ }.pbtn {
14159
+ display: inline-flex;
14160
+ align-items: center;
14161
+ gap: var(--s-3);
14162
+ height: 30px;
14163
+ padding: 0 var(--s-5);
14164
+ border-radius: var(--r-md);
14165
+ font-size: var(--text-sm);
14166
+ font-weight: 500;
14167
+ color: var(--text-secondary);
14168
+ border: 1px solid var(--border-default);
14169
+ background: var(--surface-raised);
14170
+ white-space: nowrap;
14171
+ transition: background var(--dur-fast), border-color var(--dur-fast);
14172
+ cursor: pointer;
14173
+ font-family: var(--font-sans);
14174
+ }
14175
+
14176
+ .pbtn svg {
14177
+ width: 14px;
14178
+ height: 14px;
14179
+ }
14180
+
14181
+ .pbtn:hover {
14182
+ background: var(--surface-hover);
14183
+ color: var(--text-primary);
14184
+ }
14185
+
14186
+ .pbtn--primary {
14187
+ background: var(--color-action);
14188
+ border-color: transparent;
14189
+ color: var(--color-on-action);
14190
+ box-shadow: var(--shadow-sm);
14191
+ }
14192
+
14193
+ .pbtn--primary:hover {
14194
+ background: var(--color-action-hover);
14195
+ color: var(--color-on-action);
14196
+ }
14197
+
14198
+ .pbtn--ghost {
14199
+ border-color: transparent;
14200
+ background: transparent;
14201
+ }
14202
+
14203
+ .pbtn--ghost:hover {
14204
+ background: var(--surface-hover);
14205
+ }
14206
+
14207
+ .pbtn--sm {
14208
+ height: 26px;
14209
+ padding: 0 var(--s-4);
14210
+ font-size: var(--text-xs);
14211
+ }
14212
+
14213
+ .pbtn:disabled {
14214
+ opacity: 0.45;
14215
+ cursor: not-allowed;
14216
+ }
14217
+
14218
+ .pb-seg {
14219
+ display: inline-flex;
14220
+ background: var(--surface-muted);
14221
+ border-radius: var(--r-md);
14222
+ padding: 2px;
14223
+ gap: 2px;
14224
+ }
14225
+
14226
+ .pb-seg button {
14227
+ height: 24px;
14228
+ padding: 0 var(--s-4);
14229
+ border-radius: var(--r-sm);
14230
+ font-size: var(--text-xs);
14231
+ font-weight: 500;
14232
+ color: var(--text-tertiary);
14233
+ display: inline-flex;
14234
+ align-items: center;
14235
+ gap: var(--s-2);
14236
+ background: transparent;
14237
+ border: none;
14238
+ cursor: pointer;
14239
+ font-family: var(--font-sans);
14240
+ }
14241
+
14242
+ .pb-seg button svg {
14243
+ width: 12px;
14244
+ height: 12px;
14245
+ }
14246
+
14247
+ .pb-seg button.is-active {
14248
+ background: var(--surface-raised);
14249
+ color: var(--text-primary);
14250
+ box-shadow: var(--shadow-xs);
14251
+ font-weight: 600;
14252
+ }
14253
+
14254
+ .pb-seg button:not(.is-active):hover {
14255
+ color: var(--text-secondary);
14256
+ }
14257
+
14258
+ .pb-lens {
14259
+ display: inline-flex;
14260
+ background: rgba(20, 23, 27, 0.82);
14261
+ backdrop-filter: blur(6px);
14262
+ border-radius: var(--r-full);
14263
+ padding: 3px;
14264
+ box-shadow: var(--shadow-lg);
14265
+ flex-shrink: 0;
14266
+ }
14267
+
14268
+ .pb-lens button {
14269
+ display: inline-flex;
14270
+ align-items: center;
14271
+ gap: var(--s-2);
14272
+ height: 28px;
14273
+ padding: 0 var(--s-5);
14274
+ border-radius: var(--r-full);
14275
+ font-size: var(--text-xs);
14276
+ font-weight: 600;
14277
+ color: #c4c7cb;
14278
+ white-space: nowrap;
14279
+ background: transparent;
14280
+ border: none;
14281
+ cursor: pointer;
14282
+ font-family: var(--font-sans);
14283
+ }
14284
+
14285
+ .pb-lens button svg {
14286
+ width: 13px;
14287
+ height: 13px;
14288
+ }
14289
+
14290
+ .pb-lens button.is-active {
14291
+ background: #fff;
14292
+ color: var(--n-900);
14293
+ }
14294
+
14295
+ .pb-bar-stat {
14296
+ display: inline-flex;
14297
+ align-items: center;
14298
+ gap: var(--s-2);
14299
+ font-size: var(--text-xs);
14300
+ font-weight: 600;
14301
+ padding: 3px 9px;
14302
+ border-radius: var(--r-full);
14303
+ margin-left: var(--s-2);
14304
+ white-space: nowrap;
14305
+ }
14306
+
14307
+ .pb-bar-stat svg {
14308
+ width: 12px;
14309
+ height: 12px;
14310
+ }
14311
+
14312
+ .pb-bar-stat.is-dirty {
14313
+ color: var(--warning-fg-strong);
14314
+ background: var(--warning-bg);
14315
+ }
14316
+
14317
+ .pb-bar-dirty {
14318
+ color: var(--warning);
14319
+ display: grid;
14320
+ place-items: center;
14321
+ }
14322
+
14323
+ .pb-bar-dirty svg {
14324
+ width: 12px;
14325
+ height: 12px;
14326
+ }
14327
+
14328
+ .cx-switch {
14329
+ width: 34px;
14330
+ height: 20px;
14331
+ border-radius: var(--r-full);
14332
+ background: var(--n-200);
14333
+ position: relative;
14334
+ transition: background var(--dur-base);
14335
+ flex-shrink: 0;
14336
+ border: none;
14337
+ cursor: pointer;
14338
+ display: inline-block;
14339
+ padding: 0;
14340
+ }
14341
+
14342
+ .cx-switch.is-on {
14343
+ background: var(--brand-green);
14344
+ }
14345
+
14346
+ .cx-switch-dot {
14347
+ position: absolute;
14348
+ top: 2px;
14349
+ left: 2px;
14350
+ width: 16px;
14351
+ height: 16px;
14352
+ border-radius: 50%;
14353
+ background: #fff;
14354
+ box-shadow: var(--shadow-sm);
14355
+ transition: transform var(--dur-base) var(--ease-out);
14356
+ }
14357
+
14358
+ .cx-switch.is-on .cx-switch-dot {
14359
+ transform: translateX(14px);
14360
+ }
14361
+
14362
+ .st-sample-tg {
14363
+ display: flex;
14364
+ align-items: center;
14365
+ gap: var(--s-3);
14366
+ border-radius: var(--r-full);
14367
+ padding-right: var(--s-4);
14368
+ background: transparent;
14369
+ border: none;
14370
+ font: inherit;
14371
+ color: inherit;
14372
+ cursor: pointer;
14373
+ }
14374
+
14375
+ .st-docchips {
14376
+ display: flex;
14377
+ gap: 4px;
14378
+ align-items: center;
14379
+ margin-left: var(--s-2);
14380
+ }
14381
+
14382
+ .st-docchip {
14383
+ display: inline-flex;
14384
+ align-items: center;
14385
+ gap: 5px;
14386
+ height: 28px;
14387
+ padding: 0 11px;
14388
+ border-radius: var(--r-full);
14389
+ font-size: var(--text-xs);
14390
+ font-weight: 600;
14391
+ color: var(--text-secondary);
14392
+ background: var(--surface-muted);
14393
+ border: 1px solid var(--border-subtle);
14394
+ white-space: nowrap;
14395
+ cursor: pointer;
14396
+ transition: all var(--dur-fast);
14397
+ }
14398
+
14399
+ .st-docchip svg {
14400
+ width: 14px;
14401
+ height: 14px;
14402
+ color: inherit;
14403
+ }
14404
+
14405
+ .st-docchip:hover {
14406
+ background: var(--surface-sunken);
14407
+ color: var(--text-primary);
14408
+ }
14409
+
14410
+ .st-docchip.is-active {
14411
+ background: var(--n-900);
14412
+ color: #fff;
14413
+ border-color: var(--n-900);
14414
+ }
14415
+
14416
+ .st-docchip-dot {
14417
+ width: 8px;
14418
+ height: 8px;
14419
+ border-radius: 50%;
14420
+ flex-shrink: 0;
9892
14421
  }.dashboard-heading {
9893
14422
  margin-bottom: 1.5rem;
9894
14423
  }