variable-overrides.scss 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. // Overrides for Bootstrap 5's default Sass variables
  2. $prefix: bs-;
  3. // Options
  4. // Quickly modify global styling by enabling or disabling optional features.
  5. $enable-validation-icons: false;
  6. $component-active-color: $white;
  7. // Fonts
  8. $font-family-sans-serif: 'Noto Sans', sans-serif;
  9. $font-family-serif: 'Merriweather', serif;
  10. $font-family-monospace: 'DM Mono', monospace;
  11. $font-size-base: 1rem;
  12. $font-size-sm: var(--font-size-02);
  13. $line-height-base: 1.5;
  14. // Components
  15. // Define common padding and border radius sizes and more.
  16. $focus-ring-width: 2px;
  17. $focus-ring-opacity: 1;
  18. $focus-ring-color: $blue-30;
  19. $focus-ring-blur: 0;
  20. // Buttons
  21. $btn-font-family: $font-family-sans-serif;
  22. $btn-font-weight: 600;
  23. $btn-padding-x: $spacing-06;
  24. $btn-padding-y: $spacing-02;
  25. $btn-border-radius: $border-radius-full;
  26. $btn-border-radius-lg: $border-radius-full;
  27. $btn-border-radius-sm: $border-radius-full;
  28. $btn-white-space: nowrap;
  29. // Tables
  30. $table-cell-padding-y: $spacing-04;
  31. $table-cell-padding-x: $spacing-04;
  32. $table-cell-padding-y-sm: $spacing-02;
  33. $table-cell-padding-x-sm: $spacing-02;
  34. $table-color: var(--content-secondary);
  35. $table-bg: var(--bg-light-primary);
  36. $table-th-font-weight: 600;
  37. $table-striped-color: $table-color;
  38. $table-striped-bg: var(--bg-light-secondary);
  39. $table-active-color: $table-color;
  40. $table-active-bg: $bg-accent-03;
  41. $table-hover-color: $table-color;
  42. $table-hover-bg: var(--bg-light-secondary);
  43. $table-border-color: $border-divider;
  44. $table-striped-order: even;
  45. $table-caption-color: var(--content-secondary);
  46. // Forms
  47. // form-text-variables
  48. $form-text-margin-top: $spacing-04;
  49. $form-text-font-size: var(--font-size-02);
  50. $form-text-color: var(--content-secondary);
  51. // form-label-variables
  52. $form-label-margin-bottom: $spacing-02;
  53. $form-label-font-size: var(--font-size-02);
  54. $form-label-font-weight: 600;
  55. $form-label-color: var(--content-secondary);
  56. // form-input-variables
  57. $input-padding-y: $spacing-03;
  58. $input-padding-x: $spacing-04;
  59. $input-font-size: var(--font-size-03);
  60. $input-line-height: 1.5; // equivalent of var(--line-height-03) - BS expects a unitless value for further calculations
  61. $input-padding-y-sm: $spacing-01;
  62. $input-padding-x-sm: $spacing-03;
  63. $input-font-size-sm: var(--font-size-02);
  64. $input-line-height-sm: 1.25; // equivalent of var(--line-height-02) - BS expects a unitless value for further calculations
  65. $input-padding-y-lg: $spacing-05;
  66. $input-padding-x-lg: $spacing-05;
  67. $input-font-size-lg: var(--font-size-03);
  68. $input-bg: $bg-light-primary;
  69. $input-disabled-color: var(--content-disabled);
  70. $input-disabled-bg: $bg-light-disabled;
  71. $input-disabled-border-color: var(--border-disabled);
  72. $input-color: $content-primary;
  73. $input-border-color: $neutral-60;
  74. $input-border-width: var(--bs-border-width);
  75. $input-border-radius: $border-radius-base;
  76. $input-border-radius-sm: $border-radius-base;
  77. $input-border-radius-lg: $border-radius-base;
  78. $input-focus-border-color: var(--border-active);
  79. $input-placeholder-color: var(--content-placeholder);
  80. $input-plaintext-color: $content-primary;
  81. $input-height-border: calc(
  82. #{$input-border-width} * 2
  83. ); // stylelint-disable-line function-disallowed-list
  84. $input-height: add(
  85. $input-line-height * 1em,
  86. add($input-padding-y * 2, $input-height-border, false)
  87. );
  88. $input-height-sm: add(
  89. $input-line-height-sm * 1em,
  90. add($input-padding-y-sm * 2, $input-height-border, false)
  91. );
  92. $input-height-lg: add(
  93. $input-line-height * 1em,
  94. add($input-padding-y-lg * 2, $input-height-border, false)
  95. );
  96. // form-check-variables
  97. $form-check-label-color: var(--content-primary);
  98. $form-check-input-border: var(--bs-border-width) solid var(--border-primary);
  99. $form-check-input-border-radius: $border-radius-base;
  100. $form-check-input-focus-border: var(--border-primary);
  101. $form-check-input-disabled-opacity: 1;
  102. // form-switch-variables
  103. $form-switch-width: 34px;
  104. $form-switch-padding-start: $spacing-03;
  105. $form-switch-color: $component-active-color;
  106. $form-switch-width: 34px;
  107. $form-switch-padding-start: $spacing-03;
  108. $form-switch-focus-color: $component-active-color;
  109. $form-switch-checked-color: $component-active-color;
  110. // form-group
  111. $form-group-margin-bottom: $spacing-06;
  112. // Form validation
  113. // form-feedback-variables
  114. $form-feedback-invalid-color: $bg-danger-01;
  115. $form-feedback-icon-invalid: null;
  116. $form-feedback-margin-top: 0; // Our feedback component wraps Form.Text, which takes care of top margin
  117. // form-validation-colors
  118. $form-invalid-color: $form-feedback-invalid-color;
  119. $form-invalid-border-color: $bg-danger-01;
  120. // form-validation-states
  121. $form-validation-states: (
  122. 'invalid': (
  123. 'color': $bg-danger-01,
  124. 'icon': $form-feedback-icon-invalid,
  125. 'tooltip-color': #fff,
  126. 'tooltip-bg-color': var(--bs-danger),
  127. 'focus-box-shadow': 0 0 $focus-ring-blur $focus-ring-width
  128. rgba($red-30, $focus-ring-opacity),
  129. 'border-color': var(--#{$prefix}form-invalid-border-color),
  130. ),
  131. );
  132. // Close buttons
  133. $btn-close-color: $content-primary;
  134. $btn-close-opacity: 1;
  135. $btn-close-width: 10px;
  136. // Colors
  137. $primary: $bg-accent-01;
  138. $secondary: $bg-light-primary;
  139. $success: $bg-accent-01;
  140. $info: $bg-info-01;
  141. $warning: $content-warning;
  142. $danger: $bg-danger-01;
  143. $light: $bg-light-tertiary;
  144. $dark: $neutral-90;
  145. $warning-light-gb: $bg-warning-03;
  146. // Theme colors
  147. $theme-colors: (
  148. 'primary': $primary,
  149. 'secondary': $secondary,
  150. 'success': $success,
  151. 'info': $info,
  152. 'warning': $warning,
  153. 'warning-light-bg': $warning-light-gb,
  154. 'danger': $danger,
  155. 'light': $light,
  156. 'dark': $dark,
  157. );
  158. // Body colors
  159. $body-color: $content-primary;
  160. $body-bg: $bg-light-primary;
  161. $body-secondary-color: $content-secondary;
  162. $body-secondary-bg: $bg-light-secondary;
  163. $body-tertiary-color: $content-disabled;
  164. $body-tertiary-bg: $bg-light-tertiary;
  165. // Badges
  166. $badge-font-size: var(--font-size-01);
  167. $badge-font-weight: var(--bs-body-font-weight);
  168. $badge-padding-y: $spacing-01;
  169. $badge-padding-x: $spacing-02;
  170. $badge-border-radius: $border-radius-base;
  171. // Tooltips
  172. $tooltip-max-width: 320px;
  173. $tooltip-border-radius: $border-radius-base;
  174. $tooltip-padding-y: $spacing-04;
  175. $tooltip-padding-x: $spacing-06;
  176. // Popovers
  177. $popover-font-size: var(--font-size-02);
  178. $popover-bg: var(--bg-dark-primary);
  179. $popover-max-width: 320px;
  180. $popover-border-width: 0px; /* stylelint-disable-line length-zero-no-unit */
  181. $popover-border-radius: var(--border-radius-base);
  182. $popover-header-font-size: var(--font-size-02);
  183. $popover-header-bg: var(--bg-dark-primary);
  184. $popover-header-color: var(--content-primary-dark);
  185. $popover-header-padding-y: var(--spacing-04);
  186. $popover-header-padding-x: var(--spacing-06);
  187. $popover-body-color: var(--content-primary-dark);
  188. $popover-body-padding-y: var(--spacing-04);
  189. $popover-body-padding-x: var(--spacing-06);
  190. $popover-arrow-width: var(--spacing-04);
  191. $popover-arrow-height: var(--spacing-02);
  192. $popover-arrow-color: var(--bg-dark-primary);
  193. // Links. Ideally we'd point these to CSS variables but Bootstrap performs
  194. // calculations on link color during compilation.
  195. $link-color: $link-ui;
  196. $link-hover-color: $link-ui-hover;
  197. $link-hover-decoration: none;
  198. // Headings
  199. $headings-font-family: $font-family-sans-serif;
  200. $headings-margin-bottom: $spacing-05;
  201. // Horizontal rules
  202. $hr-margin-y: $spacing-08;
  203. $hr-border-color: $border-divider;
  204. // Modals
  205. $modal-backdrop-bg: $bg-dark-primary;
  206. $modal-backdrop-opacity: 0.72;
  207. $modal-content-color: $content-secondary;
  208. $modal-content-border-color: $border-divider;
  209. $modal-header-padding: $spacing-05 $spacing-06;
  210. $modal-header-padding-x: $spacing-08;
  211. $modal-header-padding-y: $spacing-08;
  212. // Nav toggler
  213. $navbar-toggler-font-size: 30px;
  214. $navbar-toggler-padding-x: var(--spacing-05);
  215. $navbar-toggler-padding-y: var(--spacing-02);
  216. $navbar-toggler-border-radius: var(--border-radius-base);
  217. // Nav links
  218. $navbar-nav-link-padding-x: var(--navbar-btn-padding-h);
  219. // Spacing scale used by Bootstrap utilities
  220. $spacer: $spacing-06;
  221. $spacers: (
  222. 0: 0,
  223. 1: $spacing-02,
  224. 2: $spacing-04,
  225. 3: $spacing-06,
  226. 4: $spacing-08,
  227. 5: $spacing-11,
  228. );
  229. // Dropdowns
  230. $dropdown-link-disabled-color: var(--content-disabled);
  231. $dropdown-spacer: var(--spacing-01);
  232. $dropdown-border-width: 0;
  233. $dropdown-border-radius: var(--border-radius-base);
  234. $dropdown-padding-x: var(--spacing-02);
  235. $dropdown-padding-y: var(--spacing-02);
  236. $dropdown-item-padding-x: var(--spacing-04);
  237. $dropdown-item-padding-y: var(--spacing-04);
  238. $dropdown-header-color: var(--content-secondary);
  239. // Offcanvas
  240. $offcanvas-horizontal-width: 320px;
  241. $offcanvas-padding-x: 12.5px;
  242. $offcanvas-padding-y: 12.5px;
  243. $offcanvas-border-width: 0;
  244. // Code
  245. $code-color: $content-secondary;