_dark-layout.scss 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429
  1. // Core variables and mixins
  2. @import '~@resources/scss/base/bootstrap-extended/include';
  3. @import '~@resources/scss/base/core/colors/palette-variables.scss';
  4. body {
  5. &.dark-layout {
  6. // ------------------------------------------------
  7. // Avatar Component
  8. // ------------------------------------------------
  9. .b-avatar {
  10. &.badge-secondary {
  11. background-color: $theme-dark-body-bg;
  12. }
  13. .b-avatar-text {
  14. span {
  15. color: $white;
  16. }
  17. }
  18. .avatar-icon {
  19. color: $white;
  20. }
  21. &.avatar-border-2 {
  22. img {
  23. border-color: $theme-dark-border-color;
  24. }
  25. }
  26. }
  27. // avatar group
  28. .b-avatar-group {
  29. .b-avatar-group-inner {
  30. .b-avatar {
  31. box-shadow: 0 0 0 2px $theme-dark-card-bg, inset 0 0 0 1px rgba(40, 48, 70, 0.07);
  32. }
  33. }
  34. }
  35. // ------------------------------------------------
  36. // Badge
  37. // ------------------------------------------------
  38. .badge {
  39. color: $white;
  40. }
  41. // ------------------------------------------------
  42. // Navbar
  43. // ------------------------------------------------
  44. .header-navbar {
  45. &.navbar-light {
  46. .navbar-brand {
  47. color: $white;
  48. }
  49. }
  50. }
  51. // ------------------------------------------------
  52. // Aspect
  53. // ------------------------------------------------
  54. .b-aspect {
  55. border-color: $theme-dark-border-color;
  56. }
  57. // ------------------------------------------------
  58. // Popover
  59. // ------------------------------------------------
  60. .popover.b-popover {
  61. //popover top position
  62. &.bs-popover-top {
  63. .arrow {
  64. &::before {
  65. border-top-color: $theme-dark-border-color;
  66. }
  67. &::after {
  68. border-top-color: $theme-dark-card-bg;
  69. }
  70. }
  71. }
  72. //popover left position
  73. &.bs-popover-left {
  74. .arrow {
  75. &::before {
  76. border-left-color: $theme-dark-border-color;
  77. }
  78. &::after {
  79. border-left-color: $theme-dark-card-bg;
  80. }
  81. }
  82. }
  83. //popover right position
  84. &.bs-popover-right {
  85. .arrow {
  86. &::before {
  87. border-right-color: $theme-dark-border-color;
  88. }
  89. &::after {
  90. border-right-color: $theme-dark-card-bg;
  91. }
  92. }
  93. }
  94. }
  95. // ------------------------------------------------
  96. // Range
  97. // ------------------------------------------------
  98. .custom-range {
  99. background-color: $theme-dark-input-bg;
  100. border-color: $theme-dark-border-color;
  101. &:focus {
  102. background-color: $theme-dark-input-bg;
  103. border-color: $primary;
  104. }
  105. }
  106. // ------------------------------------------------
  107. // Modal
  108. // ------------------------------------------------
  109. .modal-content {
  110. .modal-header {
  111. .close {
  112. color: $white;
  113. }
  114. }
  115. .modal-body {
  116. color: $white;
  117. }
  118. }
  119. // ------------------------------------------------
  120. // Switch
  121. // ------------------------------------------------
  122. .custom-switch.switch-lg,
  123. .custom-switch.switch-md {
  124. .custom-control-label::before {
  125. background-color: $theme-dark-body-bg;
  126. }
  127. }
  128. // ------------------------------------------------
  129. // Pagination
  130. // ------------------------------------------------
  131. .pagination {
  132. .page-item {
  133. &.disabled {
  134. .page-link {
  135. // background-color: ;
  136. color: $theme-dark-text-muted-color !important;
  137. }
  138. }
  139. }
  140. }
  141. // ------------------------------------------------
  142. // Toast
  143. // ------------------------------------------------
  144. .b-toast {
  145. .toast {
  146. background-color: rgba($theme-dark-body-bg, 0.85);
  147. color: $theme-dark-body-color;
  148. }
  149. }
  150. // ------------------------------------------------
  151. // Calendar
  152. // ------------------------------------------------
  153. .b-calendar-header {
  154. output {
  155. background: $theme-dark-body-bg;
  156. border-color: $theme-dark-border-color;
  157. color: $theme-dark-body-color;
  158. }
  159. }
  160. .b-calendar-grid {
  161. &.form-control {
  162. background: $theme-dark-body-bg;
  163. border-color: $theme-dark-border-color;
  164. .b-calendar-grid-caption {
  165. color: $theme-dark-body-color;
  166. }
  167. .small {
  168. background: $theme-dark-body-bg;
  169. }
  170. .bg-light {
  171. background-color: $theme-dark-border-color !important;
  172. }
  173. .table-info {
  174. span {
  175. color: $black !important;
  176. }
  177. }
  178. }
  179. // hover color in dark
  180. .b-calendar-grid-body {
  181. .col:not(.table-info) {
  182. span.btn.rounded-circle {
  183. &:hover {
  184. background-color: $theme-dark-card-bg;
  185. }
  186. }
  187. }
  188. }
  189. // btm light
  190. .btn-light {
  191. background-color: $theme-dark-card-bg;
  192. border-color: $theme-dark-border-color;
  193. color: $theme-dark-body-color;
  194. }
  195. // hover color
  196. .table-primary,
  197. .table-primary > th,
  198. .table-primary > td {
  199. .btn-outline-light {
  200. &:hover {
  201. background-color: $theme-dark-body-bg !important;
  202. }
  203. }
  204. }
  205. // ------------------------------------------------
  206. // Table
  207. // ------------------------------------------------
  208. .table.b-table {
  209. thead,
  210. tfoot {
  211. > tr {
  212. > [aria-sort='none'] {
  213. .dark-layout & {
  214. background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14px' height='26px' viewBox='0 0 14 26' version='1.1'%3E%3Ctitle%3Earrow-dark%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='Artboard' transform='translate(-259.000000, -621.000000)' stroke='%23747A88' stroke-width='2'%3E%3Cg id='arrow-dark' transform='translate(260.000000, 622.000000)'%3E%3Cg id='chevron-down' transform='translate(0.000000, 18.000000)'%3E%3Cpolyline id='Path' points='0 0 6 6 12 0'/%3E%3C/g%3E%3Cg id='chevron-up'%3E%3Cpolyline id='Path' points='12 6 6 0 0 6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  215. }
  216. }
  217. > [aria-sort='ascending'] {
  218. background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14px' height='26px' viewBox='0 0 14 26' version='1.1'%3E%3Ctitle%3Eactive-up-dark%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='Artboard' transform='translate(-199.000000, -621.000000)' stroke-width='2'%3E%3Cg id='active-up-dark' transform='translate(200.000000, 622.000000)'%3E%3Cg id='chevron-down' transform='translate(0.000000, 18.000000)' stroke='%23747A88'%3E%3Cpolyline id='Path' points='0 0 6 6 12 0'/%3E%3C/g%3E%3Cg id='chevron-up' stroke='%23B4B7BC'%3E%3Cpolyline id='Path' points='12 6 6 0 0 6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  219. }
  220. > [aria-sort='descending'] {
  221. background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14px' height='26px' viewBox='0 0 14 26' version='1.1'%3E%3Ctitle%3Eactive-dow-dark%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='Artboard' transform='translate(-229.000000, -621.000000)' stroke-width='2'%3E%3Cg id='active-dow-dark' transform='translate(230.000000, 622.000000)'%3E%3Cg id='chevron-down' transform='translate(0.000000, 18.000000)' stroke='%23B4B7BC'%3E%3Cpolyline id='Path' points='0 0 6 6 12 0'/%3E%3C/g%3E%3Cg id='chevron-up' stroke='%23747A88'%3E%3Cpolyline id='Path' points='12 6 6 0 0 6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  222. }
  223. }
  224. }
  225. }
  226. @each $color_name, $color in $colors {
  227. @each $color_type, $color_value in $color {
  228. @if $color_type== 'base' {
  229. // table only for dark
  230. .b-table {
  231. .table-#{$color_name} {
  232. color: $body-color !important;
  233. td {
  234. color: $body-color !important;
  235. }
  236. }
  237. &.table-hover tbody tr th.table-#{$color_name},
  238. &.table-hover tbody tr td.table-#{$color_name} {
  239. background-color: rgba($color_value, 0.3);
  240. color: $white !important;
  241. }
  242. }
  243. }
  244. }
  245. }
  246. }
  247. // ------------------------------------------------
  248. // Time
  249. // ------------------------------------------------
  250. .b-time {
  251. .b-time-header {
  252. .form-control {
  253. background-color: $theme-dark-input-bg;
  254. }
  255. }
  256. }
  257. .b-time[aria-disabled='true'] output,
  258. .b-time[aria-readonly='true'] output,
  259. .b-time output.disabled {
  260. background-color: $theme-dark-card-bg;
  261. }
  262. // ------------------------------------------------
  263. // Spin Button
  264. // ------------------------------------------------
  265. .b-form-spinbutton {
  266. &.form-control {
  267. background-color: $theme-dark-input-bg;
  268. border-color: $theme-dark-input-border-color;
  269. color: $theme-dark-body-color;
  270. svg {
  271. color: $theme-dark-body-color;
  272. }
  273. }
  274. }
  275. // ------------------------------------------------
  276. // Rating
  277. // ------------------------------------------------
  278. .b-rating {
  279. &.form-control {
  280. background-color: $theme-dark-input-bg;
  281. border-color: $theme-dark-input-border-color;
  282. color: $theme-dark-body-color;
  283. }
  284. &.disabled,
  285. &:disabled {
  286. background-color: $theme-dark-input-disabled-bg;
  287. }
  288. }
  289. // ------------------------------------------------
  290. // Date Picker
  291. // ------------------------------------------------
  292. .b-form-datepicker,
  293. .b-form-timepicker {
  294. &.form-control {
  295. background-color: $theme-dark-input-bg;
  296. border-color: $theme-dark-input-border-color;
  297. }
  298. &.is-valid {
  299. border-color: $success;
  300. }
  301. &.is-invalid {
  302. border-color: $danger;
  303. }
  304. }
  305. // ------------------------------------------------
  306. // Time Picker
  307. // ------------------------------------------------
  308. .b-time-header {
  309. output {
  310. border-color: $theme-dark-border-color;
  311. bdi {
  312. color: $theme-dark-body-color;
  313. }
  314. }
  315. }
  316. // ------------------------------------------------
  317. // Tag
  318. // ------------------------------------------------
  319. .b-form-tags {
  320. &.form-control {
  321. background-color: $theme-dark-input-bg;
  322. border-color: $theme-dark-input-border-color;
  323. color: $theme-dark-body-color;
  324. box-shadow: none;
  325. .b-form-tags-list {
  326. .b-form-tag {
  327. .b-form-tag-remove {
  328. background-color: transparent !important;
  329. box-shadow: none !important;
  330. }
  331. }
  332. }
  333. }
  334. }
  335. .b-form-tags-input {
  336. color: $theme-dark-body-color;
  337. }
  338. // ------------------------------------------------
  339. // Checkbox
  340. // ------------------------------------------------
  341. .was-validated .custom-control-input:invalid ~ .custom-control-label::before,
  342. .custom-control-input.is-invalid ~ .custom-control-label::before {
  343. border-color: $danger !important;
  344. }
  345. .was-validated .custom-control-input:valid ~ .custom-control-label::before,
  346. .custom-control-input.is-valid ~ .custom-control-label::before {
  347. border-color: $success !important;
  348. }
  349. // ------------------------------------------------
  350. // Select
  351. // ------------------------------------------------
  352. .was-validated .custom-select:valid,
  353. .custom-select.is-valid {
  354. border-color: $success;
  355. }
  356. .was-validated .custom-select:invalid,
  357. .custom-select.is-invalid {
  358. border-color: $danger;
  359. }
  360. // ------------------------------------------------
  361. // Code Preview
  362. // ------------------------------------------------
  363. pre {
  364. color: $theme-dark-body-color;
  365. }
  366. // ------------------------------------------------
  367. // sidebar
  368. // ------------------------------------------------
  369. .b-sidebar {
  370. // Handle light variant of sidebar for dark
  371. &.bg-white {
  372. background-color: $theme-dark-card-bg !important;
  373. }
  374. // Add dark bg for header (Used in Apps)
  375. .b-sidebar-body {
  376. .content-sidebar-header {
  377. background-color: $theme-dark-body-bg;
  378. }
  379. }
  380. }
  381. .horizontal-menu {
  382. .horizontal-menu-wrapper {
  383. .navbar-horizontal {
  384. ul.dropdown-menu {
  385. &::-webkit-scrollbar-thumb {
  386. background: $theme-dark-body-bg;
  387. }
  388. &::-webkit-scrollbar-track {
  389. background: $theme-dark-border-color;
  390. }
  391. }
  392. }
  393. }
  394. }
  395. }
  396. }