variable-overrides.scss 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  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: $bg-warning-03;
  142. $danger: $bg-danger-01;
  143. $light: $bg-light-tertiary;
  144. $dark: $neutral-90;
  145. // Body colors
  146. $body-color: $content-primary;
  147. $body-bg: $bg-light-primary;
  148. $body-secondary-color: $content-secondary;
  149. $body-secondary-bg: $bg-light-secondary;
  150. $body-tertiary-color: $content-disabled;
  151. $body-tertiary-bg: $bg-light-tertiary;
  152. // Badges
  153. $badge-font-size: var(--font-size-01);
  154. $badge-font-weight: var(--bs-body-font-weight);
  155. $badge-padding-y: $spacing-01;
  156. $badge-padding-x: $spacing-02;
  157. $badge-border-radius: $border-radius-base;
  158. // Tooltips
  159. $tooltip-max-width: 320px;
  160. $tooltip-border-radius: $border-radius-base;
  161. $tooltip-padding-y: $spacing-04;
  162. $tooltip-padding-x: $spacing-06;
  163. // Popovers
  164. $popover-font-size: var(--font-size-02);
  165. $popover-bg: var(--bg-dark-primary);
  166. $popover-max-width: 320px;
  167. $popover-border-width: 0px; /* stylelint-disable-line length-zero-no-unit */
  168. $popover-border-radius: var(--border-radius-base);
  169. $popover-header-font-size: var(--font-size-02);
  170. $popover-header-bg: var(--bg-dark-primary);
  171. $popover-header-color: var(--content-primary-dark);
  172. $popover-header-padding-y: var(--spacing-04);
  173. $popover-header-padding-x: var(--spacing-06);
  174. $popover-body-color: var(--content-primary-dark);
  175. $popover-body-padding-y: var(--spacing-04);
  176. $popover-body-padding-x: var(--spacing-06);
  177. $popover-arrow-width: var(--spacing-04);
  178. $popover-arrow-height: var(--spacing-02);
  179. $popover-arrow-color: var(--bg-dark-primary);
  180. // Links. Ideally we'd point these to CSS variables but Bootstrap performs
  181. // calculations on link color during compilation.
  182. $link-color: $link-ui;
  183. $link-hover-color: $link-ui-hover;
  184. $link-hover-decoration: none;
  185. // Headings
  186. $headings-font-family: $font-family-sans-serif;
  187. $headings-margin-bottom: $spacing-05;
  188. // Horizontal rules
  189. $hr-margin-y: $spacing-08;
  190. $hr-border-color: $border-divider;
  191. // Modals
  192. $modal-backdrop-bg: $bg-dark-primary;
  193. $modal-backdrop-opacity: 0.72;
  194. $modal-content-color: $content-secondary;
  195. $modal-content-border-color: $border-divider;
  196. $modal-header-padding: $spacing-05 $spacing-06;
  197. $modal-header-padding-x: $spacing-08;
  198. $modal-header-padding-y: $spacing-08;
  199. // Nav toggler
  200. $navbar-toggler-font-size: 30px;
  201. $navbar-toggler-padding-x: var(--spacing-05);
  202. $navbar-toggler-padding-y: var(--spacing-02);
  203. $navbar-toggler-border-radius: var(--border-radius-base);
  204. // Nav links
  205. $navbar-nav-link-padding-x: var(--navbar-btn-padding-h);
  206. // Spacing scale used by Bootstrap utilities
  207. $spacer: $spacing-06;
  208. $spacers: (
  209. 0: 0,
  210. 1: $spacing-02,
  211. 2: $spacing-04,
  212. 3: $spacing-06,
  213. 4: $spacing-08,
  214. 5: $spacing-11,
  215. );
  216. // Dropdowns
  217. $dropdown-link-disabled-color: var(--content-disabled);
  218. $dropdown-spacer: var(--spacing-01);
  219. $dropdown-border-width: 0;
  220. $dropdown-border-radius: var(--border-radius-base);
  221. $dropdown-padding-x: var(--spacing-02);
  222. $dropdown-padding-y: var(--spacing-02);
  223. $dropdown-item-padding-x: var(--spacing-04);
  224. $dropdown-item-padding-y: var(--spacing-04);
  225. $dropdown-header-color: var(--content-secondary);
  226. // Offcanvas
  227. $offcanvas-horizontal-width: 320px;
  228. $offcanvas-padding-x: 12.5px;
  229. $offcanvas-padding-y: 12.5px;
  230. $offcanvas-border-width: 0;
  231. // Code
  232. $code-color: $content-secondary;