@rt-tools/ui-kit-v2 0.1.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 (436) hide show
  1. package/README.md +114 -0
  2. package/fesm2022/rt-tools-ui-kit-v2.mjs +13653 -0
  3. package/fesm2022/rt-tools-ui-kit-v2.mjs.map +1 -0
  4. package/package.json +54 -0
  5. package/rt-tools-ui-kit-v2-0.1.0.tgz +0 -0
  6. package/src/assets/icons/alarm-clock.svg +7 -0
  7. package/src/assets/icons/align-center.svg +7 -0
  8. package/src/assets/icons/align-justify.svg +7 -0
  9. package/src/assets/icons/align-left.svg +7 -0
  10. package/src/assets/icons/align-right.svg +7 -0
  11. package/src/assets/icons/angle-double-down.svg +7 -0
  12. package/src/assets/icons/angle-double-left.svg +7 -0
  13. package/src/assets/icons/angle-double-right.svg +7 -0
  14. package/src/assets/icons/angle-double-up.svg +7 -0
  15. package/src/assets/icons/angle-down.svg +7 -0
  16. package/src/assets/icons/angle-left.svg +7 -0
  17. package/src/assets/icons/angle-right.svg +7 -0
  18. package/src/assets/icons/angle-up.svg +7 -0
  19. package/src/assets/icons/arrow-bottom-old.svg +7 -0
  20. package/src/assets/icons/arrow-circle-down.svg +7 -0
  21. package/src/assets/icons/arrow-circle-left.svg +7 -0
  22. package/src/assets/icons/arrow-circle-right.svg +7 -0
  23. package/src/assets/icons/arrow-circle-up.svg +7 -0
  24. package/src/assets/icons/arrow-down-left.svg +7 -0
  25. package/src/assets/icons/arrow-down-long.svg +7 -0
  26. package/src/assets/icons/arrow-down-right.svg +7 -0
  27. package/src/assets/icons/arrow-down.svg +7 -0
  28. package/src/assets/icons/arrow-left-old.svg +7 -0
  29. package/src/assets/icons/arrow-left.svg +7 -0
  30. package/src/assets/icons/arrow-leftlong.svg +7 -0
  31. package/src/assets/icons/arrow-right-old.svg +7 -0
  32. package/src/assets/icons/arrow-right.svg +7 -0
  33. package/src/assets/icons/arrow-rightlong.svg +7 -0
  34. package/src/assets/icons/arrow-top-old.svg +7 -0
  35. package/src/assets/icons/arrow-up-left.svg +7 -0
  36. package/src/assets/icons/arrow-up-long.svg +7 -0
  37. package/src/assets/icons/arrow-up-right.svg +7 -0
  38. package/src/assets/icons/arrow-up.svg +7 -0
  39. package/src/assets/icons/arrows-h.svg +7 -0
  40. package/src/assets/icons/arrows-v.svg +7 -0
  41. package/src/assets/icons/at.svg +7 -0
  42. package/src/assets/icons/attach-docx-doc.svg +11 -0
  43. package/src/assets/icons/attach-eml.svg +21 -0
  44. package/src/assets/icons/attach-folder.svg +12 -0
  45. package/src/assets/icons/attach-jpg-png.svg +9 -0
  46. package/src/assets/icons/attach-msg.svg +48 -0
  47. package/src/assets/icons/attach-other.svg +9 -0
  48. package/src/assets/icons/attach-pdf.svg +9 -0
  49. package/src/assets/icons/attach-ppt-pptx.svg +10 -0
  50. package/src/assets/icons/attach-txt.svg +24 -0
  51. package/src/assets/icons/attach-webp.svg +9 -0
  52. package/src/assets/icons/attach-xlsx-xls.svg +9 -0
  53. package/src/assets/icons/attach-zip-rar.svg +13 -0
  54. package/src/assets/icons/ban.svg +7 -0
  55. package/src/assets/icons/bars.svg +7 -0
  56. package/src/assets/icons/bell.svg +7 -0
  57. package/src/assets/icons/bolt.svg +7 -0
  58. package/src/assets/icons/book.svg +7 -0
  59. package/src/assets/icons/bookmark-fill.svg +7 -0
  60. package/src/assets/icons/bookmark.svg +7 -0
  61. package/src/assets/icons/bot.svg +14 -0
  62. package/src/assets/icons/box.svg +7 -0
  63. package/src/assets/icons/briefcase.svg +7 -0
  64. package/src/assets/icons/building.svg +7 -0
  65. package/src/assets/icons/burger.svg +9 -0
  66. package/src/assets/icons/calendar-minus.svg +7 -0
  67. package/src/assets/icons/calendar-plus.svg +7 -0
  68. package/src/assets/icons/calendar-times.svg +7 -0
  69. package/src/assets/icons/calendar.svg +7 -0
  70. package/src/assets/icons/camera.svg +7 -0
  71. package/src/assets/icons/chart-bar.svg +7 -0
  72. package/src/assets/icons/chart-line-2.svg +13 -0
  73. package/src/assets/icons/chart-line.svg +7 -0
  74. package/src/assets/icons/chart-pie.svg +7 -0
  75. package/src/assets/icons/check-circle.svg +7 -0
  76. package/src/assets/icons/check-double.svg +10 -0
  77. package/src/assets/icons/check-square.svg +7 -0
  78. package/src/assets/icons/check.svg +7 -0
  79. package/src/assets/icons/chevron-circle-down.svg +7 -0
  80. package/src/assets/icons/chevron-circle-left.svg +7 -0
  81. package/src/assets/icons/chevron-circle-right.svg +7 -0
  82. package/src/assets/icons/chevron-circle-up.svg +7 -0
  83. package/src/assets/icons/chevron-down.svg +7 -0
  84. package/src/assets/icons/chevron-left.svg +7 -0
  85. package/src/assets/icons/chevron-right.svg +7 -0
  86. package/src/assets/icons/chevron-up-down.svg +9 -0
  87. package/src/assets/icons/chevron-up.svg +7 -0
  88. package/src/assets/icons/clock.svg +7 -0
  89. package/src/assets/icons/clone.svg +7 -0
  90. package/src/assets/icons/close.svg +7 -0
  91. package/src/assets/icons/cloud-download.svg +7 -0
  92. package/src/assets/icons/cloud-upload.svg +7 -0
  93. package/src/assets/icons/cloud.svg +7 -0
  94. package/src/assets/icons/code.svg +7 -0
  95. package/src/assets/icons/cog.svg +7 -0
  96. package/src/assets/icons/comment.svg +7 -0
  97. package/src/assets/icons/comments.svg +7 -0
  98. package/src/assets/icons/copy.svg +7 -0
  99. package/src/assets/icons/credit-card.svg +7 -0
  100. package/src/assets/icons/database.svg +7 -0
  101. package/src/assets/icons/desktop.svg +7 -0
  102. package/src/assets/icons/directions-alt.svg +7 -0
  103. package/src/assets/icons/directions.svg +7 -0
  104. package/src/assets/icons/doc-success.svg +7 -0
  105. package/src/assets/icons/docBox.svg +7 -0
  106. package/src/assets/icons/ellipsis-h.svg +7 -0
  107. package/src/assets/icons/ellipsis-v.svg +7 -0
  108. package/src/assets/icons/email.svg +7 -0
  109. package/src/assets/icons/exclamation-circle.svg +7 -0
  110. package/src/assets/icons/external-link.svg +7 -0
  111. package/src/assets/icons/eye-slash.svg +7 -0
  112. package/src/assets/icons/eye.svg +7 -0
  113. package/src/assets/icons/file-excel.svg +7 -0
  114. package/src/assets/icons/file-o.svg +7 -0
  115. package/src/assets/icons/file-pdf.svg +7 -0
  116. package/src/assets/icons/file.svg +7 -0
  117. package/src/assets/icons/filter-fill.svg +7 -0
  118. package/src/assets/icons/filter-slash.svg +7 -0
  119. package/src/assets/icons/filter.svg +7 -0
  120. package/src/assets/icons/flag-fill.svg +7 -0
  121. package/src/assets/icons/flag.svg +7 -0
  122. package/src/assets/icons/flagman-a.svg +7 -0
  123. package/src/assets/icons/flagman-b.svg +17 -0
  124. package/src/assets/icons/flagman-c.svg +9 -0
  125. package/src/assets/icons/flagman-q.svg +14 -0
  126. package/src/assets/icons/folder-open.svg +7 -0
  127. package/src/assets/icons/folder.svg +7 -0
  128. package/src/assets/icons/globe.svg +7 -0
  129. package/src/assets/icons/groupen.svg +15 -0
  130. package/src/assets/icons/hashtag.svg +7 -0
  131. package/src/assets/icons/heart-fill.svg +7 -0
  132. package/src/assets/icons/heart.svg +7 -0
  133. package/src/assets/icons/help.svg +15 -0
  134. package/src/assets/icons/history.svg +7 -0
  135. package/src/assets/icons/historyUpdate.svg +7 -0
  136. package/src/assets/icons/ico-age.svg +7 -0
  137. package/src/assets/icons/ico-alert.svg +7 -0
  138. package/src/assets/icons/ico-b.svg +7 -0
  139. package/src/assets/icons/ico-babyPacifier.svg +15 -0
  140. package/src/assets/icons/ico-bank.svg +12 -0
  141. package/src/assets/icons/ico-bill-striked.svg +7 -0
  142. package/src/assets/icons/ico-bill.svg +7 -0
  143. package/src/assets/icons/ico-bookmark-right.svg +5 -0
  144. package/src/assets/icons/ico-books.svg +7 -0
  145. package/src/assets/icons/ico-burger.svg +5 -0
  146. package/src/assets/icons/ico-businessman.svg +7 -0
  147. package/src/assets/icons/ico-c.svg +7 -0
  148. package/src/assets/icons/ico-calendar.svg +7 -0
  149. package/src/assets/icons/ico-case.svg +7 -0
  150. package/src/assets/icons/ico-change-2.svg +7 -0
  151. package/src/assets/icons/ico-change.svg +15 -0
  152. package/src/assets/icons/ico-check.svg +18 -0
  153. package/src/assets/icons/ico-checked-alert.svg +9 -0
  154. package/src/assets/icons/ico-checked.svg +7 -0
  155. package/src/assets/icons/ico-cheker.svg +7 -0
  156. package/src/assets/icons/ico-chevron-down.svg +3 -0
  157. package/src/assets/icons/ico-chevron.svg +7 -0
  158. package/src/assets/icons/ico-close.svg +7 -0
  159. package/src/assets/icons/ico-config.svg +26 -0
  160. package/src/assets/icons/ico-contragents.svg +7 -0
  161. package/src/assets/icons/ico-control.svg +18 -0
  162. package/src/assets/icons/ico-copy.svg +7 -0
  163. package/src/assets/icons/ico-counterparty.svg +7 -0
  164. package/src/assets/icons/ico-coworkers.svg +7 -0
  165. package/src/assets/icons/ico-debt.svg +7 -0
  166. package/src/assets/icons/ico-director.svg +7 -0
  167. package/src/assets/icons/ico-doc.svg +24 -0
  168. package/src/assets/icons/ico-docDocprimary.svg +9 -0
  169. package/src/assets/icons/ico-docs.svg +7 -0
  170. package/src/assets/icons/ico-door.svg +7 -0
  171. package/src/assets/icons/ico-dotted-more-horizontal.svg +7 -0
  172. package/src/assets/icons/ico-doubleArrows.svg +8 -0
  173. package/src/assets/icons/ico-download.svg +10 -0
  174. package/src/assets/icons/ico-eagle.svg +7 -0
  175. package/src/assets/icons/ico-edit.svg +7 -0
  176. package/src/assets/icons/ico-edo.svg +7 -0
  177. package/src/assets/icons/ico-email.svg +7 -0
  178. package/src/assets/icons/ico-email1.svg +7 -0
  179. package/src/assets/icons/ico-error.svg +4 -0
  180. package/src/assets/icons/ico-exit.svg +5 -0
  181. package/src/assets/icons/ico-eye.svg +7 -0
  182. package/src/assets/icons/ico-eyeClose.svg +7 -0
  183. package/src/assets/icons/ico-faq.svg +7 -0
  184. package/src/assets/icons/ico-farm.svg +7 -0
  185. package/src/assets/icons/ico-filter.svg +7 -0
  186. package/src/assets/icons/ico-fine.svg +7 -0
  187. package/src/assets/icons/ico-gasket.svg +7 -0
  188. package/src/assets/icons/ico-generator.svg +7 -0
  189. package/src/assets/icons/ico-grade-2.svg +7 -0
  190. package/src/assets/icons/ico-grade.svg +15 -0
  191. package/src/assets/icons/ico-ground-area-transport.svg +7 -0
  192. package/src/assets/icons/ico-groundArea.svg +7 -0
  193. package/src/assets/icons/ico-groupen.svg +7 -0
  194. package/src/assets/icons/ico-hands.svg +31 -0
  195. package/src/assets/icons/ico-help.svg +7 -0
  196. package/src/assets/icons/ico-ico-history.svg +15 -0
  197. package/src/assets/icons/ico-info.svg +15 -0
  198. package/src/assets/icons/ico-infoFill.svg +7 -0
  199. package/src/assets/icons/ico-invite.svg +16 -0
  200. package/src/assets/icons/ico-key.svg +14 -0
  201. package/src/assets/icons/ico-keyFill.svg +7 -0
  202. package/src/assets/icons/ico-letter.svg +7 -0
  203. package/src/assets/icons/ico-level-down.svg +7 -0
  204. package/src/assets/icons/ico-level-up.svg +7 -0
  205. package/src/assets/icons/ico-level.svg +7 -0
  206. package/src/assets/icons/ico-licence.svg +24 -0
  207. package/src/assets/icons/ico-limit.svg +10 -0
  208. package/src/assets/icons/ico-link-2.svg +7 -0
  209. package/src/assets/icons/ico-link.svg +13 -0
  210. package/src/assets/icons/ico-listadd.svg +7 -0
  211. package/src/assets/icons/ico-listing.svg +10 -0
  212. package/src/assets/icons/ico-lock.svg +7 -0
  213. package/src/assets/icons/ico-locked.svg +7 -0
  214. package/src/assets/icons/ico-megafon.svg +21 -0
  215. package/src/assets/icons/ico-new-window.svg +7 -0
  216. package/src/assets/icons/ico-notification.svg +7 -0
  217. package/src/assets/icons/ico-notificationOff.svg +13 -0
  218. package/src/assets/icons/ico-percent-alert.svg +7 -0
  219. package/src/assets/icons/ico-plus.svg +5 -0
  220. package/src/assets/icons/ico-referal.svg +7 -0
  221. package/src/assets/icons/ico-repeat.svg +7 -0
  222. package/src/assets/icons/ico-reset.svg +7 -0
  223. package/src/assets/icons/ico-return.svg +7 -0
  224. package/src/assets/icons/ico-search.svg +7 -0
  225. package/src/assets/icons/ico-setting.svg +16 -0
  226. package/src/assets/icons/ico-settings.svg +15 -0
  227. package/src/assets/icons/ico-site.svg +7 -0
  228. package/src/assets/icons/ico-snowflake.svg +7 -0
  229. package/src/assets/icons/ico-spec.svg +12 -0
  230. package/src/assets/icons/ico-statement.svg +7 -0
  231. package/src/assets/icons/ico-subuser.svg +24 -0
  232. package/src/assets/icons/ico-sun.svg +9 -0
  233. package/src/assets/icons/ico-sunrise.svg +46 -0
  234. package/src/assets/icons/ico-support.svg +21 -0
  235. package/src/assets/icons/ico-target.svg +12 -0
  236. package/src/assets/icons/ico-team.svg +7 -0
  237. package/src/assets/icons/ico-tech.svg +15 -0
  238. package/src/assets/icons/ico-telegram.svg +7 -0
  239. package/src/assets/icons/ico-time.svg +7 -0
  240. package/src/assets/icons/ico-trash.svg +7 -0
  241. package/src/assets/icons/ico-try.svg +27 -0
  242. package/src/assets/icons/ico-txt.svg +16 -0
  243. package/src/assets/icons/ico-unlock.svg +7 -0
  244. package/src/assets/icons/ico-upload.svg +10 -0
  245. package/src/assets/icons/ico-user-2.svg +7 -0
  246. package/src/assets/icons/ico-user.svg +7 -0
  247. package/src/assets/icons/ico-users-2.svg +7 -0
  248. package/src/assets/icons/ico-users.svg +7 -0
  249. package/src/assets/icons/ico-video-play.svg +7 -0
  250. package/src/assets/icons/ico-warning.svg +4 -0
  251. package/src/assets/icons/ico-warranty-shield.svg +9 -0
  252. package/src/assets/icons/ico-warranty.svg +7 -0
  253. package/src/assets/icons/ico-xml.svg +18 -0
  254. package/src/assets/icons/id-card.svg +7 -0
  255. package/src/assets/icons/image.svg +7 -0
  256. package/src/assets/icons/images.svg +7 -0
  257. package/src/assets/icons/inbox.svg +7 -0
  258. package/src/assets/icons/info-circle.svg +7 -0
  259. package/src/assets/icons/info.svg +7 -0
  260. package/src/assets/icons/link.svg +7 -0
  261. package/src/assets/icons/list.svg +7 -0
  262. package/src/assets/icons/lock-open.svg +7 -0
  263. package/src/assets/icons/lock.svg +7 -0
  264. package/src/assets/icons/map.svg +7 -0
  265. package/src/assets/icons/mapYandex.svg +9 -0
  266. package/src/assets/icons/microsoft.svg +7 -0
  267. package/src/assets/icons/minus-circle.svg +7 -0
  268. package/src/assets/icons/minus.svg +7 -0
  269. package/src/assets/icons/mobile.svg +7 -0
  270. package/src/assets/icons/money-bill.svg +7 -0
  271. package/src/assets/icons/moon.svg +6 -0
  272. package/src/assets/icons/paperclip.svg +7 -0
  273. package/src/assets/icons/pause.svg +7 -0
  274. package/src/assets/icons/pencil.svg +7 -0
  275. package/src/assets/icons/percentage.svg +7 -0
  276. package/src/assets/icons/phone.svg +7 -0
  277. package/src/assets/icons/pie-chart.svg +8 -0
  278. package/src/assets/icons/plus-circle.svg +7 -0
  279. package/src/assets/icons/power-off.svg +7 -0
  280. package/src/assets/icons/print.svg +7 -0
  281. package/src/assets/icons/qrcode.svg +7 -0
  282. package/src/assets/icons/question-circle.svg +7 -0
  283. package/src/assets/icons/refresh.svg +4 -0
  284. package/src/assets/icons/replay.svg +7 -0
  285. package/src/assets/icons/reply.svg +7 -0
  286. package/src/assets/icons/reset.svg +7 -0
  287. package/src/assets/icons/search-minus.svg +7 -0
  288. package/src/assets/icons/search-plus.svg +7 -0
  289. package/src/assets/icons/search.svg +7 -0
  290. package/src/assets/icons/send.svg +7 -0
  291. package/src/assets/icons/server.svg +7 -0
  292. package/src/assets/icons/share-alt.svg +7 -0
  293. package/src/assets/icons/shield.svg +7 -0
  294. package/src/assets/icons/sitemap.svg +7 -0
  295. package/src/assets/icons/sliders-v.svg +7 -0
  296. package/src/assets/icons/sort-alpha-alt-down.svg +7 -0
  297. package/src/assets/icons/sort-alpha-alt-up.svg +7 -0
  298. package/src/assets/icons/sort-alpha-down.svg +7 -0
  299. package/src/assets/icons/sort-alpha-up.svg +7 -0
  300. package/src/assets/icons/sort-alt-slash.svg +7 -0
  301. package/src/assets/icons/sort-alt.svg +7 -0
  302. package/src/assets/icons/sort-amount-down-alt.svg +7 -0
  303. package/src/assets/icons/sort-amount-down.svg +7 -0
  304. package/src/assets/icons/sort-amount-up-alt.svg +7 -0
  305. package/src/assets/icons/sort-amount-up.svg +7 -0
  306. package/src/assets/icons/sort-numeric-alt-down.svg +7 -0
  307. package/src/assets/icons/sort-numeric-alt-up.svg +7 -0
  308. package/src/assets/icons/sort-numeric-down.svg +7 -0
  309. package/src/assets/icons/sort-numeric-up.svg +7 -0
  310. package/src/assets/icons/spinner.svg +7 -0
  311. package/src/assets/icons/star-fill.svg +7 -0
  312. package/src/assets/icons/star.svg +7 -0
  313. package/src/assets/icons/stock.svg +8 -0
  314. package/src/assets/icons/stop.svg +7 -0
  315. package/src/assets/icons/sync.svg +7 -0
  316. package/src/assets/icons/table.svg +7 -0
  317. package/src/assets/icons/tablet.svg +7 -0
  318. package/src/assets/icons/tag.svg +7 -0
  319. package/src/assets/icons/tags.svg +7 -0
  320. package/src/assets/icons/telegram.svg +7 -0
  321. package/src/assets/icons/th-large.svg +7 -0
  322. package/src/assets/icons/ticket.svg +7 -0
  323. package/src/assets/icons/times-circle.svg +7 -0
  324. package/src/assets/icons/trash.svg +7 -0
  325. package/src/assets/icons/undo.svg +7 -0
  326. package/src/assets/icons/unlock.svg +7 -0
  327. package/src/assets/icons/user-edit.svg +7 -0
  328. package/src/assets/icons/user-minus.svg +7 -0
  329. package/src/assets/icons/user-plus.svg +7 -0
  330. package/src/assets/icons/user.svg +7 -0
  331. package/src/assets/icons/users.svg +7 -0
  332. package/src/assets/icons/video.svg +7 -0
  333. package/src/assets/icons/volume-down.svg +7 -0
  334. package/src/assets/icons/volume-off.svg +7 -0
  335. package/src/assets/icons/volume-up.svg +7 -0
  336. package/src/assets/icons/wallet.svg +7 -0
  337. package/src/assets/icons/warning.svg +13 -0
  338. package/src/assets/icons/wifi.svg +7 -0
  339. package/src/assets/icons/window-maximize.svg +7 -0
  340. package/src/assets/icons/window-minimize.svg +7 -0
  341. package/src/lib/components/aside/footer/rt-aside-footer.component.scss +22 -0
  342. package/src/lib/components/aside/header/rt-aside-header.component.scss +88 -0
  343. package/src/lib/components/aside/rt-aside.component.scss +208 -0
  344. package/src/lib/components/aside/unsaved-dialog/rt-aside-unsaved-dialog.component.scss +39 -0
  345. package/src/lib/components/aside-section/rt-aside-section.component.scss +30 -0
  346. package/src/lib/components/autocomplete/rt-autocomplete.component.scss +143 -0
  347. package/src/lib/components/bar-list/rt-bar-list.component.scss +95 -0
  348. package/src/lib/components/bottom-sheet/rt-bottom-sheet.component.scss +71 -0
  349. package/src/lib/components/button/rt-button.directive.scss +268 -0
  350. package/src/lib/components/calendar/rt-calendar.component.scss +132 -0
  351. package/src/lib/components/card/rt-card.component.scss +57 -0
  352. package/src/lib/components/chat/rt-chat.component.scss +366 -0
  353. package/src/lib/components/checkbox/rt-checkbox.component.scss +57 -0
  354. package/src/lib/components/collapsible-text/rt-collapsible-text.component.scss +43 -0
  355. package/src/lib/components/confirm-popover/rt-confirm-popover.component.scss +36 -0
  356. package/src/lib/components/container/rt-container.component.scss +175 -0
  357. package/src/lib/components/counter/rt-counter.component.scss +15 -0
  358. package/src/lib/components/counter-row/rt-counter-row.component.scss +33 -0
  359. package/src/lib/components/date-picker/rt-date-picker.component.scss +89 -0
  360. package/src/lib/components/delta-view/rt-delta-view.component.scss +31 -0
  361. package/src/lib/components/detail-list/rt-detail-list.component.scss +8 -0
  362. package/src/lib/components/detail-list/rt-detail-row.component.scss +21 -0
  363. package/src/lib/components/dialog/footer/rt-dialog-footer.component.scss +13 -0
  364. package/src/lib/components/dialog/header/rt-dialog-header.component.scss +21 -0
  365. package/src/lib/components/dialog/rt-dialog.component.scss +62 -0
  366. package/src/lib/components/download-link/rt-download-link.component.scss +22 -0
  367. package/src/lib/components/empty-state/rt-empty-state.component.scss +58 -0
  368. package/src/lib/components/field/rt-field.component.scss +78 -0
  369. package/src/lib/components/file-card/rt-file-card.component.scss +96 -0
  370. package/src/lib/components/file-drop/rt-file-drop.component.scss +91 -0
  371. package/src/lib/components/file-input/rt-file-input.component.scss +25 -0
  372. package/src/lib/components/file-list/rt-file-list.component.scss +8 -0
  373. package/src/lib/components/filter-control/rt-filter-control.component.scss +20 -0
  374. package/src/lib/components/header/rt-header.component.scss +67 -0
  375. package/src/lib/components/icon/rt-icon.component.scss +17 -0
  376. package/src/lib/components/icon-button/rt-icon-button.component.scss +139 -0
  377. package/src/lib/components/info-item/rt-info-item.component.scss +46 -0
  378. package/src/lib/components/input/rt-input.component.scss +120 -0
  379. package/src/lib/components/input-number/rt-input-number.component.scss +102 -0
  380. package/src/lib/components/live-badge/rt-live-badge.component.scss +28 -0
  381. package/src/lib/components/logo/rt-logo.component.scss +64 -0
  382. package/src/lib/components/menu/rt-menu-confirm-dialog.component.scss +36 -0
  383. package/src/lib/components/menu/rt-menu-item.component.scss +54 -0
  384. package/src/lib/components/menu/rt-menu.component.scss +19 -0
  385. package/src/lib/components/message/rt-message.component.scss +58 -0
  386. package/src/lib/components/message-composer/rt-message-composer.component.scss +59 -0
  387. package/src/lib/components/money-list/rt-money-list.component.scss +11 -0
  388. package/src/lib/components/money-list/rt-money-row.component.scss +25 -0
  389. package/src/lib/components/multiselect/rt-multiselect.component.scss +198 -0
  390. package/src/lib/components/night-grid/rt-night-grid.component.scss +43 -0
  391. package/src/lib/components/note/rt-note.component.scss +13 -0
  392. package/src/lib/components/notifications-bell/rt-notifications-bell.component.scss +32 -0
  393. package/src/lib/components/page-header/rt-page-header-mobile.scss +156 -0
  394. package/src/lib/components/page-header/rt-page-header-submenu.scss +147 -0
  395. package/src/lib/components/page-header/rt-page-header.component.scss +257 -0
  396. package/src/lib/components/pagination/rt-pagination.component.scss +102 -0
  397. package/src/lib/components/photo-viewer/rt-photo-viewer.component.scss +131 -0
  398. package/src/lib/components/rich-editor/rt-rich-editor.component.scss +71 -0
  399. package/src/lib/components/section-nav/rt-section-nav.component.scss +52 -0
  400. package/src/lib/components/select/rt-select.component.scss +173 -0
  401. package/src/lib/components/skeleton/rt-skeleton.component.scss +56 -0
  402. package/src/lib/components/skeleton-wrapper/rt-skeleton-wrapper.component.scss +4 -0
  403. package/src/lib/components/spinner/rt-spinner.component.scss +42 -0
  404. package/src/lib/components/split-button/rt-split-button.component.scss +64 -0
  405. package/src/lib/components/stat-tile/rt-stat-tile.component.scss +108 -0
  406. package/src/lib/components/stepper/rt-stepper.component.scss +117 -0
  407. package/src/lib/components/table/copy-cell/rt-copy-cell.component.scss +40 -0
  408. package/src/lib/components/table/rt-table.component.scss +312 -0
  409. package/src/lib/components/table/settings-aside/rt-table-settings-aside.component.scss +5 -0
  410. package/src/lib/components/table/settings-panel/rt-table-settings-panel.component.scss +77 -0
  411. package/src/lib/components/table/sort-header/rt-table-sort-header.component.scss +39 -0
  412. package/src/lib/components/tabs/rt-tabs.component.scss +219 -0
  413. package/src/lib/components/tag/rt-tag.component.scss +95 -0
  414. package/src/lib/components/textarea/rt-textarea.component.scss +78 -0
  415. package/src/lib/components/theme-toggle/rt-theme-toggle.component.scss +3 -0
  416. package/src/lib/components/thread-list/rt-thread-list.component.scss +248 -0
  417. package/src/lib/components/timeline/rt-timeline.component.scss +95 -0
  418. package/src/lib/components/toast/rt-toast.component.scss +201 -0
  419. package/src/lib/components/toast/rt-toaster.component.scss +45 -0
  420. package/src/lib/components/toggle-button-group/rt-toggle-button-group.component.scss +138 -0
  421. package/src/lib/components/toggle-switch/rt-toggle-switch.component.scss +98 -0
  422. package/src/lib/components/toolbar/rt-toolbar.component.scss +69 -0
  423. package/src/lib/components/tooltip/rt-tooltip.component.scss +18 -0
  424. package/src/lib/components/welcome-dialog/rt-welcome-dialog.component.scss +48 -0
  425. package/src/lib/components/workspace/rt-workspace.component.scss +173 -0
  426. package/src/lib/components/workspace-details/rt-workspace-details.component.scss +128 -0
  427. package/src/styles/_breakpoints.scss +7 -0
  428. package/src/styles/_index.scss +13 -0
  429. package/src/styles/_login.scss +97 -0
  430. package/src/styles/_mixins.scss +21 -0
  431. package/src/styles/_primitives.scss +222 -0
  432. package/src/styles/_scrollbar.scss +24 -0
  433. package/src/styles/_semantic.scss +297 -0
  434. package/src/styles/_theme-dark.scss +123 -0
  435. package/styles/tokens.css +810 -0
  436. package/types/rt-tools-ui-kit-v2.d.ts +5673 -0
@@ -0,0 +1,297 @@
1
+ /* Semantic design tokens — light defaults. */
2
+
3
+ :root {
4
+ /* Background */
5
+ --rt-color-bg-page: var(--rt-neutral-50);
6
+ --rt-color-bg-surface: var(--rt-neutral-0);
7
+ --rt-color-bg-surface-subtle: var(--rt-neutral-100);
8
+ --rt-color-bg-surface-subtle-2: var(--rt-neutral-200);
9
+ --rt-color-bg-hover: var(--rt-neutral-100);
10
+ --rt-color-bg-subtle: var(--rt-neutral-100);
11
+ --rt-color-bg-overlay: var(--rt-overlay-black-50);
12
+ --rt-color-bg-inverse: var(--rt-neutral-900);
13
+
14
+ /* Text */
15
+ --rt-color-text-primary: var(--rt-neutral-900);
16
+ --rt-color-text-muted: var(--rt-neutral-500);
17
+ --rt-color-text-disabled: var(--rt-neutral-400);
18
+ --rt-color-text-inverse: var(--rt-neutral-0);
19
+ --rt-color-text-link: var(--rt-blue-500);
20
+ --rt-color-text-link-hover: var(--rt-blue-600);
21
+
22
+ /* Border */
23
+ --rt-color-border-default: var(--rt-neutral-200);
24
+ --rt-color-border-strong: var(--rt-neutral-300);
25
+ --rt-color-border-subtle: var(--rt-neutral-200);
26
+ --rt-color-border-focus: var(--rt-blue-500);
27
+
28
+ /* Action */
29
+ --rt-color-action-primary: var(--rt-blue-500);
30
+ --rt-color-action-primary-hover: var(--rt-blue-600);
31
+ --rt-color-action-primary-subtle: var(--rt-overlay-blue-8);
32
+
33
+ /* Focus-ring tint — насыщеннее subtle, для visible 3px outline. */
34
+ --rt-color-action-primary-soft: var(--rt-overlay-blue-24);
35
+ --rt-color-action-on-primary: var(--rt-neutral-0);
36
+ --rt-color-action-secondary: var(--rt-neutral-200);
37
+ --rt-color-action-on-secondary: var(--rt-neutral-900);
38
+
39
+ /* Focus-ring composite — для interactive элементов с custom focus-visible. */
40
+ --rt-shadow-focus-ring: 0 0 0 3px var(--rt-color-action-primary-soft);
41
+ --rt-shadow-focus-ring-danger: 0 0 0 3px var(--rt-overlay-danger-16);
42
+
43
+ /* Stepper (rt-stepper) — рельса прогресса. Текущий шаг — янтарный (одинаков
44
+ в обеих темах); трек/прогресс переопределяются в dark на приглушённые. */
45
+ --rt-color-stepper-current: var(--rt-amber-400);
46
+ --rt-color-stepper-current-subtle: var(--rt-overlay-amber-16);
47
+ --rt-color-stepper-track: var(--rt-gray-350);
48
+ --rt-color-stepper-progress: var(--rt-color-action-primary);
49
+
50
+ /* Step-indicator ring — halo вокруг активного пункта rt-stepper. */
51
+ --rt-shadow-step-indicator: 0 0 0 4px var(--rt-color-stepper-current-subtle);
52
+
53
+ /* Status-dot ring — halo вокруг точки «объект занят сейчас». */
54
+ --rt-shadow-status-dot: 0 0 0 3px var(--rt-color-state-success-bg);
55
+
56
+ /* State */
57
+ --rt-color-state-success: var(--rt-success-500);
58
+ --rt-color-state-success-bg: var(--rt-success-50);
59
+ --rt-color-state-warning: var(--rt-warning-500);
60
+ --rt-color-state-warning-bg: var(--rt-warning-50);
61
+ --rt-color-state-danger: var(--rt-danger-500);
62
+ --rt-color-state-danger-bg: var(--rt-danger-50);
63
+ --rt-color-state-error-text: var(--rt-danger-600);
64
+ --rt-color-state-info: var(--rt-info-500);
65
+ --rt-color-state-info-bg: var(--rt-info-50);
66
+
67
+ /* Chat — пузыри переписки. Входящее и своё различаются фоном, а не рамкой:
68
+ рамка на каждом пузыре дробит ленту. Отметка прочтения синяя — единственный
69
+ цветной элемент подвала пузыря, остальные статусы приглушены. */
70
+ --rt-chat-bubble-in-bg: var(--rt-blue-50);
71
+ --rt-chat-bubble-in-author: var(--rt-blue-700);
72
+ --rt-chat-bubble-own-bg: var(--rt-neutral-100);
73
+ --rt-chat-bubble-own-author: var(--rt-neutral-500);
74
+ --rt-chat-bubble-date: var(--rt-color-text-muted);
75
+ --rt-chat-status-read: var(--rt-blue-400);
76
+
77
+ /* Special — Auth surface (gradient bg + transparent card в dark) */
78
+ --rt-color-bg-page-auth: var(--rt-neutral-50);
79
+ --rt-color-bg-surface-auth-card: var(--rt-neutral-0);
80
+
81
+ /* Spacing aliases — named semantic aliases на primitive numeric scale */
82
+ --rt-space-2xs: 2px;
83
+ --rt-space-xs: var(--rt-space-1); /* 4px */
84
+ --rt-space-sm: var(--rt-space-2); /* 8px */
85
+ --rt-space-md: var(--rt-space-4); /* 16px */
86
+ --rt-space-lg: var(--rt-space-6); /* 24px */
87
+ --rt-space-xl: var(--rt-space-8); /* 32px */
88
+ --rt-space-2xl: var(--rt-space-12); /* 48px */
89
+ --rt-space-3xl: var(--rt-space-16); /* 64px */
90
+
91
+ /* Text size base — semantic alias для default body text */
92
+ --rt-text-base: 16px;
93
+
94
+ /* Form input — composition tokens. Единый контракт для всего input-семейства
95
+ (rt-input, rt-input-number, rt-autocomplete, rt-select, rt-multiselect,
96
+ rt-textarea). Namespace --rt-input-* / --rt-textarea-*. Компоненты
97
+ потребляют ТОЛЬКО эти токены, не primitives и не литералы. */
98
+
99
+ /* Colors */
100
+ --rt-input-color-bg: var(--rt-color-bg-surface-subtle);
101
+ --rt-input-color-bg-disabled: var(--rt-color-bg-surface-subtle);
102
+ --rt-input-color-bg-hover: var(--rt-overlay-black-4);
103
+ --rt-input-color-border: var(--rt-color-border-default);
104
+ --rt-input-color-border-focus: var(--rt-color-action-primary);
105
+ --rt-input-color-border-error: var(--rt-color-state-danger);
106
+ --rt-input-color-text: var(--rt-color-text-primary);
107
+ --rt-input-color-text-placeholder: var(--rt-color-text-muted);
108
+
109
+ /* Sizes (single-line height scale) */
110
+ --rt-input-height-sm: var(--rt-control-height-sm);
111
+ --rt-input-height-md: var(--rt-control-height-md);
112
+ --rt-input-height-lg: var(--rt-control-height-lg);
113
+ --rt-input-height: var(--rt-input-height-md);
114
+
115
+ /* Кап ширины одиночного контрола (input/select) в тулбарах list-страниц —
116
+ внутри flex-баров контрол без ограничения растягивается на всю строку. */
117
+ --rt-input-max-width: var(--rt-control-max-width);
118
+
119
+ /* Radius / spacing / border */
120
+ --rt-input-radius: var(--rt-radius-lg);
121
+ --rt-input-padding-x: var(--rt-space-3);
122
+ --rt-input-padding-y: var(--rt-space-0);
123
+ --rt-input-border-width: var(--rt-border-width-thin);
124
+ --rt-input-focus-outline-offset: var(--rt-border-width-thin);
125
+
126
+ /* Typography */
127
+ --rt-input-font-size: var(--rt-text-sm);
128
+ --rt-input-line-height: var(--rt-leading-none);
129
+
130
+ /* State / motion */
131
+ --rt-input-disabled-opacity: var(--rt-opacity-disabled);
132
+ --rt-input-focus-shadow: var(--rt-shadow-focus-ring);
133
+ --rt-input-focus-shadow-error: var(--rt-shadow-focus-ring-danger);
134
+ --rt-input-transition: border-color var(--rt-duration-fast) ease, box-shadow var(--rt-duration-fast) ease;
135
+
136
+ /* Textarea overrides (multi-line) */
137
+ --rt-textarea-min-height-sm: var(--rt-control-textarea-min-height-sm);
138
+ --rt-textarea-min-height-md: var(--rt-control-textarea-min-height-md);
139
+ --rt-textarea-min-height-lg: var(--rt-control-textarea-min-height-lg);
140
+ --rt-textarea-min-height: var(--rt-textarea-min-height-md);
141
+ --rt-textarea-padding-y: var(--rt-space-sm);
142
+ --rt-textarea-line-height: var(--rt-leading-snug);
143
+
144
+ /* Dropdown panel (select / multiselect / autocomplete popup). */
145
+ --rt-input-panel-max-height: var(--rt-control-panel-max-height);
146
+
147
+ /* Icon-button hover-overlay — отдельный namespace (вне input-family),
148
+ тот же primitive-источник. */
149
+ --rt-icon-button-color-bg-hover: var(--rt-overlay-black-4);
150
+
151
+ /* Counter (rt-counter) и строка вокруг него (rt-counter-row). Значение
152
+ набирается табличными цифрами и держит ширину, иначе кнопки прыгают
153
+ при переходе через десяток. */
154
+ --rt-counter-gap: var(--rt-space-sm);
155
+ --rt-counter-value-min-width: 24px;
156
+ --rt-counter-value-font-size: var(--rt-text-md);
157
+ --rt-counter-value-color: var(--rt-color-text-primary);
158
+ --rt-counter-row-gap: var(--rt-space-md);
159
+ --rt-counter-row-padding-y: var(--rt-space-md);
160
+ --rt-counter-row-color-border: var(--rt-color-border-subtle);
161
+ --rt-counter-row-label-font-size: var(--rt-text-md);
162
+ --rt-counter-row-label-color: var(--rt-color-text-primary);
163
+ --rt-counter-row-hint-font-size: var(--rt-text-sm);
164
+ --rt-counter-row-hint-color: var(--rt-color-text-muted);
165
+
166
+ /* Toggle-switch (rt-toggle-switch) — трек, бегунок и иконки состояния. */
167
+ --rt-toggle-color-track: var(--rt-color-bg-surface-subtle-2);
168
+ --rt-toggle-color-track-on: var(--rt-color-action-primary);
169
+ --rt-toggle-color-border: var(--rt-color-border-strong);
170
+ --rt-toggle-color-thumb: var(--rt-color-bg-surface);
171
+ --rt-toggle-color-icon: var(--rt-amber-400);
172
+ --rt-toggle-shadow-thumb: var(--rt-shadow-md);
173
+
174
+ /* Рамка off-трека — inset-тенью, а не border: у border своя коробка, и
175
+ отступы бегунка с иконками пришлось бы пересчитывать на её толщину. */
176
+ --rt-toggle-shadow-border: inset 0 0 0 var(--rt-border-width-thin) var(--rt-toggle-color-border);
177
+
178
+ /* Навигация (rt-page-header). Шапка — отдельная плашка; отступ от краёв
179
+ страницы задаёт тот, кто её ставит. */
180
+ --rt-nav-header-padding: var(--rt-space-2-5) var(--rt-space-3);
181
+ --rt-nav-header-color-bg: var(--rt-neutral-150);
182
+
183
+ /* Первый уровень. Пункт ряда несёт плашку цвета самой шапки: на общем фоне её
184
+ не видно, и белым проступает только активный раздел. Наведение красит
185
+ подпись, а не фон — иначе оно спорит с этой подсветкой. */
186
+ --rt-nav-item-height: 28px;
187
+ --rt-nav-item-gap: var(--rt-space-1);
188
+ --rt-nav-item-padding: var(--rt-space-1-5) var(--rt-space-2);
189
+ --rt-nav-item-content-gap: var(--rt-space-1-5);
190
+ --rt-nav-item-font-size: var(--rt-text-sm);
191
+ --rt-nav-item-font-weight: var(--rt-font-weight-semibold);
192
+ --rt-nav-item-line-height: var(--rt-leading-none);
193
+ --rt-nav-item-color: var(--rt-color-text-primary);
194
+ --rt-nav-item-color-hover: var(--rt-color-action-primary);
195
+ --rt-nav-item-color-pressed: var(--rt-color-action-primary-hover);
196
+ --rt-nav-item-color-bg: var(--rt-neutral-150);
197
+ --rt-nav-item-color-border: var(--rt-neutral-150);
198
+ --rt-nav-item-color-bg-active: var(--rt-color-bg-surface);
199
+ --rt-nav-item-color-caret: var(--rt-neutral-250);
200
+
201
+ /* Фокус обведён пунктиром: сплошная рамка на плашке пункта неотличима от его
202
+ же границы. */
203
+ --rt-nav-color-focus: var(--rt-color-action-primary);
204
+
205
+ /* Недоступный пункт светлее доступного, а не другого оттенка: общий
206
+ `text-disabled` уходит в сине-стальной и рядом с серой подписью читается
207
+ как второй цвет, а не как выключенное состояние. */
208
+ --rt-nav-color-disabled: var(--rt-neutral-350);
209
+
210
+ /* Попап профиля. Подложку берёт у панели навигации, своего здесь — габариты
211
+ блока пользователя, тень и набор строк: строк четыре, и они читаются как
212
+ список действий, а не как выпадающее меню. */
213
+ --rt-profile-menu-min-width: 240px;
214
+ --rt-profile-menu-padding: var(--rt-space-5);
215
+ --rt-profile-menu-shadow: var(--rt-shadow-profile-menu);
216
+ --rt-profile-avatar-size: 42px;
217
+ --rt-profile-avatar-font-size: var(--rt-text-2xl);
218
+ --rt-profile-item-padding-y: var(--rt-space-3);
219
+ --rt-profile-item-content-gap: var(--rt-space-2-5);
220
+ --rt-profile-item-font-size: var(--rt-text-md);
221
+ --rt-profile-item-font-weight: var(--rt-font-weight-medium);
222
+ --rt-profile-item-radius: var(--rt-radius-md);
223
+
224
+ /* Строки выступают за содержимое панели на половину её отступа: так
225
+ подсветка на наведении не упирается в рамку, а иконка остаётся на одной
226
+ вертикали с содержимым. Это же число — горизонтальный отступ строки. */
227
+ --rt-profile-row-inset: var(--rt-space-2-5);
228
+ --rt-profile-theme-icon-padding: var(--rt-space-2);
229
+
230
+ /* Габариты панели второго уровня: ширина считается числом колонок, поэтому
231
+ колонка, промежуток и внутренний отступ — токены, из которых панель
232
+ складывает свою ширину. По вертикали отступ крупнее: у первой группы над
233
+ заголовком нет ничего, и панель иначе начинается впритык. */
234
+ --rt-nav-panel-column-width: 250px;
235
+ --rt-nav-panel-column-gap: var(--rt-space-5);
236
+ --rt-nav-panel-padding: var(--rt-space-3);
237
+ --rt-nav-panel-padding-y: var(--rt-space-md);
238
+ --rt-nav-panel-group-gap: var(--rt-space-7);
239
+ --rt-nav-panel-item-gap: var(--rt-space-0-5);
240
+ --rt-nav-panel-item-height: 24px;
241
+ --rt-nav-panel-item-padding: var(--rt-space-1) var(--rt-space-2);
242
+ --rt-nav-panel-columns: 1;
243
+ --rt-nav-panel-color-bg: var(--rt-color-bg-surface);
244
+ --rt-nav-panel-color-border: var(--rt-neutral-250);
245
+ --rt-nav-panel-shadow: var(--rt-shadow-nav-panel);
246
+
247
+ /* Второй уровень набран легче первого: ряд разделов держит вес, а полтора
248
+ десятка пунктов под ним читаются построчно. */
249
+ --rt-nav-panel-item-font-size: var(--rt-text-sm);
250
+ --rt-nav-panel-item-font-weight: var(--rt-font-weight-medium);
251
+ --rt-nav-panel-item-content-gap: var(--rt-space-1);
252
+ --rt-nav-panel-item-color: var(--rt-neutral-520);
253
+ --rt-nav-panel-item-color-bg-hover: var(--rt-neutral-150);
254
+ --rt-nav-panel-item-color-active: var(--rt-color-text-inverse);
255
+ --rt-nav-panel-item-color-bg-active: var(--rt-color-action-primary);
256
+ --rt-nav-panel-group-font-size: var(--rt-text-xs);
257
+ --rt-nav-panel-group-font-weight: var(--rt-font-weight-medium);
258
+
259
+ /* Заголовок группы светлее пункта, но оба берут порог AA на белой панели:
260
+ 4.95:1 у пункта и 4.54:1 у заголовка. */
261
+ --rt-nav-panel-group-color: var(--rt-neutral-510);
262
+ --rt-nav-panel-group-content-gap: var(--rt-space-1-5);
263
+
264
+ /* Маркер непросмотренного. Точка стоит в потоке следом за подписью — и в ряду
265
+ разделов, и в панели, и на узком экране: место ей даёт общий зазор
266
+ содержимого пункта. */
267
+ --rt-nav-caret-size: 12px;
268
+ --rt-nav-marker-size: 4px;
269
+ --rt-nav-marker-color: var(--rt-color-state-danger);
270
+
271
+ /* Form field (rt-field) — обёртка анатомии поля: label / help / hint / error /
272
+ required-маркер / read-only значение. Визуал label+hint в стиле Tailwind
273
+ form (мелкий medium label, muted hint). Компоненты потребляют только эти
274
+ токены. */
275
+ --rt-field-gap: var(--rt-space-xs);
276
+ --rt-field-label-font-size: var(--rt-text-sm);
277
+ --rt-field-label-font-weight: var(--rt-font-weight-medium);
278
+ --rt-field-label-color: var(--rt-color-text-muted);
279
+ --rt-field-label-help-gap: var(--rt-space-xs);
280
+ --rt-field-hint-font-size: var(--rt-text-xs);
281
+ --rt-field-hint-color: var(--rt-color-text-muted);
282
+ --rt-field-error-font-size: var(--rt-text-xs);
283
+ --rt-field-error-color: var(--rt-color-state-danger);
284
+ --rt-field-required-color: var(--rt-color-state-danger);
285
+ --rt-field-value-font-size: var(--rt-text-sm);
286
+ --rt-field-value-color: var(--rt-color-text-primary);
287
+ --rt-field-value-empty-color: var(--rt-color-text-muted);
288
+ }
289
+
290
+ /* На тач-устройствах инпут не меньше 16px: WebKit (весь iOS, включая Chrome)
291
+ зумит страницу при фокусе на поле с font-size < 16px — отсюда горизонтальный
292
+ сдвиг вёрстки. Десктоп сохраняет плотный 14px. */
293
+ @media (pointer: coarse) {
294
+ :root {
295
+ --rt-input-font-size: var(--rt-text-md);
296
+ }
297
+ }
@@ -0,0 +1,123 @@
1
+ /* Dark theme — переопределение СЕМАНТИЧЕСКИХ токенов (примитивы неизменны).
2
+
3
+ Тело токенов вынесено в @mixin, чтобы тот же набор переопределений можно было
4
+ применить не только на html-уровне (тема приложения), но и к локальному
5
+ контейнеру (side-by-side light/dark в Storybook) — без дублирования значений.
6
+
7
+ База (`rt-theme-dark-tokens`) — тёплый графит для приложений и всех
8
+ CDK-overlay'ев (асайды/диалоги/меню рендерятся на уровне body, вне
9
+ host-классов шеллов — поэтому графит держим на :root, иначе overlay'и
10
+ не наследовали бы палитру). */
11
+
12
+ @mixin rt-theme-dark-tokens {
13
+ /* Background — тёплый графит */
14
+ --rt-color-bg-page: var(--rt-charcoal-900);
15
+ --rt-color-bg-surface: var(--rt-charcoal-800);
16
+ --rt-color-bg-surface-subtle: var(--rt-charcoal-950);
17
+ --rt-color-bg-hover: var(--rt-charcoal-700);
18
+ --rt-color-bg-subtle: var(--rt-charcoal-950);
19
+ --rt-color-bg-overlay: rgb(0 0 0 / 70%);
20
+ --rt-color-bg-inverse: var(--rt-neutral-0);
21
+
22
+ /* Text — почти белый на графите */
23
+ --rt-color-text-primary: var(--rt-neutral-50);
24
+ --rt-color-text-muted: var(--rt-overlay-white-40);
25
+ --rt-color-text-disabled: var(--rt-overlay-white-25);
26
+ --rt-color-text-inverse: var(--rt-neutral-900);
27
+ --rt-color-text-link: var(--rt-blue-300);
28
+ --rt-color-text-link-hover: var(--rt-blue-500);
29
+
30
+ /* Border — приглушённые на графите */
31
+ --rt-color-border-default: var(--rt-charcoal-border);
32
+ --rt-color-border-strong: var(--rt-charcoal-border-strong);
33
+ --rt-color-border-subtle: var(--rt-charcoal-border);
34
+ --rt-color-border-focus: var(--rt-blue-500);
35
+
36
+ /* Input border видим в dark (в light — transparent). */
37
+ --rt-input-color-border: var(--rt-charcoal-border);
38
+
39
+ /* Stepper — в dark рельса уходит от яркого синего к приглушённому серо-синему
40
+ (текущий шаг остаётся янтарным из light-семантики). */
41
+ --rt-color-stepper-track: var(--rt-navy-600);
42
+ --rt-color-stepper-progress: var(--rt-slate-300);
43
+
44
+ /* Навигация — вся шкала серых разворачивается: подложка уходит глубже
45
+ поверхности, а приглушённые подписи становятся светлее фона, а не темнее.
46
+ Плашка шапки садится на глубокий графит, активный пункт поднимается на
47
+ поверхность карточки — то же отношение, что и в светлой теме. */
48
+ --rt-nav-header-color-bg: var(--rt-charcoal-950);
49
+ --rt-nav-item-color-bg: var(--rt-charcoal-950);
50
+ --rt-nav-item-color-border: var(--rt-charcoal-950);
51
+ --rt-nav-item-color-bg-active: var(--rt-charcoal-800);
52
+ --rt-nav-item-color-caret: var(--rt-neutral-520);
53
+ --rt-nav-panel-color-bg: var(--rt-charcoal-800);
54
+ --rt-nav-panel-color-border: var(--rt-neutral-520);
55
+ --rt-nav-panel-item-color: var(--rt-neutral-280);
56
+ --rt-nav-panel-item-color-bg-hover: var(--rt-charcoal-950);
57
+ --rt-nav-panel-group-color: var(--rt-neutral-420);
58
+ --rt-nav-color-disabled: var(--rt-neutral-520);
59
+
60
+ /* Action — primary остаётся синим в обеих темах */
61
+ --rt-color-action-primary-subtle: rgb(21 93 252 / 16%);
62
+
63
+ /* Focus-ring в dark — ярче для контрастности на тёмных фонах. */
64
+ --rt-color-action-primary-soft: rgb(21 93 252 / 32%);
65
+ --rt-color-action-secondary: var(--rt-charcoal-700);
66
+ --rt-color-action-on-secondary: var(--rt-neutral-50);
67
+
68
+ /* Soft card-shadow в dark — насыщеннее для отделения от фона. */
69
+ --rt-shadow-card-soft: 0 0 40px rgb(0 0 0 / 25%);
70
+
71
+ /* Hover-overlay инвертирован для dark (light overlay поверх тёмного фона). */
72
+ --rt-input-color-bg-hover: var(--rt-overlay-white-4);
73
+ --rt-icon-button-color-bg-hover: var(--rt-overlay-white-4);
74
+
75
+ /* Toggle-switch — трек уходит в подложку, а бегунок остаётся светлым:
76
+ общий bg-surface на обоих слил бы их в один силуэт. Тень на графите
77
+ не работает, роль разделителя берёт на себя контраст. */
78
+ --rt-toggle-color-track: var(--rt-charcoal-950);
79
+ --rt-toggle-color-thumb: var(--rt-neutral-50);
80
+ --rt-toggle-shadow-thumb: var(--rt-shadow-none);
81
+
82
+ /* State — surfaces под dark + ярче error-text */
83
+ --rt-color-state-success-bg: rgb(5 150 105 / 12%);
84
+ --rt-color-state-warning-bg: rgb(217 119 6 / 12%);
85
+ --rt-color-state-danger-bg: rgb(220 38 38 / 12%);
86
+ --rt-color-state-error-text: var(--rt-danger-500);
87
+ --rt-color-state-info-bg: rgb(37 99 235 / 12%);
88
+
89
+ /* Chat — на графите светлые фоны пузырей нечитаемы: входящее уходит в
90
+ полупрозрачный синий, своё — в глубокий графит. */
91
+ --rt-chat-bubble-in-bg: rgb(37 99 235 / 12%);
92
+ --rt-chat-bubble-in-author: var(--rt-blue-300);
93
+ --rt-chat-bubble-own-bg: var(--rt-charcoal-950);
94
+ --rt-chat-bubble-own-author: var(--rt-overlay-white-40);
95
+ --rt-chat-bubble-date: var(--rt-overlay-white-40);
96
+ --rt-chat-status-read: var(--rt-blue-300);
97
+
98
+ /* Special — Auth surface (градиентный фон логина + прозрачная карточка). */
99
+ --rt-color-bg-page-auth: linear-gradient(156deg, #122341 12.68%, #182142 99.28%);
100
+ --rt-color-bg-surface-auth-card: transparent;
101
+ }
102
+
103
+ :root[data-theme='dark'],
104
+ html.rt-theme-dark {
105
+ @include rt-theme-dark-tokens;
106
+ }
107
+
108
+ /* Body-level градиент — подложка экранов авторизации: их вьюпорт прозрачен
109
+ (`--rt-color-bg-surface-auth-card: transparent`) и просвечивает body.
110
+ Остальные экраны его не видят — rt-container кроет body непрозрачным фоном
111
+ страницы. Не shorthand `background:`, чтобы не сбросить body{}'ный
112
+ `background-color`. */
113
+ :root[data-theme='dark'] body,
114
+ html.rt-theme-dark body {
115
+ background-attachment: fixed;
116
+ background-image: linear-gradient(156deg, #122341 12.68%, #182142 99.28%);
117
+ }
118
+
119
+ /* rt-logo (чёрный SVG) — инверсия для читаемости на тёмном фоне */
120
+ :root[data-theme='dark'] .rt-logo,
121
+ html.rt-theme-dark .rt-logo {
122
+ filter: invert(1) brightness(1.5);
123
+ }