RocketChat | Discord Theme

Changes RocketChat color and layout to be more similar to Discord.com's dark theme.

  1. /* ==UserStyle==
  2. -- THEME STUFF --
  3. @name RocketChat | Discord Theme
  4. @version 1.0.4
  5. @description Changes RocketChat color and layout to be more similar to Discord.com's dark theme.
  6.  
  7. -- AUTHOR STUFF --
  8. @namespace Freeplay
  9. @author Freeplay (https://pages.codeberg.org/freeplay/)
  10. @homepageURL https://codeberg.org/Freeplay/UserStyles
  11. @supportURL https://codeberg.org/Freeplay/UserStyles/issues
  12.  
  13. ==/UserStyle== */
  14. /* July, 29 / 20
  15. - Proper Userstyle Metadata
  16. */
  17. /* July, 23 / 20
  18. - Fixes some more issues due to the update, Not everything is fixed but it's back to being usable
  19. - https://gf.qytechs.cn/en/scripts/402919-rocketchat-discord-theme/discussions/54393
  20. /* July, 12 / 20
  21. - Some fixes
  22. */
  23. /* May, 14 / 20
  24. - Fixed Message Dividers
  25. */
  26. @-moz-document domain("stux.chat"), domain("open.rocket.chat") {
  27. /* Yes, I realize this may be a bit messy. Feedback is appreciated!*/
  28. /* Frames */
  29. * {
  30. transition: background 0s !important;
  31. border-color: hsla(0,0%,100%,0.06);
  32. }
  33. .wrapper {
  34. scrollbar-color: #202225 #36393f;
  35. }
  36. .section {
  37. border-color: hsla(0,0%,100%,0.06) !important;
  38. }
  39. .rc-old {
  40. border: none !important;
  41. }
  42. .rcx-box {
  43. color: white;
  44. border: none !important;
  45. /*background-color: #36393f !important;*/
  46. }
  47. .rcx-box:after {
  48. border: none !important;
  49. }
  50. .rcx-tile--elevation-0, .rcx-tile--elevation-1 {
  51. background-color: #202225;
  52. color: white;
  53. }
  54.  
  55. /* Text */
  56. .global-font-family {
  57. font-family: Whitney, Helvetica Neue, Helvetica, Arial, sans-serif !important;
  58. }
  59. .color-primary-font-color, .rc-form-label, .rc-switch__text {
  60. color: #dcddde;
  61. }
  62. .rcx-box--text-style-h1 {
  63. color: white;
  64. }
  65. .rc-switch-double {
  66. color: #7289DA;
  67. }
  68. a {
  69. color: #7289DA;
  70. }
  71. label {
  72. color: white;
  73. }
  74.  
  75. /* Alerts */
  76. .alert {
  77. background-color: #1f2124;
  78. color: white;
  79. border: none;
  80. }
  81. .rcx-callout--type-warning {
  82. background-color: #1f2124;
  83. }
  84. /* Other */
  85. .role-tag, .message-alias, .rc-apps-category, .remove-role, .is-bot {
  86. background-color: #7289DA !important;
  87. border: none !important;
  88. color: white !important;
  89. font-size: 10px !important;
  90. line-height: 15px !important;
  91. border-radius: 3px !important;
  92. font-weight: 500 !important;
  93. padding: 0 4px !important;
  94. text-transform: uppercase;
  95. display: inline-block;
  96. height: 15px !important;
  97. }
  98. .mention-link { /* Mention Tags */
  99. border-radius: 3px !important;
  100. padding: 0 2px !important;
  101. color: #7289da !important;
  102. background: rgba(114,137,218,.1) !important;
  103. font-weight: 500 !important;
  104. }
  105. .mention-link:hover {
  106. background: #7289da !important;
  107. color: white !important;
  108. opacity: 1 !important;
  109. }
  110. .mention-link--user:before {
  111. content: "@";
  112. }
  113. .reactions > li { /* Emoji Reactions */
  114. background-color: rgba(114,137,218,.3) !important;
  115. border: none !important;
  116. border-radius: .25rem;
  117. margin-right: .125rem;
  118. margin-bottom: .125rem;
  119. }
  120. .reactions > li.add-reaction {
  121. background-color: transparent !important;
  122. }
  123.  
  124. /* TextBoxes */
  125. .rc-input__element, .rcx-input-box__wrapper, .rcx-input-box, .rc-tags__input/*, .rcx-select*/ {
  126. background-color: #202225 !important;
  127. border: none !important;
  128. border-radius: 4px !important;
  129. color: white !important;
  130. box-shadow: none !important;
  131. }
  132. .rc-input__icon {
  133. color: #dcddde;
  134. }
  135. /* CodeBlocks */
  136. .CodeMirror-gutters {
  137. background-color: #202225;
  138. }
  139. .code-colors, code, .CodeMirror-scroll {
  140. color: white !important;
  141. background-color: #2f3136 !important;
  142. border: 1px solid #202225 !important;
  143. border-radius: 4px !important;
  144. }
  145. .hljs-keyword, .hljs-string, .cm-string {
  146. color: #dc3233;
  147. }
  148. /* Buttons */
  149. .rc-button, .rcx-button {
  150. background-color: #7289da;
  151. color: white;
  152. border: none;
  153. border-radius: 3px;
  154. font-weight: 500;
  155. line-height: 16px;
  156. font-size: 14px;
  157. /*padding: 2px 16px;*/
  158. }
  159. .rc-button:hover, .rcx-button:hover {
  160. background-color: #677bc4 !important;
  161. opacity: 1 !important;
  162. }
  163. .rc-button--cancel {
  164. background-color: transparent !important;
  165. border: 1px solid rgba(240,71,71,.3) !important;
  166. color: #f04747;
  167. }
  168. .rc-button:disabled, .rcx-button--primary:disabled {
  169. background-color: #7289da;
  170. color: white;
  171. opacity: 0.7;
  172. }
  173. .rc-select, select.rc-input { /* DropDown */
  174. background-color: rgb(79, 84, 92) !important;
  175. color: white !important;
  176. box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 5px 0px !important;
  177. border: none !important;
  178. }
  179. .rc-select__element {
  180. color: white !important;
  181. }
  182. option {
  183. background-color: rgb(79, 84, 92);
  184. color: white;
  185. border: none;
  186. border-radius: 4px;
  187. }
  188. /* Files */
  189. .attachments__item:hover {
  190. background-color: rgba(79,84,92,0.32) !important;
  191. }
  192. .attachments__name {
  193. color: white !important;
  194. }
  195. i {
  196. color: white !important;
  197. }
  198. /*** SIDEBAR ***/
  199. .sidebar {
  200. max-width: 240px;
  201. min-width: 240px;
  202. background-color: #2f3136;
  203. }
  204. .rooms-list {
  205. margin-top: 48px;
  206. scrollbar-color: #202225 transparent;
  207. scrollbar-width: thin;
  208. }
  209. .rooms-list__list:not(:last-child) {
  210. margin: 0 !important;
  211. }
  212. h3.rooms-list__type {
  213. height: 40px !important;
  214. padding: 16px 16px 0 16px;
  215. }
  216. .sidebar-item { /* Sidebar Buttons */
  217. height: 34px !important;
  218. font-size: 16px !important;
  219. font-weight: 500 !important;
  220. color: #8e9297 !important;
  221. margin: 0 8px !important;
  222. padding: 0 !important;
  223. }
  224. .sidebar-item__picture {
  225. display: none;
  226. }
  227. .sidebar-item__body {
  228. font-size: 16px !important;
  229. font-weight: 500 !important;
  230. padding: 0 8px;
  231. }
  232. .sidebar-item:hover {
  233. background-color: rgba(79, 84, 92, 0.16) !important;
  234. }
  235. .sidebar-item--active {
  236. background-color: rgba(79, 84, 92, 0.32) !important;
  237. color: white !important;
  238. }
  239. .sidebar-item--unread {
  240. color: white !important;
  241. }
  242.  
  243. .sidebar__header {
  244. position: fixed;
  245. top: 0;
  246. background-color: #2f3136;
  247. width: 240px;
  248. min-width: 240px;
  249. max-width: 240px;
  250. margin: 0;
  251. padding: 12px;
  252. z-index: 1;
  253. box-shadow: 0 1px 0 rgba(4,4,5,0.2),0 1.5px 0 rgba(6,6,7,0.05),0 2px 0 rgba(4,4,5,0.05);
  254. }
  255. .sidebar__header-thumb {
  256. margin: 0;
  257. margin-right: 10px;
  258. }
  259. .sidebar__toolbar {
  260. margin: 0 !important;
  261. padding: 0 !important;
  262. justify-content: space-evenly;
  263. /*display: grid !important;
  264. grid-template-columns: repeat(auto-fill,minmax(25px, 1fr))*/
  265. }
  266. .sidebar__toolbar-button {
  267. margin: 0;
  268. width: 25px;
  269. }
  270. /*** CONTENT ***/
  271. .content-background-color {
  272. background-color: #36393f;
  273. }
  274. /* HEADER */
  275. .rc-header--room {
  276. /*background-color: #36393f;*/
  277. height: 48px;
  278. padding: 0;
  279. padding-left: 8px;
  280. box-shadow: 0 1px 0 rgba(4,4,5,0.2),0 1.5px 0 rgba(6,6,7,0.05),0 2px 0 rgba(4,4,5,0.05);
  281. border: none !important;
  282. }
  283. .rc-header__wrap {
  284. background-color: transparent;
  285. height: 100%;
  286. }
  287. .rc-header__data {
  288. display: contents;
  289. }
  290. .rc-header__name {
  291. width: min-content;
  292. padding-right: 16px;
  293. border-right: 1px solid #ffffff0f;
  294. color: white;
  295. font-weight: 600;
  296. font-size: 16px !important;
  297. }
  298. .rc-header__topic {
  299. padding-left: 16px;
  300. }
  301. .rc-old .fixed-title {
  302. border: none !important;
  303. }
  304. /* MEssages */
  305. .messages-box ul {
  306. padding: 21px 0 25px;
  307. }
  308. .message {
  309. padding: 0;
  310. padding-left: 72px;
  311. padding-right: 48px;
  312. margin-top: 1.0625rem;
  313. line-height: 1.375rem;
  314. font-size: 100%;
  315. font-weight: 400;
  316. }
  317. .message .thumb {
  318. left: 16px;
  319. width: 40px;
  320. height: 40px;
  321. }
  322. .message .thumb:not(.thumb-small) .avatar {
  323. width: 40px;
  324. height: 40px;
  325. }
  326. .message-oembed, .attachment {
  327. background-color: #2f3136;
  328. border-radius: 4px;
  329. overflow: hidden;
  330. width: max-content;
  331. max-width: 100%;
  332. padding-right: 10px;
  333. }
  334. .rc-old blockquote::before, .attachment-block-border {
  335. display: flex;
  336. width: 4px !important;
  337. border-radius: 0px !important;
  338. margin-top: -5px;
  339. height: calc(100% + 10px)
  340. }
  341. .message-oembed > iframe {
  342. width: 100%;
  343. }
  344. .message-actions {
  345. color: white;
  346. background-color: #36393f;
  347. box-shadow: 0 0 0 1px rgba(4,4,5,0.15);
  348. border: none;
  349. }
  350. .message-actions__button:hover, .message-actions__menu:hover {
  351. background-color: #3e4249;
  352. }
  353. .message:hover, .message.active {
  354. background-color: rgba(4,4,5,0.07);
  355. }
  356. .message a {
  357. color: #7289DA;
  358. }
  359. .message.editing {
  360. background-color: rgba(250,166,26,0.08);
  361. }
  362. .message.new-day::before {
  363. background-color: #36393f;
  364. color: #72767d;
  365. border-radius: 50px;
  366. }
  367. .message.new-day::after {
  368. border-color: hsla(0,0%,100%,0.06) !important;
  369. border-width: thin !important;
  370. }
  371. /* TextBox */
  372. .rc-old .messages-container {
  373. overflow: hidden;
  374. }
  375. .rc-old .messages-container .footer {
  376. min-height: 68px;
  377. padding-bottom: 24px;
  378. background-color: #36393f;
  379. }
  380. .rc-message-box {
  381. background-color: #36393f !important;
  382. padding: 0;
  383. padding-left: 16px;
  384. padding-right: 16px;
  385. }
  386. /*.message-popup-results {
  387. bottom: 0;
  388. position: absolute;
  389. }*/
  390. .rc-message-box .reply-preview {
  391. background-color: #2e3035 !important;
  392. }
  393. .rc-message-box__container {
  394. border: none;
  395. background-color: #40444b;
  396. border-radius: 8px;
  397. padding: 9px 0;
  398. /*margin-bottom: 24px;*/
  399. }
  400. .rc-message-box__textarea {
  401. color: white;
  402. }
  403. .rc-message-box__container.editing {
  404. background-color: rgba(250,166,26,0.08);
  405. }
  406. .rc-message-box__toolbar-formatting {
  407. position: absolute;
  408. bottom: -24px;
  409. }
  410. .rc-message-box__typing {
  411. bottom: 0;
  412. margin-top: auto;
  413. position: fixed;
  414. height: 20px;
  415. color: white;
  416. }
  417. .rc-message-box__typing-user {
  418. color: white !important;
  419. }
  420. /* DropZone */
  421. .dropzone-overlay {
  422. background: rgba(0,0,0,0.8) !important;
  423. }
  424. /* Context SideBar */
  425. .rc-user-info-container {
  426. background-color: transparent !important;
  427. }
  428. .contextual-bar {
  429. background-color: #2f3136;
  430. box-shadow: none !important;
  431. border-inline-start: none !important;
  432. }
  433. .contextual-bar__header, .rcx-\@9jfjls {
  434. background-color: #2f3136;
  435. height: 48px;
  436. box-shadow: 0 1px 0 rgba(4,4,5,0.2),0 1.5px 0 rgba(6,6,7,0.05),0 2px 0 rgba(4,4,5,0.05);
  437. border: none;
  438. z-index: 2;
  439. }
  440. .contextual-bar__content, .rcx-\@10ikbhr {
  441. background-color: #2f3136;
  442. border-radius: 0 !important;
  443. }
  444. .contextual-bar__content > .rc-message-box {
  445. background-color: #2f3136 !important;
  446. }
  447. .rc-user-info__row--separator {
  448. border: none;
  449. }
  450. .rc-member-list__counter { /* Member list count text */
  451. color: white;
  452. }
  453. .rc-user-info-details {
  454. background-color: #202225;
  455. border-radius: 4px;
  456. color: white;
  457. }
  458. .rc-user-info-details__info {
  459. color: white;
  460. }
  461. .rc-member-list__user, .rcx-table__row {
  462. border-radius: 4px !important;
  463. height: 42px !important;
  464. padding: 0 8px !important;
  465. align-items: center !important;
  466. }
  467. .rc-member-list__user:hover, .rcx-table__row:hover {
  468. background-color: rgba(79,84,92,0.16);
  469. }
  470. .rc-member-list__user.active {
  471. background-color: rgba(79,84,92,0.32);
  472. color: white;
  473. }
  474. /* Discussions */
  475. .rcx-\@1usu1xd:hover, .rcx-\@1usu1xd:focus, .rcx-\@2xn2yo:hover, .rcx-\@2xn2yo:focus {
  476. background-color: rgba(79,84,92,0.16);
  477. }
  478. .rcx-\@16ef2pm {
  479. color: white !important;
  480. }
  481. .rc-old .list-view > .title:not(:last-child) { /* Search W/ Regex text */
  482. margin: 0;
  483. }
  484. .rocket-search-tab {
  485. padding: 8px;
  486. scrollbar-color: #202225 #2f3136;
  487. }
  488. .thread {
  489. padding: 8px;
  490. }
  491. .list > .message, .thread > .message {
  492. background-color: #36393f;
  493. border: 1px solid #202225;
  494. border-radius: 4px;
  495. padding-top: 8px;
  496. padding-bottom: 8px;
  497. }
  498. /*** SETTINGS ***/
  499. .flex-nav {
  500. background-color: #2f3136;
  501. }
  502. .rcx-\@197qq4o {
  503. color: white !important;
  504. }
  505. .flex-nav a:hover, .rcx-\@1l00c5f.active {
  506. background-color: #393c43 !important;
  507. }
  508. .rcx-\@txktj6 {
  509. background-color: #36393f !important;
  510. }
  511. /** Admin Settings */
  512. .rc-old .flex-tab-container.opened, .flex-tab-bar {
  513. box-shadow: none !important;
  514. }
  515. .flex-tab-bar .tab-button:hover {
  516. background-color: transparent;
  517. border-right: 1px solid white;
  518. }
  519. .tab-button.active {
  520. background-color: transparent !important;
  521. }
  522. .page-settings a:not(.rc-button) {
  523. color: #b9bbbe;
  524. }
  525. /* Tables */
  526. tr:not(.table-no-click):not(.table-no-pointer):hover {
  527. background-color: #2f3136 !important;
  528. }
  529. .statistics-table, .admin-table-row {
  530. background-color: #36393f !important;
  531. }
  532. .statistics-table:hover, .admin-table-row:hover {
  533. background-color: #2f3136 !important;
  534. }
  535. .rc-table-title {
  536. color: lightgray;
  537. }
  538. .table-fake-th {
  539. color: lightgray !important;
  540. }
  541. .permissions-manager .permission-grid .role-name {
  542. background-color: #36393f !important;
  543. color: white !important;
  544. }
  545. .page-list a:not(.rc-button) {
  546. color: lightgrey;
  547. }
  548. /* Integrations */
  549. .admin-integrations-new-item {
  550. border: none !important;
  551. color: white !important;
  552. }
  553. .admin-integrations-new-item:hover {
  554. background-color: rgba(79,84,92,0.32) !important;
  555. }
  556. /* Federation Dash */
  557. .overview-item > .value {
  558. color: white;
  559. }
  560. /* Accounts */
  561. .rcx-accordion-item__bar[tabindex]:hover {
  562. background-color: transparent !important;
  563. }
  564. /*** POPUPS ***/
  565. .rc-modal-wrapper {
  566. background: rgba(0,0,0,0.85)
  567. }
  568. .rc-modal {
  569. background-color: #36393f;
  570. color: white;
  571. box-shadow: 0 0 0 1px rgba(32,34,37,.6),0 2px 10px 0 rgba(0,0,0,.2);
  572. border-radius: 5px;
  573. width: 440px;
  574. max-height: 660px;
  575. min-height: 200px;
  576. padding: 0;
  577. overflow: hidden;
  578. }
  579. .rc-modal__header {
  580. padding: 20px;
  581. }
  582. .rc-modal__title {
  583. font-weight: 600;
  584. font-size: 16px;
  585. line-height: 20px;
  586. letter-spacing: .3px;
  587. text-transform: uppercase;
  588. }
  589. .rc-modal__content {
  590. padding: 20px;
  591. padding-top: 10px;
  592. }
  593. .rc-modal__content-icon {
  594. display: none;
  595. }
  596. .rc-modal__content-text {
  597. text-align: left;
  598. font-size: 16px;
  599. line-height: 20px;
  600. color: #dcddde;
  601. }
  602. .rc-modal__footer {
  603. background-color: #2f3136;
  604. bottom: 0;
  605. margin-top: auto;
  606. }
  607. /* Emoji Picker */
  608. .emoji-picker {
  609. background-color: #2f3136 !important;
  610. border-radius: 8px;
  611. box-shadow: 0 0 0 1px rgba(4,4,5,0.15), 0 8px 16px rgba(0,0,0,0.24);
  612. padding: 0;
  613. }
  614. .filter-item {
  615. border: none !important;
  616. }
  617. .filter-item.active {
  618. border-bottom: solid !important;
  619. }
  620. .emoji-footer {
  621. display: none;
  622. }
  623. /* Context Menu */
  624. .rc-popover__content {
  625. background-color: #202225;
  626. padding: 6px 8px;
  627. min-width: 188px;
  628. max-width: 320px;
  629. border-radius: 4px;
  630. box-shadow: 0 8px 16px rgba(0,0,0,0.24);
  631. }
  632. .rc-popover__title {
  633. color: #7289da;
  634. padding-top: 8px;
  635. }
  636. .rc-popover__list {
  637. margin-bottom: 8px;
  638. }
  639. .rc-popover__item {
  640. color: #b9bbbe;
  641. height: 35px;
  642. font-size: 14px;
  643. font-weight: 500;
  644. line-height: 18px;
  645. }
  646. .rc-popover__item:hover {
  647. background-color: rgba(79,84,92,0.16);
  648. }
  649. .rc-popover__divider {
  650. height: 1px;
  651. margin: 0;
  652. margin-top: -4px;
  653. background-color: hsla(0,0%,100%,0.06);
  654. }
  655. }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址