@erpsquad/common 1.11.7 → 1.11.8

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 (629) hide show
  1. package/dist/api-client/index.esm.js +2 -2
  2. package/dist/chunks/{DynamicDependentField-DOGY6cA_.esm.js → DynamicDependentField-C0XXmMlG.esm.js} +2 -2
  3. package/dist/chunks/{DynamicDependentField-DOGY6cA_.esm.js.map → DynamicDependentField-C0XXmMlG.esm.js.map} +1 -1
  4. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js → DynamicDependentField-CQIfDDqc.js} +2 -2
  5. package/dist/chunks/{DynamicDependentField-GTIwrPfP.js.map → DynamicDependentField-CQIfDDqc.js.map} +1 -1
  6. package/dist/chunks/{ERPUIProvider-Dz0s77BR.esm.js → ERPUIProvider-I4j_X_SD.esm.js} +3 -3
  7. package/dist/chunks/{ERPUIProvider-Dz0s77BR.esm.js.map → ERPUIProvider-I4j_X_SD.esm.js.map} +1 -1
  8. package/dist/chunks/{FORMS-EouVYay1.js → FORMS-CUx32b_4.js} +5 -5
  9. package/dist/chunks/{FORMS-EouVYay1.js.map → FORMS-CUx32b_4.js.map} +1 -1
  10. package/dist/chunks/{FORMS-CR_DlD1m.esm.js → FORMS-pxf6g6xE.esm.js} +8 -8
  11. package/dist/chunks/{FORMS-CR_DlD1m.esm.js.map → FORMS-pxf6g6xE.esm.js.map} +1 -1
  12. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js → FlexibleReduxExample--GtoEJhc.js} +3 -3
  13. package/dist/chunks/{FlexibleReduxExample-CMUylyy1.js.map → FlexibleReduxExample--GtoEJhc.js.map} +1 -1
  14. package/dist/chunks/{FlexibleReduxExample-B2e7Wa_S.esm.js → FlexibleReduxExample-C-2qOGIw.esm.js} +4 -4
  15. package/dist/chunks/{FlexibleReduxExample-B2e7Wa_S.esm.js.map → FlexibleReduxExample-C-2qOGIw.esm.js.map} +1 -1
  16. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js +5479 -0
  17. package/dist/chunks/SectionFlowEditor-CFfJBYKx.esm.js.map +1 -0
  18. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js +5478 -0
  19. package/dist/chunks/SectionFlowEditor-sKsZ3oQo.js.map +1 -0
  20. package/dist/chunks/{action-bar-Ci6RlMBM.esm.js → action-bar-C7Alva4T.esm.js} +6 -6
  21. package/dist/chunks/{action-bar-Ci6RlMBM.esm.js.map → action-bar-C7Alva4T.esm.js.map} +1 -1
  22. package/dist/chunks/{action-bar-jLqQTqU7.js → action-bar-DdtpxWNk.js} +3 -3
  23. package/dist/chunks/{action-bar-jLqQTqU7.js.map → action-bar-DdtpxWNk.js.map} +1 -1
  24. package/dist/chunks/{actionCreator-DIdMRO9L.esm.js → actionCreator-CL5ICuqZ.esm.js} +2 -2
  25. package/dist/chunks/{actionCreator-DIdMRO9L.esm.js.map → actionCreator-CL5ICuqZ.esm.js.map} +1 -1
  26. package/dist/chunks/{actionCreator-DKYufGAZ.esm.js → actionCreator-Cb3NxILP.esm.js} +2 -2
  27. package/dist/chunks/{actionCreator-DKYufGAZ.esm.js.map → actionCreator-Cb3NxILP.esm.js.map} +1 -1
  28. package/dist/chunks/{actionCreator-D3uwEAua.esm.js → actionCreator-Cl8vPLVO.esm.js} +3 -3
  29. package/dist/chunks/{actionCreator-D3uwEAua.esm.js.map → actionCreator-Cl8vPLVO.esm.js.map} +1 -1
  30. package/dist/chunks/{actionCreator-B6lXR_k1.esm.js → actionCreator-CpePNxQM.esm.js} +2 -2
  31. package/dist/chunks/{actionCreator-B6lXR_k1.esm.js.map → actionCreator-CpePNxQM.esm.js.map} +1 -1
  32. package/dist/chunks/{actionCreator-DcdyGsIX.esm.js → actionCreator-Dar9Z8_d.esm.js} +3 -3
  33. package/dist/chunks/{actionCreator-DcdyGsIX.esm.js.map → actionCreator-Dar9Z8_d.esm.js.map} +1 -1
  34. package/dist/chunks/add-template-DVvbD9a4.esm.js +11 -0
  35. package/dist/chunks/add-template-DVvbD9a4.esm.js.map +1 -0
  36. package/dist/chunks/add-template-Dohg2bHJ.js +10 -0
  37. package/dist/chunks/add-template-Dohg2bHJ.js.map +1 -0
  38. package/dist/chunks/{address-modal-DFd5sQtR.js → address-modal-CYhiC7ui.js} +2 -2
  39. package/dist/chunks/{address-modal-DFd5sQtR.js.map → address-modal-CYhiC7ui.js.map} +1 -1
  40. package/dist/chunks/{address-modal-DYGLjrqd.esm.js → address-modal-CkDBjnye.esm.js} +2 -2
  41. package/dist/chunks/{address-modal-DYGLjrqd.esm.js.map → address-modal-CkDBjnye.esm.js.map} +1 -1
  42. package/dist/chunks/{ai-summary-x2t8BZCx.esm.js → ai-summary-SKK5KN2s.esm.js} +2 -2
  43. package/dist/chunks/{ai-summary-x2t8BZCx.esm.js.map → ai-summary-SKK5KN2s.esm.js.map} +1 -1
  44. package/dist/chunks/{api-8jutPLh0.esm.js → api-BIVCMSwW.esm.js} +3 -3
  45. package/dist/chunks/{api-8jutPLh0.esm.js.map → api-BIVCMSwW.esm.js.map} +1 -1
  46. package/dist/chunks/{api-yLpQ3k5s.esm.js → api-DBmWILBN.esm.js} +9 -9
  47. package/dist/chunks/{api-yLpQ3k5s.esm.js.map → api-DBmWILBN.esm.js.map} +1 -1
  48. package/dist/chunks/{app-switcher-VhH9z0Rd.js → app-switcher-CyEQmYAN.js} +2 -2
  49. package/dist/chunks/{app-switcher-VhH9z0Rd.js.map → app-switcher-CyEQmYAN.js.map} +1 -1
  50. package/dist/chunks/{app-switcher-B6eapuGG.esm.js → app-switcher-D-Bvz9uO.esm.js} +2 -2
  51. package/dist/chunks/{app-switcher-B6eapuGG.esm.js.map → app-switcher-D-Bvz9uO.esm.js.map} +1 -1
  52. package/dist/chunks/{appbar-B8EgZsrn.esm.js → appbar-BRbO--as.esm.js} +2 -2
  53. package/dist/chunks/{appbar-B8EgZsrn.esm.js.map → appbar-BRbO--as.esm.js.map} +1 -1
  54. package/dist/chunks/{appbar-Is_7kfVo.js → appbar-rqqjZ99v.js} +2 -2
  55. package/dist/chunks/{appbar-Is_7kfVo.js.map → appbar-rqqjZ99v.js.map} +1 -1
  56. package/dist/chunks/{approval-wrapper-_kYfACQp.esm.js → approval-wrapper-BTtmXMlk.esm.js} +2 -2
  57. package/dist/chunks/{approval-wrapper-_kYfACQp.esm.js.map → approval-wrapper-BTtmXMlk.esm.js.map} +1 -1
  58. package/dist/chunks/{chat-bot-DO3vAGxA.esm.js → chat-bot-BpNtrZEL.esm.js} +39 -33
  59. package/dist/chunks/chat-bot-BpNtrZEL.esm.js.map +1 -0
  60. package/dist/chunks/{chat-bot-2Ga_xA_K.js → chat-bot-osiGMG3g.js} +38 -32
  61. package/dist/chunks/chat-bot-osiGMG3g.js.map +1 -0
  62. package/dist/chunks/common-C5AokA7z.js +368 -0
  63. package/dist/chunks/common-C5AokA7z.js.map +1 -0
  64. package/dist/chunks/{common-PH2uWkqL.js → common-CS5L0Ld_.js} +2 -2
  65. package/dist/chunks/{common-PH2uWkqL.js.map → common-CS5L0Ld_.js.map} +1 -1
  66. package/dist/chunks/common-CaomnEjX.esm.js +369 -0
  67. package/dist/chunks/common-CaomnEjX.esm.js.map +1 -0
  68. package/dist/chunks/common-utility-CA_Upser.js.map +1 -1
  69. package/dist/chunks/{common-utility-CS_sNoAC.esm.js → common-utility-DGpbsf7S.esm.js} +2 -2
  70. package/dist/chunks/common-utility-DGpbsf7S.esm.js.map +1 -0
  71. package/dist/chunks/{common-Cl5oGXmX.esm.js → common-yORBIVv-.esm.js} +2 -2
  72. package/dist/chunks/{common-Cl5oGXmX.esm.js.map → common-yORBIVv-.esm.js.map} +1 -1
  73. package/dist/chunks/company-selection-modal-B7jFVWWs.js.map +1 -1
  74. package/dist/chunks/company-selection-modal-Dn2L_skh.esm.js.map +1 -1
  75. package/dist/chunks/{constant-BXPcBhJN.esm.js → constant-Bwg2s_Sn.esm.js} +5 -35
  76. package/dist/chunks/constant-Bwg2s_Sn.esm.js.map +1 -0
  77. package/dist/chunks/{constant-BXeJD4Af.js → constant-ZYAN_teD.js} +5 -35
  78. package/dist/chunks/constant-ZYAN_teD.js.map +1 -0
  79. package/dist/chunks/{constants-D_xuLHSu.js → constants-06kIVUBw.js} +2 -2
  80. package/dist/chunks/{constants-D_xuLHSu.js.map → constants-06kIVUBw.js.map} +1 -1
  81. package/dist/chunks/{constants-BrmMAwu2.esm.js → constants-nmkxkzps.esm.js} +2 -2
  82. package/dist/chunks/{constants-BrmMAwu2.esm.js.map → constants-nmkxkzps.esm.js.map} +1 -1
  83. package/dist/chunks/{custom-editor-C-B5BK-H.esm.js → custom-editor-6-xqhKz6.esm.js} +3 -3
  84. package/dist/chunks/{custom-editor-C-B5BK-H.esm.js.map → custom-editor-6-xqhKz6.esm.js.map} +1 -1
  85. package/dist/chunks/{custom-form-T4yc_sE_.js → custom-form-CFU7NEVb.js} +4 -4
  86. package/dist/chunks/{custom-form-T4yc_sE_.js.map → custom-form-CFU7NEVb.js.map} +1 -1
  87. package/dist/chunks/{custom-form-DNUpk0nq.esm.js → custom-form-DD7YOHMF.esm.js} +7 -7
  88. package/dist/chunks/{custom-form-DNUpk0nq.esm.js.map → custom-form-DD7YOHMF.esm.js.map} +1 -1
  89. package/dist/chunks/{dashboard-eMHQayU_.js → dashboard-BcWVkWZt.js} +3 -3
  90. package/dist/chunks/{dashboard-eMHQayU_.js.map → dashboard-BcWVkWZt.js.map} +1 -1
  91. package/dist/chunks/{dashboard-B4xzJ1Xc.esm.js → dashboard-DL83yYRR.esm.js} +4 -4
  92. package/dist/chunks/{dashboard-B4xzJ1Xc.esm.js.map → dashboard-DL83yYRR.esm.js.map} +1 -1
  93. package/dist/chunks/default-data-6IxhqPTP.esm.js.map +1 -1
  94. package/dist/chunks/default-data-yreKVx_z.js.map +1 -1
  95. package/dist/chunks/{dynamic-report-CMguvXj2.esm.js → dynamic-report-tKn-KqAd.esm.js} +4 -4
  96. package/dist/chunks/{dynamic-report-CMguvXj2.esm.js.map → dynamic-report-tKn-KqAd.esm.js.map} +1 -1
  97. package/dist/chunks/{dynamic-rows-CmAE9nbA.esm.js → dynamic-rows-CTGETfcP.esm.js} +2 -2
  98. package/dist/chunks/{dynamic-rows-CmAE9nbA.esm.js.map → dynamic-rows-CTGETfcP.esm.js.map} +1 -1
  99. package/dist/chunks/{dynamic-text-editor-CSWdR1lK.esm.js → dynamic-text-editor-CPvlGcLK.esm.js} +2 -2
  100. package/dist/chunks/{dynamic-text-editor-CSWdR1lK.esm.js.map → dynamic-text-editor-CPvlGcLK.esm.js.map} +1 -1
  101. package/dist/chunks/{edit-section-modal-HihKbN6K.esm.js → edit-section-modal-BW-aZmUv.esm.js} +2 -2
  102. package/dist/chunks/edit-section-modal-BW-aZmUv.esm.js.map +1 -0
  103. package/dist/chunks/edit-section-modal-Br2ITvLk.js.map +1 -1
  104. package/dist/chunks/{filter-D9BHP_qc.esm.js → filter-COXKBEER.esm.js} +5 -5
  105. package/dist/chunks/{filter-D9BHP_qc.esm.js.map → filter-COXKBEER.esm.js.map} +1 -1
  106. package/dist/chunks/{filter-DtCrOG6W.js → filter-Cr_OSIpb.js} +3 -3
  107. package/dist/chunks/{filter-DtCrOG6W.js.map → filter-Cr_OSIpb.js.map} +1 -1
  108. package/dist/chunks/{footer-DioOh69g.js → footer-CD3kMRdS.js} +2 -2
  109. package/dist/chunks/{footer-DioOh69g.js.map → footer-CD3kMRdS.js.map} +1 -1
  110. package/dist/chunks/{footer-Bv5NOAf9.esm.js → footer-m3_dlNl8.esm.js} +2 -2
  111. package/dist/chunks/{footer-Bv5NOAf9.esm.js.map → footer-m3_dlNl8.esm.js.map} +1 -1
  112. package/dist/chunks/{form-fields-Di-p9XKG.esm.js → form-fields-hMMnB_wE.esm.js} +2 -2
  113. package/dist/chunks/{form-fields-Di-p9XKG.esm.js.map → form-fields-hMMnB_wE.esm.js.map} +1 -1
  114. package/dist/chunks/{form-fields-BYDhbAgB.js → form-fields-yE9kwjvb.js} +2 -2
  115. package/dist/chunks/{form-fields-BYDhbAgB.js.map → form-fields-yE9kwjvb.js.map} +1 -1
  116. package/dist/chunks/{form-parser-ZQpEVrzG.esm.js → form-parser-DbnSn5eY.esm.js} +2 -2
  117. package/dist/chunks/{form-parser-ZQpEVrzG.esm.js.map → form-parser-DbnSn5eY.esm.js.map} +1 -1
  118. package/dist/chunks/{form-parser-BnMdMDSb.js → form-parser-m4fnw38a.js} +2 -2
  119. package/dist/chunks/{form-parser-BnMdMDSb.js.map → form-parser-m4fnw38a.js.map} +1 -1
  120. package/dist/chunks/{form-section-CFeWD-tF.js → form-section-CPIyMdk2.js} +5 -5
  121. package/dist/chunks/{form-section-CFeWD-tF.js.map → form-section-CPIyMdk2.js.map} +1 -1
  122. package/dist/chunks/{form-section-BJ7Iqb9R.esm.js → form-section-TMjdOVeW.esm.js} +5 -5
  123. package/dist/chunks/{form-section-BJ7Iqb9R.esm.js.map → form-section-TMjdOVeW.esm.js.map} +1 -1
  124. package/dist/chunks/{fullScreen-h0JqBN4O.js → fullScreen-BLLa9ogA.js} +5 -5
  125. package/dist/chunks/fullScreen-BLLa9ogA.js.map +1 -0
  126. package/dist/chunks/{fullScreen-Cz3FIdU4.esm.js → fullScreen-DFgzE41_.esm.js} +5 -5
  127. package/dist/chunks/fullScreen-DFgzE41_.esm.js.map +1 -0
  128. package/dist/chunks/{global-search-CGmupYFQ.esm.js → global-search-BOkxXiZ0.esm.js} +3 -3
  129. package/dist/chunks/{global-search-CGmupYFQ.esm.js.map → global-search-BOkxXiZ0.esm.js.map} +1 -1
  130. package/dist/chunks/{global-search-BTV5iL6-.js → global-search-BjKPmzsQ.js} +2 -2
  131. package/dist/chunks/{global-search-BTV5iL6-.js.map → global-search-BjKPmzsQ.js.map} +1 -1
  132. package/dist/chunks/{grid-view-BMfleQMC.esm.js → grid-view-Bo86x7YL.esm.js} +2 -2
  133. package/dist/chunks/{grid-view-BMfleQMC.esm.js.map → grid-view-Bo86x7YL.esm.js.map} +1 -1
  134. package/dist/chunks/{header-BnVzqpGs.esm.js → header-B-HaoeK7.esm.js} +10 -12
  135. package/dist/chunks/{header-BnVzqpGs.esm.js.map → header-B-HaoeK7.esm.js.map} +1 -1
  136. package/dist/chunks/{header-jWPMgcy6.js → header-BHsex2As.js} +9 -11
  137. package/dist/chunks/{header-jWPMgcy6.js.map → header-BHsex2As.js.map} +1 -1
  138. package/dist/chunks/{header-enhanced-CkROCaOF.esm.js → header-enhanced-BjfqyQ1a.esm.js} +3 -3
  139. package/dist/chunks/{header-enhanced-CkROCaOF.esm.js.map → header-enhanced-BjfqyQ1a.esm.js.map} +1 -1
  140. package/dist/chunks/{header-enhanced-Dxdetx0I.js → header-enhanced-gJl4iC4m.js} +3 -3
  141. package/dist/chunks/{header-enhanced-Dxdetx0I.js.map → header-enhanced-gJl4iC4m.js.map} +1 -1
  142. package/dist/chunks/{index-BCmGHdos.esm.js → index-ALqg8b5U.esm.js} +2 -2
  143. package/dist/chunks/{index-BCmGHdos.esm.js.map → index-ALqg8b5U.esm.js.map} +1 -1
  144. package/dist/chunks/{inline-edit-fields-VOIx3qmC.esm.js → inline-edit-fields-BYhRpPcH.esm.js} +2 -2
  145. package/dist/chunks/{inline-edit-fields-VOIx3qmC.esm.js.map → inline-edit-fields-BYhRpPcH.esm.js.map} +1 -1
  146. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js → inline-edit-fields-atDP84QL.js} +2 -2
  147. package/dist/chunks/{inline-edit-fields-Cd_qUOjU.js.map → inline-edit-fields-atDP84QL.js.map} +1 -1
  148. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js → inventory-reports-title-bar-Bog2i0dr.js} +2 -2
  149. package/dist/chunks/{inventory-reports-title-bar-BfUMM54c.js.map → inventory-reports-title-bar-Bog2i0dr.js.map} +1 -1
  150. package/dist/chunks/{inventory-reports-title-bar-CZZFFqDc.esm.js → inventory-reports-title-bar-CP8FzW6A.esm.js} +3 -3
  151. package/dist/chunks/{inventory-reports-title-bar-CZZFFqDc.esm.js.map → inventory-reports-title-bar-CP8FzW6A.esm.js.map} +1 -1
  152. package/dist/chunks/{item-response-details-BheThTTK.js → item-response-details-DsGQ7Dlc.js} +2 -2
  153. package/dist/chunks/{item-response-details-BheThTTK.js.map → item-response-details-DsGQ7Dlc.js.map} +1 -1
  154. package/dist/chunks/{item-response-details-BTHf6ZvN.esm.js → item-response-details-SHSD-nBh.esm.js} +4 -4
  155. package/dist/chunks/{item-response-details-BTHf6ZvN.esm.js.map → item-response-details-SHSD-nBh.esm.js.map} +1 -1
  156. package/dist/chunks/{listing-ELQeM6S3.esm.js → listing-C0Yb6MVq.esm.js} +4 -4
  157. package/dist/chunks/{listing-ELQeM6S3.esm.js.map → listing-C0Yb6MVq.esm.js.map} +1 -1
  158. package/dist/chunks/{listing-Dr_1DDBr.js → listing-DIuzQrzb.js} +4 -4
  159. package/dist/chunks/{listing-Dr_1DDBr.js.map → listing-DIuzQrzb.js.map} +1 -1
  160. package/dist/chunks/{location-select-z1C88kCy.esm.js → location-select-CFa00fy4.esm.js} +2 -2
  161. package/dist/chunks/{location-select-z1C88kCy.esm.js.map → location-select-CFa00fy4.esm.js.map} +1 -1
  162. package/dist/chunks/{location-select-CLyRUilk.js → location-select-g5uczAUF.js} +2 -2
  163. package/dist/chunks/{location-select-CLyRUilk.js.map → location-select-g5uczAUF.js.map} +1 -1
  164. package/dist/chunks/{material-editable-table-DFGB0q-s.js → material-editable-table-BGLjrTzT.js} +3 -3
  165. package/dist/chunks/{material-editable-table-DFGB0q-s.js.map → material-editable-table-BGLjrTzT.js.map} +1 -1
  166. package/dist/chunks/{material-editable-table-DyGdqNkX.esm.js → material-editable-table-pAyK7KYf.esm.js} +4 -4
  167. package/dist/chunks/{material-editable-table-DyGdqNkX.esm.js.map → material-editable-table-pAyK7KYf.esm.js.map} +1 -1
  168. package/dist/chunks/{module-reducer-CEv3LZCX.esm.js → module-reducer-DMxxForv.esm.js} +2 -2
  169. package/dist/chunks/{module-reducer-CEv3LZCX.esm.js.map → module-reducer-DMxxForv.esm.js.map} +1 -1
  170. package/dist/chunks/{modules-enwLrpfQ.esm.js → modules-BBu2Y-K9.esm.js} +5 -5
  171. package/dist/chunks/{modules-enwLrpfQ.esm.js.map → modules-BBu2Y-K9.esm.js.map} +1 -1
  172. package/dist/chunks/{modules-DTRr7zwt.js → modules-maXT99-4.js} +5 -5
  173. package/dist/chunks/{modules-DTRr7zwt.js.map → modules-maXT99-4.js.map} +1 -1
  174. package/dist/chunks/{notification-menu-B00hDUbn.js → notification-menu-D7ASm-K1.js} +2 -2
  175. package/dist/chunks/{notification-menu-B00hDUbn.js.map → notification-menu-D7ASm-K1.js.map} +1 -1
  176. package/dist/chunks/{notification-menu-CehCt5fA.esm.js → notification-menu-XAadkn-e.esm.js} +4 -4
  177. package/dist/chunks/{notification-menu-CehCt5fA.esm.js.map → notification-menu-XAadkn-e.esm.js.map} +1 -1
  178. package/dist/chunks/{page-action-TMFOytDw.js → page-action-BPzaL2KJ.js} +2 -2
  179. package/dist/chunks/{page-action-TMFOytDw.js.map → page-action-BPzaL2KJ.js.map} +1 -1
  180. package/dist/chunks/{page-action-RqVevciV.esm.js → page-action-C07iGjvN.esm.js} +4 -4
  181. package/dist/chunks/{page-action-RqVevciV.esm.js.map → page-action-C07iGjvN.esm.js.map} +1 -1
  182. package/dist/chunks/{page-navigator-CuIJ0KGf.esm.js → page-navigator-8gZpp9_P.esm.js} +2 -2
  183. package/dist/chunks/{page-navigator-CuIJ0KGf.esm.js.map → page-navigator-8gZpp9_P.esm.js.map} +1 -1
  184. package/dist/chunks/{page-navigator-DdRsmtLy.js → page-navigator-Cgbh3tTG.js} +2 -2
  185. package/dist/chunks/{page-navigator-DdRsmtLy.js.map → page-navigator-Cgbh3tTG.js.map} +1 -1
  186. package/dist/chunks/{page-view-Daz-OKd_.esm.js → page-view-CokUNMBn.esm.js} +3 -3
  187. package/dist/chunks/{page-view-Daz-OKd_.esm.js.map → page-view-CokUNMBn.esm.js.map} +1 -1
  188. package/dist/chunks/{page-view-CvfqzV03.js → page-view-DJ6HS_dV.js} +3 -3
  189. package/dist/chunks/{page-view-CvfqzV03.js.map → page-view-DJ6HS_dV.js.map} +1 -1
  190. package/dist/chunks/{pathname.rental-CwK6JuID.js → pathname.rental-DgH4LoG7.js} +7 -2
  191. package/dist/chunks/{pathname.rental-CwK6JuID.js.map → pathname.rental-DgH4LoG7.js.map} +1 -1
  192. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js → pathname.rental-qsAe3XFd.esm.js} +81 -76
  193. package/dist/chunks/{pathname.rental-CqHO_l_D.esm.js.map → pathname.rental-qsAe3XFd.esm.js.map} +1 -1
  194. package/dist/chunks/{quick-approval-modal-B-jvkgue.esm.js → quick-approval-modal-CPWs8htH.esm.js} +2 -2
  195. package/dist/chunks/{quick-approval-modal-B-jvkgue.esm.js.map → quick-approval-modal-CPWs8htH.esm.js.map} +1 -1
  196. package/dist/chunks/{reducer-BOwyP0QZ.esm.js → reducer-3tSO6RW6.esm.js} +3 -3
  197. package/dist/chunks/{reducer-BOwyP0QZ.esm.js.map → reducer-3tSO6RW6.esm.js.map} +1 -1
  198. package/dist/chunks/{reducer-BMkh_0Py.esm.js → reducer-CdJ6znKF.esm.js} +3 -3
  199. package/dist/chunks/{reducer-BMkh_0Py.esm.js.map → reducer-CdJ6znKF.esm.js.map} +1 -1
  200. package/dist/chunks/{reducer-BTfG9J4W.esm.js → reducer-IsgN83rP.esm.js} +2 -2
  201. package/dist/chunks/{reducer-BTfG9J4W.esm.js.map → reducer-IsgN83rP.esm.js.map} +1 -1
  202. package/dist/chunks/{reducer-CD1VDqeT.esm.js → reducer-sgaK2vfW.esm.js} +2 -2
  203. package/dist/chunks/{reducer-CD1VDqeT.esm.js.map → reducer-sgaK2vfW.esm.js.map} +1 -1
  204. package/dist/chunks/{reducer-BWiX5vxL.esm.js → reducer-yyZtsg1A.esm.js} +2 -2
  205. package/dist/chunks/{reducer-BWiX5vxL.esm.js.map → reducer-yyZtsg1A.esm.js.map} +1 -1
  206. package/dist/chunks/{reports-title-bar-Kl8XQe-K.esm.js → reports-title-bar-Cay4E8SQ.esm.js} +4 -4
  207. package/dist/chunks/{reports-title-bar-Kl8XQe-K.esm.js.map → reports-title-bar-Cay4E8SQ.esm.js.map} +1 -1
  208. package/dist/chunks/{reports-title-bar-B1_IweEc.js → reports-title-bar-Kz6JjqsY.js} +2 -2
  209. package/dist/chunks/{reports-title-bar-B1_IweEc.js.map → reports-title-bar-Kz6JjqsY.js.map} +1 -1
  210. package/dist/chunks/{route-page-map-D6-7jBQT.esm.js → route-page-map-DkWoisiB.esm.js} +133 -76
  211. package/dist/chunks/{route-page-map-D6-7jBQT.esm.js.map → route-page-map-DkWoisiB.esm.js.map} +1 -1
  212. package/dist/chunks/{route-page-map-CzFUh-SC.js → route-page-map-Dn-SAbdf.js} +60 -3
  213. package/dist/chunks/{route-page-map-CzFUh-SC.js.map → route-page-map-Dn-SAbdf.js.map} +1 -1
  214. package/dist/chunks/{routes-D9y_XQRu.esm.js → routes-CAc76Zan.esm.js} +4 -4
  215. package/dist/chunks/{routes-D9y_XQRu.esm.js.map → routes-CAc76Zan.esm.js.map} +1 -1
  216. package/dist/chunks/{routes-Dsumzjw0.js → routes-CfqLAYgR.js} +4 -4
  217. package/dist/chunks/{routes-Dsumzjw0.js.map → routes-CfqLAYgR.js.map} +1 -1
  218. package/dist/chunks/{schedule-report-BwmZ5jea.js → schedule-report-B4ZfEuiU.js} +4 -4
  219. package/dist/chunks/{schedule-report-BwmZ5jea.js.map → schedule-report-B4ZfEuiU.js.map} +1 -1
  220. package/dist/chunks/{schedule-report-CJXHVZ68.esm.js → schedule-report-CLXjjfjc.esm.js} +6 -6
  221. package/dist/chunks/{schedule-report-CJXHVZ68.esm.js.map → schedule-report-CLXjjfjc.esm.js.map} +1 -1
  222. package/dist/chunks/{schedule-report-modal-D8Y-TZ4u.esm.js → schedule-report-modal-CB3G9H7x.esm.js} +3 -3
  223. package/dist/chunks/{schedule-report-modal-D8Y-TZ4u.esm.js.map → schedule-report-modal-CB3G9H7x.esm.js.map} +1 -1
  224. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js → schedule-report-modal-iwoDI-sg.js} +2 -2
  225. package/dist/chunks/{schedule-report-modal-iNnWP9s4.js.map → schedule-report-modal-iwoDI-sg.js.map} +1 -1
  226. package/dist/chunks/{searchable-select-BQtcqBKV.esm.js → searchable-select-0F6E4XAr.esm.js} +6 -6
  227. package/dist/chunks/{searchable-select-BQtcqBKV.esm.js.map → searchable-select-0F6E4XAr.esm.js.map} +1 -1
  228. package/dist/chunks/{searchable-select-DVUCWWti.js → searchable-select-_DCkITfk.js} +2 -2
  229. package/dist/chunks/{searchable-select-DVUCWWti.js.map → searchable-select-_DCkITfk.js.map} +1 -1
  230. package/dist/chunks/{share-modal-BOyLBawK.esm.js → share-modal-BaEyZs2h.esm.js} +3 -3
  231. package/dist/chunks/{share-modal-BOyLBawK.esm.js.map → share-modal-BaEyZs2h.esm.js.map} +1 -1
  232. package/dist/chunks/{share-modal-CobK7BN7.js → share-modal-DrXvh-fV.js} +2 -2
  233. package/dist/chunks/{share-modal-CobK7BN7.js.map → share-modal-DrXvh-fV.js.map} +1 -1
  234. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js → share-modal-enhanced-BTr0zRhF.js} +2 -2
  235. package/dist/chunks/{share-modal-enhanced-DVarD-jt.js.map → share-modal-enhanced-BTr0zRhF.js.map} +1 -1
  236. package/dist/chunks/{share-modal-enhanced-CTp-tQw8.esm.js → share-modal-enhanced-DnEdDBmu.esm.js} +2 -2
  237. package/dist/chunks/{share-modal-enhanced-CTp-tQw8.esm.js.map → share-modal-enhanced-DnEdDBmu.esm.js.map} +1 -1
  238. package/dist/chunks/{sidebarScreen-lR6rw8bW.esm.js → sidebarScreen-DiOAiXeU.esm.js} +4 -4
  239. package/dist/chunks/{sidebarScreen-lR6rw8bW.esm.js.map → sidebarScreen-DiOAiXeU.esm.js.map} +1 -1
  240. package/dist/chunks/{sidebarScreen-K-dlM6NA.js → sidebarScreen-DpYj_wlK.js} +3 -3
  241. package/dist/chunks/{sidebarScreen-K-dlM6NA.js.map → sidebarScreen-DpYj_wlK.js.map} +1 -1
  242. package/dist/chunks/{store-DJh8C3Vv.esm.js → store-BL5VFPie.esm.js} +6 -6
  243. package/dist/chunks/{store-DJh8C3Vv.esm.js.map → store-BL5VFPie.esm.js.map} +1 -1
  244. package/dist/chunks/{table-Bpt6ggr3.js → table-DWx7x8zw.js} +2 -2
  245. package/dist/chunks/{table-Bpt6ggr3.js.map → table-DWx7x8zw.js.map} +1 -1
  246. package/dist/chunks/{table-form-8_f3FwhX.esm.js → table-form-DsTwCUcs.esm.js} +2 -2
  247. package/dist/chunks/{table-form-8_f3FwhX.esm.js.map → table-form-DsTwCUcs.esm.js.map} +1 -1
  248. package/dist/chunks/{table-DI3MyTNm.esm.js → table-gxAlAeTq.esm.js} +3 -3
  249. package/dist/chunks/{table-DI3MyTNm.esm.js.map → table-gxAlAeTq.esm.js.map} +1 -1
  250. package/dist/chunks/{template-editor-router-uzghBOap.esm.js → template-editor-router-BXLUTvsk.esm.js} +2 -2
  251. package/dist/chunks/{template-editor-router-uzghBOap.esm.js.map → template-editor-router-BXLUTvsk.esm.js.map} +1 -1
  252. package/dist/chunks/{template-editor-router-DugWbCh0.js → template-editor-router-D4NIwVws.js} +2 -2
  253. package/dist/chunks/{template-editor-router-DugWbCh0.js.map → template-editor-router-D4NIwVws.js.map} +1 -1
  254. package/dist/chunks/{template-modal-D7aLacan.esm.js → template-modal-B2VgotrF.esm.js} +6 -7
  255. package/dist/chunks/template-modal-B2VgotrF.esm.js.map +1 -0
  256. package/dist/chunks/{template-modal-Df7gF4QI.js → template-modal-X-iSmlki.js} +4 -5
  257. package/dist/chunks/template-modal-X-iSmlki.js.map +1 -0
  258. package/dist/chunks/{template-name-modal-ClreVUaz.js → template-name-modal-CeqxIE2r.js} +5 -12
  259. package/dist/chunks/template-name-modal-CeqxIE2r.js.map +1 -0
  260. package/dist/chunks/{template-name-modal-Dwe7U72p.esm.js → template-name-modal-Dctn8t3t.esm.js} +5 -12
  261. package/dist/chunks/template-name-modal-Dctn8t3t.esm.js.map +1 -0
  262. package/dist/chunks/{templates-9ZMHwRR6.esm.js → templates-CCy1eG6A.esm.js} +17 -10
  263. package/dist/chunks/templates-CCy1eG6A.esm.js.map +1 -0
  264. package/dist/chunks/{templates-DCXbeOtH.js → templates-CUREMwYo.js} +14 -7
  265. package/dist/chunks/templates-CUREMwYo.js.map +1 -0
  266. package/dist/chunks/{text-measurement-DMVkqP6b.esm.js → text-measurement-BCjauPbB.esm.js} +2 -2
  267. package/dist/chunks/{text-measurement-DMVkqP6b.esm.js.map → text-measurement-BCjauPbB.esm.js.map} +1 -1
  268. package/dist/chunks/{translations-JcE6qyDJ.esm.js → translations-BrwQcVN3.esm.js} +3 -3
  269. package/dist/chunks/{translations-JcE6qyDJ.esm.js.map → translations-BrwQcVN3.esm.js.map} +1 -1
  270. package/dist/chunks/{uom-field-wrapper-CWTsSsSi.esm.js → uom-field-wrapper-CTbEc-MB.esm.js} +2 -2
  271. package/dist/chunks/{uom-field-wrapper-CWTsSsSi.esm.js.map → uom-field-wrapper-CTbEc-MB.esm.js.map} +1 -1
  272. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js → uom-field-wrapper-DXZgzOYB.js} +2 -2
  273. package/dist/chunks/{uom-field-wrapper-CSqeiVPY.js.map → uom-field-wrapper-DXZgzOYB.js.map} +1 -1
  274. package/dist/chunks/{upload-excel-CkEQqZW2.esm.js → upload-excel-BZPP13tP.esm.js} +2 -2
  275. package/dist/chunks/{upload-excel-CkEQqZW2.esm.js.map → upload-excel-BZPP13tP.esm.js.map} +1 -1
  276. package/dist/chunks/{use-translations-Cn3b4Kqh.js → use-translations-5wUQBxMm.js} +2 -2
  277. package/dist/chunks/{use-translations-Cn3b4Kqh.js.map → use-translations-5wUQBxMm.js.map} +1 -1
  278. package/dist/chunks/{use-translations-BqBPN1DM.esm.js → use-translations-CcjSFA3F.esm.js} +3 -3
  279. package/dist/chunks/{use-translations-BqBPN1DM.esm.js.map → use-translations-CcjSFA3F.esm.js.map} +1 -1
  280. package/dist/chunks/{useAccountSetting-DsU5zsjb.esm.js → useAccountSetting-vAqgEiJB.esm.js} +2 -2
  281. package/dist/chunks/{useAccountSetting-DsU5zsjb.esm.js.map → useAccountSetting-vAqgEiJB.esm.js.map} +1 -1
  282. package/dist/chunks/{useCheckSkuAndName-5ua30aZf.esm.js → useCheckSkuAndName-Dl24wQO-.esm.js} +2 -2
  283. package/dist/chunks/{useCheckSkuAndName-5ua30aZf.esm.js.map → useCheckSkuAndName-Dl24wQO-.esm.js.map} +1 -1
  284. package/dist/chunks/{useReduxIntegration-BlLpfwk6.esm.js → useReduxIntegration-DZBfKF7d.esm.js} +2 -2
  285. package/dist/chunks/{useReduxIntegration-BlLpfwk6.esm.js.map → useReduxIntegration-DZBfKF7d.esm.js.map} +1 -1
  286. package/dist/chunks/{useUniquenessCheck-CiR2q5bM.esm.js → useUniquenessCheck-bYjnp_0P.esm.js} +2 -2
  287. package/dist/chunks/{useUniquenessCheck-CiR2q5bM.esm.js.map → useUniquenessCheck-bYjnp_0P.esm.js.map} +1 -1
  288. package/dist/chunks/{useVendorAICompare-DMJvJJ3Y.esm.js → useVendorAICompare-DZRFDk4i.esm.js} +2 -2
  289. package/dist/chunks/{useVendorAICompare-DMJvJJ3Y.esm.js.map → useVendorAICompare-DZRFDk4i.esm.js.map} +1 -1
  290. package/dist/chunks/{value-editor-Br7X_wEB.js → value-editor-BSS9Ns2T.js} +2 -2
  291. package/dist/chunks/{value-editor-Br7X_wEB.js.map → value-editor-BSS9Ns2T.js.map} +1 -1
  292. package/dist/chunks/{value-editor-BxFdnUyM.esm.js → value-editor-DQ1qgZ2u.esm.js} +4 -4
  293. package/dist/chunks/{value-editor-BxFdnUyM.esm.js.map → value-editor-DQ1qgZ2u.esm.js.map} +1 -1
  294. package/dist/chunks/{vendor-ai-summary-Cpx90QOx.esm.js → vendor-ai-summary-BA6m2dH9.esm.js} +2 -2
  295. package/dist/chunks/{vendor-ai-summary-Cpx90QOx.esm.js.map → vendor-ai-summary-BA6m2dH9.esm.js.map} +1 -1
  296. package/dist/chunks/{vendor-ai-summary-zranZkfk.js → vendor-ai-summary-DWmAaQ_N.js} +2 -2
  297. package/dist/chunks/{vendor-ai-summary-zranZkfk.js.map → vendor-ai-summary-DWmAaQ_N.js.map} +1 -1
  298. package/dist/components/action-bar/action-bar/index.esm.js +1 -1
  299. package/dist/components/action-bar/action-bar/index.js +1 -1
  300. package/dist/components/action-bar/index.esm.js +1 -1
  301. package/dist/components/action-bar/index.js +1 -1
  302. package/dist/components/address-modal/index.esm.js +1 -1
  303. package/dist/components/address-modal/index.js +1 -1
  304. package/dist/components/ai-summary/ai-summary/index.esm.js +1 -1
  305. package/dist/components/ai-summary/index.esm.js +1 -1
  306. package/dist/components/appbar/appbar/index.esm.js +1 -1
  307. package/dist/components/appbar/appbar/index.js +1 -1
  308. package/dist/components/appbar/index.esm.js +1 -1
  309. package/dist/components/appbar/index.js +1 -1
  310. package/dist/components/approval-wrapper/approval-wrapper/index.esm.js +1 -1
  311. package/dist/components/approval-wrapper/index.esm.js +1 -1
  312. package/dist/components/chat-bot/index.esm.js +1 -1
  313. package/dist/components/chat-bot/index.js +1 -1
  314. package/dist/components/custom-forms/FORMS/index.esm.js +1 -1
  315. package/dist/components/custom-forms/FORMS/index.js +1 -1
  316. package/dist/components/custom-forms/grid-view/grid-view/index.esm.js +1 -1
  317. package/dist/components/custom-forms/grid-view/index.esm.js +1 -1
  318. package/dist/components/custom-forms/index.esm.js +2 -2
  319. package/dist/components/custom-forms/index.js +1 -1
  320. package/dist/components/department-add-modal/index.esm.js +1 -1
  321. package/dist/components/department-add-modal/index.js +1 -1
  322. package/dist/components/designation-add-modal/index.esm.js +1 -1
  323. package/dist/components/designation-add-modal/index.js +1 -1
  324. package/dist/components/editor/custom-editor/index.esm.js +1 -1
  325. package/dist/components/editor/index.esm.js +1 -1
  326. package/dist/components/examples/FlexibleReduxExample/index.esm.js +1 -1
  327. package/dist/components/examples/FlexibleReduxExample/index.js +1 -1
  328. package/dist/components/examples/index.esm.js +1 -1
  329. package/dist/components/examples/index.js +1 -1
  330. package/dist/components/filter/components/index.esm.js +1 -1
  331. package/dist/components/filter/components/index.js +1 -1
  332. package/dist/components/filter/components/value-editor/index.esm.js +1 -1
  333. package/dist/components/filter/components/value-editor/index.js +1 -1
  334. package/dist/components/filter/filter/index.esm.js +1 -1
  335. package/dist/components/filter/filter/index.js +1 -1
  336. package/dist/components/filter/index.esm.js +2 -2
  337. package/dist/components/filter/index.js +2 -2
  338. package/dist/components/footer/footer/index.esm.js +1 -1
  339. package/dist/components/footer/footer/index.js +1 -1
  340. package/dist/components/footer/index.esm.js +1 -1
  341. package/dist/components/footer/index.js +1 -1
  342. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.esm.js +1 -1
  343. package/dist/components/form-control/form-builder/form-builder-element/dynamic-dependent-field/index.js +1 -1
  344. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.esm.js +1 -1
  345. package/dist/components/form-control/form-builder/form-builder-element/dynamic-select/index.js +1 -1
  346. package/dist/components/form-control/form-builder/form-builder-element/dynamic-text-editor/index.esm.js +1 -1
  347. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.esm.js +1 -1
  348. package/dist/components/form-control/form-builder/form-builder-element/fixed-asset-item-add-modal/index.js +1 -1
  349. package/dist/components/form-control/form-builder/form-builder-element/index.esm.js +4 -4
  350. package/dist/components/form-control/form-builder/form-builder-element/index.js +3 -3
  351. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.esm.js +1 -1
  352. package/dist/components/form-control/form-builder/form-builder-element/location-add-modal/index.js +1 -1
  353. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.esm.js +1 -1
  354. package/dist/components/form-control/form-builder/form-builder-element/select-configuration/index.js +1 -1
  355. package/dist/components/form-control/form-builder/form-builder-element/table/index.esm.js +1 -1
  356. package/dist/components/form-control/form-builder/form-builder-element/table/index.js +1 -1
  357. package/dist/components/form-control/form-builder/index.esm.js +4 -4
  358. package/dist/components/form-control/form-builder/index.js +3 -3
  359. package/dist/components/form-control/form-parser/form-parser/index.esm.js +1 -1
  360. package/dist/components/form-control/form-parser/form-parser/index.js +1 -1
  361. package/dist/components/form-control/form-parser/form-section/index.esm.js +1 -1
  362. package/dist/components/form-control/form-parser/form-section/index.js +1 -1
  363. package/dist/components/form-control/form-parser/index.esm.js +2 -2
  364. package/dist/components/form-control/form-parser/index.js +2 -2
  365. package/dist/components/form-control/index.esm.js +6 -6
  366. package/dist/components/form-control/index.js +5 -5
  367. package/dist/components/header/components/app-switcher/index.esm.js +1 -1
  368. package/dist/components/header/components/app-switcher/index.js +1 -1
  369. package/dist/components/header/components/global-search/index.esm.js +1 -1
  370. package/dist/components/header/components/global-search/index.js +1 -1
  371. package/dist/components/header/components/index.esm.js +1 -1
  372. package/dist/components/header/components/index.js +1 -1
  373. package/dist/components/header/components/notification-menu/index.esm.js +1 -1
  374. package/dist/components/header/components/notification-menu/index.js +1 -1
  375. package/dist/components/header/components/notification-menu/notification-menu/index.esm.js +1 -1
  376. package/dist/components/header/components/notification-menu/notification-menu/index.js +1 -1
  377. package/dist/components/header/header/index.esm.js +1 -1
  378. package/dist/components/header/header/index.js +1 -1
  379. package/dist/components/header/header-enhanced/index.esm.js +1 -1
  380. package/dist/components/header/header-enhanced/index.js +1 -1
  381. package/dist/components/header/index.esm.js +5 -5
  382. package/dist/components/header/index.js +3 -3
  383. package/dist/components/header/redux/actionCreator/index.esm.js +1 -1
  384. package/dist/components/header/redux/index.esm.js +2 -2
  385. package/dist/components/header/redux/reducer/index.esm.js +1 -1
  386. package/dist/components/index.esm.js +36 -36
  387. package/dist/components/index.js +27 -27
  388. package/dist/components/inventory-reports-title-bar/index.esm.js +3 -3
  389. package/dist/components/inventory-reports-title-bar/index.js +1 -1
  390. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.esm.js +1 -1
  391. package/dist/components/inventory-reports-title-bar/inventory-reports-title-bar/index.js +1 -1
  392. package/dist/components/inventory-reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  393. package/dist/components/inventory-reports-title-bar/redux/index.esm.js +2 -2
  394. package/dist/components/inventory-reports-title-bar/redux/reducer/index.esm.js +1 -1
  395. package/dist/components/listing/index.esm.js +1 -1
  396. package/dist/components/listing/index.js +1 -1
  397. package/dist/components/listing/listing/index.esm.js +1 -1
  398. package/dist/components/listing/listing/index.js +1 -1
  399. package/dist/components/location-select/index.esm.js +1 -1
  400. package/dist/components/location-select/index.js +1 -1
  401. package/dist/components/material-editable-table/components/index.esm.js +1 -1
  402. package/dist/components/material-editable-table/components/index.js +1 -1
  403. package/dist/components/material-editable-table/components/inline-edit-fields/index.esm.js +1 -1
  404. package/dist/components/material-editable-table/components/inline-edit-fields/index.js +1 -1
  405. package/dist/components/material-editable-table/index.esm.js +2 -2
  406. package/dist/components/material-editable-table/index.js +2 -2
  407. package/dist/components/material-editable-table/material-editable-table/index.esm.js +1 -1
  408. package/dist/components/material-editable-table/material-editable-table/index.js +1 -1
  409. package/dist/components/material-table/components/index.esm.js +1 -1
  410. package/dist/components/material-table/components/index.js +1 -1
  411. package/dist/components/material-table/components/inline-edit-fields/index.esm.js +1 -1
  412. package/dist/components/material-table/components/inline-edit-fields/index.js +1 -1
  413. package/dist/components/material-table/index.esm.js +1 -1
  414. package/dist/components/material-table/index.js +1 -1
  415. package/dist/components/material-table/material-table/index.esm.js +1 -1
  416. package/dist/components/material-table/material-table/index.js +1 -1
  417. package/dist/components/page-navigator/components/index.esm.js +1 -1
  418. package/dist/components/page-navigator/components/index.js +1 -1
  419. package/dist/components/page-navigator/components/page-action/index.esm.js +1 -1
  420. package/dist/components/page-navigator/components/page-action/index.js +1 -1
  421. package/dist/components/page-navigator/index.esm.js +2 -2
  422. package/dist/components/page-navigator/index.js +2 -2
  423. package/dist/components/page-navigator/page-navigator/index.esm.js +1 -1
  424. package/dist/components/page-navigator/page-navigator/index.js +1 -1
  425. package/dist/components/parties-modal/index.esm.js +1 -1
  426. package/dist/components/parties-modal/index.js +1 -1
  427. package/dist/components/parties-modal/parties-modal/index.esm.js +1 -1
  428. package/dist/components/parties-modal/parties-modal/index.js +1 -1
  429. package/dist/components/providers/ERPUIProvider/index.esm.js +1 -1
  430. package/dist/components/providers/index.esm.js +1 -1
  431. package/dist/components/quick-approval-modal/index.esm.js +1 -1
  432. package/dist/components/quick-approval-modal/quick-approval-modal/index.esm.js +1 -1
  433. package/dist/components/reports/dynamic-report/dynamic-report/index.esm.js +1 -1
  434. package/dist/components/reports/dynamic-report/dynamic-rows/index.esm.js +1 -1
  435. package/dist/components/reports/dynamic-report/index.esm.js +2 -2
  436. package/dist/components/reports/index.esm.js +2 -2
  437. package/dist/components/reports-title-bar/index.esm.js +3 -3
  438. package/dist/components/reports-title-bar/index.js +1 -1
  439. package/dist/components/reports-title-bar/redux/actionCreator/index.esm.js +1 -1
  440. package/dist/components/reports-title-bar/redux/index.esm.js +2 -2
  441. package/dist/components/reports-title-bar/redux/reducer/index.esm.js +1 -1
  442. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +1 -1
  443. package/dist/components/reports-title-bar/reports-title-bar/index.js +1 -1
  444. package/dist/components/rfq-response/index.esm.js +1 -1
  445. package/dist/components/rfq-response/index.js +1 -1
  446. package/dist/components/rfq-response/item-response-details/index.esm.js +1 -1
  447. package/dist/components/rfq-response/item-response-details/index.js +1 -1
  448. package/dist/components/schedule-report/index.esm.js +2 -2
  449. package/dist/components/schedule-report/index.js +2 -2
  450. package/dist/components/schedule-report/schedule-report/index.esm.js +1 -1
  451. package/dist/components/schedule-report/schedule-report/index.js +1 -1
  452. package/dist/components/schedule-report/schedule-report-modal/index.esm.js +1 -1
  453. package/dist/components/schedule-report/schedule-report-modal/index.js +1 -1
  454. package/dist/components/schedule-report/utils/common/index.esm.js +1 -1
  455. package/dist/components/searchable-select/index.esm.js +1 -1
  456. package/dist/components/searchable-select/index.js +1 -1
  457. package/dist/components/share-modal/index.esm.js +4 -4
  458. package/dist/components/share-modal/index.js +2 -2
  459. package/dist/components/share-modal/redux/actionCreator/index.esm.js +1 -1
  460. package/dist/components/share-modal/redux/index.esm.js +2 -2
  461. package/dist/components/share-modal/redux/reducer/index.esm.js +1 -1
  462. package/dist/components/share-modal/share-modal/index.esm.js +1 -1
  463. package/dist/components/share-modal/share-modal/index.js +1 -1
  464. package/dist/components/share-modal/share-modal-enhanced/index.esm.js +1 -1
  465. package/dist/components/share-modal/share-modal-enhanced/index.js +1 -1
  466. package/dist/components/team-add-modal/index.esm.js +1 -1
  467. package/dist/components/team-add-modal/index.js +1 -1
  468. package/dist/components/uom-field-wrapper/index.esm.js +1 -1
  469. package/dist/components/uom-field-wrapper/index.js +1 -1
  470. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.esm.js +1 -1
  471. package/dist/components/uom-field-wrapper/uom-field-wrapper/index.js +1 -1
  472. package/dist/components/upload-excel/index.esm.js +1 -1
  473. package/dist/components/upload-excel/upload-excel/index.esm.js +1 -1
  474. package/dist/components/vendor-ai-summary/index.esm.js +1 -1
  475. package/dist/components/vendor-ai-summary/index.js +1 -1
  476. package/dist/constants/index.esm.js +145 -143
  477. package/dist/constants/index.js +5 -3
  478. package/dist/constants/index.js.map +1 -1
  479. package/dist/hooks/index.esm.js +6 -6
  480. package/dist/hooks/index.js +1 -1
  481. package/dist/hooks/use-translations/index.esm.js +1 -1
  482. package/dist/hooks/use-translations/index.js +1 -1
  483. package/dist/hooks/useAccountSetting/index.esm.js +1 -1
  484. package/dist/hooks/useCheckSkuAndName/index.esm.js +1 -1
  485. package/dist/hooks/useReduxIntegration/index.esm.js +1 -1
  486. package/dist/hooks/useUniquenessCheck/index.esm.js +1 -1
  487. package/dist/images/index.esm.js +5 -5
  488. package/dist/images/index.esm.js.map +1 -1
  489. package/dist/images/index.js +5 -5
  490. package/dist/images/index.js.map +1 -1
  491. package/dist/index.esm.js +232 -235
  492. package/dist/index.esm.js.map +1 -1
  493. package/dist/index.js +64 -67
  494. package/dist/index.js.map +1 -1
  495. package/dist/layout/fullScreen/index.esm.js +1 -1
  496. package/dist/layout/fullScreen/index.js +1 -1
  497. package/dist/layout/index.esm.js +2 -2
  498. package/dist/layout/index.js +2 -2
  499. package/dist/layout/sidebarScreen/index.esm.js +1 -1
  500. package/dist/layout/sidebarScreen/index.js +1 -1
  501. package/dist/redux/index.esm.js +3 -3
  502. package/dist/runtime/index.esm.js +4 -4
  503. package/dist/runtime/index.js +2 -2
  504. package/dist/src/components/chat-bot/chat-bot-welcome.d.ts +2 -1
  505. package/dist/src/components/chat-bot/chat-bot.d.ts +5 -1
  506. package/dist/src/constants/defaultColumns.d.ts +1 -0
  507. package/dist/src/constants/pathnames/pathname.procurement.d.ts +4 -0
  508. package/dist/src/layout/fullScreen/fullScreen.d.ts +1 -0
  509. package/dist/src/views/template-editor/components/EditorCanvas.d.ts +12 -30
  510. package/dist/src/views/template-editor/components/EditorHeader.d.ts +0 -6
  511. package/dist/src/views/template-editor/components/EditorSection.d.ts +0 -1
  512. package/dist/src/views/template-editor/components/SectionFlowEditor.d.ts +3 -2
  513. package/dist/src/views/template-editor/components/SectionFormatPanel.d.ts +1 -2
  514. package/dist/src/views/template-editor/components/controllers/TableControls.d.ts +0 -23
  515. package/dist/src/views/template-editor/components/controllers/TextControls.d.ts +0 -3
  516. package/dist/src/views/template-editor/types/editor.d.ts +108 -20
  517. package/dist/src/views/template-editor/utils/common.d.ts +1 -10
  518. package/dist/src/views/template-editor/utils/constant.d.ts +1 -4
  519. package/dist/style.css +100 -4629
  520. package/dist/utils/api/index.esm.js +1 -1
  521. package/dist/utils/common/index.esm.js +1 -1
  522. package/dist/utils/common-utility/index.esm.js +1 -1
  523. package/dist/utils/export-filters/index.esm.js +1 -0
  524. package/dist/utils/export-filters/index.esm.js.map +1 -1
  525. package/dist/utils/export-filters/index.js +1 -0
  526. package/dist/utils/export-filters/index.js.map +1 -1
  527. package/dist/utils/index.esm.js +8 -8
  528. package/dist/utils/server/index.esm.js +2 -2
  529. package/dist/utils/text-measurement/index.esm.js +1 -1
  530. package/dist/views/afterAuth/dashboard/index.esm.js +1 -1
  531. package/dist/views/afterAuth/dashboard/index.js +1 -1
  532. package/dist/views/afterAuth/index.esm.js +2 -2
  533. package/dist/views/afterAuth/index.js +2 -2
  534. package/dist/views/afterAuth/page-view/index.esm.js +1 -1
  535. package/dist/views/afterAuth/page-view/index.js +1 -1
  536. package/dist/views/form-builder/custom-form/index.esm.js +1 -1
  537. package/dist/views/form-builder/custom-form/index.js +1 -1
  538. package/dist/views/form-builder/element-edit-forms/index.esm.js +1 -1
  539. package/dist/views/form-builder/form-fields/index.esm.js +1 -1
  540. package/dist/views/form-builder/form-fields/index.js +1 -1
  541. package/dist/views/form-builder/index.esm.js +5 -5
  542. package/dist/views/form-builder/index.js +3 -3
  543. package/dist/views/form-builder/redux/index.esm.js +1 -1
  544. package/dist/views/form-builder/utils/index.esm.js +1 -1
  545. package/dist/views/form-builder/utils/index.js +1 -1
  546. package/dist/views/index.esm.js +34 -39
  547. package/dist/views/index.esm.js.map +1 -1
  548. package/dist/views/index.js +31 -36
  549. package/dist/views/index.js.map +1 -1
  550. package/dist/views/template-editor/add-template/index.esm.js +1 -1
  551. package/dist/views/template-editor/add-template/index.js +1 -1
  552. package/dist/views/template-editor/components/index.esm.js +6 -7
  553. package/dist/views/template-editor/components/index.esm.js.map +1 -1
  554. package/dist/views/template-editor/components/index.js +3 -4
  555. package/dist/views/template-editor/components/index.js.map +1 -1
  556. package/dist/views/template-editor/edit-section-modal/index.esm.js +1 -1
  557. package/dist/views/template-editor/index.esm.js +20 -25
  558. package/dist/views/template-editor/index.esm.js.map +1 -1
  559. package/dist/views/template-editor/index.js +11 -16
  560. package/dist/views/template-editor/index.js.map +1 -1
  561. package/dist/views/template-editor/routes/index.esm.js +1 -1
  562. package/dist/views/template-editor/routes/index.js +1 -1
  563. package/dist/views/template-editor/template-modal/index.esm.js +1 -1
  564. package/dist/views/template-editor/template-modal/index.js +1 -1
  565. package/dist/views/template-editor/template-name-modal/index.esm.js +1 -1
  566. package/dist/views/template-editor/template-name-modal/index.js +1 -1
  567. package/dist/views/template-editor/templates/index.esm.js +1 -1
  568. package/dist/views/template-editor/templates/index.js +1 -1
  569. package/dist/views/template-editor/utils/index.esm.js +6 -10
  570. package/dist/views/template-editor/utils/index.js +2 -6
  571. package/dist/views/template-editor/utils/index.js.map +1 -1
  572. package/package.json +1 -1
  573. package/dist/chunks/EditorSection-BLGcgQFm.esm.js +0 -849
  574. package/dist/chunks/EditorSection-BLGcgQFm.esm.js.map +0 -1
  575. package/dist/chunks/EditorSection-D6yaBfjP.js +0 -848
  576. package/dist/chunks/EditorSection-D6yaBfjP.js.map +0 -1
  577. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js +0 -12543
  578. package/dist/chunks/SectionFlowEditor-Dp-mjWT9.esm.js.map +0 -1
  579. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js +0 -12542
  580. package/dist/chunks/SectionFlowEditor-Dz1SuCm2.js.map +0 -1
  581. package/dist/chunks/add-template-CUPbU0z7.js +0 -10
  582. package/dist/chunks/add-template-CUPbU0z7.js.map +0 -1
  583. package/dist/chunks/add-template-CxvhzFMF.esm.js +0 -11
  584. package/dist/chunks/add-template-CxvhzFMF.esm.js.map +0 -1
  585. package/dist/chunks/chat-bot-2Ga_xA_K.js.map +0 -1
  586. package/dist/chunks/chat-bot-DO3vAGxA.esm.js.map +0 -1
  587. package/dist/chunks/common-BgXEAs_y.esm.js +0 -851
  588. package/dist/chunks/common-BgXEAs_y.esm.js.map +0 -1
  589. package/dist/chunks/common-D6T6NGWY.js +0 -850
  590. package/dist/chunks/common-D6T6NGWY.js.map +0 -1
  591. package/dist/chunks/common-utility-CS_sNoAC.esm.js.map +0 -1
  592. package/dist/chunks/constant-BXPcBhJN.esm.js.map +0 -1
  593. package/dist/chunks/constant-BXeJD4Af.js.map +0 -1
  594. package/dist/chunks/edit-section-modal-HihKbN6K.esm.js.map +0 -1
  595. package/dist/chunks/fullScreen-Cz3FIdU4.esm.js.map +0 -1
  596. package/dist/chunks/fullScreen-h0JqBN4O.js.map +0 -1
  597. package/dist/chunks/template-modal-D7aLacan.esm.js.map +0 -1
  598. package/dist/chunks/template-modal-Df7gF4QI.js.map +0 -1
  599. package/dist/chunks/template-name-modal-ClreVUaz.js.map +0 -1
  600. package/dist/chunks/template-name-modal-Dwe7U72p.esm.js.map +0 -1
  601. package/dist/chunks/templates-9ZMHwRR6.esm.js.map +0 -1
  602. package/dist/chunks/templates-DCXbeOtH.js.map +0 -1
  603. package/dist/src/views/template-editor/components/EditorCanvas/FreeCanvas.d.ts +0 -34
  604. package/dist/src/views/template-editor/components/EditorCanvas/FreeElement.d.ts +0 -30
  605. package/dist/src/views/template-editor/components/stationery/StationeryPreview.d.ts +0 -24
  606. package/dist/src/views/template-editor/components/stationery/StationerySidebar.d.ts +0 -9
  607. package/dist/src/views/template-editor/engine/ai.d.ts +0 -12
  608. package/dist/src/views/template-editor/engine/app.d.ts +0 -1
  609. package/dist/src/views/template-editor/engine/controls.d.ts +0 -4
  610. package/dist/src/views/template-editor/engine/design-canvas.d.ts +0 -24
  611. package/dist/src/views/template-editor/engine/editor.d.ts +0 -17
  612. package/dist/src/views/template-editor/engine/engine.d.ts +0 -18
  613. package/dist/src/views/template-editor/engine/icons.d.ts +0 -91
  614. package/dist/src/views/template-editor/engine/letterpads.d.ts +0 -1
  615. package/dist/src/views/template-editor/engine/model.d.ts +0 -20
  616. package/dist/src/views/template-editor/engine/paginator.d.ts +0 -30
  617. package/dist/src/views/template-editor/engine/picker.d.ts +0 -20
  618. package/dist/src/views/template-editor/engine/schema.d.ts +0 -647
  619. package/dist/src/views/template-editor/engine/stationery-app.d.ts +0 -10
  620. package/dist/src/views/template-editor/engine/stationery-doc.d.ts +0 -62
  621. package/dist/src/views/template-editor/engine/stationery-free-element.d.ts +0 -22
  622. package/dist/src/views/template-editor/engine/stationery-store.d.ts +0 -154
  623. package/dist/src/views/template-editor/engine/templatebuilder.d.ts +0 -51
  624. package/dist/src/views/template-editor/engine/templates.d.ts +0 -11
  625. package/dist/src/views/template-editor/icons/custom-styled-icon.d.ts +0 -7
  626. package/dist/src/views/template-editor/icons/edit.d.ts +0 -4
  627. package/dist/src/views/template-editor/icons/trash.d.ts +0 -4
  628. package/dist/src/views/template-editor/types/stationery.d.ts +0 -66
  629. package/dist/src/views/template-editor/utils/compiler.d.ts +0 -12
package/dist/style.css CHANGED
@@ -1298,6 +1298,63 @@
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;
1301
1358
  }.action-bar {
1302
1359
  display: flex;
1303
1360
  padding: 0.75rem 0rem;
@@ -9766,11 +9823,32 @@ th .hbs-placeholder {
9766
9823
 
9767
9824
  .formSection--Button :disabled {
9768
9825
  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;
9769
9847
  }.companySelectionModal--Divider {
9770
- border-color: #d3d3d4;
9848
+ border-color: #eeeff1;
9771
9849
  }
9772
9850
  .companySelectionModal--DialogTitle {
9773
- border-bottom: 1px solid #bdbebf;
9851
+ border-bottom: 1px solid #d3d3d4;
9774
9852
  }
9775
9853
  .companySelectionModal--SectionTitle {
9776
9854
  padding-left: 1.5rem;
@@ -9781,4643 +9859,36 @@ th .hbs-placeholder {
9781
9859
  .companySelectionModal--DialogAction {
9782
9860
  justify-content: flex-end !important;
9783
9861
  padding: 0.5rem 1.5rem !important;
9784
- background-color: #d3d3d4;
9862
+ background-color: #eeeff1;
9785
9863
  }
9786
9864
  .companySelectionModal--DialogAction--WhiteBtn {
9787
9865
  background-color: #fff !important;
9788
9866
  color: #1f2125;
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%;
10181
- }
10182
-
10183
- body {
10184
- background: var(--surface-sunken);
10185
- overflow: hidden;
10186
- }
10187
-
10188
- #root {
10189
- height: 100%;
10190
- }
10191
-
10192
- .pb,
10193
- .pb *,
10194
- .pb *::before,
10195
- .pb *::after {
10196
- box-sizing: border-box;
10197
- }
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;
10207
- }
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);
9867
+ }.black-outlined-btn {
9868
+ color: #1f2125 !important;
9869
+ }.companySelectionModal--Divider {
9870
+ border-color: #eeeff1;
10460
9871
  }
10461
-
10462
- .pb-rail-body {
10463
- flex: 1;
10464
- overflow: auto;
10465
- padding: var(--s-4);
10466
- scrollbar-width: thin;
9872
+ .companySelectionModal--DialogTitle {
9873
+ border-bottom: 1px solid #d3d3d4;
10467
9874
  }
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);
9875
+ .companySelectionModal--SectionTitle {
9876
+ padding-left: 1.5rem;
10478
9877
  }
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;
9878
+ .companySelectionModal--DialogContents {
9879
+ padding: 1.5rem !important;
10487
9880
  }
10488
-
10489
- .pb-fgroup {
10490
- margin-bottom: var(--s-2);
9881
+ .companySelectionModal--DialogAction {
9882
+ justify-content: flex-end !important;
9883
+ padding: 0.5rem 1.5rem !important;
9884
+ background-color: #eeeff1;
10491
9885
  }
10492
-
10493
- .pb-fgroup-h {
10494
- display: flex;
10495
- align-items: center;
10496
- gap: var(--s-3);
9886
+ .companySelectionModal--DialogAction--WhiteBtn {
9887
+ background-color: #fff !important;
9888
+ color: #1f2125;
9889
+ }.templates {
9890
+ padding: 0rem 2rem;
10497
9891
  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;
14421
9892
  }.dashboard-heading {
14422
9893
  margin-bottom: 1.5rem;
14423
9894
  }