@rufous/ui 0.1.62 → 0.2.0-beta.0

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 (217) hide show
  1. package/dist/Buttons/addButton.js +1 -0
  2. package/dist/Buttons/cancelButton.js +1 -0
  3. package/dist/Buttons/index.cjs +2 -2
  4. package/dist/Buttons/index.js +3 -2
  5. package/dist/Buttons/stdButton.js +1 -0
  6. package/dist/Buttons/submitButton.cjs +2 -2
  7. package/dist/Buttons/submitButton.js +3 -2
  8. package/dist/CheckBoxes/CheckBox.cjs +1 -1
  9. package/dist/CheckBoxes/CheckBox.js +4 -25
  10. package/dist/Contexts/rufousThemeProvider.cjs +81 -101
  11. package/dist/Contexts/rufousThemeProvider.js +3 -2
  12. package/dist/DataGrid/DataGrid.cjs +418 -0
  13. package/dist/DataGrid/DataGrid.d.cts +8 -0
  14. package/dist/DataGrid/DataGrid.d.ts +8 -0
  15. package/dist/DataGrid/DataGrid.js +9 -0
  16. package/dist/DataGrid/index.cjs +418 -0
  17. package/dist/DataGrid/index.d.cts +3 -0
  18. package/dist/DataGrid/index.d.ts +3 -0
  19. package/dist/DataGrid/index.js +8 -0
  20. package/dist/{TextFields/FloatingInput.d.cjs → DataGrid/types.cjs} +3 -3
  21. package/dist/DataGrid/types.d.cts +31 -0
  22. package/dist/DataGrid/types.d.ts +31 -0
  23. package/dist/Dialogs/BaseDialog.cjs +18 -10
  24. package/dist/Dialogs/BaseDialog.css +8248 -163
  25. package/dist/Dialogs/BaseDialog.d.cts +1 -0
  26. package/dist/Dialogs/BaseDialog.d.ts +1 -0
  27. package/dist/Dialogs/BaseDialog.js +52 -45
  28. package/dist/Dialogs/index.cjs +18 -10
  29. package/dist/Dialogs/index.css +8248 -163
  30. package/dist/Dialogs/index.js +52 -45
  31. package/dist/Editors/RichTextEditor.cjs +29477 -0
  32. package/dist/Editors/RichTextEditor.css +7179 -0
  33. package/dist/Editors/RichTextEditor.d.cts +57 -0
  34. package/dist/Editors/RichTextEditor.d.ts +57 -0
  35. package/dist/Editors/RichTextEditor.js +9 -0
  36. package/dist/Editors/index.cjs +29477 -0
  37. package/dist/Editors/index.css +7179 -0
  38. package/dist/Editors/index.d.cts +2 -0
  39. package/dist/Editors/index.d.ts +2 -0
  40. package/dist/Editors/index.js +8 -0
  41. package/dist/Progress/circularProgress.cjs +2 -2
  42. package/dist/Progress/circularProgress.d.cts +3 -3
  43. package/dist/Progress/circularProgress.d.ts +3 -3
  44. package/dist/Progress/circularProgress.js +2 -1
  45. package/dist/TextFields/AddressLookup.cjs +390 -0
  46. package/dist/TextFields/AddressLookup.d.cts +49 -0
  47. package/dist/TextFields/AddressLookup.d.ts +49 -0
  48. package/dist/TextFields/AddressLookup.js +304 -0
  49. package/dist/TextFields/FloatingInput.cjs +6 -4
  50. package/dist/TextFields/FloatingInput.d.cts +13 -19
  51. package/dist/TextFields/FloatingInput.d.ts +13 -19
  52. package/dist/TextFields/FloatingInput.js +4 -28
  53. package/dist/chunk-2AJACSJ3.js +8 -0
  54. package/dist/chunk-3Y6QBRGD.js +8 -0
  55. package/dist/chunk-4Y7SQ5EP.js +8 -0
  56. package/dist/chunk-5GK5B3FD.js +8 -0
  57. package/dist/chunk-5XKFPQLH.js +8 -0
  58. package/dist/chunk-66HHM7VI.js +468 -0
  59. package/dist/{chunk-FOZYOE5W.js → chunk-763IHEJ2.js} +1 -1
  60. package/dist/chunk-77QDKDFI.js +8 -0
  61. package/dist/{chunk-UZAD2QJD.js → chunk-7II4Q2WY.js} +1 -1
  62. package/dist/chunk-7KRG7VNW.js +0 -0
  63. package/dist/chunk-AXSFVJ3H.js +10 -0
  64. package/dist/chunk-B2LVMM55.js +8 -0
  65. package/dist/{chunk-YRFUVQDN.js → chunk-CTBYVXFP.js} +2 -2
  66. package/dist/{chunk-UWQSGKVX.js → chunk-CTWVJQJ5.js} +1 -1
  67. package/dist/chunk-DLJHWFNG.js +18 -0
  68. package/dist/chunk-EZI3QGYJ.js +8 -0
  69. package/dist/{chunk-G4CVY5MD.js → chunk-FZCFFVXW.js} +1 -1
  70. package/dist/{chunk-BH53P2UM.js → chunk-G2GZDPUL.js} +3 -3
  71. package/dist/chunk-GJGRMMAQ.js +0 -0
  72. package/dist/chunk-J6E3UO2W.js +402 -0
  73. package/dist/chunk-JVN6QVET.js +8 -0
  74. package/dist/chunk-LI4N7JWK.js +39 -0
  75. package/dist/chunk-Q4DHI3B5.js +8 -0
  76. package/dist/chunk-QDMNCTXT.js +8 -0
  77. package/dist/chunk-QGXXOQJF.js +61 -0
  78. package/dist/{chunk-EC7M5LL2.js → chunk-QTGVW36I.js} +1 -1
  79. package/dist/chunk-R4ISYGEP.js +8 -0
  80. package/dist/{chunk-AQXTOTWY.js → chunk-TYTZEAV5.js} +19 -11
  81. package/dist/chunk-UPCMMCPQ.js +34 -0
  82. package/dist/{chunk-SBX4CHO7.js → chunk-UTBCFDOX.js} +1 -1
  83. package/dist/chunk-WNZLBFLQ.js +73 -0
  84. package/dist/chunk-X357WQOT.js +29 -0
  85. package/dist/{chunk-O3EAZPD3.js → chunk-XCE3QE6Q.js} +1 -1
  86. package/dist/chunk-XHY3OCAQ.js +8 -0
  87. package/dist/{chunk-7YKG3WYS.js → chunk-YRLN3TBF.js} +1 -1
  88. package/dist/chunk-Z7USRFM2.js +8 -0
  89. package/dist/{chunk-EFIJYBYX.js → chunk-ZLJDOLXZ.js} +1 -1
  90. package/dist/esm-5T53WHPT.js +27362 -0
  91. package/dist/icons/activateUserIcon.js +1 -0
  92. package/dist/icons/archivedIcon.js +1 -0
  93. package/dist/icons/assignGroupIcon.js +1 -0
  94. package/dist/icons/closeIcon.js +1 -0
  95. package/dist/icons/copyIcon.js +1 -0
  96. package/dist/icons/difficultyAllIcon.cjs +1 -1
  97. package/dist/icons/difficultyAllIcon.js +2 -1
  98. package/dist/icons/difficultyEasyIcon.js +1 -0
  99. package/dist/icons/difficultyHardIcon.js +1 -0
  100. package/dist/icons/difficultyMediumIcon.js +1 -0
  101. package/dist/icons/dollarIcon.js +1 -0
  102. package/dist/icons/downloadIcon.cjs +1 -1
  103. package/dist/icons/downloadIcon.js +2 -1
  104. package/dist/icons/downloadPdfIcon.js +1 -0
  105. package/dist/icons/editChatIcon.cjs +1 -1
  106. package/dist/icons/editChatIcon.js +2 -1
  107. package/dist/icons/editIcon.js +1 -0
  108. package/dist/icons/engagementIcon.cjs +1 -1
  109. package/dist/icons/engagementIcon.js +2 -1
  110. package/dist/icons/functionIcon.js +1 -0
  111. package/dist/icons/helpOutlinedIcon.cjs +1 -1
  112. package/dist/icons/helpOutlinedIcon.js +2 -1
  113. package/dist/icons/hierarchyIcon.js +1 -0
  114. package/dist/icons/inactiveGroupIcon.cjs +1 -1
  115. package/dist/icons/inactiveGroupIcon.js +2 -1
  116. package/dist/icons/index.cjs +27 -27
  117. package/dist/icons/index.js +77 -76
  118. package/dist/icons/industryIcon.js +1 -0
  119. package/dist/icons/invoiceIcon.js +1 -0
  120. package/dist/icons/locationPinIcon.js +1 -0
  121. package/dist/icons/logsIcon.js +1 -0
  122. package/dist/icons/minExperienceIcon.js +1 -0
  123. package/dist/icons/nineDotMenuIcon.js +1 -0
  124. package/dist/icons/notificationIcon.js +1 -0
  125. package/dist/icons/projectIcon.cjs +1 -1
  126. package/dist/icons/projectIcon.js +2 -1
  127. package/dist/icons/qualificationsIcon.cjs +1 -1
  128. package/dist/icons/qualificationsIcon.js +2 -1
  129. package/dist/icons/questionStatusAllIcon.cjs +1 -1
  130. package/dist/icons/questionStatusAllIcon.js +2 -1
  131. package/dist/icons/questionStatusPrivateIcon.cjs +1 -1
  132. package/dist/icons/questionStatusPrivateIcon.js +2 -1
  133. package/dist/icons/questionStatusPublicIcon.cjs +1 -1
  134. package/dist/icons/questionStatusPublicIcon.js +2 -1
  135. package/dist/icons/questionTypeAllIcon.js +1 -0
  136. package/dist/icons/questionTypeCodingIcon.cjs +1 -1
  137. package/dist/icons/questionTypeCodingIcon.js +2 -1
  138. package/dist/icons/questionTypeDescriptiveIcon.cjs +1 -1
  139. package/dist/icons/questionTypeDescriptiveIcon.js +2 -1
  140. package/dist/icons/questionTypeMultipleIcon.cjs +1 -1
  141. package/dist/icons/questionTypeMultipleIcon.js +2 -1
  142. package/dist/icons/questionTypeSingleIcon.cjs +1 -1
  143. package/dist/icons/questionTypeSingleIcon.js +2 -1
  144. package/dist/icons/refreshIcon.js +1 -0
  145. package/dist/icons/resendInviteIcon.js +1 -0
  146. package/dist/icons/rolesIcon.js +1 -0
  147. package/dist/icons/rufousAiIcon.cjs +1 -1
  148. package/dist/icons/rufousAiIcon.js +2 -1
  149. package/dist/icons/rufousBirdIcon.js +1 -0
  150. package/dist/icons/rufousLauncherBird.js +1 -0
  151. package/dist/icons/sidebarIcon.js +1 -0
  152. package/dist/icons/softSkillsIcon.cjs +1 -1
  153. package/dist/icons/softSkillsIcon.js +2 -1
  154. package/dist/icons/subscribeIcon.cjs +1 -1
  155. package/dist/icons/subscribeIcon.js +2 -1
  156. package/dist/icons/suspendUserIcon.cjs +1 -1
  157. package/dist/icons/suspendUserIcon.js +2 -1
  158. package/dist/icons/technicalSkillsIcon.js +1 -0
  159. package/dist/icons/tickIcon.cjs +1 -1
  160. package/dist/icons/tickIcon.js +2 -1
  161. package/dist/icons/timerIcon.cjs +1 -1
  162. package/dist/icons/timerIcon.js +2 -1
  163. package/dist/icons/trashIcon.js +1 -0
  164. package/dist/icons/unArchivedIcon.js +1 -0
  165. package/dist/icons/unsubscribeIcon.cjs +1 -1
  166. package/dist/icons/unsubscribeIcon.js +2 -1
  167. package/dist/icons/uploadIcon.cjs +1 -1
  168. package/dist/icons/uploadIcon.js +2 -1
  169. package/dist/icons/userAssignIcon.cjs +3 -3
  170. package/dist/icons/userAssignIcon.js +2 -1
  171. package/dist/icons/viewIcon.cjs +1 -1
  172. package/dist/icons/viewIcon.js +2 -1
  173. package/dist/icons/workItemIcon.js +1 -0
  174. package/dist/main.cjs +30100 -226
  175. package/dist/main.css +8248 -163
  176. package/dist/main.d.cts +6 -0
  177. package/dist/main.d.ts +6 -0
  178. package/dist/main.js +106 -84
  179. package/dist/style.css +1069 -164
  180. package/dist/styles/button.css +82 -110
  181. package/dist/styles/checkbox.css +60 -0
  182. package/dist/styles/checkbox.d.cts +2 -0
  183. package/dist/styles/checkbox.d.ts +2 -0
  184. package/dist/styles/datagrid.css +531 -0
  185. package/dist/styles/datagrid.d.cts +2 -0
  186. package/dist/styles/datagrid.d.ts +2 -0
  187. package/dist/styles/dialog.css +78 -51
  188. package/dist/styles/editor.css +211 -0
  189. package/dist/styles/editor.d.cts +2 -0
  190. package/dist/styles/editor.d.ts +2 -0
  191. package/dist/styles/progress.css +1 -1
  192. package/dist/utils/constants.cjs +47 -69
  193. package/dist/utils/constants.d.cts +34 -56
  194. package/dist/utils/constants.d.ts +34 -56
  195. package/dist/utils/constants.js +2 -1
  196. package/package.json +13 -2
  197. package/dist/TextFields/FloatingInput.d.d.cts +0 -23
  198. package/dist/TextFields/FloatingInput.d.d.ts +0 -23
  199. package/dist/chunk-2FHTGYR4.js +0 -83
  200. package/dist/chunk-5BB3H3YO.js +0 -8
  201. package/dist/chunk-5I44RDFT.js +0 -8
  202. package/dist/chunk-5UEJAVFK.js +0 -10
  203. package/dist/chunk-7WNPZ4B7.js +0 -8
  204. package/dist/chunk-BCGCLMKA.js +0 -71
  205. package/dist/chunk-BYJP2WNC.js +0 -18
  206. package/dist/chunk-DE73YGRW.js +0 -8
  207. package/dist/chunk-EH3QXE5G.js +0 -8
  208. package/dist/chunk-FSSJZDI6.js +0 -8
  209. package/dist/chunk-JYTI2ZBC.js +0 -8
  210. package/dist/chunk-OCOOSNRU.js +0 -8
  211. package/dist/chunk-PPNZC5ZQ.js +0 -8
  212. package/dist/chunk-QA2AYT4A.js +0 -8
  213. package/dist/chunk-VI32N6SI.js +0 -8
  214. package/dist/chunk-VIUTE7F5.js +0 -8
  215. package/dist/chunk-WWAHNTUH.js +0 -8
  216. package/dist/chunk-ZJYLZ6I6.js +0 -8
  217. /package/dist/{TextFields/FloatingInput.d.js → DataGrid/types.js} +0 -0
package/dist/style.css CHANGED
@@ -1,229 +1,291 @@
1
+ @import "https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap";
2
+
1
3
  /* lib/styles/button.css */
2
4
  .btn {
5
+ padding: 10px 20px;
6
+ border-radius: 6px;
7
+ font-size: 14px;
8
+ font-weight: 600;
9
+ cursor: pointer;
10
+ transition: all 0.2s ease-in-out;
11
+ border: none;
3
12
  display: inline-flex;
4
13
  align-items: center;
5
14
  justify-content: center;
6
- box-sizing: border-box;
7
- cursor: pointer;
8
- user-select: none;
9
- vertical-align: middle;
10
- text-decoration: none;
11
- font-family:
12
- "Roboto",
13
- "Helvetica",
14
- "Arial",
15
- sans-serif;
16
- font-size: 12px;
17
- font-weight: normal;
15
+ gap: 8px;
18
16
  text-transform: uppercase;
19
- padding: 7px 10px;
20
- border-radius: 4px;
21
- border: none;
22
- outline: 0;
23
- transition: all 0.25s ease-in-out;
24
- line-height: 1.75;
25
- cursor: pointer;
17
+ letter-spacing: 0.5px;
18
+ white-space: nowrap;
26
19
  }
27
- .btn:disabled {
28
- background-color: #e0e0e0 !important;
29
- cursor: not-allowed;
20
+ .add-btn,
21
+ .btn-add {
22
+ background-color: transparent;
23
+ border: 1.5px solid var(--primary-color) !important;
24
+ color: var(--primary-color) !important;
25
+ border-radius: 34px;
26
+ }
27
+ .add-btn:hover,
28
+ .btn-add:hover {
29
+ background-color: var(--hover-color);
30
30
  }
31
- .cancel-btn {
32
- min-width: 84px;
33
- border: 1px solid #a41b06;
31
+ .cancel-btn,
32
+ .btn-cancel {
33
+ background-color: transparent;
34
+ border: 1.5px solid var(--primary-color) !important;
35
+ color: var(--primary-color) !important;
34
36
  border-radius: 34px;
35
- background: #fff;
36
- color: #a41b06;
37
- box-shadow:
38
- rgba(0, 0, 0, 0.2) 0px 3px 1px -2px,
39
- rgba(0, 0, 0, 0.14) 0px 2px 2px,
40
- rgba(0, 0, 0, 0.12) 0px 1px 5px;
41
- transition:
42
- background-color 250ms,
43
- box-shadow 250ms,
44
- border-color 250ms,
45
- color 250ms;
46
- }
47
- .cancel-btn:hover {
48
- box-shadow:
49
- rgba(0, 0, 0, 0.2) 0px 2px 4px -1px,
50
- rgba(0, 0, 0, 0.14) 0px 4px 5px,
51
- rgba(0, 0, 0, 0.12) 0px 1px 10px;
52
- }
53
- .submit-btn {
54
- min-width: 92px;
55
- height: 38px;
56
- padding: 6px 16px;
37
+ padding: 10px 24px;
38
+ font-size: 14px;
57
39
  font-weight: 600;
58
- border-radius: 6px;
59
- background: #a21b07;
60
- color: #fff;
61
- transition: background-color 250ms ease-in-out;
40
+ cursor: pointer;
41
+ text-transform: uppercase;
62
42
  display: inline-flex;
63
43
  align-items: center;
64
44
  justify-content: center;
65
- gap: 8px;
45
+ letter-spacing: 0.5px;
46
+ transition: all 0.2s;
47
+ }
48
+ .cancel-btn:hover,
49
+ .btn-cancel:hover {
50
+ background-color: var(--hover-color);
51
+ }
52
+ .submit-btn,
53
+ .btn-submit,
54
+ .btn-confirm {
55
+ background-color: var(--primary-color) !important;
56
+ color: #ffffff !important;
66
57
  border: none;
58
+ border-radius: 6px;
59
+ padding: 10px 32px;
60
+ font-size: 14px;
61
+ font-weight: 600;
62
+ cursor: pointer;
67
63
  text-transform: uppercase;
64
+ display: inline-flex;
65
+ align-items: center;
66
+ justify-content: center;
67
+ letter-spacing: 0.5px;
68
+ transition: all 0.2s ease;
68
69
  }
69
- .submit-btn:hover:not(:disabled) {
70
- background-color: #9b1906;
70
+ .submit-btn:hover:not(:disabled),
71
+ .btn-submit:hover:not(:disabled),
72
+ .btn-confirm:hover:not(:disabled) {
73
+ background-color: var(--secondary-color) !important;
74
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
75
+ transform: translateY(-1px);
71
76
  }
72
- .submit-btn.submit-btn-gradiant {
73
- background:
74
- linear-gradient(
75
- 250deg,
76
- #9b1906 0%,
77
- #e62508 100%);
77
+ .standard-btn,
78
+ .btn-std {
79
+ background-color: var(--surface-color);
80
+ border: 1.5px solid var(--border-color) !important;
81
+ color: var(--text-color) !important;
82
+ border-radius: 6px;
78
83
  }
79
- .btn:disabled {
80
- background-color: #e0e0e0;
81
- color: #00000042;
84
+ .standard-btn:hover,
85
+ .btn-std:hover {
86
+ background-color: var(--hover-color);
87
+ border-color: var(--primary-color) !important;
88
+ color: var(--primary-color) !important;
89
+ }
90
+ .btn:disabled,
91
+ .cancel-btn:disabled,
92
+ .submit-btn:disabled,
93
+ .standard-btn:disabled,
94
+ .btn-confirm:disabled,
95
+ .btn-cancel:disabled {
96
+ opacity: 0.4;
82
97
  cursor: not-allowed;
83
- border: 1px solid #e0e0e0;
98
+ pointer-events: none;
84
99
  }
85
100
  .btn-content {
86
101
  display: inline-flex;
87
102
  align-items: center;
88
103
  gap: 8px;
89
104
  }
90
- .btn-loader {
91
- display: flex;
105
+ .submit-btn-gradiant {
106
+ background:
107
+ linear-gradient(
108
+ 135deg,
109
+ var(--primary-color),
110
+ var(--secondary-color)) !important;
111
+ }
112
+
113
+ /* lib/styles/checkbox.css */
114
+ .checkbox-wrapper-13 {
115
+ display: inline-flex;
92
116
  align-items: center;
93
117
  }
94
- .add-btn {
95
- min-width: fit-content;
96
- padding: 7px 10px;
97
- font-size: 14px;
98
- border: 1px solid #a41b06;
99
- border-radius: 34px;
100
- background: #fff;
101
- color: #a41b06;
102
- transition: all 0.25s ease-in-out;
118
+ .checkbox-wrapper-13 label {
119
+ display: inline-flex;
120
+ align-items: center;
121
+ gap: 10px;
122
+ cursor: pointer;
123
+ user-select: none;
124
+ color: var(--text-color);
103
125
  }
104
- .add-btn:hover {
105
- background: #a41b06;
106
- color: #fff;
126
+ .checkbox-wrapper-13 input[type=checkbox] {
127
+ appearance: none;
128
+ -webkit-appearance: none;
129
+ width: 20px;
130
+ height: 20px;
131
+ border: 2px solid var(--border-color);
132
+ border-radius: 4px;
133
+ background: var(--surface-color);
134
+ cursor: pointer;
135
+ position: relative;
136
+ flex-shrink: 0;
137
+ transition: all 0.2s ease;
107
138
  }
108
- .standard-btn {
109
- background: #f6f6f6;
110
- background-color: #f6f6f6;
111
- border: 1px solid #d5d5d5;
112
- color: #535656;
113
- font-size: 16px;
114
- font-weight: 300;
115
- box-shadow: none;
116
- width: 122px;
117
- height: 40px;
118
- text-transform: none;
119
- font-size: 16px;
120
- border: 1px solid #d5d5d5;
121
- height: 40px;
122
- text-transform: capitalize;
123
- font-weight: 300;
124
- color: #535656;
125
- }
126
- .standard-btn:hover {
127
- background: #ffffff;
128
- background-color: #ffffff;
129
- box-shadow: none;
130
- }
131
- @media (max-width: 767px) {
132
- .standard-btn {
133
- width: 90px;
134
- height: 30px;
135
- font-size: 13px;
136
- }
139
+ .checkbox-wrapper-13 input[type=checkbox]:hover {
140
+ border-color: var(--primary-color);
141
+ background-color: var(--hover-color);
142
+ }
143
+ .checkbox-wrapper-13 input[type=checkbox]:checked {
144
+ background-color: var(--primary-color);
145
+ border-color: var(--primary-color);
146
+ }
147
+ .checkbox-wrapper-13 input[type=checkbox]:checked::after {
148
+ content: "";
149
+ position: absolute;
150
+ left: 4px;
151
+ top: 0px;
152
+ width: 6px;
153
+ height: 10px;
154
+ border: 2px solid white;
155
+ border-top: none;
156
+ border-left: none;
157
+ transform: rotate(45deg);
158
+ }
159
+ .checkbox-wrapper-13 input[type=checkbox]:disabled {
160
+ opacity: 0.4;
161
+ cursor: not-allowed;
162
+ pointer-events: none;
163
+ }
164
+ .checkbox-wrapper-13 input[type=checkbox]:focus {
165
+ outline: 2px solid var(--primary-color);
166
+ outline-offset: 2px;
167
+ }
168
+ .checkbox-label {
169
+ font-size: 14px;
170
+ font-weight: 400;
171
+ color: var(--text-color);
137
172
  }
138
173
 
139
174
  /* lib/styles/dialog.css */
140
175
  .dialog-overlay {
141
176
  position: fixed;
142
- inset: 0;
143
- background: rgba(0, 0, 0, 0.5);
177
+ top: 0;
178
+ left: 0;
179
+ width: 100vw;
180
+ height: 100vh;
181
+ background-color: rgba(0, 0, 0, 0.5);
144
182
  display: flex;
145
183
  justify-content: center;
146
184
  align-items: center;
147
- z-index: 1300;
185
+ z-index: 1000;
186
+ backdrop-filter: blur(2px);
148
187
  }
149
188
  .dialog-container {
150
- background: white;
151
- border-radius: 8px;
189
+ background: var(--surface-color);
190
+ color: var(--text-color);
191
+ border-radius: 12px;
152
192
  max-height: 90vh;
153
193
  display: flex;
154
194
  flex-direction: column;
195
+ box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.15), 0 10px 10px -5px rgba(0, 0, 0, 0.08);
196
+ width: 685px !important;
197
+ transition: background-color 0.3s, color 0.3s;
198
+ }
199
+ .dialog-container.size-sm {
200
+ width: 400px !important;
201
+ max-width: 95vw;
202
+ }
203
+ .dialog-container.size-md {
204
+ width: 685px !important;
205
+ max-width: 95vw;
206
+ }
207
+ .dialog-container.size-lg {
208
+ width: 900px !important;
209
+ max-width: 95vw;
210
+ }
211
+ .dialog-container.size-xl {
212
+ width: 1200px !important;
213
+ max-width: 95vw;
214
+ }
215
+ .dialog-container.size-fullScreen {
216
+ width: 100vw !important;
217
+ height: 100vh !important;
218
+ max-height: 100vh !important;
219
+ border-radius: 0 !important;
220
+ margin: 0 !important;
221
+ }
222
+ .dialog-overlay:has(.size-fullScreen) {
223
+ align-items: flex-start;
155
224
  }
156
225
  .dialog-title {
157
- background: #fff;
158
- padding: 8px 16px;
159
- position: sticky;
160
- top: 0;
226
+ padding: 24px 24px 16px;
161
227
  display: flex;
162
228
  justify-content: space-between;
163
229
  align-items: center;
164
- color: #707070;
165
- z-index: 2;
230
+ flex-shrink: 0;
166
231
  }
167
232
  .dialog-title h2 {
168
- font-size: 1.125rem;
233
+ font-size: 1.5rem;
234
+ font-weight: 700;
169
235
  margin: 0;
236
+ color: var(--text-color);
170
237
  }
171
238
  .btn-close {
172
239
  background: none;
173
240
  border: none;
174
241
  cursor: pointer;
242
+ padding: 8px;
243
+ display: flex;
244
+ align-items: center;
245
+ justify-content: center;
246
+ transition: all 0.2s;
247
+ border-radius: 50%;
248
+ flex-shrink: 0;
249
+ }
250
+ .btn-close:hover {
251
+ background-color: var(--hover-color);
252
+ }
253
+ .btn-close svg {
254
+ fill: var(--text-secondary);
255
+ transition: fill 0.2s;
256
+ }
257
+ .btn-close:hover svg {
258
+ fill: var(--text-color);
175
259
  }
176
260
  .dialog-divider {
177
- border-top: 1px solid #e0e0e0;
261
+ border: none;
262
+ border-top: 1px solid var(--border-color);
263
+ margin: 0 24px;
264
+ flex-shrink: 0;
178
265
  }
179
266
  .dialog-body {
180
- overflow: auto;
181
- padding: 16px 30px;
267
+ overflow-y: auto;
268
+ padding: 20px 24px;
182
269
  flex: 1;
183
270
  }
184
271
  .dialog-footer {
185
272
  display: flex;
186
- gap: 8px;
187
- padding: 8px 16px;
188
- }
189
- .btn-cancel {
190
- border: 1px solid #a41b06;
191
- border-radius: 34px;
192
- padding: 7px 10px;
193
- background: #fff;
194
- color: #a41b06;
195
- font-size: 12px;
196
- cursor: pointer;
197
- }
198
- .btn-cancel:hover {
199
- background: #f5f5f5;
200
- }
201
- .btn-confirm {
202
- border-radius: 34px;
203
- padding: 7px 16px;
204
- background: #a21b07;
205
- color: white;
206
- font-size: 12px;
207
- cursor: pointer;
208
- border: none;
209
- }
210
- .btn-confirm:hover {
211
- background: #a21b07;
273
+ gap: 16px;
274
+ padding: 16px 24px 24px;
275
+ justify-content: flex-end;
276
+ flex-shrink: 0;
212
277
  }
213
278
  .spinner {
214
- border: 2px solid #f3f3f3;
215
- border-top: 2px solid #c5c5c5;
279
+ width: 18px;
280
+ height: 18px;
281
+ border: 2px solid rgba(255, 255, 255, 0.3);
216
282
  border-radius: 50%;
217
- width: 16px;
218
- height: 16px;
219
- animation: spin 1s linear infinite;
283
+ border-top-color: #fff;
284
+ animation: dialog-spin 0.8s linear infinite;
220
285
  display: inline-block;
221
286
  }
222
- @keyframes spin {
223
- 0% {
224
- transform: rotate(0deg);
225
- }
226
- 100% {
287
+ @keyframes dialog-spin {
288
+ to {
227
289
  transform: rotate(360deg);
228
290
  }
229
291
  }
@@ -238,7 +300,7 @@
238
300
  }
239
301
  .rufous-loader-circle {
240
302
  fill: none;
241
- stroke-width: 9;
303
+ strokewidth: 9;
242
304
  strokelinecap: round;
243
305
  stroke-dasharray: 283;
244
306
  stroke-dashoffset: 280;
@@ -265,12 +327,855 @@
265
327
  }
266
328
  }
267
329
 
330
+ /* lib/styles/datagrid.css */
331
+ .dg-root {
332
+ width: 100%;
333
+ background: var(--surface-color);
334
+ border: 1px solid var(--border-color);
335
+ border-radius: 12px;
336
+ overflow: hidden;
337
+ display: flex;
338
+ flex-direction: column;
339
+ color: var(--text-color);
340
+ }
341
+ .dg-header {
342
+ padding: 20px 24px;
343
+ border-bottom: 1px solid var(--border-color);
344
+ display: flex;
345
+ align-items: center;
346
+ justify-content: space-between;
347
+ gap: 16px;
348
+ flex-wrap: wrap;
349
+ }
350
+ .dg-header-info h2 {
351
+ font-size: 1.1rem;
352
+ font-weight: 700;
353
+ margin: 0 0 2px;
354
+ color: var(--text-color);
355
+ }
356
+ .dg-header-info p {
357
+ font-size: 0.8rem;
358
+ color: var(--text-secondary);
359
+ margin: 0;
360
+ }
361
+ .dg-header-actions {
362
+ display: flex;
363
+ align-items: center;
364
+ gap: 10px;
365
+ flex-wrap: wrap;
366
+ }
367
+ .dg-search-wrap {
368
+ position: relative;
369
+ }
370
+ .dg-search-wrap svg {
371
+ position: absolute;
372
+ left: 10px;
373
+ top: 50%;
374
+ transform: translateY(-50%);
375
+ color: var(--text-secondary);
376
+ pointer-events: none;
377
+ }
378
+ .dg-search {
379
+ padding: 8px 12px 8px 34px;
380
+ border: 1px solid var(--border-color);
381
+ border-radius: 8px;
382
+ background: var(--background-color);
383
+ color: var(--text-color);
384
+ font-size: 0.875rem;
385
+ outline: none;
386
+ width: 220px;
387
+ transition: border-color 0.2s;
388
+ }
389
+ .dg-search:focus {
390
+ border-color: var(--primary-color);
391
+ }
392
+ .dg-icon-btn {
393
+ padding: 8px;
394
+ border: 1px solid var(--border-color);
395
+ border-radius: 8px;
396
+ background: var(--surface-color);
397
+ color: var(--text-secondary);
398
+ cursor: pointer;
399
+ display: flex;
400
+ align-items: center;
401
+ transition: all 0.2s;
402
+ }
403
+ .dg-icon-btn:hover,
404
+ .dg-icon-btn.active {
405
+ border-color: var(--primary-color);
406
+ color: var(--primary-color);
407
+ background: var(--hover-color);
408
+ }
409
+ .dg-action-btn {
410
+ padding: 8px 16px;
411
+ border: 1px solid var(--border-color);
412
+ border-radius: 8px;
413
+ background: var(--surface-color);
414
+ color: var(--text-secondary);
415
+ font-size: 0.82rem;
416
+ font-weight: 600;
417
+ cursor: pointer;
418
+ display: flex;
419
+ align-items: center;
420
+ gap: 6px;
421
+ transition: all 0.2s;
422
+ }
423
+ .dg-action-btn:hover {
424
+ border-color: var(--primary-color);
425
+ color: var(--primary-color);
426
+ background: var(--hover-color);
427
+ }
428
+ .dg-table-wrap {
429
+ overflow-x: auto;
430
+ flex: 1;
431
+ }
432
+ .dg-table {
433
+ width: 100%;
434
+ border-collapse: collapse;
435
+ min-width: 600px;
436
+ table-layout: fixed;
437
+ }
438
+ .dg-table thead tr {
439
+ background: var(--hover-color);
440
+ border-bottom: 1px solid var(--border-color);
441
+ }
442
+ .dg-thead-cell {
443
+ padding: 0;
444
+ font-size: 0.72rem;
445
+ font-weight: 700;
446
+ text-transform: uppercase;
447
+ letter-spacing: 0.06em;
448
+ color: var(--text-secondary);
449
+ position: relative;
450
+ background: var(--hover-color);
451
+ }
452
+ .dg-thead-cell.pinned-left {
453
+ position: sticky;
454
+ left: 0;
455
+ z-index: 20;
456
+ box-shadow: inset -1px 0 0 var(--border-color);
457
+ }
458
+ .dg-thead-cell.pinned-right {
459
+ position: sticky;
460
+ right: 0;
461
+ z-index: 20;
462
+ box-shadow: inset 1px 0 0 var(--border-color);
463
+ }
464
+ .dg-th-inner {
465
+ display: flex;
466
+ align-items: center;
467
+ justify-content: space-between;
468
+ padding: 12px 20px;
469
+ gap: 8px;
470
+ overflow: hidden;
471
+ }
472
+ .dg-th-label {
473
+ display: flex;
474
+ align-items: center;
475
+ gap: 5px;
476
+ overflow: hidden;
477
+ cursor: pointer;
478
+ user-select: none;
479
+ white-space: nowrap;
480
+ text-overflow: ellipsis;
481
+ }
482
+ .dg-th-label.no-sort {
483
+ cursor: default;
484
+ }
485
+ .dg-th-actions {
486
+ display: flex;
487
+ align-items: center;
488
+ gap: 4px;
489
+ opacity: 0;
490
+ transition: opacity 0.15s;
491
+ flex-shrink: 0;
492
+ }
493
+ .dg-thead-cell:hover .dg-th-actions {
494
+ opacity: 1;
495
+ }
496
+ .dg-th-menu-btn {
497
+ background: none;
498
+ border: none;
499
+ cursor: pointer;
500
+ padding: 3px;
501
+ border-radius: 4px;
502
+ color: var(--text-secondary);
503
+ display: flex;
504
+ align-items: center;
505
+ transition: all 0.15s;
506
+ }
507
+ .dg-th-menu-btn:hover {
508
+ background: var(--border-color);
509
+ color: var(--text-color);
510
+ }
511
+ .dg-resizer {
512
+ width: 4px;
513
+ height: 16px;
514
+ background: var(--border-color);
515
+ border-radius: 2px;
516
+ cursor: col-resize;
517
+ transition: background 0.15s;
518
+ flex-shrink: 0;
519
+ }
520
+ .dg-resizer:hover,
521
+ .dg-resizer.resizing {
522
+ background: var(--primary-color);
523
+ }
524
+ .dg-tbody-row {
525
+ border-bottom: 1px solid var(--border-color);
526
+ transition: background 0.15s;
527
+ position: relative;
528
+ }
529
+ .dg-tbody-row:last-child {
530
+ border-bottom: none;
531
+ }
532
+ .dg-tbody-row:hover {
533
+ background: var(--hover-color);
534
+ }
535
+ .dg-td {
536
+ padding: 12px 20px;
537
+ font-size: 0.875rem;
538
+ color: var(--text-color);
539
+ overflow: hidden;
540
+ text-overflow: ellipsis;
541
+ white-space: nowrap;
542
+ background: inherit;
543
+ }
544
+ .dg-td.pinned-left {
545
+ position: sticky;
546
+ left: 0;
547
+ z-index: 10;
548
+ background: var(--surface-color);
549
+ box-shadow: inset -1px 0 0 var(--border-color);
550
+ }
551
+ .dg-tbody-row:hover .dg-td.pinned-left {
552
+ background: var(--hover-color);
553
+ }
554
+ .dg-row-actions-cell {
555
+ position: sticky;
556
+ right: 0;
557
+ z-index: 10;
558
+ padding: 0;
559
+ width: 0;
560
+ pointer-events: none;
561
+ }
562
+ .dg-row-actions {
563
+ position: absolute;
564
+ right: 0;
565
+ top: 0;
566
+ bottom: 0;
567
+ display: flex;
568
+ align-items: center;
569
+ padding-right: 12px;
570
+ pointer-events: auto;
571
+ opacity: 0;
572
+ transition: opacity 0.15s;
573
+ }
574
+ .dg-tbody-row:hover .dg-row-actions {
575
+ opacity: 1;
576
+ }
577
+ .dg-action-group {
578
+ display: flex;
579
+ align-items: center;
580
+ gap: 4px;
581
+ background: var(--surface-color);
582
+ border: 1px solid var(--border-color);
583
+ border-radius: 10px;
584
+ padding: 4px;
585
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
586
+ backdrop-filter: blur(4px);
587
+ }
588
+ .dg-row-action-btn {
589
+ padding: 6px;
590
+ border: none;
591
+ border-radius: 6px;
592
+ background: none;
593
+ cursor: pointer;
594
+ display: flex;
595
+ align-items: center;
596
+ justify-content: center;
597
+ transition: background 0.15s;
598
+ }
599
+ .dg-row-action-btn:hover {
600
+ background: var(--hover-color);
601
+ }
602
+ .dg-pagination {
603
+ padding: 16px 24px;
604
+ border-top: 1px solid var(--border-color);
605
+ display: flex;
606
+ align-items: center;
607
+ justify-content: space-between;
608
+ flex-wrap: wrap;
609
+ gap: 12px;
610
+ background: var(--hover-color);
611
+ }
612
+ .dg-page-info {
613
+ display: flex;
614
+ align-items: center;
615
+ gap: 16px;
616
+ }
617
+ .dg-page-info span {
618
+ font-size: 0.82rem;
619
+ color: var(--text-secondary);
620
+ }
621
+ .dg-per-page {
622
+ display: flex;
623
+ align-items: center;
624
+ gap: 8px;
625
+ font-size: 0.82rem;
626
+ color: var(--text-secondary);
627
+ }
628
+ .dg-per-page select {
629
+ padding: 4px 8px;
630
+ border: 1px solid var(--border-color);
631
+ border-radius: 6px;
632
+ background: var(--surface-color);
633
+ color: var(--text-color);
634
+ font-size: 0.82rem;
635
+ outline: none;
636
+ cursor: pointer;
637
+ }
638
+ .dg-page-nav {
639
+ display: flex;
640
+ align-items: center;
641
+ gap: 4px;
642
+ }
643
+ .dg-page-btn {
644
+ min-width: 34px;
645
+ height: 34px;
646
+ padding: 0 6px;
647
+ border: 1px solid var(--border-color);
648
+ border-radius: 8px;
649
+ background: var(--surface-color);
650
+ color: var(--text-color);
651
+ font-size: 0.82rem;
652
+ font-weight: 600;
653
+ cursor: pointer;
654
+ display: flex;
655
+ align-items: center;
656
+ justify-content: center;
657
+ transition: all 0.15s;
658
+ }
659
+ .dg-page-btn:hover:not(:disabled) {
660
+ border-color: var(--primary-color);
661
+ color: var(--primary-color);
662
+ background: var(--hover-color);
663
+ }
664
+ .dg-page-btn.active {
665
+ background: var(--primary-color);
666
+ color: #fff;
667
+ border-color: var(--primary-color);
668
+ }
669
+ .dg-page-btn:disabled {
670
+ opacity: 0.4;
671
+ cursor: not-allowed;
672
+ }
673
+ .dg-page-fraction {
674
+ padding: 0 14px;
675
+ font-size: 0.85rem;
676
+ font-weight: 600;
677
+ color: var(--text-color);
678
+ white-space: nowrap;
679
+ min-width: 56px;
680
+ text-align: center;
681
+ }
682
+ .dg-filter-logic {
683
+ display: flex;
684
+ align-items: center;
685
+ gap: 6px;
686
+ padding: 6px 0 6px 38px;
687
+ }
688
+ .dg-logic-btn {
689
+ padding: 3px 12px;
690
+ border: 1px solid var(--border-color);
691
+ border-radius: 20px;
692
+ background: var(--surface-color);
693
+ color: var(--text-secondary);
694
+ font-size: 0.72rem;
695
+ font-weight: 700;
696
+ letter-spacing: 0.04em;
697
+ cursor: pointer;
698
+ transition: all 0.15s;
699
+ }
700
+ .dg-logic-btn:hover {
701
+ border-color: var(--primary-color);
702
+ color: var(--primary-color);
703
+ }
704
+ .dg-logic-btn.active {
705
+ background: var(--primary-color);
706
+ border-color: var(--primary-color);
707
+ color: #fff;
708
+ }
709
+ .dg-menu {
710
+ position: fixed;
711
+ z-index: 200;
712
+ width: 200px;
713
+ background: var(--surface-color);
714
+ border: 1px solid var(--border-color);
715
+ border-radius: 10px;
716
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
717
+ padding: 6px;
718
+ overflow: hidden;
719
+ }
720
+ .dg-menu-item {
721
+ display: flex;
722
+ align-items: center;
723
+ gap: 10px;
724
+ width: 100%;
725
+ padding: 8px 10px;
726
+ background: none;
727
+ border: none;
728
+ border-radius: 6px;
729
+ font-size: 0.85rem;
730
+ color: var(--text-color);
731
+ cursor: pointer;
732
+ text-align: left;
733
+ transition: background 0.15s;
734
+ }
735
+ .dg-menu-item:hover {
736
+ background: var(--hover-color);
737
+ color: var(--primary-color);
738
+ }
739
+ .dg-menu-item.danger:hover {
740
+ background: #fff5f5;
741
+ color: #c0392b;
742
+ }
743
+ .dg-menu-divider {
744
+ height: 1px;
745
+ background: var(--border-color);
746
+ margin: 4px 0;
747
+ }
748
+ .dg-modal-overlay {
749
+ position: fixed;
750
+ inset: 0;
751
+ z-index: 150;
752
+ background: rgba(0, 0, 0, 0.35);
753
+ display: flex;
754
+ align-items: center;
755
+ justify-content: center;
756
+ padding: 20px;
757
+ backdrop-filter: blur(3px);
758
+ }
759
+ .dg-modal {
760
+ background: var(--surface-color);
761
+ border: 1px solid var(--border-color);
762
+ border-radius: 14px;
763
+ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
764
+ width: 100%;
765
+ max-width: 480px;
766
+ max-height: 80vh;
767
+ display: flex;
768
+ flex-direction: column;
769
+ overflow: hidden;
770
+ }
771
+ .dg-modal-wide {
772
+ max-width: 680px;
773
+ }
774
+ .dg-modal-header {
775
+ padding: 20px 24px;
776
+ border-bottom: 1px solid var(--border-color);
777
+ display: flex;
778
+ align-items: center;
779
+ justify-content: space-between;
780
+ flex-shrink: 0;
781
+ }
782
+ .dg-modal-header h3 {
783
+ font-size: 1.1rem;
784
+ font-weight: 700;
785
+ margin: 0;
786
+ color: var(--text-color);
787
+ }
788
+ .dg-modal-body {
789
+ padding: 20px 24px;
790
+ overflow-y: auto;
791
+ flex: 1;
792
+ display: flex;
793
+ flex-direction: column;
794
+ gap: 10px;
795
+ }
796
+ .dg-modal-footer {
797
+ padding: 14px 24px;
798
+ border-top: 1px solid var(--border-color);
799
+ display: flex;
800
+ align-items: center;
801
+ justify-content: flex-end;
802
+ gap: 10px;
803
+ flex-shrink: 0;
804
+ background: var(--hover-color);
805
+ }
806
+ .dg-col-row {
807
+ display: flex;
808
+ align-items: center;
809
+ justify-content: space-between;
810
+ padding: 8px 12px;
811
+ border-radius: 8px;
812
+ transition: background 0.15s;
813
+ }
814
+ .dg-col-row:hover {
815
+ background: var(--hover-color);
816
+ }
817
+ .dg-col-dot {
818
+ width: 10px;
819
+ height: 10px;
820
+ border-radius: 50%;
821
+ flex-shrink: 0;
822
+ }
823
+ .dg-col-label {
824
+ display: flex;
825
+ align-items: center;
826
+ gap: 10px;
827
+ font-size: 0.875rem;
828
+ font-weight: 500;
829
+ color: var(--text-color);
830
+ }
831
+ .dg-filter-row {
832
+ display: flex;
833
+ align-items: center;
834
+ gap: 8px;
835
+ }
836
+ .dg-filter-select,
837
+ .dg-filter-input {
838
+ flex: 1;
839
+ padding: 8px 12px;
840
+ border: 1px solid var(--border-color);
841
+ border-radius: 8px;
842
+ background: var(--background-color);
843
+ color: var(--text-color);
844
+ font-size: 0.85rem;
845
+ outline: none;
846
+ }
847
+ .dg-filter-select:focus,
848
+ .dg-filter-input:focus {
849
+ border-color: var(--primary-color);
850
+ }
851
+ .dg-filter-select-sm {
852
+ width: 140px;
853
+ flex: none;
854
+ }
855
+ .dg-empty {
856
+ padding: 60px 20px;
857
+ text-align: center;
858
+ color: var(--text-secondary);
859
+ font-size: 0.9rem;
860
+ }
861
+
862
+ /* lib/styles/editor.css */
863
+ .rte-wrapper {
864
+ position: relative;
865
+ font-family: var(--font-family, "Roboto", "Helvetica", "Arial", sans-serif);
866
+ }
867
+ .rte-speech-popup {
868
+ position: absolute;
869
+ z-index: 2000;
870
+ display: flex;
871
+ align-items: center;
872
+ gap: 8px;
873
+ padding: 8px 14px;
874
+ background: rgba(255, 255, 255, 0.9);
875
+ backdrop-filter: blur(6px);
876
+ border-radius: 10px;
877
+ box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
878
+ font-size: 0.85rem;
879
+ font-style: italic;
880
+ color: #212121;
881
+ max-width: 280px;
882
+ transition: opacity 0.3s, transform 0.3s;
883
+ pointer-events: none;
884
+ }
885
+ .rte-speech-dot {
886
+ width: 8px;
887
+ height: 8px;
888
+ border-radius: 50%;
889
+ background: #dc2626;
890
+ flex-shrink: 0;
891
+ animation: rte-pulse 1s ease-in-out infinite;
892
+ }
893
+ @keyframes rte-pulse {
894
+ 0%, 100% {
895
+ opacity: 1;
896
+ }
897
+ 50% {
898
+ opacity: 0.3;
899
+ }
900
+ }
901
+ .rte-error {
902
+ margin: 4px 14px 0;
903
+ font-size: 0.75rem;
904
+ line-height: 1.66;
905
+ color: #d32f2f;
906
+ }
907
+ .jodit-toolbar__box:not(:empty) {
908
+ background-color: #fff !important;
909
+ }
910
+ .jodit-toolbar-button__button:focus-visible:not([disabled]),
911
+ .jodit-toolbar-button__button:hover:not([disabled]) {
912
+ background-color: #f9e0e0 !important;
913
+ opacity: 1;
914
+ outline: 0;
915
+ }
916
+ .jodit-toolbar-button__button:active:not([disabled]),
917
+ .jodit-toolbar-button__trigger:focus-visible:not([disabled]),
918
+ .jodit-toolbar-button__trigger:hover:not([disabled]) {
919
+ background-color: #f9e0e0 !important;
920
+ }
921
+ .jodit-toolbar-button__button[aria-pressed=true]:not([disabled]) {
922
+ background-color: #f9e0e0 !important;
923
+ }
924
+ .jodit-ui-button_variant_primary {
925
+ background-color: #a81c08 !important;
926
+ }
927
+ .jodit-ui-button_variant_primary:hover:not([disabled]),
928
+ .jodit-ui-button_variant_primary:focus:not([disabled]) {
929
+ background-color: #a81c08 !important;
930
+ outline: 1px solid #a81c08 !important;
931
+ }
932
+ .rte-listening .jodit-toolbar-button_customSpeechRecognize button {
933
+ background-color: #f9e0e0 !important;
934
+ }
935
+ .jodit-checkbox {
936
+ appearance: none;
937
+ width: 18px !important;
938
+ height: 18px !important;
939
+ border: 2px solid #000 !important;
940
+ border-radius: 4px;
941
+ background-color: #fff !important;
942
+ cursor: pointer;
943
+ display: inline-block;
944
+ position: relative;
945
+ }
946
+ .jodit-checkbox:checked {
947
+ background-color: #a81c08 !important;
948
+ border-color: #a81c08 !important;
949
+ }
950
+ .jodit-checkbox:checked::before {
951
+ content: "";
952
+ position: absolute;
953
+ top: 0px;
954
+ left: 4px;
955
+ width: 5px;
956
+ height: 10px;
957
+ border: solid #fff;
958
+ border-width: 0 2px 2px 0;
959
+ transform: rotate(45deg);
960
+ }
961
+ .jodit-ui-group__aiContinuePrompt,
962
+ .jodit-ui-group__aiTranslateToJapanesePrompt,
963
+ .jodit-ui-group__aiTranslateToArabicPrompt,
964
+ .jodit-ui-group__aiTranslateToRussianPrompt,
965
+ .jodit-ui-group__aiTranslateToKoreanPrompt,
966
+ .jodit-ui-group__aiTranslateToChinesePrompt,
967
+ .jodit-ui-group__aiTranslateToEnglishPrompt,
968
+ .jodit-ui-group__aiTranslateToPortuguesePrompt,
969
+ .jodit-ui-group__aiTranslateToItalianPrompt,
970
+ .jodit-ui-group__aiTranslateToGermanPrompt,
971
+ .jodit-ui-group__aiTranslateToFrenchPrompt,
972
+ .jodit-ui-group__aiTranslateToSpanishPrompt,
973
+ .jodit-ui-group__aiChangeStylePoeticPrompt,
974
+ .jodit-ui-group__aiChangeStyleJournalismPrompt,
975
+ .jodit-ui-group__aiChangeStyleLegalPrompt,
976
+ .jodit-ui-group__aiChangeToneConfidentPrompt,
977
+ .jodit-ui-group__aiChangeToneDirectPrompt,
978
+ .jodit-ui-group__aiChangeToneCasualPrompt,
979
+ .jodit-ui-group__aiChangeToneFriendlyPrompt {
980
+ display: none !important;
981
+ }
982
+ .jodit-popup-container:has(.jodit-toolbar-button_buttonGenerator) {
983
+ display: none !important;
984
+ }
985
+ .jodit-dialog:has(.jodit-ui-button-generator) {
986
+ display: none !important;
987
+ }
988
+ .jodit-wysiwyg .todo-item,
989
+ .rte-wrapper .todo-item {
990
+ display: flex;
991
+ align-items: flex-start;
992
+ margin-left: 0 !important;
993
+ margin-bottom: 4px !important;
994
+ min-height: 24px;
995
+ width: 100%;
996
+ position: relative;
997
+ }
998
+ .jodit-wysiwyg .todo-item-button,
999
+ .rte-wrapper .todo-item-button {
1000
+ flex-shrink: 0;
1001
+ margin-right: 8px;
1002
+ margin-top: 1px;
1003
+ border: none;
1004
+ background: transparent;
1005
+ cursor: pointer;
1006
+ padding: 0;
1007
+ width: 16px;
1008
+ height: 16px;
1009
+ min-width: 16px;
1010
+ display: flex;
1011
+ align-items: center;
1012
+ justify-content: center;
1013
+ }
1014
+ .jodit-wysiwyg .todo-item-button img,
1015
+ .rte-wrapper .todo-item-button img {
1016
+ width: 16px !important;
1017
+ height: 16px !important;
1018
+ pointer-events: none;
1019
+ }
1020
+ .jodit-wysiwyg .todo-item-text,
1021
+ .rte-wrapper .todo-item-text {
1022
+ flex: 1;
1023
+ margin-top: -2px;
1024
+ word-break: break-word;
1025
+ white-space: pre-wrap;
1026
+ overflow-wrap: anywhere;
1027
+ display: block;
1028
+ }
1029
+ .mention-jodit {
1030
+ background-color: rgba(153, 0, 48, 0.1);
1031
+ border-radius: 4px;
1032
+ padding: 2px 4px;
1033
+ color: #990030;
1034
+ }
1035
+ .jodit-ui-translate-list__item:hover .jodit-ui-translate-list__item-title,
1036
+ .jodit-ui-translate-list__item[data-active=true] .jodit-ui-translate-list__item-title,
1037
+ .jodit-ui-translate-list__item:hover .jodit-ui-translate-list__item-key,
1038
+ .jodit-ui-translate-list__item[data-active=true] .jodit-ui-translate-list__item-key {
1039
+ background-color: #f9e0e0 !important;
1040
+ color: #000;
1041
+ }
1042
+ .jodit-toolbar-button_close {
1043
+ position: absolute;
1044
+ top: 0;
1045
+ right: 0;
1046
+ background: #fff;
1047
+ }
1048
+ .jodit-toolbar-button_close .jodit-icon {
1049
+ width: 22px !important;
1050
+ height: 22px !important;
1051
+ }
1052
+ .jodit-dialog .jodit-ui-ai-assistant {
1053
+ width: 800px;
1054
+ }
1055
+ @media (max-width: 750px) {
1056
+ .jodit-dialog .jodit-ui-ai-assistant {
1057
+ width: 500px;
1058
+ }
1059
+ }
1060
+ @media (max-width: 500px) {
1061
+ .jodit-dialog .jodit-ui-ai-assistant {
1062
+ width: 360px;
1063
+ }
1064
+ }
1065
+ .todo-option {
1066
+ display: flex;
1067
+ align-items: center;
1068
+ gap: 5px;
1069
+ }
1070
+ .todo-option img {
1071
+ margin-right: 5px;
1072
+ }
1073
+
268
1074
  /* lib/style.css */
269
- .theme-rufous .act-icon svg {
270
- color: #a81c08 !important;
1075
+ :root {
1076
+ --font-family:
1077
+ "Roboto",
1078
+ "Helvetica",
1079
+ "Arial",
1080
+ sans-serif;
1081
+ --primary-color: #a41b06;
1082
+ --secondary-color: #8b1605;
1083
+ --background-color: #ffffff;
1084
+ --surface-color: #ffffff;
1085
+ --text-color: #2d2d2d;
1086
+ --text-secondary: #666666;
1087
+ --border-color: #e0e0e0;
1088
+ --hover-color: #fff5f5;
1089
+ --selection-color: #fce4ec;
1090
+ --icon-color: #a41b06;
1091
+ }
1092
+ .dialog-overlay.overlay-fullscreen {
1093
+ padding: 0;
1094
+ align-items: flex-start;
1095
+ }
1096
+ body {
1097
+ margin: 0;
1098
+ padding: 0;
1099
+ font-family: var(--font-family);
1100
+ background-color: var(--background-color);
1101
+ color: var(--text-color);
1102
+ transition: background-color 0.3s, color 0.3s;
1103
+ }
1104
+ button,
1105
+ input,
1106
+ select,
1107
+ textarea {
1108
+ font-family: var(--font-family);
1109
+ }
1110
+ .form__group.field {
1111
+ position: relative;
1112
+ padding: 15px 0 0;
1113
+ margin-top: 10px;
1114
+ width: 100%;
1115
+ }
1116
+ .form__field {
1117
+ font-family: inherit;
1118
+ width: 100%;
1119
+ border: 1px solid var(--border-color);
1120
+ border-radius: 4px;
1121
+ outline: 0;
1122
+ font-size: 16px;
1123
+ color: var(--text-color);
1124
+ padding: 12px 14px;
1125
+ background: transparent;
1126
+ transition: border-color 0.2s, box-shadow 0.2s;
1127
+ box-sizing: border-box;
1128
+ }
1129
+ .form__field::placeholder {
1130
+ color: transparent;
1131
+ }
1132
+ .form__label {
1133
+ position: absolute;
1134
+ top: 27px;
1135
+ left: 14px;
1136
+ display: block;
1137
+ transition: 0.2s;
1138
+ font-size: 16px;
1139
+ color: var(--text-secondary);
1140
+ pointer-events: none;
1141
+ background-color: transparent;
1142
+ padding: 0 4px;
1143
+ }
1144
+ .form__field:focus {
1145
+ border: 2px solid var(--primary-color);
1146
+ padding: 11px 13px;
1147
+ }
1148
+ .form__field:focus ~ .form__label,
1149
+ .form__field:not(:placeholder-shown) ~ .form__label {
1150
+ top: 6px;
1151
+ left: 10px;
1152
+ font-size: 12px;
1153
+ color: var(--primary-color);
1154
+ font-weight: 500;
1155
+ background-color: var(--surface-color);
1156
+ }
1157
+ .rufous-theme-root.mode-dark {
1158
+ color-scheme: dark;
1159
+ }
1160
+ .mode-dark ::-webkit-scrollbar {
1161
+ width: 10px;
271
1162
  }
272
- .theme-default .act-icon svg {
273
- color: #707070 !important;
1163
+ .mode-dark ::-webkit-scrollbar-track {
1164
+ background: #222;
274
1165
  }
275
- .act-icon {
1166
+ .mode-dark ::-webkit-scrollbar-thumb {
1167
+ background: #444;
1168
+ border-radius: 5px;
1169
+ }
1170
+ .mode-dark ::-webkit-scrollbar-thumb:hover {
1171
+ background: #555;
1172
+ }
1173
+ pre {
1174
+ padding: 1rem;
1175
+ overflow-x: auto;
1176
+ border-radius: 8px;
1177
+ font-size: 0.9rem;
1178
+ background-color: var(--surface-color);
1179
+ border: 1px solid var(--border-color);
1180
+ color: var(--text-color);
276
1181
  }