@tempots/beatui 0.87.3 → 0.88.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 (177) hide show
  1. package/dist/{ar-DjMvIww5.js → ar-MUKILk4c.js} +1 -1
  2. package/dist/auth/index.cjs.js +1 -1
  3. package/dist/auth/index.es.js +1 -1
  4. package/dist/{auth-divider-V_Se6Qhe.cjs → auth-divider-Cj-xJxF_.cjs} +1 -1
  5. package/dist/{auth-divider-BIefTDoO.js → auth-divider-DvVmqjnk.js} +101 -103
  6. package/dist/beatui.css +732 -671
  7. package/dist/beatui.tailwind.css +714 -662
  8. package/dist/better-auth/index.cjs.js +1 -1
  9. package/dist/better-auth/index.es.js +12 -12
  10. package/dist/{colors-BmLYKmoH.js → colors-BY0Ja_bf.js} +12 -12
  11. package/dist/{de-wChFYqM4.js → de-CEsW1rVX.js} +1 -1
  12. package/dist/deep-merge-Dgy9xj6w.cjs +1 -0
  13. package/dist/{deep-merge-BRqRzEQs.js → deep-merge-OvVqSLSN.js} +443 -429
  14. package/dist/{duration-input-BDEb1Bb7.js → duration-input-BCXujp0V.js} +5 -5
  15. package/dist/{duration-input-BtFL5Vjx.cjs → duration-input-MJz6UO6E.cjs} +1 -1
  16. package/dist/{editor-toolbar-group-CwCCGzEC.js → editor-toolbar-group-Cnta0SOa.js} +6 -3
  17. package/dist/{es-CmPF3IGl.js → es-ChP-aFwC.js} +1 -1
  18. package/dist/{fa-D696e75R.js → fa-CNsrlIqh.js} +1 -1
  19. package/dist/{fr-B0jeX1Hx.js → fr-DgEFKpML.js} +1 -1
  20. package/dist/{he-SgAsIYJA.js → he-B4TqfISZ.js} +1 -1
  21. package/dist/{hi-s9oiIihq.js → hi-TSoDsngT.js} +1 -1
  22. package/dist/{index-KNk3k6NI.js → index-1JaBwDB-.js} +1 -1
  23. package/dist/index-B8cqD9ny.js +838 -0
  24. package/dist/index-CN10Cyqr.cjs +1 -0
  25. package/dist/{index-yMrXbIdg.cjs → index-CTcbhnPw.cjs} +1 -1
  26. package/dist/{index-CaWDj1Vg.cjs → index-D3QVPAme.cjs} +10 -10
  27. package/dist/{index-qa82MK4Z.cjs → index-D4ZFV8Rs.cjs} +1 -1
  28. package/dist/{index-anrXec7K.cjs → index-DF7RFzD9.cjs} +1 -1
  29. package/dist/{index-B0t-nt7i.js → index-DOc1_-Nm.js} +4 -4
  30. package/dist/{index-DdqGL9Jk.js → index-D_aTUfqS.js} +701 -684
  31. package/dist/{index-BFe-x3-z.js → index-DfPkCwdC.js} +2 -2
  32. package/dist/index.cjs.js +4 -4
  33. package/dist/index.es.js +2285 -2260
  34. package/dist/{index.esm-ChUrm4xR.js → index.esm-By0m3ki1.js} +3 -3
  35. package/dist/{input-container-DhUiLmXE.js → input-container-BBWCDGTv.js} +1 -1
  36. package/dist/{it-Dc4IMciD.js → it-BrbebXg4.js} +1 -1
  37. package/dist/{ja-D2t2g5xj.js → ja-DcfOktrV.js} +1 -1
  38. package/dist/json-schema/index.cjs.js +1 -1
  39. package/dist/json-schema/index.es.js +97 -103
  40. package/dist/json-schema-display/index.cjs.js +1 -1
  41. package/dist/json-schema-display/index.es.js +15 -15
  42. package/dist/json-structure/index.cjs.js +1 -1
  43. package/dist/json-structure/index.es.js +349 -351
  44. package/dist/{ko-BRylA5JZ.js → ko-73e6t369.js} +1 -1
  45. package/dist/lexical/index.cjs.js +5 -12
  46. package/dist/lexical/index.es.js +57 -87
  47. package/dist/lexical.css +24 -23
  48. package/dist/markdown/index.cjs.js +1 -1
  49. package/dist/markdown/index.es.js +1 -1
  50. package/dist/markdown.css +7 -7
  51. package/dist/{menu-Ui4lUPHM.js → menu-CV85y3Xf.js} +1 -1
  52. package/dist/{modal-Dkje8L_l.js → modal-BBJWY7NB.js} +5 -5
  53. package/dist/{modal-Coenk8Fy.cjs → modal-jJMS0ZlW.cjs} +1 -1
  54. package/dist/monaco/index.es.js +1 -1
  55. package/dist/{nl-Dh7LUWAn.js → nl-Bq-1-ulc.js} +1 -1
  56. package/dist/notice-9lpZ-VDn.cjs +1 -0
  57. package/dist/{notice-BmkckDsD.js → notice-AUVH8Lho.js} +26 -28
  58. package/dist/{oneof-branch-detection-BED_n2MT.js → oneof-branch-detection-BQnRjp9P.js} +1740 -1734
  59. package/dist/{oneof-branch-detection-Vov_e3kI.cjs → oneof-branch-detection-BsGhMslW.cjs} +6 -6
  60. package/dist/{pl-XEG-p1Q9.js → pl-Du9-VCfW.js} +1 -1
  61. package/dist/prosemirror/index.cjs.js +1 -1
  62. package/dist/prosemirror/index.es.js +1 -1
  63. package/dist/prosemirror.css +7 -7
  64. package/dist/{pt-DYsDA2sZ.js → pt-B2UqqSAB.js} +1 -1
  65. package/dist/{ru-BTKBykp-.js → ru-DiWa2inw.js} +1 -1
  66. package/dist/stack-4VUGISn6.cjs +1 -0
  67. package/dist/{stack-BJgsPJ9A.js → stack-Bm-UZosx.js} +145 -139
  68. package/dist/styles-url-4g2WnNJ8.js +4 -0
  69. package/dist/{styles-url-DZhZ-9Bf.js → styles-url-CJYy5nML.js} +1 -1
  70. package/dist/{styles-url-YAJ6Q1GS.cjs → styles-url-D8nVwSmZ.cjs} +1 -1
  71. package/dist/{styles-url-BSUFsmMD.cjs → styles-url-evUdl8tK.cjs} +1 -1
  72. package/dist/{styles-url-BvcVGpBJ.js → styles-url-hKxIOumK.js} +1 -1
  73. package/dist/styles-url-mlDYoWbF.cjs +1 -0
  74. package/dist/tailwind/preset.cjs.js +1 -1
  75. package/dist/tailwind/preset.es.js +2 -2
  76. package/dist/tailwind/vite-plugin.cjs.js +1 -1
  77. package/dist/tailwind/vite-plugin.es.js +1 -1
  78. package/dist/{text-input-BZmAB3_o.js → text-input-6FD7p7hN.js} +5 -5
  79. package/dist/{theme-BzpMLdvH.js → theme-kQZEeusG.js} +4 -4
  80. package/dist/{toolbar-Pdj-F80l.js → toolbar-Cr0JGj5h.js} +1 -1
  81. package/dist/{tr-Cp8ZCUic.js → tr-Culcm2Zb.js} +1 -1
  82. package/dist/{translations-jUYta1_1.js → translations-Cttn6w0G.js} +1 -1
  83. package/dist/{translations-BGblCUBj.js → translations-uEUkO6gJ.js} +30 -30
  84. package/dist/types/auth-i18n/translations.d.ts +2 -2
  85. package/dist/types/beatui-i18n/translations.d.ts +2 -2
  86. package/dist/types/better-auth/components/authenticated.d.ts +2 -2
  87. package/dist/types/better-auth/components/better-auth-container.d.ts +1 -1
  88. package/dist/types/better-auth/i18n/translations.d.ts +2 -2
  89. package/dist/types/better-auth/provider.d.ts +2 -2
  90. package/dist/types/components/auth/auth-container.d.ts +1 -1
  91. package/dist/types/components/auth/auth-email-prop.d.ts +1 -1
  92. package/dist/types/components/beatui.d.ts +1 -1
  93. package/dist/types/components/button/button.d.ts +1 -1
  94. package/dist/types/components/content/native-pdf-preview.d.ts +1 -1
  95. package/dist/types/components/content/pdfjs-preview.d.ts +1 -1
  96. package/dist/types/components/data/icon.d.ts +1 -1
  97. package/dist/types/components/data/page-drop-zone.d.ts +1 -1
  98. package/dist/types/components/data/unstyled-drop-zone.d.ts +1 -1
  99. package/dist/types/components/editor-toolbar/editor-toolbar-button.d.ts +1 -1
  100. package/dist/types/components/editor-toolbar/editor-toolbar-group.d.ts +1 -1
  101. package/dist/types/components/form/control/control.d.ts +2 -2
  102. package/dist/types/components/form/control/ensure-control.d.ts +1 -1
  103. package/dist/types/components/form/control/list-control.d.ts +1 -1
  104. package/dist/types/components/form/controller/color-controller.d.ts +4 -4
  105. package/dist/types/components/form/input/appearance-selector.d.ts +2 -2
  106. package/dist/types/components/form/input/base64-input.d.ts +1 -1
  107. package/dist/types/components/form/input/base64s-input.d.ts +1 -1
  108. package/dist/types/components/form/input/combobox-tags-input.d.ts +1 -1
  109. package/dist/types/components/form/input/email-input.d.ts +1 -1
  110. package/dist/types/components/form/input/file-input.d.ts +1 -1
  111. package/dist/types/components/form/input/files-input.d.ts +1 -1
  112. package/dist/types/components/form/input/input-options.d.ts +1 -1
  113. package/dist/types/components/form/input/list-input.d.ts +1 -1
  114. package/dist/types/components/form/input/nullable-base64-input.d.ts +1 -1
  115. package/dist/types/components/form/input/nullable-plain-date-input.d.ts +12 -12
  116. package/dist/types/components/form/input/nullable-plain-date-time-input.d.ts +12 -12
  117. package/dist/types/components/form/input/nullable-plain-time-input.d.ts +12 -12
  118. package/dist/types/components/form/input/nullable-plain-year-month-input.d.ts +12 -12
  119. package/dist/types/components/form/input/password-input.d.ts +1 -1
  120. package/dist/types/components/form/input/plain-date-input.d.ts +12 -12
  121. package/dist/types/components/form/input/plain-date-time-input.d.ts +12 -12
  122. package/dist/types/components/form/input/plain-time-input.d.ts +12 -12
  123. package/dist/types/components/form/input/plain-year-month-input.d.ts +12 -12
  124. package/dist/types/components/form/input/select-tags-input.d.ts +3 -3
  125. package/dist/types/components/form/input/step-utils.d.ts +5 -0
  126. package/dist/types/components/form/use-form.d.ts +3 -3
  127. package/dist/types/components/i18n/locale-direction.d.ts +1 -1
  128. package/dist/types/components/i18n/locale-selector.d.ts +1 -1
  129. package/dist/types/components/i18n/locale.d.ts +1 -1
  130. package/dist/types/components/i18n/make-i18nprovider.d.ts +2 -2
  131. package/dist/types/components/layout/app-shell.d.ts +1 -1
  132. package/dist/types/components/lexical/code/language-selector.d.ts +1 -1
  133. package/dist/types/components/lexical/floating/block-handle.d.ts +1 -1
  134. package/dist/types/components/lexical/floating/floating-toolbar.d.ts +1 -1
  135. package/dist/types/components/lexical/floating/slash-command-palette.d.ts +1 -1
  136. package/dist/types/components/lexical/table/table-controls.d.ts +1 -1
  137. package/dist/types/components/lexical/toolbar/lexical-toolbar.d.ts +1 -1
  138. package/dist/types/components/lexical/toolbar/toolbar-helpers.d.ts +2 -2
  139. package/dist/types/components/media/pdf-page-viewer.d.ts +1 -1
  140. package/dist/types/components/misc/notification-provider.d.ts +2 -2
  141. package/dist/types/components/navigation/link/button-link.d.ts +1 -1
  142. package/dist/types/components/navigation/link/link.d.ts +1 -1
  143. package/dist/types/components/navigation/link/navigation-link.d.ts +1 -1
  144. package/dist/types/components/navigation/pagination.d.ts +1 -1
  145. package/dist/types/components/navigation/sidebar/sidebar.d.ts +2 -2
  146. package/dist/types/components/navigation/toolbar/toolbar.d.ts +1 -1
  147. package/dist/types/components/prosemirror/link-control.d.ts +1 -1
  148. package/dist/types/components/prosemirror/prosemirror-toolbar.d.ts +1 -1
  149. package/dist/types/components/prosemirror/utils.d.ts +2 -2
  150. package/dist/types/components/theme/theme.d.ts +2 -2
  151. package/dist/types/i18n/translate.d.ts +1 -1
  152. package/dist/types/tailwind/preset.d.ts +1 -1
  153. package/dist/types/tailwind/vite-plugin.d.ts +1 -1
  154. package/dist/types/tokens/borders.d.ts +104 -0
  155. package/dist/types/tokens/controls.d.ts +127 -0
  156. package/dist/types/tokens/index.d.ts +2 -0
  157. package/dist/types/tokens/radius.d.ts +14 -14
  158. package/dist/types/tokens/typography.d.ts +33 -33
  159. package/dist/types/utils/delay-signal.d.ts +1 -1
  160. package/dist/types/utils/use-animated-toggle.d.ts +22 -22
  161. package/dist/{ur-DkIYJxsF.js → ur-Deb-uH6b.js} +1 -1
  162. package/dist/{use-animated-toggle-89fKlXxy.js → use-animated-toggle-C7PTmnZi.js} +7 -7
  163. package/dist/{use-form-B_mCauP0.cjs → use-form-i97PToWB.cjs} +1 -1
  164. package/dist/{use-form-BSvvERhX.js → use-form-lg6-7Brc.js} +14 -13
  165. package/dist/{vi-DKw6PBja.js → vi-CUsCVh3n.js} +1 -1
  166. package/dist/widget-customization-BLvD4Lqt.cjs +1 -0
  167. package/dist/{widget-customization-DFr3ycD7.js → widget-customization-CDD72zYs.js} +29 -29
  168. package/dist/{zh-CaKHseXJ.js → zh-Dil2Jft8.js} +1 -1
  169. package/package.json +35 -31
  170. package/dist/deep-merge-CvN7Xvd1.cjs +0 -1
  171. package/dist/index-BywbRDsb.cjs +0 -1
  172. package/dist/index-D2_J_-XS.js +0 -671
  173. package/dist/notice-DMK7dx9a.cjs +0 -1
  174. package/dist/stack-DcZ_u50f.cjs +0 -1
  175. package/dist/styles-url-CCopc5pG.js +0 -4
  176. package/dist/styles-url-CEDSZTyZ.cjs +0 -1
  177. package/dist/widget-customization-BASfRpF7.cjs +0 -1
package/dist/beatui.css CHANGED
@@ -346,36 +346,36 @@ ol {
346
346
  --spacing-3xl: calc(var(--spacing-base) * 12);
347
347
  --spacing-4xl: calc(var(--spacing-base) * 16);
348
348
  --spacing-full: 2000px;
349
- --base-font-size: 1rem;
350
- --font-size-3xs: calc(var(--base-font-size) * 0.5);
351
- --font-size-3xs-lh: calc(var(--base-font-size) * 0.75);
352
- --font-size-2xs: calc(var(--base-font-size) * 0.625);
353
- --font-size-2xs-lh: calc(var(--base-font-size) * 0.75);
354
- --font-size-xs: calc(var(--base-font-size) * 0.75);
355
- --font-size-xs-lh: var(--base-font-size);
356
- --font-size-sm: calc(var(--base-font-size) * 0.875);
357
- --font-size-sm-lh: calc(var(--base-font-size) * 1.25);
358
- --font-size-md: var(--base-font-size);
359
- --font-size-md-lh: calc(var(--base-font-size) * 1.5);
360
- --font-size-lg: calc(var(--base-font-size) * 1.125);
361
- --font-size-lg-lh: calc(var(--base-font-size) * 1.75);
362
- --font-size-xl: calc(var(--base-font-size) * 1.25);
363
- --font-size-xl-lh: calc(var(--base-font-size) * 1.75);
364
- --font-size-2xl: calc(var(--base-font-size) * 1.5);
365
- --font-size-2xl-lh: calc(var(--base-font-size) * 2);
366
- --font-size-3xl: calc(var(--base-font-size) * 1.875);
367
- --font-size-3xl-lh: calc(var(--base-font-size) * 2.25);
368
- --font-size-4xl: calc(var(--base-font-size) * 2.25);
369
- --font-size-4xl-lh: calc(var(--base-font-size) * 2.5);
370
- --font-size-5xl: calc(var(--base-font-size) * 3);
349
+ --font-size-base: 1rem;
350
+ --font-size-3xs: calc(var(--font-size-base) * 0.5);
351
+ --font-size-3xs-lh: calc(var(--font-size-base) * 0.75);
352
+ --font-size-2xs: calc(var(--font-size-base) * 0.625);
353
+ --font-size-2xs-lh: calc(var(--font-size-base) * 0.75);
354
+ --font-size-xs: calc(var(--font-size-base) * 0.75);
355
+ --font-size-xs-lh: var(--font-size-base);
356
+ --font-size-sm: calc(var(--font-size-base) * 0.875);
357
+ --font-size-sm-lh: calc(var(--font-size-base) * 1.25);
358
+ --font-size-md: var(--font-size-base);
359
+ --font-size-md-lh: calc(var(--font-size-base) * 1.5);
360
+ --font-size-lg: calc(var(--font-size-base) * 1.125);
361
+ --font-size-lg-lh: calc(var(--font-size-base) * 1.75);
362
+ --font-size-xl: calc(var(--font-size-base) * 1.25);
363
+ --font-size-xl-lh: calc(var(--font-size-base) * 1.75);
364
+ --font-size-2xl: calc(var(--font-size-base) * 1.5);
365
+ --font-size-2xl-lh: calc(var(--font-size-base) * 2);
366
+ --font-size-3xl: calc(var(--font-size-base) * 1.875);
367
+ --font-size-3xl-lh: calc(var(--font-size-base) * 2.25);
368
+ --font-size-4xl: calc(var(--font-size-base) * 2.25);
369
+ --font-size-4xl-lh: calc(var(--font-size-base) * 2.5);
370
+ --font-size-5xl: calc(var(--font-size-base) * 3);
371
371
  --font-size-5xl-lh: 1;
372
- --font-size-6xl: calc(var(--base-font-size) * 3.75);
372
+ --font-size-6xl: calc(var(--font-size-base) * 3.75);
373
373
  --font-size-6xl-lh: 1;
374
- --font-size-7xl: calc(var(--base-font-size) * 4.5);
374
+ --font-size-7xl: calc(var(--font-size-base) * 4.5);
375
375
  --font-size-7xl-lh: 1;
376
- --font-size-8xl: calc(var(--base-font-size) * 6);
376
+ --font-size-8xl: calc(var(--font-size-base) * 6);
377
377
  --font-size-8xl-lh: 1;
378
- --font-size-9xl: calc(var(--base-font-size) * 8);
378
+ --font-size-9xl: calc(var(--font-size-base) * 8);
379
379
  --font-size-9xl-lh: 1;
380
380
  --font-weight-thin: 100;
381
381
  --font-weight-extralight: 200;
@@ -410,11 +410,11 @@ ol {
410
410
  --breakpoint-xl: 80rem;
411
411
  --breakpoint-2xl: 96rem;
412
412
  --radius-none: 0;
413
- --radius-xs: calc(var(--spacing-base) / 2);
414
- --radius-sm: var(--spacing-base);
415
- --radius-md: calc(var(--spacing-base) * 1.5);
416
- --radius-lg: calc(var(--spacing-base) * 2);
417
- --radius-xl: calc(var(--spacing-base) * 3);
413
+ --radius-xs: var(--spacing-xs);
414
+ --radius-sm: var(--spacing-sm);
415
+ --radius-md: var(--spacing-smh);
416
+ --radius-lg: var(--spacing-md);
417
+ --radius-xl: var(--spacing-mdh);
418
418
  --radius-full: 9999px;
419
419
  --shadow-none: none;
420
420
  --shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
@@ -456,6 +456,40 @@ ol {
456
456
  --z-index-popover: 80;
457
457
  --z-index-notification: 90;
458
458
  --z-index-maximum: 100;
459
+ --border-width-none: 0;
460
+ --border-width-thin: 1px;
461
+ --border-width-default: 1.5px;
462
+ --border-width-medium: 2px;
463
+ --border-width-thick: 3px;
464
+ --outline-width-none: 0;
465
+ --outline-width-default: 1px;
466
+ --outline-width-focus: 2px;
467
+ --control-height-xs: calc(var(--spacing-base) * 7);
468
+ --control-height-sm: calc(var(--spacing-base) * 8);
469
+ --control-height-md: calc(var(--spacing-base) * 10);
470
+ --control-height-lg: calc(var(--spacing-base) * 12);
471
+ --control-height-xl: calc(var(--spacing-base) * 14);
472
+ --control-padding-block-xs: var(--spacing-xs);
473
+ --control-padding-block-sm: var(--spacing-sm);
474
+ --control-padding-block-md: var(--spacing-md);
475
+ --control-padding-block-lg: var(--spacing-mdh);
476
+ --control-padding-block-xl: var(--spacing-lg);
477
+ --control-padding-inline-xs: var(--spacing-md);
478
+ --control-padding-inline-sm: var(--spacing-mdh);
479
+ --control-padding-inline-md: var(--spacing-lg);
480
+ --control-padding-inline-lg: var(--spacing-lgh);
481
+ --control-padding-inline-xl: var(--spacing-xl);
482
+ --control-gap-xs: var(--spacing-xs);
483
+ --control-gap-sm: var(--spacing-sm);
484
+ --control-gap-md: var(--spacing-smh);
485
+ --control-gap-lg: var(--spacing-md);
486
+ --control-gap-xl: var(--spacing-mdh);
487
+ --overlay-width-xs: min(20rem, 90vw);
488
+ --overlay-width-sm: min(25rem, 90vw);
489
+ --overlay-width-md: min(37.5rem, 90vw);
490
+ --overlay-width-lg: min(50rem, 90vw);
491
+ --overlay-width-xl: min(62.5rem, 90vw);
492
+ --overlay-width-min-width: 12rem;
459
493
  }
460
494
 
461
495
  :root {
@@ -580,12 +614,12 @@ ol {
580
614
  --font-mono: var(--font-family-mono);
581
615
  --font-ui: var(--font-family-sans);
582
616
  --font-prose: var(--font-family-serif);
583
- --default-font-family: var(--font-body);
584
- --default-heading-font-family: var(--font-heading);
585
- --default-display-font-family: var(--font-display);
586
- --default-ui-font-family: var(--font-ui);
587
- --default-prose-font-family: var(--font-prose);
588
- --default-mono-font-family: var(--font-mono);
617
+ --font-family-default: var(--font-body);
618
+ --font-family-default-heading: var(--font-heading);
619
+ --font-family-default-display: var(--font-display);
620
+ --font-family-default-ui: var(--font-ui);
621
+ --font-family-default-prose: var(--font-prose);
622
+ --font-family-default-mono: var(--font-mono);
589
623
  --radius-control: var(--radius-md);
590
624
  --radius-control-sm: var(--radius-sm);
591
625
  --radius-control-xs: var(--radius-xs);
@@ -606,12 +640,12 @@ ol {
606
640
  --motion-transition-overlay: var(--motion-duration-relaxed);
607
641
  --motion-transition-emphasis: var(--motion-duration-fast);
608
642
  --motion-easing-emphasis: var(--motion-easing-emphasized);
609
- --spacing-stack-2xs: calc(var(--spacing-base) / 2);
610
- --spacing-stack-xs: calc(var(--spacing-base) * 1);
611
- --spacing-stack-sm: calc(var(--spacing-base) * 2);
612
- --spacing-stack-md: calc(var(--spacing-base) * 3);
613
- --spacing-stack-lg: calc(var(--spacing-base) * 4);
614
- --spacing-stack-xl: calc(var(--spacing-base) * 6);
643
+ --spacing-stack-2xs: var(--spacing-xs);
644
+ --spacing-stack-xs: var(--spacing-sm);
645
+ --spacing-stack-sm: var(--spacing-md);
646
+ --spacing-stack-md: var(--spacing-mdh);
647
+ --spacing-stack-lg: var(--spacing-lg);
648
+ --spacing-stack-xl: var(--spacing-xl);
615
649
  --text-shadow-button-filled: var(--text-shadow-sm);
616
650
  --text-shadow-button-light: var(--text-shadow-xs);
617
651
  --text-shadow-button-default: var(--text-shadow-2xs);
@@ -637,7 +671,7 @@ html,
637
671
  -webkit-text-size-adjust: 100%;
638
672
  tab-size: 4;
639
673
  font-family: var(
640
- --default-font-family,
674
+ --font-family-default,
641
675
  ui-sans-serif,
642
676
  system-ui,
643
677
  sans-serif,
@@ -646,8 +680,11 @@ html,
646
680
  'Segoe UI Symbol',
647
681
  'Noto Color Emoji'
648
682
  );
649
- font-feature-settings: var(--default-font-feature-settings, normal);
650
- font-variation-settings: var(--default-font-variation-settings, normal);
683
+ font-feature-settings: var(--font-family-default-feature-settings, normal);
684
+ font-variation-settings: var(
685
+ --font-family-default-variation-settings,
686
+ normal
687
+ );
651
688
  font-size: var(--font-size-base, 1rem);
652
689
  color: var(--text-normal-light, var(--color-neutral-900));
653
690
  background-color: var(--bg-background-light, var(--color-white));
@@ -665,7 +702,7 @@ body {
665
702
  hr {
666
703
  height: 0;
667
704
  color: inherit;
668
- border-top-width: 1px;
705
+ border-top-width: var(--border-width-thin);
669
706
  }
670
707
 
671
708
  abbr:where([title]) {
@@ -682,7 +719,7 @@ h6 {
682
719
  font-size: inherit;
683
720
  font-weight: inherit;
684
721
  font-family: var(
685
- --default-heading-font-family,
722
+ --font-family-default-heading,
686
723
  var(--font-heading, var(--font-body, var(--font-family-sans)))
687
724
  );
688
725
  }
@@ -703,7 +740,7 @@ kbd,
703
740
  samp,
704
741
  pre {
705
742
  font-family: var(
706
- --default-mono-font-family,
743
+ --font-family-default-mono,
707
744
  ui-monospace,
708
745
  SFMono-Regular,
709
746
  Menlo,
@@ -713,8 +750,14 @@ pre {
713
750
  'Courier New',
714
751
  monospace
715
752
  );
716
- font-feature-settings: var(--default-mono-font-feature-settings, normal);
717
- font-variation-settings: var(--default-mono-font-variation-settings, normal);
753
+ font-feature-settings: var(
754
+ --font-family-default-mono-feature-settings,
755
+ normal
756
+ );
757
+ font-variation-settings: var(
758
+ --font-family-default-mono-variation-settings,
759
+ normal
760
+ );
718
761
  font-size: 1em;
719
762
  }
720
763
 
@@ -853,7 +896,7 @@ textarea {
853
896
  }
854
897
 
855
898
  ::-webkit-calendar-picker-indicator {
856
- line-height: 1;
899
+ line-height: var(--line-height-none);
857
900
  }
858
901
 
859
902
  :-moz-ui-invalid {
@@ -993,7 +1036,8 @@ input:where([type='button'], [type='reset'], [type='submit']),
993
1036
 
994
1037
  .b-rtl blockquote,
995
1038
  .b-ltr blockquote {
996
- border-inline-start: 4px solid var(--color-base-300);
1039
+ border-inline-start: calc(2 * var(--border-width-medium)) solid
1040
+ var(--color-base-300);
997
1041
  border-inline-end: none;
998
1042
  padding-inline-start: 1rem;
999
1043
  padding-inline-end: 0;
@@ -1147,7 +1191,7 @@ a:focus-visible {
1147
1191
  padding: var(--spacing-md);
1148
1192
 
1149
1193
  /* Border */
1150
- border: 2px solid var(--action-card-border);
1194
+ border: var(--border-width-medium) solid var(--action-card-border);
1151
1195
  border-radius: var(--radius-lg);
1152
1196
 
1153
1197
  /* Background */
@@ -1288,7 +1332,7 @@ a:focus-visible {
1288
1332
 
1289
1333
  /* Focus styles for accessibility */
1290
1334
  .bc-action-card--clickable:focus-visible {
1291
- outline: 2px solid var(--color-primary-500);
1335
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
1292
1336
  outline-offset: 2px;
1293
1337
  }
1294
1338
 
@@ -1310,7 +1354,7 @@ a:focus-visible {
1310
1354
  --animation-easing: cubic-bezier(0.2, 0, 0, 1);
1311
1355
  --scale-factor: 0.95;
1312
1356
  --transform-origin: center;
1313
- --slide-distance: calc(var(--spacing-base) * 6);
1357
+ --slide-distance: var(--spacing-xl);
1314
1358
 
1315
1359
  transition-property: opacity, transform;
1316
1360
  transition-duration: var(--animation-duration);
@@ -1630,7 +1674,7 @@ a:focus-visible {
1630
1674
  /* High contrast mode support */
1631
1675
  @media (prefers-contrast: high) {
1632
1676
  .bc-auth-container--styled {
1633
- border: 2px solid var(--border-default);
1677
+ border: var(--border-width-medium) solid var(--border-default);
1634
1678
  }
1635
1679
 
1636
1680
  .dark .bc-auth-container--styled {
@@ -1703,7 +1747,7 @@ a:focus-visible {
1703
1747
  .bc-auth-form__social {
1704
1748
  display: flex;
1705
1749
  flex-direction: column;
1706
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
1750
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
1707
1751
  }
1708
1752
 
1709
1753
  /* Form fields */
@@ -1716,7 +1760,7 @@ a:focus-visible {
1716
1760
  .bc-auth-form__fields {
1717
1761
  display: flex;
1718
1762
  flex-direction: column;
1719
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
1763
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
1720
1764
  }
1721
1765
 
1722
1766
  /* Remember me checkbox */
@@ -1790,7 +1834,7 @@ a:focus-visible {
1790
1834
  }
1791
1835
 
1792
1836
  .bc-auth-form__link:focus-visible {
1793
- outline: 2px solid var(--interactive-focus);
1837
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
1794
1838
  outline-offset: 2px;
1795
1839
  }
1796
1840
 
@@ -1806,7 +1850,7 @@ a:focus-visible {
1806
1850
  /* Responsive adjustments */
1807
1851
  @media (width < 40rem) {
1808
1852
  .bc-auth-form {
1809
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
1853
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
1810
1854
  }
1811
1855
 
1812
1856
  .bc-auth-form__title {
@@ -1814,7 +1858,7 @@ a:focus-visible {
1814
1858
  }
1815
1859
 
1816
1860
  .bc-auth-form__fields {
1817
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
1861
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
1818
1862
  }
1819
1863
  }
1820
1864
 
@@ -1834,8 +1878,8 @@ a:focus-visible {
1834
1878
  }
1835
1879
 
1836
1880
  .bc-social-login-buttons.bc-stack {
1837
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
1838
- padding-inline: calc(var(--spacing-base) * 8);
1881
+ gap: var(--spacing-stack-sm, var(--spacing-md));
1882
+ padding-inline: var(--spacing-2xl);
1839
1883
  width: 100%;
1840
1884
  }
1841
1885
 
@@ -1848,7 +1892,7 @@ a:focus-visible {
1848
1892
  align-items: center;
1849
1893
  justify-content: center;
1850
1894
  width: 100%;
1851
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
1895
+ gap: var(--spacing-stack-sm, var(--spacing-md));
1852
1896
  }
1853
1897
 
1854
1898
  .bc-social-login-button__icon {
@@ -1857,7 +1901,7 @@ a:focus-visible {
1857
1901
  justify-content: center;
1858
1902
  background-color: var(--color-white);
1859
1903
  border-radius: var(--radius-full);
1860
- padding: calc(var(--spacing-base) * 1);
1904
+ padding: var(--spacing-sm);
1861
1905
  }
1862
1906
 
1863
1907
  .dark .bc-social-login-button__icon {
@@ -1878,7 +1922,7 @@ a:focus-visible {
1878
1922
  align-items: center;
1879
1923
  justify-content: center;
1880
1924
  text-align: center;
1881
- padding-inline: calc(var(--spacing-base) * 4);
1925
+ padding-inline: var(--spacing-lg);
1882
1926
  }
1883
1927
 
1884
1928
  /* Provider-specific icon backgrounds and colors */
@@ -2039,7 +2083,7 @@ a:focus-visible {
2039
2083
  .bc-two-factor__methods {
2040
2084
  display: flex;
2041
2085
  gap: var(--spacing-sm);
2042
- border-bottom: 1px solid var(--color-neutral-200);
2086
+ border-bottom: var(--border-width-thin) solid var(--color-neutral-200);
2043
2087
  padding-bottom: var(--spacing-sm);
2044
2088
  }
2045
2089
 
@@ -2068,7 +2112,7 @@ a:focus-visible {
2068
2112
  .bc-two-factor__method-button--active {
2069
2113
  color: var(--color-primary-600);
2070
2114
  font-weight: var(--font-weight-semibold);
2071
- border-bottom: 2px solid var(--color-primary-600);
2115
+ border-bottom: var(--border-width-medium) solid var(--color-primary-600);
2072
2116
  }
2073
2117
 
2074
2118
  .dark .bc-two-factor__method-button:hover {
@@ -2178,7 +2222,7 @@ a:focus-visible {
2178
2222
  padding: var(--spacing-sm) var(--spacing-md);
2179
2223
  background-color: var(--color-neutral-50);
2180
2224
  border-radius: var(--radius-md);
2181
- border: 1px solid var(--color-neutral-200);
2225
+ border: var(--border-width-thin) solid var(--color-neutral-200);
2182
2226
  }
2183
2227
 
2184
2228
  .dark .bc-passkey-item {
@@ -2247,7 +2291,7 @@ a:focus-visible {
2247
2291
  background-color: var(--avatar-bg);
2248
2292
  color: var(--avatar-text);
2249
2293
  font-family: var(
2250
- --default-ui-font-family,
2294
+ --font-family-default-ui,
2251
2295
  var(--font-ui, var(--font-body, var(--font-family-sans)))
2252
2296
  );
2253
2297
  user-select: none;
@@ -2266,7 +2310,7 @@ a:focus-visible {
2266
2310
  /* Initials text */
2267
2311
  .bc-avatar__initials {
2268
2312
  font-weight: var(--font-weight-semibold);
2269
- line-height: 1;
2313
+ line-height: var(--line-height-none);
2270
2314
  text-align: center;
2271
2315
  text-transform: uppercase;
2272
2316
  }
@@ -2282,32 +2326,32 @@ a:focus-visible {
2282
2326
 
2283
2327
  /* Size variants */
2284
2328
  .bc-avatar--size-xs {
2285
- width: calc(var(--spacing-base) * 6);
2286
- height: calc(var(--spacing-base) * 6);
2329
+ width: var(--spacing-xl);
2330
+ height: var(--spacing-xl);
2287
2331
  font-size: var(--font-size-xs);
2288
2332
  }
2289
2333
 
2290
2334
  .bc-avatar--size-sm {
2291
- width: calc(var(--spacing-base) * 8);
2292
- height: calc(var(--spacing-base) * 8);
2335
+ width: var(--spacing-2xl);
2336
+ height: var(--spacing-2xl);
2293
2337
  font-size: var(--font-size-sm);
2294
2338
  }
2295
2339
 
2296
2340
  .bc-avatar--size-md {
2297
- width: calc(var(--spacing-base) * 10);
2298
- height: calc(var(--spacing-base) * 10);
2341
+ width: var(--spacing-2xlh);
2342
+ height: var(--spacing-2xlh);
2299
2343
  font-size: var(--font-size-md);
2300
2344
  }
2301
2345
 
2302
2346
  .bc-avatar--size-lg {
2303
- width: calc(var(--spacing-base) * 12);
2304
- height: calc(var(--spacing-base) * 12);
2347
+ width: var(--spacing-3xl);
2348
+ height: var(--spacing-3xl);
2305
2349
  font-size: var(--font-size-lg);
2306
2350
  }
2307
2351
 
2308
2352
  .bc-avatar--size-xl {
2309
- width: calc(var(--spacing-base) * 16);
2310
- height: calc(var(--spacing-base) * 16);
2353
+ width: var(--spacing-4xl);
2354
+ height: var(--spacing-4xl);
2311
2355
  font-size: var(--font-size-xl);
2312
2356
  }
2313
2357
 
@@ -2328,7 +2372,7 @@ a:focus-visible {
2328
2372
 
2329
2373
  /* Bordered variant */
2330
2374
  .bc-avatar--bordered {
2331
- border: 2px solid var(--color-white);
2375
+ border: var(--border-width-medium) solid var(--color-white);
2332
2376
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
2333
2377
  }
2334
2378
 
@@ -2352,7 +2396,7 @@ a:focus-visible {
2352
2396
  /* Add border to overlapping avatars for better separation */
2353
2397
  .bc-avatar-group--spacing-tight > .bc-avatar,
2354
2398
  .bc-avatar-group--spacing-tight > .bc-avatar-group__overflow {
2355
- border: 2px solid var(--color-white);
2399
+ border: var(--border-width-medium) solid var(--color-white);
2356
2400
  }
2357
2401
 
2358
2402
  /* Normal spacing - standard gap */
@@ -2384,12 +2428,12 @@ a:focus-visible {
2384
2428
  /* Accessibility adjustments */
2385
2429
  @media (prefers-contrast: high) {
2386
2430
  .bc-avatar--bordered {
2387
- border-width: 3px;
2431
+ border-width: var(--border-width-thick);
2388
2432
  }
2389
2433
 
2390
2434
  .bc-avatar-group--spacing-tight > .bc-avatar,
2391
2435
  .bc-avatar-group--spacing-tight > .bc-avatar-group__overflow {
2392
- border-width: 3px;
2436
+ border-width: var(--border-width-thick);
2393
2437
  }
2394
2438
  }
2395
2439
 
@@ -2415,13 +2459,13 @@ a:focus-visible {
2415
2459
  display: inline-flex;
2416
2460
  align-items: center;
2417
2461
  justify-content: center;
2418
- border: 1.5px solid var(--badge-border);
2462
+ border: var(--border-width-default) solid var(--badge-border);
2419
2463
  font-family: var(
2420
- --default-ui-font-family,
2464
+ --font-family-default-ui,
2421
2465
  var(--font-ui, var(--font-body, var(--font-family-sans)))
2422
2466
  );
2423
2467
  font-size: inherit;
2424
- line-height: 1;
2468
+ line-height: var(--line-height-none);
2425
2469
  border-radius: var(--radius-badge, var(--radius-control, var(--radius-md)));
2426
2470
  transition: all var(--motion-transition-fast) var(--motion-easing-standard);
2427
2471
  background-color: var(--badge-bg);
@@ -2433,40 +2477,37 @@ a:focus-visible {
2433
2477
  display: flex;
2434
2478
  align-items: center;
2435
2479
  justify-content: center;
2436
- gap: var(
2437
- --badge-gap,
2438
- var(--spacing-stack-2xs, calc(var(--spacing-base) / 2))
2439
- );
2480
+ gap: var(--badge-gap, var(--control-gap-md));
2440
2481
  }
2441
2482
 
2442
2483
  /* Size variants */
2443
2484
  .bc-badge--size-xs {
2444
2485
  font-size: var(--font-size-xs);
2445
- padding: calc(var(--spacing-base) * 0.5) calc(var(--spacing-base) * 1);
2486
+ padding: var(--spacing-xs) var(--spacing-sm);
2446
2487
  --badge-gap: calc(var(--spacing-base) * 0.25);
2447
2488
  }
2448
2489
 
2449
2490
  .bc-badge--size-sm {
2450
2491
  font-size: var(--font-size-sm);
2451
- padding: calc(var(--spacing-base) * 0.75) calc(var(--spacing-base) * 1.5);
2452
- --badge-gap: calc(var(--spacing-base) * 0.5);
2492
+ padding: calc(var(--spacing-base) * 0.75) var(--spacing-smh);
2493
+ --badge-gap: var(--spacing-xs);
2453
2494
  }
2454
2495
 
2455
2496
  .bc-badge--size-md {
2456
2497
  font-size: var(--font-size-md);
2457
- padding: var(--spacing-base) calc(var(--spacing-base) * 2);
2498
+ padding: var(--spacing-sm) var(--spacing-md);
2458
2499
  --badge-gap: calc(var(--spacing-base) * 0.75);
2459
2500
  }
2460
2501
 
2461
2502
  .bc-badge--size-lg {
2462
2503
  font-size: var(--font-size-lg);
2463
2504
  padding: calc(var(--spacing-base) * 1.25) calc(var(--spacing-base) * 2.5);
2464
- --badge-gap: var(--spacing-base);
2505
+ --badge-gap: var(--spacing-sm);
2465
2506
  }
2466
2507
 
2467
2508
  .bc-badge--size-xl {
2468
2509
  font-size: var(--font-size-xl);
2469
- padding: calc(var(--spacing-base) * 1.5) calc(var(--spacing-base) * 3);
2510
+ padding: var(--spacing-smh) var(--spacing-mdh);
2470
2511
  --badge-gap: calc(var(--spacing-base) * 1.25);
2471
2512
  }
2472
2513
 
@@ -2479,23 +2520,35 @@ a:focus-visible {
2479
2520
  }
2480
2521
 
2481
2522
  .bc-badge--circle.bc-badge--size-xs {
2482
- min-width: calc(var(--font-size-xs) + var(--spacing-base) * 1 + 3px);
2523
+ min-width: calc(
2524
+ var(--font-size-xs) + var(--spacing-base) * 1 + var(--border-width-thick)
2525
+ );
2483
2526
  }
2484
2527
 
2485
2528
  .bc-badge--circle.bc-badge--size-sm {
2486
- min-width: calc(var(--font-size-sm) + var(--spacing-base) * 1.5 + 3px);
2529
+ min-width: calc(
2530
+ var(--font-size-sm) + var(--spacing-base) * 1.5 + var(--border-width-thick)
2531
+ );
2487
2532
  }
2488
2533
 
2489
2534
  .bc-badge--circle.bc-badge--size-md {
2490
- min-width: calc(var(--font-size-md) + var(--spacing-base) * 2 + 3px);
2535
+ min-width: calc(
2536
+ var(--font-size-md) + var(--spacing-base) * 2 + var(--border-width-thick)
2537
+ );
2491
2538
  }
2492
2539
 
2493
2540
  .bc-badge--circle.bc-badge--size-lg {
2494
- min-width: calc(var(--font-size-lg) * 1.2 + var(--spacing-base) * 2.5 + 3px);
2541
+ min-width: calc(
2542
+ var(--font-size-lg) * 1.2 + var(--spacing-base) * 2.5 +
2543
+ var(--border-width-thick)
2544
+ );
2495
2545
  }
2496
2546
 
2497
2547
  .bc-badge--circle.bc-badge--size-xl {
2498
- min-width: calc(var(--font-size-xl) * 1.2 + var(--spacing-base) * 3 + 3px);
2548
+ min-width: calc(
2549
+ var(--font-size-xl) * 1.2 + var(--spacing-base) * 3 +
2550
+ var(--border-width-thick)
2551
+ );
2499
2552
  }
2500
2553
 
2501
2554
  /* Full width variant */
@@ -2506,9 +2559,9 @@ a:focus-visible {
2506
2559
 
2507
2560
  /* Dot variant - small colored circle indicator */
2508
2561
  .bc-badge--dot {
2509
- width: calc(var(--spacing-base) * 2);
2510
- height: calc(var(--spacing-base) * 2);
2511
- min-width: calc(var(--spacing-base) * 2);
2562
+ width: var(--spacing-md);
2563
+ height: var(--spacing-md);
2564
+ min-width: var(--spacing-md);
2512
2565
  padding: 0;
2513
2566
  border-radius: 50%;
2514
2567
  border: none;
@@ -2520,15 +2573,15 @@ a:focus-visible {
2520
2573
 
2521
2574
  /* Dot variant size adjustments */
2522
2575
  .bc-badge--dot.bc-badge--size-xs {
2523
- width: calc(var(--spacing-base) * 1.5);
2524
- height: calc(var(--spacing-base) * 1.5);
2525
- min-width: calc(var(--spacing-base) * 1.5);
2576
+ width: var(--spacing-smh);
2577
+ height: var(--spacing-smh);
2578
+ min-width: var(--spacing-smh);
2526
2579
  }
2527
2580
 
2528
2581
  .bc-badge--dot.bc-badge--size-sm {
2529
- width: calc(var(--spacing-base) * 2);
2530
- height: calc(var(--spacing-base) * 2);
2531
- min-width: calc(var(--spacing-base) * 2);
2582
+ width: var(--spacing-md);
2583
+ height: var(--spacing-md);
2584
+ min-width: var(--spacing-md);
2532
2585
  }
2533
2586
 
2534
2587
  .bc-badge--dot.bc-badge--size-md {
@@ -2538,9 +2591,9 @@ a:focus-visible {
2538
2591
  }
2539
2592
 
2540
2593
  .bc-badge--dot.bc-badge--size-lg {
2541
- width: calc(var(--spacing-base) * 3);
2542
- height: calc(var(--spacing-base) * 3);
2543
- min-width: calc(var(--spacing-base) * 3);
2594
+ width: var(--spacing-mdh);
2595
+ height: var(--spacing-mdh);
2596
+ min-width: var(--spacing-mdh);
2544
2597
  }
2545
2598
 
2546
2599
  .bc-badge--dot.bc-badge--size-xl {
@@ -2564,7 +2617,7 @@ a:focus-visible {
2564
2617
  /* Accessibility adjustments */
2565
2618
  @media (prefers-contrast: high) {
2566
2619
  .bc-badge {
2567
- border-width: 2px;
2620
+ border-width: var(--border-width-medium);
2568
2621
  }
2569
2622
  }
2570
2623
 
@@ -2578,13 +2631,13 @@ a:focus-visible {
2578
2631
  .bc-block-command-palette {
2579
2632
  width: 280px;
2580
2633
  background: var(--color-white);
2581
- border: 1px solid var(--color-base-200);
2634
+ border: var(--border-width-thin) solid var(--color-base-200);
2582
2635
  border-radius: var(--radius-lg, 8px);
2583
2636
  box-shadow: var(--shadow-lg, 0 4px 16px rgba(0, 0, 0, 0.12));
2584
2637
  overflow: hidden;
2585
2638
  z-index: var(--z-index-popover, 1000);
2586
2639
  font-family: var(
2587
- --default-ui-font-family,
2640
+ --font-family-default-ui,
2588
2641
  var(--font-ui, var(--font-body, var(--font-family-sans)))
2589
2642
  );
2590
2643
  animation: block-command-enter 120ms ease-out;
@@ -2607,7 +2660,7 @@ a:focus-visible {
2607
2660
  align-items: center;
2608
2661
  gap: 6px;
2609
2662
  padding: 8px 12px;
2610
- border-bottom: 1px solid var(--color-base-200);
2663
+ border-bottom: var(--border-width-thin) solid var(--color-base-200);
2611
2664
  }
2612
2665
 
2613
2666
  .bc-block-command-palette__search-prefix {
@@ -2740,7 +2793,7 @@ a:focus-visible {
2740
2793
  .bc-breadcrumbs__item {
2741
2794
  display: inline-flex;
2742
2795
  align-items: center;
2743
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
2796
+ gap: var(--spacing-stack-2xs, var(--spacing-xs));
2744
2797
  list-style: none;
2745
2798
  }
2746
2799
 
@@ -2749,7 +2802,7 @@ a:focus-visible {
2749
2802
  .bc-breadcrumbs__button {
2750
2803
  display: inline-flex;
2751
2804
  align-items: center;
2752
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
2805
+ gap: var(--spacing-stack-2xs, var(--spacing-xs));
2753
2806
  color: var(--text-muted);
2754
2807
  text-decoration: none;
2755
2808
  cursor: pointer;
@@ -2774,7 +2827,7 @@ a:focus-visible {
2774
2827
 
2775
2828
  .bc-breadcrumbs__link:focus-visible,
2776
2829
  .bc-breadcrumbs__button:focus-visible {
2777
- outline: 2px solid var(--color-primary-500);
2830
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
2778
2831
  outline-offset: 2px;
2779
2832
  }
2780
2833
 
@@ -2787,7 +2840,7 @@ a:focus-visible {
2787
2840
  .bc-breadcrumbs__text {
2788
2841
  display: inline-flex;
2789
2842
  align-items: center;
2790
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
2843
+ gap: var(--spacing-stack-2xs, var(--spacing-xs));
2791
2844
  }
2792
2845
 
2793
2846
  /* Current page styling */
@@ -2872,16 +2925,17 @@ a:focus-visible {
2872
2925
  display: inline-flex;
2873
2926
  align-items: center;
2874
2927
  justify-content: center;
2875
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
2876
- border: 1.5px var(--button-border-style) var(--button-border);
2928
+ gap: var(--control-gap-md);
2929
+ border: var(--border-width-default) var(--button-border-style)
2930
+ var(--button-border);
2877
2931
  cursor: pointer;
2878
2932
  font-weight: var(--font-weight-semibold);
2879
2933
  font-family: var(
2880
- --default-ui-font-family,
2934
+ --font-family-default-ui,
2881
2935
  var(--font-ui, var(--font-body, var(--font-family-sans)))
2882
2936
  );
2883
2937
  font-size: inherit;
2884
- line-height: 1;
2938
+ line-height: var(--line-height-none);
2885
2939
  border-radius: var(--radius-button, var(--radius-control, var(--radius-md)));
2886
2940
  transition: all
2887
2941
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
@@ -2896,7 +2950,7 @@ a:focus-visible {
2896
2950
  }
2897
2951
 
2898
2952
  .bc-button > span {
2899
- min-height: 10px;
2953
+ min-height: var(--spacing-md);
2900
2954
  }
2901
2955
 
2902
2956
  .bc-button:hover:not(:disabled) {
@@ -2968,7 +3022,7 @@ a:focus-visible {
2968
3022
  /* Accessibility adjustments */
2969
3023
  @media (prefers-contrast: high) {
2970
3024
  .bc-button {
2971
- border-width: 2px;
3025
+ border-width: var(--border-width-medium);
2972
3026
  }
2973
3027
  }
2974
3028
 
@@ -2986,7 +3040,7 @@ a:focus-visible {
2986
3040
  display: flex;
2987
3041
  flex-direction: column;
2988
3042
  border-radius: var(--radius-surface, var(--radius-lg));
2989
- border: 1px solid var(--card-border);
3043
+ border: var(--border-width-thin) solid var(--card-border);
2990
3044
  padding: var(--spacing-lg);
2991
3045
  box-shadow: var(--shadow-surface, var(--shadow-md));
2992
3046
  background-color: var(--card-bg);
@@ -3096,11 +3150,11 @@ a:focus-visible {
3096
3150
  }
3097
3151
 
3098
3152
  .bc-center--gap-md {
3099
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
3153
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
3100
3154
  }
3101
3155
 
3102
3156
  .bc-center--gap-lg {
3103
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
3157
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
3104
3158
  }
3105
3159
 
3106
3160
  .bc-center--gap-xl {
@@ -3153,8 +3207,8 @@ a:focus-visible {
3153
3207
 
3154
3208
  .bc-checkbox-input__checkbox:focus-visible,
3155
3209
  .bc-checkbox-input:focus-within .bc-checkbox-input__checkbox {
3156
- outline: 1px solid var(--interactive-focus);
3157
- outline-offset: -1px;
3210
+ outline: var(--outline-width-default) solid var(--interactive-focus);
3211
+ outline-offset: calc(-1 * var(--outline-width-default));
3158
3212
  border-radius: var(--radius-lg);
3159
3213
  }
3160
3214
 
@@ -3177,7 +3231,7 @@ a:focus-visible {
3177
3231
 
3178
3232
  .dark .bc-checkbox-input__checkbox:focus-visible,
3179
3233
  .dark .bc-checkbox-input:focus-within .bc-checkbox-input__checkbox {
3180
- outline: 2px solid var(--interactive-focus);
3234
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
3181
3235
  outline-offset: 2px;
3182
3236
  }
3183
3237
 
@@ -3228,7 +3282,7 @@ a:focus-visible {
3228
3282
  border-radius: var(--radius-control, var(--radius-md));
3229
3283
  overflow: visible;
3230
3284
  cursor: pointer;
3231
- border: 1px solid var(--color-neutral-300);
3285
+ border: var(--border-width-thin) solid var(--color-neutral-300);
3232
3286
  }
3233
3287
 
3234
3288
  .bc-input-container .bc-color-input__swatch-container {
@@ -3242,7 +3296,7 @@ a:focus-visible {
3242
3296
  width: 1.8rem;
3243
3297
  height: 1.8rem;
3244
3298
  cursor: pointer;
3245
- border: 1px solid var(--color-neutral-300);
3299
+ border: var(--border-width-thin) solid var(--color-neutral-300);
3246
3300
  border-radius: 100%;
3247
3301
  }
3248
3302
 
@@ -3282,7 +3336,7 @@ a:focus-visible {
3282
3336
  }
3283
3337
 
3284
3338
  .bc-color-swatch-input__control:focus-within {
3285
- outline: 2px solid var(--interactive-focus);
3339
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
3286
3340
  outline-offset: 2px;
3287
3341
  }
3288
3342
 
@@ -3297,7 +3351,7 @@ a:focus-visible {
3297
3351
  }
3298
3352
 
3299
3353
  .bc-input-container--error .bc-color-swatch-input__control:focus-within {
3300
- outline: 2px solid var(--color-danger-600);
3354
+ outline: var(--outline-width-focus) solid var(--color-danger-600);
3301
3355
  }
3302
3356
 
3303
3357
  .bc-color-swatch-input__native {
@@ -3326,7 +3380,7 @@ a:focus-visible {
3326
3380
 
3327
3381
  .bc-color-swatch-input__alpha {
3328
3382
  width: 5rem;
3329
- margin-inline-start: calc(var(--spacing-base) * 2);
3383
+ margin-inline-start: var(--spacing-md);
3330
3384
  }
3331
3385
 
3332
3386
  .bc-color-input input[type='text'] {
@@ -3336,7 +3390,7 @@ a:focus-visible {
3336
3390
 
3337
3391
  /* Dark mode */
3338
3392
  .dark .bc-input-container--error .bc-color-swatch-input__control:focus-within {
3339
- outline: 2px solid var(--color-danger-400);
3393
+ outline: var(--outline-width-focus) solid var(--color-danger-400);
3340
3394
  }
3341
3395
 
3342
3396
  /* Responsive styles */
@@ -3351,7 +3405,7 @@ a:focus-visible {
3351
3405
  display: flex;
3352
3406
  flex-direction: column;
3353
3407
  background: var(--bg-surface);
3354
- border: 1px solid var(--border-default);
3408
+ border: var(--border-width-thin) solid var(--border-default);
3355
3409
  border-radius: var(--radius-lg);
3356
3410
  box-shadow: var(--shadow-xl);
3357
3411
  overflow: hidden;
@@ -3375,9 +3429,9 @@ a:focus-visible {
3375
3429
  .bc-command-palette__header {
3376
3430
  display: flex;
3377
3431
  align-items: center;
3378
- gap: calc(var(--spacing-base) * 2);
3379
- padding: calc(var(--spacing-base) * 3) calc(var(--spacing-base) * 4);
3380
- border-bottom: 1px solid var(--border-default);
3432
+ gap: var(--spacing-md);
3433
+ padding: var(--spacing-mdh) var(--spacing-lg);
3434
+ border-bottom: var(--border-width-thin) solid var(--border-default);
3381
3435
  }
3382
3436
 
3383
3437
  .bc-command-palette__search-icon {
@@ -3402,22 +3456,22 @@ a:focus-visible {
3402
3456
 
3403
3457
  .bc-command-palette__body {
3404
3458
  overflow-y: auto;
3405
- padding: calc(var(--spacing-base) * 2);
3459
+ padding: var(--spacing-md);
3406
3460
  }
3407
3461
 
3408
3462
  .bc-command-palette__empty {
3409
- padding: calc(var(--spacing-base) * 6) calc(var(--spacing-base) * 4);
3463
+ padding: var(--spacing-xl) var(--spacing-lg);
3410
3464
  text-align: center;
3411
3465
  color: var(--text-muted);
3412
3466
  font-size: var(--font-size-sm);
3413
3467
  }
3414
3468
 
3415
3469
  .bc-command-palette__section + .bc-command-palette__section {
3416
- margin-top: calc(var(--spacing-base) * 2);
3470
+ margin-top: var(--spacing-md);
3417
3471
  }
3418
3472
 
3419
3473
  .bc-command-palette__section-title {
3420
- padding: var(--spacing-base) calc(var(--spacing-base) * 2);
3474
+ padding: var(--spacing-base) var(--spacing-md);
3421
3475
  font-size: var(--font-size-xs);
3422
3476
  font-weight: var(--font-weight-semibold);
3423
3477
  color: var(--text-muted);
@@ -3428,8 +3482,8 @@ a:focus-visible {
3428
3482
  .bc-command-palette__item {
3429
3483
  display: flex;
3430
3484
  align-items: center;
3431
- gap: calc(var(--spacing-base) * 2);
3432
- padding: calc(var(--spacing-base) * 2);
3485
+ gap: var(--spacing-md);
3486
+ padding: var(--spacing-md);
3433
3487
  border-radius: var(--radius-sm);
3434
3488
  cursor: pointer;
3435
3489
  transition: background-color var(--motion-transition-fast)
@@ -3482,11 +3536,11 @@ a:focus-visible {
3482
3536
  outline: none;
3483
3537
  font: inherit;
3484
3538
  color: inherit;
3485
- padding: var(--spacing-base) calc(var(--spacing-base) * 2);
3539
+ padding: var(--spacing-base) var(--spacing-md);
3486
3540
  margin: 0;
3487
3541
  background-color: var(--color-gray-50);
3488
3542
  border-radius: 0;
3489
- border-bottom: 1px solid var(--color-gray-300);
3543
+ border-bottom: var(--border-width-thin) solid var(--color-gray-300);
3490
3544
  }
3491
3545
 
3492
3546
  /* Dark mode */
@@ -3530,8 +3584,8 @@ a:focus-visible {
3530
3584
  display: flex;
3531
3585
  align-items: center;
3532
3586
  justify-content: center;
3533
- width: calc(var(--spacing-base) * 6);
3534
- height: calc(var(--spacing-base) * 6);
3587
+ width: var(--spacing-xl);
3588
+ height: var(--spacing-xl);
3535
3589
  flex-shrink: 0;
3536
3590
  margin-inline-start: var(--spacing-sm);
3537
3591
  margin-inline-end: calc(var(--spacing-base) * -1.25);
@@ -3540,12 +3594,12 @@ a:focus-visible {
3540
3594
  /* Listbox (dropdown) */
3541
3595
  .bc-dropdown__listbox {
3542
3596
  background-color: var(--color-white);
3543
- border: 1px solid var(--color-base-200);
3597
+ border: var(--border-width-thin) solid var(--color-base-200);
3544
3598
  border-radius: var(--radius-popover, var(--radius-md));
3545
3599
  box-shadow: var(--shadow-popover, var(--shadow-lg));
3546
3600
  padding: var(--spacing-xs) 0;
3547
3601
  z-index: var(--z-index-navigation);
3548
- min-width: 12rem;
3602
+ min-width: var(--overlay-min-width);
3549
3603
  max-height: 20rem;
3550
3604
  overflow-y: auto;
3551
3605
  outline: none;
@@ -3555,7 +3609,7 @@ a:focus-visible {
3555
3609
  .bc-dropdown__option {
3556
3610
  display: flex;
3557
3611
  align-items: center;
3558
- padding: calc(var(--spacing-base) * 1.75) calc(var(--spacing-base) * 3);
3612
+ padding: calc(var(--spacing-base) * 1.75) var(--spacing-mdh);
3559
3613
  border-radius: 0;
3560
3614
  cursor: pointer;
3561
3615
  transition: background-color var(--motion-transition-fast)
@@ -3630,7 +3684,7 @@ a:focus-visible {
3630
3684
  .bc-dropdown__separator {
3631
3685
  margin: var(--spacing-xs) 0;
3632
3686
  border: none;
3633
- border-top: 1px solid var(--color-gray-200);
3687
+ border-top: var(--border-width-thin) solid var(--color-gray-200);
3634
3688
  }
3635
3689
 
3636
3690
  /* Dark mode styles */
@@ -3666,7 +3720,7 @@ a:focus-visible {
3666
3720
  /* Responsive styles */
3667
3721
  @media (width >= 40rem) {
3668
3722
  .bc-dropdown__option {
3669
- padding: calc(var(--spacing-base) * 1.75) calc(var(--spacing-base) * 3);
3723
+ padding: calc(var(--spacing-base) * 1.75) var(--spacing-mdh);
3670
3724
  }
3671
3725
 
3672
3726
  .bc-dropdown__listbox {
@@ -3695,13 +3749,13 @@ a:focus-visible {
3695
3749
  /* High contrast mode support */
3696
3750
  @media (prefers-contrast: high) {
3697
3751
  .bc-dropdown__option--focused {
3698
- outline: 2px solid currentColor;
3699
- outline-offset: -2px;
3752
+ outline: var(--outline-width-focus) solid currentColor;
3753
+ outline-offset: calc(-1 * var(--outline-width-focus));
3700
3754
  }
3701
3755
 
3702
3756
  .bc-dropdown__option--selected {
3703
- outline: 2px solid currentColor;
3704
- outline-offset: -2px;
3757
+ outline: var(--outline-width-focus) solid currentColor;
3758
+ outline-offset: calc(-1 * var(--outline-width-focus));
3705
3759
  }
3706
3760
  }
3707
3761
 
@@ -3717,43 +3771,43 @@ a:focus-visible {
3717
3771
  }
3718
3772
 
3719
3773
  .bc-control--padding-xs {
3720
- padding: var(--spacing-xs);
3774
+ padding: var(--control-padding-block-xs) var(--control-padding-inline-xs);
3721
3775
  }
3722
3776
 
3723
3777
  .bc-control--padding-sm {
3724
- padding: var(--spacing-sm);
3778
+ padding: var(--control-padding-block-sm) var(--control-padding-inline-sm);
3725
3779
  }
3726
3780
 
3727
3781
  .bc-control--padding-md {
3728
- padding: var(--spacing-md);
3782
+ padding: var(--control-padding-block-md) var(--control-padding-inline-md);
3729
3783
  }
3730
3784
 
3731
3785
  .bc-control--padding-lg {
3732
- padding: var(--spacing-lg);
3786
+ padding: var(--control-padding-block-lg) var(--control-padding-inline-lg);
3733
3787
  }
3734
3788
 
3735
3789
  .bc-control--padding-xl {
3736
- padding: var(--spacing-xl);
3790
+ padding: var(--control-padding-block-xl) var(--control-padding-inline-xl);
3737
3791
  }
3738
3792
 
3739
3793
  .bc-control--padding-xs:has(> .bc-icon:only-child) {
3740
- padding: var(--spacing-xs);
3794
+ padding: var(--control-padding-block-xs);
3741
3795
  }
3742
3796
 
3743
3797
  .bc-control--padding-sm:has(> .bc-icon:only-child) {
3744
- padding: var(--spacing-sm);
3798
+ padding: var(--control-padding-block-sm);
3745
3799
  }
3746
3800
 
3747
3801
  .bc-control--padding-md:has(> .bc-icon:only-child) {
3748
- padding: var(--spacing-md);
3802
+ padding: var(--control-padding-block-md);
3749
3803
  }
3750
3804
 
3751
3805
  .bc-control--padding-lg:has(> .bc-icon:only-child) {
3752
- padding: var(--spacing-lg);
3806
+ padding: var(--control-padding-block-lg);
3753
3807
  }
3754
3808
 
3755
3809
  .bc-control--padding-xl:has(> .bc-icon:only-child) {
3756
- padding: var(--spacing-xl);
3810
+ padding: var(--control-padding-block-xl);
3757
3811
  }
3758
3812
 
3759
3813
  .bc-control--rounded-none {
@@ -3817,14 +3871,14 @@ a:focus-visible {
3817
3871
  display: flex;
3818
3872
  align-items: center;
3819
3873
  justify-content: space-between;
3820
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
3874
+ gap: var(--spacing-stack-sm, var(--spacing-md));
3821
3875
  }
3822
3876
 
3823
3877
  /* Label container */
3824
3878
  .bc-control-input-wrapper__label {
3825
3879
  display: flex;
3826
3880
  align-items: center;
3827
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
3881
+ gap: var(--spacing-stack-2xs, var(--spacing-xs));
3828
3882
  }
3829
3883
 
3830
3884
  /* Label text styles */
@@ -3895,7 +3949,7 @@ a:focus-visible {
3895
3949
  /* Divider Component */
3896
3950
  .bc-divider {
3897
3951
  border: 0;
3898
- border-top: 1px solid var(--border-divider);
3952
+ border-top: var(--border-width-thin) solid var(--border-divider);
3899
3953
  margin: 0;
3900
3954
  height: 0;
3901
3955
  background: transparent;
@@ -3909,7 +3963,7 @@ a:focus-visible {
3909
3963
  .bc-divider--vertical {
3910
3964
  border-top: none;
3911
3965
  border-top-width: 0;
3912
- border-left: 1px solid var(--border-divider);
3966
+ border-left: var(--border-width-thin) solid var(--border-divider);
3913
3967
  width: auto;
3914
3968
  height: auto;
3915
3969
  align-self: stretch;
@@ -3962,7 +4016,7 @@ a:focus-visible {
3962
4016
  .bc-divider__line {
3963
4017
  flex: 1;
3964
4018
  border: 0;
3965
- border-top: 1px solid var(--border-default);
4019
+ border-top: var(--border-width-thin) solid var(--border-default);
3966
4020
  height: 0;
3967
4021
  background: transparent;
3968
4022
  margin: 0;
@@ -3974,7 +4028,7 @@ a:focus-visible {
3974
4028
  .bc-divider--vertical .bc-divider__line {
3975
4029
  border-top: none;
3976
4030
  border-top-width: 0;
3977
- border-left: 1px solid var(--border-divider);
4031
+ border-left: var(--border-width-thin) solid var(--border-divider);
3978
4032
  width: 0;
3979
4033
  flex: 1;
3980
4034
  min-height: 1rem;
@@ -3986,11 +4040,11 @@ a:focus-visible {
3986
4040
  font-weight: var(--font-weight-medium);
3987
4041
  color: var(--text-muted);
3988
4042
  font-family: var(
3989
- --default-ui-font-family,
4043
+ --font-family-default-ui,
3990
4044
  var(--font-ui, var(--font-body, var(--font-family-sans)))
3991
4045
  );
3992
4046
  white-space: nowrap;
3993
- line-height: 1;
4047
+ line-height: var(--line-height-none);
3994
4048
  }
3995
4049
 
3996
4050
  /* Label alignment */
@@ -4063,7 +4117,7 @@ a:focus-visible {
4063
4117
  @media (prefers-contrast: high) {
4064
4118
  .bc-divider,
4065
4119
  .bc-divider__line {
4066
- border-width: 2px;
4120
+ border-width: var(--border-width-medium);
4067
4121
  }
4068
4122
  }
4069
4123
 
@@ -4342,7 +4396,7 @@ a:focus-visible {
4342
4396
  align-items: center;
4343
4397
  justify-content: space-between;
4344
4398
  padding: var(--spacing-md);
4345
- border-bottom: 1px solid var(--color-base-300);
4399
+ border-bottom: var(--border-width-thin) solid var(--color-base-300);
4346
4400
  background-color: var(--color-base-50);
4347
4401
  flex-shrink: 0;
4348
4402
  }
@@ -4355,7 +4409,7 @@ a:focus-visible {
4355
4409
 
4356
4410
  .bc-drawer__footer {
4357
4411
  padding: var(--spacing-md);
4358
- border-top: 1px solid var(--color-base-300);
4412
+ border-top: var(--border-width-thin) solid var(--color-base-300);
4359
4413
  background-color: var(--color-base-50);
4360
4414
  flex-shrink: 0;
4361
4415
  }
@@ -4364,16 +4418,16 @@ a:focus-visible {
4364
4418
  .dark .bc-drawer {
4365
4419
  background-color: var(--bg-surface);
4366
4420
  color: var(--text-normal);
4367
- border: 1px solid var(--border-default);
4421
+ border: var(--border-width-thin) solid var(--border-default);
4368
4422
  }
4369
4423
 
4370
4424
  .dark .bc-drawer__header {
4371
- border-bottom: 1px solid var(--border-divider);
4425
+ border-bottom: var(--border-width-thin) solid var(--border-divider);
4372
4426
  background-color: var(--bg-elevated);
4373
4427
  }
4374
4428
 
4375
4429
  .dark .bc-drawer__footer {
4376
- border-top: 1px solid var(--border-divider);
4430
+ border-top: var(--border-width-thin) solid var(--border-divider);
4377
4431
  background-color: var(--bg-elevated);
4378
4432
  }
4379
4433
 
@@ -4396,10 +4450,10 @@ a:focus-visible {
4396
4450
 
4397
4451
  /* Editable Text Component */
4398
4452
  .bc-editable-text {
4399
- border-bottom: 1px dashed var(--color-gray-300);
4453
+ border-bottom: var(--border-width-thin) dashed var(--color-gray-300);
4400
4454
  display: flex;
4401
4455
  flex-direction: row;
4402
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4456
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4403
4457
  align-items: flex-start;
4404
4458
  cursor: pointer;
4405
4459
  }
@@ -4421,7 +4475,7 @@ a:focus-visible {
4421
4475
  /* Input state */
4422
4476
  .bc-editable-text__input {
4423
4477
  outline: none;
4424
- padding: 0 calc(var(--spacing-base) / 2);
4478
+ padding: 0 var(--spacing-xs);
4425
4479
  background: transparent;
4426
4480
  border: none;
4427
4481
  font: inherit;
@@ -4438,8 +4492,8 @@ a:focus-visible {
4438
4492
 
4439
4493
  /* Draw the focus on the display container similar to other inputs via focus-within */
4440
4494
  .bc-editable-text:focus-within {
4441
- outline: 2px solid var(--interactive-focus);
4442
- outline-offset: -2px;
4495
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
4496
+ outline-offset: calc(-1 * var(--outline-width-focus));
4443
4497
  border-radius: var(--radius-sm);
4444
4498
  }
4445
4499
 
@@ -4447,11 +4501,11 @@ a:focus-visible {
4447
4501
  .bc-editable-text__display {
4448
4502
  display: flex;
4449
4503
  flex-direction: row;
4450
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4504
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4451
4505
  justify-content: space-between;
4452
4506
  align-items: center;
4453
4507
  cursor: pointer;
4454
- padding: 0 calc(var(--spacing-base) / 2);
4508
+ padding: 0 var(--spacing-xs);
4455
4509
  white-space: nowrap;
4456
4510
  flex-grow: 1;
4457
4511
  overflow: hidden;
@@ -4479,7 +4533,7 @@ a:focus-visible {
4479
4533
  background: transparent;
4480
4534
  border: none;
4481
4535
  cursor: pointer;
4482
- padding: calc(var(--spacing-base) / 2);
4536
+ padding: var(--spacing-xs);
4483
4537
  display: flex;
4484
4538
  align-items: center;
4485
4539
  justify-content: center;
@@ -4583,7 +4637,7 @@ a:focus-visible {
4583
4637
  }
4584
4638
 
4585
4639
  .bc-empty-state--size-lg {
4586
- padding: var(--spacing-2xl, calc(var(--spacing-base) * 10));
4640
+ padding: var(--spacing-2xl, var(--spacing-2xlh));
4587
4641
  max-width: 500px;
4588
4642
  }
4589
4643
 
@@ -4614,7 +4668,7 @@ a:focus-visible {
4614
4668
  .bc-file-input__drop-zone {
4615
4669
  width: 100%;
4616
4670
  min-height: 120px;
4617
- border: 2px dashed var(--color-gray-300);
4671
+ border: var(--border-width-medium) dashed var(--color-gray-300);
4618
4672
  border-radius: var(--radius-control, var(--radius-md));
4619
4673
  transition: all
4620
4674
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
@@ -4629,7 +4683,7 @@ a:focus-visible {
4629
4683
  }
4630
4684
 
4631
4685
  .bc-file-input__drop-zone:focus-within {
4632
- outline: 2px solid var(--color-primary-500);
4686
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
4633
4687
  outline-offset: 2px;
4634
4688
  }
4635
4689
 
@@ -4639,11 +4693,11 @@ a:focus-visible {
4639
4693
  flex-direction: column;
4640
4694
  align-items: center;
4641
4695
  justify-content: center;
4642
- padding: calc(var(--spacing-base) * 6);
4696
+ padding: var(--spacing-xl);
4643
4697
  height: 100%;
4644
4698
  min-height: 120px;
4645
4699
  text-align: center;
4646
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4700
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4647
4701
  }
4648
4702
 
4649
4703
  .bc-file-input__drop-zone-content--empty {
@@ -4658,7 +4712,7 @@ a:focus-visible {
4658
4712
  .bc-file-input__drop-zone-content--has-files {
4659
4713
  color: var(--color-gray-500);
4660
4714
  min-height: 80px;
4661
- padding: calc(var(--spacing-base) * 4);
4715
+ padding: var(--spacing-lg);
4662
4716
  }
4663
4717
 
4664
4718
  .bc-file-input__drop-zone-text {
@@ -4674,22 +4728,22 @@ a:focus-visible {
4674
4728
  }
4675
4729
 
4676
4730
  .bc-file-input__file-list {
4677
- margin-top: calc(var(--spacing-base) * 3);
4678
- border-top: 1px solid var(--color-gray-200);
4679
- padding-top: calc(var(--spacing-base) * 3);
4731
+ margin-top: var(--spacing-mdh);
4732
+ border-top: var(--border-width-thin) solid var(--color-gray-200);
4733
+ padding-top: var(--spacing-mdh);
4680
4734
  display: flex;
4681
4735
  flex-direction: row;
4682
4736
  flex-wrap: wrap;
4683
4737
  justify-content: center;
4684
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
4738
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
4685
4739
  }
4686
4740
 
4687
4741
  .bc-file-input__file-item {
4688
4742
  display: flex;
4689
4743
  align-items: center;
4690
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4691
- padding: calc(var(--spacing-base) * 2);
4692
- border: 1px solid var(--color-gray-200);
4744
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4745
+ padding: var(--spacing-md);
4746
+ border: var(--border-width-thin) solid var(--color-gray-200);
4693
4747
  border-radius: var(--radius-sm);
4694
4748
  background-color: var(--color-white);
4695
4749
  transition:
@@ -4717,10 +4771,10 @@ a:focus-visible {
4717
4771
 
4718
4772
  /* Thumbnail Styles */
4719
4773
  .bc-file-input__thumbnail-container {
4720
- min-width: calc(var(--spacing-base) * 12);
4721
- max-width: calc(var(--spacing-base) * 12);
4722
- min-height: calc(var(--spacing-base) * 12);
4723
- max-height: calc(var(--spacing-base) * 12);
4774
+ min-width: var(--spacing-3xl);
4775
+ max-width: var(--spacing-3xl);
4776
+ min-height: var(--spacing-3xl);
4777
+ max-height: var(--spacing-3xl);
4724
4778
  border-radius: var(--radius-sm);
4725
4779
  overflow: hidden;
4726
4780
  background-color: var(--color-gray-100);
@@ -4730,24 +4784,24 @@ a:focus-visible {
4730
4784
  }
4731
4785
 
4732
4786
  .bc-file-input__file-icon .bc-icon {
4733
- min-width: calc(var(--spacing-base) * 12);
4734
- max-width: calc(var(--spacing-base) * 12);
4735
- min-height: calc(var(--spacing-base) * 12);
4736
- max-height: calc(var(--spacing-base) * 12);
4787
+ min-width: var(--spacing-3xl);
4788
+ max-width: var(--spacing-3xl);
4789
+ min-height: var(--spacing-3xl);
4790
+ max-height: var(--spacing-3xl);
4737
4791
  }
4738
4792
 
4739
4793
  .bc-file-input__compact-value-item .bc-icon {
4740
- min-width: calc(var(--spacing-base) * 6);
4741
- max-width: calc(var(--spacing-base) * 6);
4742
- min-height: calc(var(--spacing-base) * 6);
4743
- max-height: calc(var(--spacing-base) * 6);
4794
+ min-width: var(--spacing-xl);
4795
+ max-width: var(--spacing-xl);
4796
+ min-height: var(--spacing-xl);
4797
+ max-height: var(--spacing-xl);
4744
4798
  }
4745
4799
 
4746
4800
  .bc-file-input__compact-value-item .bc-file-input__thumbnail-container {
4747
- min-width: calc(var(--spacing-base) * 6);
4748
- max-width: calc(var(--spacing-base) * 6);
4749
- min-height: calc(var(--spacing-base) * 6);
4750
- max-height: calc(var(--spacing-base) * 6);
4801
+ min-width: var(--spacing-xl);
4802
+ max-width: var(--spacing-xl);
4803
+ min-height: var(--spacing-xl);
4804
+ max-height: var(--spacing-xl);
4751
4805
  }
4752
4806
 
4753
4807
  .bc-file-input__thumbnail {
@@ -4785,8 +4839,8 @@ a:focus-visible {
4785
4839
  display: flex;
4786
4840
  align-items: center;
4787
4841
  justify-content: center;
4788
- width: calc(var(--spacing-base) * 6);
4789
- height: calc(var(--spacing-base) * 6);
4842
+ width: var(--spacing-xl);
4843
+ height: var(--spacing-xl);
4790
4844
  border: none;
4791
4845
  border-radius: var(--radius-sm);
4792
4846
  background-color: transparent;
@@ -4803,7 +4857,7 @@ a:focus-visible {
4803
4857
  }
4804
4858
 
4805
4859
  .bc-file-input__remove-button:focus {
4806
- outline: 2px solid var(--color-danger-500);
4860
+ outline: var(--outline-width-focus) solid var(--color-danger-500);
4807
4861
  outline-offset: 2px;
4808
4862
  }
4809
4863
 
@@ -4814,9 +4868,9 @@ a:focus-visible {
4814
4868
 
4815
4869
  .bc-file-input__clear-all-button {
4816
4870
  display: block;
4817
- margin: calc(var(--spacing-base) * 2) auto 0;
4818
- padding: calc(var(--spacing-base) * 1.5) calc(var(--spacing-base) * 3);
4819
- border: 1px solid var(--color-gray-300);
4871
+ margin: var(--spacing-md) auto 0;
4872
+ padding: var(--spacing-smh) var(--spacing-mdh);
4873
+ border: var(--border-width-thin) solid var(--color-gray-300);
4820
4874
  border-radius: var(--radius-sm);
4821
4875
  background-color: var(--color-white);
4822
4876
  color: var(--color-gray-600);
@@ -4835,7 +4889,7 @@ a:focus-visible {
4835
4889
  }
4836
4890
 
4837
4891
  .bc-file-input__clear-all-button:focus {
4838
- outline: 2px solid var(--color-danger-500);
4892
+ outline: var(--outline-width-focus) solid var(--color-danger-500);
4839
4893
  outline-offset: 2px;
4840
4894
  }
4841
4895
 
@@ -4880,7 +4934,7 @@ a:focus-visible {
4880
4934
  .bc-file-input__file-item {
4881
4935
  flex-direction: column;
4882
4936
  align-items: flex-start;
4883
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4937
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4884
4938
  }
4885
4939
 
4886
4940
  .bc-file-input__remove-button {
@@ -4921,16 +4975,16 @@ a:focus-visible {
4921
4975
  text-overflow: ellipsis;
4922
4976
  display: flex;
4923
4977
  flex-wrap: wrap;
4924
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
4978
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
4925
4979
  }
4926
4980
 
4927
4981
  .bc-file-input__compact-value-item {
4928
4982
  background-color: var(--color-gray-100);
4929
4983
  border-radius: var(--radius-sm);
4930
- padding: calc(var(--spacing-base) / 2) calc(var(--spacing-base) * 2);
4984
+ padding: var(--spacing-xs) var(--spacing-md);
4931
4985
  display: flex;
4932
4986
  align-items: center;
4933
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
4987
+ gap: var(--spacing-stack-sm, var(--spacing-md));
4934
4988
  flex-wrap: nowrap;
4935
4989
  overflow: hidden;
4936
4990
  text-overflow: ellipsis;
@@ -4940,8 +4994,8 @@ a:focus-visible {
4940
4994
  display: inline-flex;
4941
4995
  align-items: center;
4942
4996
  justify-content: center;
4943
- width: calc(var(--spacing-base) * 6);
4944
- height: calc(var(--spacing-base) * 6);
4997
+ width: var(--spacing-xl);
4998
+ height: var(--spacing-xl);
4945
4999
  border: none;
4946
5000
  border-radius: var(--radius-sm);
4947
5001
  background-color: transparent;
@@ -4973,8 +5027,8 @@ a:focus-visible {
4973
5027
  display: inline-flex;
4974
5028
  align-items: center;
4975
5029
  justify-content: center;
4976
- width: calc(var(--spacing-base) * 6);
4977
- height: calc(var(--spacing-base) * 6);
5030
+ width: var(--spacing-xl);
5031
+ height: var(--spacing-xl);
4978
5032
  border-radius: var(--radius-xs);
4979
5033
  overflow: hidden;
4980
5034
  background-color: var(--color-gray-100);
@@ -4994,14 +5048,14 @@ a:focus-visible {
4994
5048
  .bc-file-input__compact-drop-zone {
4995
5049
  width: 100%;
4996
5050
  min-height: 100px;
4997
- border: 2px dashed var(--color-gray-300);
5051
+ border: var(--border-width-medium) dashed var(--color-gray-300);
4998
5052
  border-radius: var(--radius-control, var(--radius-md));
4999
5053
  transition: all
5000
5054
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
5001
5055
  var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
5002
5056
  cursor: pointer;
5003
5057
  position: relative;
5004
- padding: calc(var(--spacing-base) * 3);
5058
+ padding: var(--spacing-mdh);
5005
5059
  }
5006
5060
 
5007
5061
  .bc-file-input__compact-drop-zone:hover {
@@ -5010,7 +5064,7 @@ a:focus-visible {
5010
5064
  }
5011
5065
 
5012
5066
  .bc-file-input__compact-drop-zone:focus-within {
5013
- outline: 2px solid var(--color-primary-500);
5067
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
5014
5068
  outline-offset: 2px;
5015
5069
  }
5016
5070
 
@@ -5020,10 +5074,10 @@ a:focus-visible {
5020
5074
  flex-direction: column;
5021
5075
  align-items: center;
5022
5076
  justify-content: center;
5023
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
5077
+ gap: var(--spacing-stack-sm, var(--spacing-md));
5024
5078
  color: var(--color-gray-600);
5025
5079
  text-align: center;
5026
- padding: calc(var(--spacing-base) * 2);
5080
+ padding: var(--spacing-md);
5027
5081
  }
5028
5082
 
5029
5083
  .bc-file-input__compact-placeholder-text {
@@ -5037,15 +5091,15 @@ a:focus-visible {
5037
5091
  display: flex;
5038
5092
  flex-direction: column;
5039
5093
  justify-items: center;
5040
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
5094
+ gap: var(--spacing-stack-sm, var(--spacing-md));
5041
5095
  overflow-y: auto;
5042
5096
  }
5043
5097
 
5044
5098
  .bc-file-input__compact-file-item {
5045
5099
  display: flex;
5046
5100
  align-items: center;
5047
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
5048
- padding: calc(var(--spacing-base) * 1.5);
5101
+ gap: var(--spacing-stack-sm, var(--spacing-md));
5102
+ padding: var(--spacing-smh);
5049
5103
  border-radius: var(--radius-sm);
5050
5104
  background-color: var(--color-gray-50);
5051
5105
  transition: background-color
@@ -5063,17 +5117,17 @@ a:focus-visible {
5063
5117
  }
5064
5118
 
5065
5119
  .bc-file-input__compact-file-icon .bc-icon {
5066
- min-width: calc(var(--spacing-base) * 8);
5067
- max-width: calc(var(--spacing-base) * 8);
5068
- min-height: calc(var(--spacing-base) * 8);
5069
- max-height: calc(var(--spacing-base) * 8);
5120
+ min-width: var(--spacing-2xl);
5121
+ max-width: var(--spacing-2xl);
5122
+ min-height: var(--spacing-2xl);
5123
+ max-height: var(--spacing-2xl);
5070
5124
  }
5071
5125
 
5072
5126
  .bc-file-input__compact-file-icon .bc-file-input__thumbnail-container {
5073
- min-width: calc(var(--spacing-base) * 8);
5074
- max-width: calc(var(--spacing-base) * 8);
5075
- min-height: calc(var(--spacing-base) * 8);
5076
- max-height: calc(var(--spacing-base) * 8);
5127
+ min-width: var(--spacing-2xl);
5128
+ max-width: var(--spacing-2xl);
5129
+ min-height: var(--spacing-2xl);
5130
+ max-height: var(--spacing-2xl);
5077
5131
  }
5078
5132
 
5079
5133
  .bc-file-input__compact-file-info {
@@ -5104,8 +5158,8 @@ a:focus-visible {
5104
5158
  display: flex;
5105
5159
  align-items: center;
5106
5160
  justify-content: center;
5107
- width: calc(var(--spacing-base) * 6);
5108
- height: calc(var(--spacing-base) * 6);
5161
+ width: var(--spacing-xl);
5162
+ height: var(--spacing-xl);
5109
5163
  border: none;
5110
5164
  border-radius: var(--radius-sm);
5111
5165
  background-color: transparent;
@@ -5122,7 +5176,7 @@ a:focus-visible {
5122
5176
  }
5123
5177
 
5124
5178
  .bc-file-input__compact-remove-button:focus {
5125
- outline: 2px solid var(--color-danger-500);
5179
+ outline: var(--outline-width-focus) solid var(--color-danger-500);
5126
5180
  outline-offset: 2px;
5127
5181
  }
5128
5182
 
@@ -5384,7 +5438,7 @@ a:focus-visible {
5384
5438
  .bc-flyout {
5385
5439
  /* Base flyout styles */
5386
5440
  background-color: var(--color-neutral-50);
5387
- border: 1px solid var(--color-neutral-200);
5441
+ border: var(--border-width-thin) solid var(--color-neutral-200);
5388
5442
  border-radius: var(--radius-popover, var(--radius-md));
5389
5443
  box-shadow: var(--shadow-popover, var(--shadow-lg));
5390
5444
  padding: var(--spacing-sm);
@@ -5460,19 +5514,19 @@ a:focus-visible {
5460
5514
  }
5461
5515
 
5462
5516
  .bc-group--gap-1 {
5463
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
5517
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
5464
5518
  }
5465
5519
 
5466
5520
  .bc-group--gap-2 {
5467
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
5521
+ gap: var(--spacing-stack-sm, var(--spacing-md));
5468
5522
  }
5469
5523
 
5470
5524
  .bc-group--gap-4 {
5471
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
5525
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
5472
5526
  }
5473
5527
 
5474
5528
  .bc-group--gap-md {
5475
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
5529
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
5476
5530
  }
5477
5531
 
5478
5532
  .bc-group--grow {
@@ -5482,7 +5536,7 @@ a:focus-visible {
5482
5536
  /* History Timeline */
5483
5537
  .bc-history-timeline {
5484
5538
  font-family: var(
5485
- --default-ui-font-family,
5539
+ --font-family-default-ui,
5486
5540
  var(--font-ui, var(--font-body, var(--font-family-sans)))
5487
5541
  );
5488
5542
  }
@@ -5497,7 +5551,7 @@ a:focus-visible {
5497
5551
 
5498
5552
  .bc-history-timeline__filter {
5499
5553
  padding: 4px 12px;
5500
- border: 1px solid var(--color-base-200);
5554
+ border: var(--border-width-thin) solid var(--color-base-200);
5501
5555
  border-radius: var(--radius-full, 9999px);
5502
5556
  background: transparent;
5503
5557
  font-size: var(--font-size-xs);
@@ -5736,7 +5790,7 @@ a:focus-visible {
5736
5790
  color: var(--color-neutral-500);
5737
5791
  white-space: nowrap;
5738
5792
  user-select: none;
5739
- line-height: 1;
5793
+ line-height: var(--line-height-none);
5740
5794
  align-self: stretch;
5741
5795
  }
5742
5796
 
@@ -5812,10 +5866,10 @@ a:focus-visible {
5812
5866
  .bc-input-container {
5813
5867
  width: 100%;
5814
5868
  /* Add a transparent border to match button height math */
5815
- border: 1.5px solid transparent;
5869
+ border: var(--border-width-default) solid transparent;
5816
5870
  border-radius: var(--radius-control, var(--radius-md));
5817
5871
  box-shadow: var(--shadow-xs);
5818
- line-height: 1;
5872
+ line-height: var(--line-height-none);
5819
5873
  transition: all var(--motion-transition-fast) var(--motion-easing-standard);
5820
5874
  align-items: stretch;
5821
5875
  }
@@ -5828,8 +5882,8 @@ a:focus-visible {
5828
5882
 
5829
5883
  .bc-input-container--default {
5830
5884
  background-color: var(--color-white);
5831
- outline: 1px solid var(--border-divider);
5832
- outline-offset: -1px;
5885
+ outline: var(--outline-width-default) solid var(--border-divider);
5886
+ outline-offset: calc(-1 * var(--outline-width-default));
5833
5887
  }
5834
5888
 
5835
5889
  .bc-base-input-container ::placeholder,
@@ -5846,26 +5900,26 @@ a:focus-visible {
5846
5900
 
5847
5901
  .bc-input-container--disabled {
5848
5902
  background-color: var(--color-neutral-200);
5849
- outline: 2px solid var(--border-divider);
5850
- outline-offset: -2px;
5903
+ outline: var(--outline-width-focus) solid var(--border-divider);
5904
+ outline-offset: calc(-1 * var(--outline-width-focus));
5851
5905
  }
5852
5906
 
5853
5907
  /* Focus within state */
5854
5908
  .bc-input-container:focus-within {
5855
5909
  z-index: var(--z-index-navigation);
5856
- outline: 2px solid var(--interactive-focus);
5857
- outline-offset: -2px;
5910
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
5911
+ outline-offset: calc(-1 * var(--outline-width-focus));
5858
5912
  }
5859
5913
 
5860
5914
  /* Error state */
5861
5915
  .bc-input-container--error {
5862
- outline: 2px solid var(--color-danger-600);
5863
- outline-offset: -2px;
5916
+ outline: var(--outline-width-focus) solid var(--color-danger-600);
5917
+ outline-offset: calc(-1 * var(--outline-width-focus));
5864
5918
  }
5865
5919
 
5866
5920
  .bc-input-container--error:focus-within {
5867
- outline: 2px solid var(--color-danger-600);
5868
- outline-offset: -2px;
5921
+ outline: var(--outline-width-focus) solid var(--color-danger-600);
5922
+ outline-offset: calc(-1 * var(--outline-width-focus));
5869
5923
  }
5870
5924
 
5871
5925
  /* Before and after elements */
@@ -5885,7 +5939,7 @@ a:focus-visible {
5885
5939
  align-items: center;
5886
5940
  min-width: 0;
5887
5941
  /* Horizontal padding only; vertical padding comes from size classes */
5888
- padding-inline: calc(var(--spacing-base) * 4);
5942
+ padding-inline: var(--spacing-lg);
5889
5943
  }
5890
5944
 
5891
5945
  .bc-input-container__input--grow {
@@ -5908,10 +5962,9 @@ a:focus-visible {
5908
5962
  /* Normalize native element heights for consistent input container sizing */
5909
5963
  .bc-input-container input,
5910
5964
  .bc-input-container select {
5911
- min-height: 19px;
5912
5965
  padding: 0;
5913
- padding-block: 1.5px;
5914
- line-height: 1;
5966
+ padding-block: var(--spacing-px);
5967
+ line-height: var(--line-height-none);
5915
5968
  }
5916
5969
 
5917
5970
  /* Password toggle button */
@@ -5987,11 +6040,11 @@ a:focus-visible {
5987
6040
  .dark .bc-input-container--default {
5988
6041
  background-color: var(--bg-surface);
5989
6042
  color: var(--text-normal);
5990
- outline: 2px solid var(--border-default);
6043
+ outline: var(--outline-width-focus) solid var(--border-default);
5991
6044
  }
5992
6045
 
5993
6046
  .dark .bc-input-container--default:focus-within {
5994
- outline: 2px solid var(--interactive-focus);
6047
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
5995
6048
  background-color: var(--bg-elevated);
5996
6049
  }
5997
6050
 
@@ -6002,17 +6055,17 @@ a:focus-visible {
6002
6055
 
6003
6056
  .dark .bc-input-container--disabled {
6004
6057
  background-color: var(--bg-subtle);
6005
- outline: 2px solid var(--border-divider);
6058
+ outline: var(--outline-width-focus) solid var(--border-divider);
6006
6059
  opacity: 0.6;
6007
6060
  }
6008
6061
 
6009
6062
  .dark .bc-input-container--error {
6010
- outline: 2px solid var(--color-danger-400);
6063
+ outline: var(--outline-width-focus) solid var(--color-danger-400);
6011
6064
  background-color: var(--color-danger-950);
6012
6065
  }
6013
6066
 
6014
6067
  .dark .bc-input-container--error:focus-within {
6015
- outline: 2px solid var(--color-danger-400);
6068
+ outline: var(--outline-width-focus) solid var(--color-danger-400);
6016
6069
  background-color: var(--color-danger-900);
6017
6070
  }
6018
6071
 
@@ -6043,7 +6096,7 @@ a:focus-visible {
6043
6096
  @media (width >= 40rem) {
6044
6097
  .bc-input-container {
6045
6098
  /* Do not force font-size; sizing classes control this */
6046
- line-height: 1;
6099
+ line-height: var(--line-height-none);
6047
6100
  }
6048
6101
  }
6049
6102
 
@@ -6051,7 +6104,7 @@ a:focus-visible {
6051
6104
  @media (prefers-contrast: high) {
6052
6105
  .bc-input-container,
6053
6106
  .bc-input {
6054
- border-width: 2px;
6107
+ border-width: var(--border-width-medium);
6055
6108
  }
6056
6109
  }
6057
6110
 
@@ -6079,7 +6132,7 @@ a:focus-visible {
6079
6132
  display: grid;
6080
6133
  grid-template-columns: auto 1fr;
6081
6134
  align-items: center;
6082
- gap: var(--spacing-sm, calc(var(--spacing-base) * 4));
6135
+ gap: var(--spacing-sm, var(--spacing-lg));
6083
6136
  }
6084
6137
 
6085
6138
  /* Horizontal with label on right */
@@ -6105,7 +6158,7 @@ a:focus-visible {
6105
6158
  display: flex;
6106
6159
  align-items: center;
6107
6160
  justify-content: space-between;
6108
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
6161
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6109
6162
  }
6110
6163
 
6111
6164
  /* Label section container */
@@ -6118,7 +6171,7 @@ a:focus-visible {
6118
6171
  .bc-input-wrapper__label {
6119
6172
  display: flex;
6120
6173
  align-items: center;
6121
- gap: var(--spacing-stack-2xs, calc(var(--spacing-base) / 2));
6174
+ gap: var(--spacing-stack-2xs, var(--spacing-xs));
6122
6175
  }
6123
6176
 
6124
6177
  /* Label text styles */
@@ -6199,8 +6252,8 @@ a:focus-visible {
6199
6252
  }
6200
6253
 
6201
6254
  .bc-json-schema-object {
6202
- border-left: calc(var(--spacing-base) * 2) solid var(--color-base-200);
6203
- padding-inline-start: calc(var(--spacing-base) * 2);
6255
+ border-left: var(--spacing-md) solid var(--color-base-200);
6256
+ padding-inline-start: var(--spacing-md);
6204
6257
  }
6205
6258
 
6206
6259
  .dark .bc-json-schema-object {
@@ -6212,7 +6265,7 @@ a:focus-visible {
6212
6265
  }
6213
6266
 
6214
6267
  .bc-schema-grid--gap-4 {
6215
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
6268
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
6216
6269
  }
6217
6270
 
6218
6271
  .bc-schema-grid--cols-1 {
@@ -6398,7 +6451,7 @@ a:focus-visible {
6398
6451
 
6399
6452
  .bc-object-helpers__row {
6400
6453
  display: grid;
6401
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
6454
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6402
6455
  grid-template-columns: 2fr 3fr min-content;
6403
6456
  }
6404
6457
 
@@ -6413,7 +6466,7 @@ a:focus-visible {
6413
6466
  }
6414
6467
 
6415
6468
  .bc-object-helpers__remove {
6416
- padding-top: calc(var(--spacing-base) * 3);
6469
+ padding-top: var(--spacing-mdh);
6417
6470
  flex-shrink: 1;
6418
6471
  }
6419
6472
 
@@ -6437,7 +6490,7 @@ a:focus-visible {
6437
6490
  .bc-json-schema-display__object {
6438
6491
  display: grid;
6439
6492
  grid-template-columns: auto 1fr;
6440
- column-gap: calc(var(--spacing-base) * 3);
6493
+ column-gap: var(--spacing-mdh);
6441
6494
  }
6442
6495
 
6443
6496
  /* Each field spans both parent columns and inherits their sizing via subgrid */
@@ -6460,7 +6513,7 @@ a:focus-visible {
6460
6513
  .bc-json-schema-display__label-row {
6461
6514
  display: flex;
6462
6515
  align-items: center;
6463
- gap: calc(var(--spacing-base) * 1);
6516
+ gap: var(--spacing-sm);
6464
6517
  grid-column: 1;
6465
6518
  max-width: 16rem;
6466
6519
  overflow: hidden;
@@ -6497,7 +6550,7 @@ a:focus-visible {
6497
6550
  font-size: var(--font-size-xs);
6498
6551
  color: var(--color-warning-600);
6499
6552
  background-color: var(--color-warning-100);
6500
- padding: 0.1em calc(var(--spacing-base) * 1);
6553
+ padding: 0.1em var(--spacing-sm);
6501
6554
  border-radius: var(--radius-sm);
6502
6555
  font-weight: var(--font-weight-medium);
6503
6556
  }
@@ -6545,7 +6598,7 @@ a:focus-visible {
6545
6598
  .bc-json-schema-display__value-context {
6546
6599
  font-size: var(--font-size-xs);
6547
6600
  color: var(--color-neutral-400);
6548
- margin-left: calc(var(--spacing-base) * 1);
6601
+ margin-left: var(--spacing-sm);
6549
6602
  }
6550
6603
 
6551
6604
  .dark .bc-json-schema-display__value-context {
@@ -6575,7 +6628,7 @@ a:focus-visible {
6575
6628
  .bc-json-schema-display__color-display {
6576
6629
  display: inline-flex;
6577
6630
  align-items: center;
6578
- gap: calc(var(--spacing-base) * 1);
6631
+ gap: var(--spacing-sm);
6579
6632
  }
6580
6633
 
6581
6634
  .bc-json-schema-display__color-swatch {
@@ -6583,7 +6636,7 @@ a:focus-visible {
6583
6636
  width: 1.25rem;
6584
6637
  height: 1.25rem;
6585
6638
  border-radius: var(--radius-sm);
6586
- border: 1px solid var(--color-neutral-300);
6639
+ border: var(--border-width-thin) solid var(--color-neutral-300);
6587
6640
  vertical-align: middle;
6588
6641
  }
6589
6642
 
@@ -6604,9 +6657,9 @@ a:focus-visible {
6604
6657
  white-space: pre-wrap;
6605
6658
  word-break: break-word;
6606
6659
  background-color: var(--color-neutral-50);
6607
- padding: calc(var(--spacing-base) * 2);
6660
+ padding: var(--spacing-md);
6608
6661
  border-radius: var(--radius-md);
6609
- border: 1px solid var(--color-neutral-200);
6662
+ border: var(--border-width-thin) solid var(--color-neutral-200);
6610
6663
  margin: 0;
6611
6664
  overflow-x: auto;
6612
6665
  }
@@ -6621,7 +6674,7 @@ a:focus-visible {
6621
6674
  display: inline-block;
6622
6675
  font-size: var(--font-size-sm);
6623
6676
  font-weight: var(--font-weight-medium);
6624
- padding: 0 calc(var(--spacing-base) * 1.5);
6677
+ padding: 0 var(--spacing-smh);
6625
6678
  border-radius: var(--radius-full);
6626
6679
  line-height: 1.6;
6627
6680
  }
@@ -6648,8 +6701,8 @@ a:focus-visible {
6648
6701
 
6649
6702
  /* Object */
6650
6703
  .bc-json-schema-display__object {
6651
- border-left: calc(var(--spacing-base) * 2) solid var(--color-base-200);
6652
- padding-inline-start: calc(var(--spacing-base) * 2);
6704
+ border-left: var(--spacing-md) solid var(--color-base-200);
6705
+ padding-inline-start: var(--spacing-md);
6653
6706
  }
6654
6707
 
6655
6708
  .dark .bc-json-schema-display__object {
@@ -6659,8 +6712,8 @@ a:focus-visible {
6659
6712
  /* Extra properties */
6660
6713
  .bc-json-schema-display__extra-property {
6661
6714
  opacity: 0.7;
6662
- border-left: 2px dashed var(--color-warning-400);
6663
- padding-inline-start: calc(var(--spacing-base) * 2);
6715
+ border-left: var(--border-width-medium) dashed var(--color-warning-400);
6716
+ padding-inline-start: var(--spacing-md);
6664
6717
  }
6665
6718
 
6666
6719
  .dark .bc-json-schema-display__extra-property {
@@ -6675,7 +6728,7 @@ a:focus-visible {
6675
6728
 
6676
6729
  .bc-json-schema-display__array-item {
6677
6730
  display: flex;
6678
- gap: calc(var(--spacing-base) * 1.5);
6731
+ gap: var(--spacing-smh);
6679
6732
  align-items: baseline;
6680
6733
  }
6681
6734
 
@@ -6713,11 +6766,11 @@ a:focus-visible {
6713
6766
  font-size: var(--font-size-xs);
6714
6767
  font-weight: var(--font-weight-medium);
6715
6768
  color: var(--color-primary-600);
6716
- padding: 0 calc(var(--spacing-base) * 1);
6769
+ padding: 0 var(--spacing-sm);
6717
6770
  background-color: var(--color-primary-50);
6718
6771
  border-radius: var(--radius-sm);
6719
6772
  display: inline-block;
6720
- margin-bottom: calc(var(--spacing-base) * 1);
6773
+ margin-bottom: var(--spacing-sm);
6721
6774
  }
6722
6775
 
6723
6776
  .dark .bc-json-schema-display__branch-label {
@@ -6749,13 +6802,13 @@ a:focus-visible {
6749
6802
  .bc-json-schema-display__mismatches {
6750
6803
  display: flex;
6751
6804
  flex-wrap: wrap;
6752
- gap: calc(var(--spacing-base) * 1);
6805
+ gap: var(--spacing-sm);
6753
6806
  }
6754
6807
 
6755
6808
  .bc-json-schema-display__mismatch {
6756
6809
  font-size: var(--font-size-xs);
6757
6810
  font-weight: var(--font-weight-medium);
6758
- padding: 0 calc(var(--spacing-base) * 1.5);
6811
+ padding: 0 var(--spacing-smh);
6759
6812
  border-radius: var(--radius-full);
6760
6813
  line-height: 1.6;
6761
6814
  }
@@ -6794,7 +6847,7 @@ a:focus-visible {
6794
6847
  font-size: var(--font-size-xs);
6795
6848
  color: var(--color-danger-600);
6796
6849
  font-style: italic;
6797
- margin-left: calc(var(--spacing-base) * 1);
6850
+ margin-left: var(--spacing-sm);
6798
6851
  }
6799
6852
 
6800
6853
  .dark .bc-json-schema-display__mismatch--type-mismatch,
@@ -6833,7 +6886,7 @@ a:focus-visible {
6833
6886
  .bc-json-structure-form {
6834
6887
  display: flex;
6835
6888
  flex-direction: column;
6836
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
6889
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
6837
6890
  }
6838
6891
 
6839
6892
  /* =============================================================================
@@ -6841,18 +6894,18 @@ a:focus-visible {
6841
6894
  ============================================================================= */
6842
6895
 
6843
6896
  .bc-json-structure-object {
6844
- border-left: calc(var(--spacing-base) * 2) solid var(--color-base-200);
6845
- padding-inline-start: calc(var(--spacing-base) * 2);
6897
+ border-left: var(--spacing-md) solid var(--color-base-200);
6898
+ padding-inline-start: var(--spacing-md);
6846
6899
  }
6847
6900
 
6848
6901
  .bc-json-structure-object-fields {
6849
6902
  display: flex;
6850
6903
  flex-direction: column;
6851
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
6904
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
6852
6905
  }
6853
6906
 
6854
6907
  .bc-json-structure-object--nested {
6855
- margin-top: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
6908
+ margin-top: var(--spacing-stack-sm, var(--spacing-md));
6856
6909
  }
6857
6910
 
6858
6911
  /* Additional properties */
@@ -6860,8 +6913,8 @@ a:focus-visible {
6860
6913
  display: flex;
6861
6914
  flex-direction: column;
6862
6915
  gap: var(--spacing-stack-xs, var(--spacing-base));
6863
- padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
6864
- border: 1px solid var(--color-base-200);
6916
+ padding: var(--spacing-inline-sm, var(--spacing-md));
6917
+ border: var(--border-width-thin) solid var(--color-base-200);
6865
6918
  border-radius: var(--radius-sm);
6866
6919
  background: var(--color-base-50);
6867
6920
  }
@@ -6870,11 +6923,11 @@ a:focus-visible {
6870
6923
  display: flex;
6871
6924
  justify-content: space-between;
6872
6925
  align-items: center;
6873
- gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
6926
+ gap: var(--spacing-inline-sm, var(--spacing-md));
6874
6927
  }
6875
6928
 
6876
6929
  .bc-json-structure-additional-property-value {
6877
- padding-inline-start: calc(var(--spacing-base) * 2);
6930
+ padding-inline-start: var(--spacing-md);
6878
6931
  }
6879
6932
 
6880
6933
  /* =============================================================================
@@ -6886,7 +6939,7 @@ a:focus-visible {
6886
6939
  .bc-json-structure-map {
6887
6940
  display: flex;
6888
6941
  flex-direction: column;
6889
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
6942
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6890
6943
  }
6891
6944
 
6892
6945
  .bc-json-structure-array-items,
@@ -6894,7 +6947,7 @@ a:focus-visible {
6894
6947
  .bc-json-structure-map-entries {
6895
6948
  display: flex;
6896
6949
  flex-direction: column;
6897
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
6950
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6898
6951
  }
6899
6952
 
6900
6953
  .bc-json-structure-array-item,
@@ -6902,7 +6955,7 @@ a:focus-visible {
6902
6955
  .bc-json-structure-map-entry {
6903
6956
  display: flex;
6904
6957
  align-items: flex-start;
6905
- gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
6958
+ gap: var(--spacing-inline-sm, var(--spacing-md));
6906
6959
  }
6907
6960
 
6908
6961
  .bc-json-structure-array-item-content,
@@ -6927,7 +6980,7 @@ a:focus-visible {
6927
6980
  display: flex;
6928
6981
  justify-content: space-between;
6929
6982
  align-items: center;
6930
- gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
6983
+ gap: var(--spacing-inline-sm, var(--spacing-md));
6931
6984
  margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
6932
6985
  }
6933
6986
 
@@ -6938,7 +6991,7 @@ a:focus-visible {
6938
6991
  }
6939
6992
 
6940
6993
  .bc-json-structure-map-entry-value {
6941
- padding-inline-start: calc(var(--spacing-base) * 2);
6994
+ padding-inline-start: var(--spacing-md);
6942
6995
  }
6943
6996
 
6944
6997
  /* Set error indicator */
@@ -6955,7 +7008,7 @@ a:focus-visible {
6955
7008
  .bc-json-structure-tuple {
6956
7009
  display: flex;
6957
7010
  flex-direction: column;
6958
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
7011
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6959
7012
  }
6960
7013
 
6961
7014
  .bc-json-structure-tuple-label {
@@ -6973,7 +7026,7 @@ a:focus-visible {
6973
7026
  .bc-json-structure-tuple-elements {
6974
7027
  display: flex;
6975
7028
  flex-direction: column;
6976
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
7029
+ gap: var(--spacing-stack-sm, var(--spacing-md));
6977
7030
  }
6978
7031
 
6979
7032
  .bc-json-structure-tuple-element {
@@ -7001,7 +7054,7 @@ a:focus-visible {
7001
7054
  }
7002
7055
 
7003
7056
  .bc-json-structure-tuple-element-control {
7004
- padding-inline-start: calc(var(--spacing-base) * 2);
7057
+ padding-inline-start: var(--spacing-md);
7005
7058
  }
7006
7059
 
7007
7060
  /* =============================================================================
@@ -7011,15 +7064,15 @@ a:focus-visible {
7011
7064
  .bc-json-structure-choice {
7012
7065
  display: flex;
7013
7066
  flex-direction: column;
7014
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
7067
+ gap: var(--spacing-stack-sm, var(--spacing-md));
7015
7068
  }
7016
7069
 
7017
7070
  .bc-json-structure-choice-selector {
7018
- margin-bottom: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
7071
+ margin-bottom: var(--spacing-stack-sm, var(--spacing-md));
7019
7072
  }
7020
7073
 
7021
7074
  .bc-json-structure-choice-options {
7022
- padding-inline-start: calc(var(--spacing-base) * 2);
7075
+ padding-inline-start: var(--spacing-md);
7023
7076
  }
7024
7077
 
7025
7078
  /* =============================================================================
@@ -7031,7 +7084,7 @@ a:focus-visible {
7031
7084
  }
7032
7085
 
7033
7086
  .bc-structure-grid--gap-4 {
7034
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
7087
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
7035
7088
  }
7036
7089
 
7037
7090
  .bc-structure-grid--cols-1 {
@@ -7168,7 +7221,7 @@ a:focus-visible {
7168
7221
  font-family: var(--font-family-mono);
7169
7222
  background: var(--color-base-100);
7170
7223
  padding: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5))
7171
- var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
7224
+ var(--spacing-inline-sm, var(--spacing-md));
7172
7225
  border-radius: var(--radius-sm);
7173
7226
  color: var(--color-base-600);
7174
7227
  }
@@ -7197,8 +7250,8 @@ a:focus-visible {
7197
7250
  display: flex;
7198
7251
  flex-direction: column;
7199
7252
  gap: var(--spacing-stack-xs, var(--spacing-base));
7200
- padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
7201
- border: 1px dashed var(--color-base-300);
7253
+ padding: var(--spacing-inline-sm, var(--spacing-md));
7254
+ border: var(--border-width-thin) dashed var(--color-base-300);
7202
7255
  border-radius: var(--radius-md);
7203
7256
  background: var(--color-base-50);
7204
7257
  }
@@ -7213,8 +7266,8 @@ a:focus-visible {
7213
7266
  display: flex;
7214
7267
  flex-direction: column;
7215
7268
  gap: var(--spacing-stack-xs, var(--spacing-base));
7216
- padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
7217
- border: 1px solid var(--color-warning-300);
7269
+ padding: var(--spacing-inline-sm, var(--spacing-md));
7270
+ border: var(--border-width-thin) solid var(--color-warning-300);
7218
7271
  border-radius: var(--radius-md);
7219
7272
  background: var(--color-warning-50);
7220
7273
  color: var(--color-warning-700);
@@ -7297,11 +7350,11 @@ a:focus-visible {
7297
7350
  justify-content: center;
7298
7351
  font-family: var(--font-family-mono);
7299
7352
  font-weight: var(--font-weight-medium);
7300
- line-height: 1;
7353
+ line-height: var(--line-height-none);
7301
7354
  border-radius: var(--radius-xs);
7302
7355
  background-color: var(--bg-surface);
7303
7356
  color: var(--text-muted);
7304
- border: 1px solid var(--border-subtle);
7357
+ border: var(--border-width-thin) solid var(--border-subtle);
7305
7358
  box-shadow: rgb(229, 229, 229) 0px 1px 0px;
7306
7359
  white-space: nowrap;
7307
7360
  vertical-align: middle;
@@ -7319,13 +7372,13 @@ a:focus-visible {
7319
7372
 
7320
7373
  .bc-kbd--size-sm {
7321
7374
  font-size: var(--font-size-sm);
7322
- padding: calc(var(--spacing-base) * 0.5) calc(var(--spacing-base) * 1.5);
7375
+ padding: calc(var(--spacing-base) * 0.5) var(--spacing-smh);
7323
7376
  min-width: calc(var(--font-size-sm) + var(--spacing-base) * 2);
7324
7377
  }
7325
7378
 
7326
7379
  .bc-kbd--size-md {
7327
7380
  font-size: var(--font-size-md);
7328
- padding: calc(var(--spacing-base) * 0.5) calc(var(--spacing-base) * 2);
7381
+ padding: calc(var(--spacing-base) * 0.5) var(--spacing-md);
7329
7382
  min-width: calc(var(--font-size-md) + var(--spacing-base) * 2.5);
7330
7383
  }
7331
7384
 
@@ -7341,7 +7394,7 @@ a:focus-visible {
7341
7394
  /* Accessibility adjustments */
7342
7395
  @media (prefers-contrast: high) {
7343
7396
  .bc-kbd {
7344
- border-width: 2px;
7397
+ border-width: var(--border-width-medium);
7345
7398
  }
7346
7399
  }
7347
7400
 
@@ -7355,7 +7408,7 @@ a:focus-visible {
7355
7408
  font-size: var(--font-size-sm);
7356
7409
  line-height: var(--line-height-normal);
7357
7410
  font-family: var(
7358
- --default-ui-font-family,
7411
+ --font-family-default-ui,
7359
7412
  var(--font-ui, var(--font-body, var(--font-family-sans)))
7360
7413
  );
7361
7414
  }
@@ -7394,7 +7447,7 @@ a:focus-visible {
7394
7447
  .bc-lexical-editor-container {
7395
7448
  display: flex;
7396
7449
  flex-direction: column;
7397
- border: 1px solid var(--color-neutral-200);
7450
+ border: var(--border-width-thin) solid var(--color-neutral-200);
7398
7451
  border-radius: var(--radius-control, var(--radius-md));
7399
7452
  background-color: var(--color-neutral-50);
7400
7453
  overflow: hidden;
@@ -7557,7 +7610,8 @@ a:focus-visible {
7557
7610
  .bc-lexical-editor blockquote {
7558
7611
  margin: 1rem 0;
7559
7612
  padding-left: 1rem;
7560
- border-left: 4px solid var(--color-neutral-300);
7613
+ border-left: calc(2 * var(--border-width-medium)) solid
7614
+ var(--color-neutral-300);
7561
7615
  color: var(--color-neutral-700);
7562
7616
  font-style: italic;
7563
7617
  }
@@ -7595,7 +7649,7 @@ a:focus-visible {
7595
7649
  background-color: var(--color-neutral-100);
7596
7650
  border-radius: var(--radius-md, 0.5rem);
7597
7651
  overflow-x: auto;
7598
- border: 1px solid var(--color-neutral-200);
7652
+ border: var(--border-width-thin) solid var(--color-neutral-200);
7599
7653
  }
7600
7654
 
7601
7655
  .bc-lexical-editor pre code {
@@ -7620,7 +7674,7 @@ a:focus-visible {
7620
7674
  .bc-lexical-editor hr {
7621
7675
  margin: 1.5rem 0;
7622
7676
  border: none;
7623
- border-top: 2px solid var(--color-neutral-200);
7677
+ border-top: var(--border-width-medium) solid var(--color-neutral-200);
7624
7678
  }
7625
7679
 
7626
7680
  .bc-lexical-editor strong,
@@ -7674,7 +7728,7 @@ a:focus-visible {
7674
7728
  top: 0.35em;
7675
7729
  width: 1em;
7676
7730
  height: 1em;
7677
- border: 2px solid var(--color-neutral-400);
7731
+ border: var(--border-width-medium) solid var(--color-neutral-400);
7678
7732
  border-radius: var(--radius-xs, 0.25rem);
7679
7733
  cursor: pointer;
7680
7734
  }
@@ -7691,8 +7745,8 @@ a:focus-visible {
7691
7745
  top: 0.45em;
7692
7746
  width: 0.5em;
7693
7747
  height: 0.25em;
7694
- border-left: 2px solid white;
7695
- border-bottom: 2px solid white;
7748
+ border-left: var(--border-width-medium) solid white;
7749
+ border-bottom: var(--border-width-medium) solid white;
7696
7750
  transform: rotate(-45deg);
7697
7751
  }
7698
7752
 
@@ -7831,7 +7885,7 @@ a:focus-visible {
7831
7885
 
7832
7886
  @media (prefers-contrast: high) {
7833
7887
  .bc-lexical-editor-container {
7834
- border-width: 2px;
7888
+ border-width: var(--border-width-medium);
7835
7889
  }
7836
7890
 
7837
7891
  .bc-lexical-editor-container:focus-within {
@@ -7849,7 +7903,7 @@ a:focus-visible {
7849
7903
 
7850
7904
  /* Toolbar positioned at top of editor container */
7851
7905
  .bc-lexical-toolbar {
7852
- border-bottom: 1px solid var(--color-neutral-200);
7906
+ border-bottom: var(--border-width-thin) solid var(--color-neutral-200);
7853
7907
  border-radius: 0;
7854
7908
  border: none;
7855
7909
  background-color: var(--color-neutral-50);
@@ -7863,7 +7917,7 @@ a:focus-visible {
7863
7917
 
7864
7918
  /* When toolbar is inside the editor container, add bottom border */
7865
7919
  .bc-lexical-editor-container > .bc-lexical-toolbar {
7866
- border-bottom: 1px solid var(--color-neutral-200);
7920
+ border-bottom: var(--border-width-thin) solid var(--color-neutral-200);
7867
7921
  }
7868
7922
 
7869
7923
  .dark .bc-lexical-editor-container > .bc-lexical-toolbar {
@@ -7873,7 +7927,7 @@ a:focus-visible {
7873
7927
  /* Bottom position variant */
7874
7928
  .bc-lexical-toolbar--bottom {
7875
7929
  border-bottom: none;
7876
- border-top: 1px solid var(--color-neutral-200);
7930
+ border-top: var(--border-width-thin) solid var(--color-neutral-200);
7877
7931
  }
7878
7932
 
7879
7933
  .dark .bc-lexical-toolbar--bottom {
@@ -7889,7 +7943,7 @@ a:focus-visible {
7889
7943
  .bc-lexical-toolbar-select {
7890
7944
  height: 28px;
7891
7945
  padding: 0 var(--spacing-xs);
7892
- border: 1px solid var(--color-neutral-300);
7946
+ border: var(--border-width-thin) solid var(--color-neutral-300);
7893
7947
  border-radius: var(--radius-sm);
7894
7948
  background-color: var(--bg-surface);
7895
7949
  color: var(--color-neutral-900);
@@ -7938,7 +7992,7 @@ a:focus-visible {
7938
7992
  font-size: 0.875rem;
7939
7993
  font-weight: 700;
7940
7994
  pointer-events: none;
7941
- line-height: 1;
7995
+ line-height: var(--line-height-none);
7942
7996
  }
7943
7997
 
7944
7998
  .bc-lexical-toolbar-color-icon--highlight {
@@ -7970,7 +8024,7 @@ a:focus-visible {
7970
8024
  padding: var(--spacing-xs);
7971
8025
  border-radius: var(--radius-md);
7972
8026
  background-color: var(--color-white);
7973
- border: 1px solid var(--color-neutral-200);
8027
+ border: var(--border-width-thin) solid var(--color-neutral-200);
7974
8028
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
7975
8029
  z-index: 1000;
7976
8030
  animation: bc-floating-toolbar-enter 0.15s ease-out;
@@ -8002,7 +8056,7 @@ a:focus-visible {
8002
8056
  overflow-y: auto;
8003
8057
  border-radius: var(--radius-md);
8004
8058
  background-color: var(--color-white);
8005
- border: 1px solid var(--color-neutral-200);
8059
+ border: var(--border-width-thin) solid var(--color-neutral-200);
8006
8060
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
8007
8061
  padding: var(--spacing-xs);
8008
8062
  z-index: 1000;
@@ -8122,7 +8176,7 @@ a:focus-visible {
8122
8176
  justify-content: center;
8123
8177
  width: 24px;
8124
8178
  height: 24px;
8125
- border: 1px solid var(--color-neutral-200);
8179
+ border: var(--border-width-thin) solid var(--color-neutral-200);
8126
8180
  border-radius: var(--radius-sm);
8127
8181
  background-color: var(--color-white);
8128
8182
  color: var(--color-neutral-400);
@@ -8169,12 +8223,12 @@ a:focus-visible {
8169
8223
  }
8170
8224
 
8171
8225
  .bc-lexical-table-row {
8172
- border-bottom: 1px solid var(--color-neutral-200);
8226
+ border-bottom: var(--border-width-thin) solid var(--color-neutral-200);
8173
8227
  }
8174
8228
 
8175
8229
  .bc-lexical-table-cell,
8176
8230
  .bc-lexical-table-cell-header {
8177
- border: 1px solid var(--color-neutral-200);
8231
+ border: var(--border-width-thin) solid var(--color-neutral-200);
8178
8232
  padding: 0.5rem 0.75rem;
8179
8233
  position: relative;
8180
8234
  vertical-align: top;
@@ -8190,8 +8244,8 @@ a:focus-visible {
8190
8244
  /* Selected cell highlight */
8191
8245
  .bc-lexical-table-cell--selected {
8192
8246
  background-color: var(--color-primary-50);
8193
- outline: 2px solid var(--color-primary-500);
8194
- outline-offset: -2px;
8247
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
8248
+ outline-offset: calc(-1 * var(--outline-width-focus));
8195
8249
  }
8196
8250
 
8197
8251
  /* Table context menu */
@@ -8273,7 +8327,7 @@ a:focus-visible {
8273
8327
  @media (prefers-contrast: high) {
8274
8328
  .bc-lexical-table-cell,
8275
8329
  .bc-lexical-table-cell-header {
8276
- border-width: 2px;
8330
+ border-width: var(--border-width-medium);
8277
8331
  }
8278
8332
 
8279
8333
  .bc-lexical-table-cell--selected {
@@ -8291,7 +8345,7 @@ a:focus-visible {
8291
8345
  margin: 1rem 0;
8292
8346
  padding: 1rem;
8293
8347
  background-color: var(--color-neutral-50);
8294
- border: 1px solid var(--color-neutral-200);
8348
+ border: var(--border-width-thin) solid var(--color-neutral-200);
8295
8349
  border-radius: var(--radius-md);
8296
8350
  overflow-x: auto;
8297
8351
  font-family:
@@ -8504,7 +8558,7 @@ a:focus-visible {
8504
8558
 
8505
8559
  @media (prefers-contrast: high) {
8506
8560
  .bc-lexical-code-block {
8507
- border-width: 2px;
8561
+ border-width: var(--border-width-medium);
8508
8562
  }
8509
8563
  }
8510
8564
  }
@@ -8518,13 +8572,13 @@ a:focus-visible {
8518
8572
  .bc-list-item-controls--aside {
8519
8573
  flex-direction: row;
8520
8574
  align-items: center;
8521
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
8575
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
8522
8576
  }
8523
8577
 
8524
8578
  /* Below layout: column, controls under content */
8525
8579
  .bc-list-item-controls--below {
8526
8580
  flex-direction: column;
8527
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
8581
+ gap: var(--spacing-stack-sm, var(--spacing-md));
8528
8582
  }
8529
8583
 
8530
8584
  /* Content area */
@@ -8551,7 +8605,7 @@ a:focus-visible {
8551
8605
  /* Move buttons group */
8552
8606
  .bc-list-item-controls__move {
8553
8607
  display: flex;
8554
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
8608
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
8555
8609
  }
8556
8610
 
8557
8611
  .bc-list-item-controls--aside .bc-list-item-controls__move {
@@ -8589,7 +8643,7 @@ a:focus-visible {
8589
8643
  }
8590
8644
 
8591
8645
  .bc-link:focus-visible {
8592
- outline: 2px solid currentColor;
8646
+ outline: var(--outline-width-focus) solid currentColor;
8593
8647
  outline-offset: 2px;
8594
8648
  border-radius: var(--radius-xs);
8595
8649
  }
@@ -8636,7 +8690,7 @@ a:focus-visible {
8636
8690
 
8637
8691
  .bc-link--plain {
8638
8692
  text-decoration: none;
8639
- border-bottom: 2px solid currentColor;
8693
+ border-bottom: var(--border-width-medium) solid currentColor;
8640
8694
  }
8641
8695
 
8642
8696
  .bc-link--hover {
@@ -8659,16 +8713,16 @@ a:focus-visible {
8659
8713
  /* Menu Component */
8660
8714
  .bc-menu {
8661
8715
  background-color: var(--color-white);
8662
- border: 1px solid var(--color-base-200);
8716
+ border: var(--border-width-thin) solid var(--color-base-200);
8663
8717
  border-radius: var(--radius-popover, var(--radius-md));
8664
8718
  box-shadow: var(--shadow-popover, var(--shadow-lg));
8665
8719
  padding: var(--spacing-xs) 0;
8666
8720
  z-index: var(--z-index-popover);
8667
- min-width: 12rem;
8721
+ min-width: var(--overlay-min-width);
8668
8722
  max-height: 20rem;
8669
8723
  overflow-y: auto;
8670
8724
  outline: none;
8671
- font-family: var(--default-ui-font-family, inherit);
8725
+ font-family: var(--font-family-default-ui, inherit);
8672
8726
  }
8673
8727
 
8674
8728
  /* Dark mode styles */
@@ -8687,7 +8741,7 @@ a:focus-visible {
8687
8741
  display: flex;
8688
8742
  align-items: center;
8689
8743
  gap: var(--spacing-stack-md, var(--spacing-md));
8690
- padding: calc(var(--spacing-base) * 1.75) calc(var(--spacing-base) * 3);
8744
+ padding: calc(var(--spacing-base) * 1.75) var(--spacing-mdh);
8691
8745
  border-radius: 0;
8692
8746
  cursor: pointer;
8693
8747
  transition: background-color
@@ -8779,7 +8833,8 @@ a:focus-visible {
8779
8833
  /* Menu Separator Component */
8780
8834
  .bc-menu-separator {
8781
8835
  margin: var(--spacing-xs) var(--spacing-sm);
8782
- border-top: 1px solid var(--border-divider, var(--color-base-200));
8836
+ border-top: var(--border-width-thin) solid
8837
+ var(--border-divider, var(--color-base-200));
8783
8838
  position: relative;
8784
8839
  }
8785
8840
 
@@ -8806,24 +8861,24 @@ a:focus-visible {
8806
8861
 
8807
8862
  /* Focus styles for accessibility */
8808
8863
  .bc-menu-item:focus-visible {
8809
- outline: 2px solid var(--interactive-focus);
8810
- outline-offset: -2px;
8864
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
8865
+ outline-offset: calc(-1 * var(--outline-width-focus));
8811
8866
  border-radius: var(--radius-sm);
8812
8867
  }
8813
8868
 
8814
8869
  /* High contrast mode support */
8815
8870
  @media (prefers-contrast: high) {
8816
8871
  .bc-menu {
8817
- border-width: 2px;
8872
+ border-width: var(--border-width-medium);
8818
8873
  }
8819
8874
 
8820
8875
  .bc-menu-item--focused {
8821
- outline: 2px solid currentColor;
8822
- outline-offset: -2px;
8876
+ outline: var(--outline-width-focus) solid currentColor;
8877
+ outline-offset: calc(-1 * var(--outline-width-focus));
8823
8878
  }
8824
8879
 
8825
8880
  .bc-menu-separator {
8826
- border-width: 2px;
8881
+ border-width: var(--border-width-medium);
8827
8882
  }
8828
8883
  }
8829
8884
 
@@ -8841,7 +8896,7 @@ a:focus-visible {
8841
8896
  }
8842
8897
 
8843
8898
  .bc-menu--size-sm .bc-menu-item {
8844
- padding: var(--spacing-xs) calc(var(--spacing-base) * 2);
8899
+ padding: var(--spacing-xs) var(--spacing-md);
8845
8900
  font-size: var(--font-size-xs);
8846
8901
  }
8847
8902
 
@@ -8851,7 +8906,7 @@ a:focus-visible {
8851
8906
  }
8852
8907
 
8853
8908
  .bc-menu--size-lg .bc-menu-item {
8854
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 3.5);
8909
+ padding: var(--spacing-md) calc(var(--spacing-base) * 3.5);
8855
8910
  font-size: var(--font-size-md);
8856
8911
  }
8857
8912
 
@@ -8912,7 +8967,7 @@ a:focus-visible {
8912
8967
  @media (hover: none) and (pointer: coarse) {
8913
8968
  .bc-menu-item {
8914
8969
  min-height: 44px; /* Minimum touch target */
8915
- padding: calc(var(--spacing-base) * 1.75) calc(var(--spacing-base) * 3);
8970
+ padding: calc(var(--spacing-base) * 1.75) var(--spacing-mdh);
8916
8971
  }
8917
8972
 
8918
8973
  .bc-menu-item:hover {
@@ -8955,7 +9010,7 @@ a:focus-visible {
8955
9010
  border-radius: var(--radius-overlay, var(--radius-lg));
8956
9011
  box-shadow: var(--shadow-overlay, var(--shadow-xl));
8957
9012
  background-color: var(--color-base-100);
8958
- border: 3px solid var(--color-base-300);
9013
+ border: var(--border-width-thick) solid var(--color-base-300);
8959
9014
  overflow: hidden;
8960
9015
  transition: all var(--motion-transition-overlay) var(--motion-easing-emphasis);
8961
9016
  }
@@ -8989,7 +9044,7 @@ a:focus-visible {
8989
9044
 
8990
9045
  /* Modal positioning - Top */
8991
9046
  .bc-modal--position-top.bc-modal--container-body {
8992
- top: calc(var(--spacing-base) * 8);
9047
+ top: var(--spacing-2xl);
8993
9048
  left: 50%;
8994
9049
  transform: translateX(-50%);
8995
9050
  }
@@ -9002,7 +9057,7 @@ a:focus-visible {
9002
9057
 
9003
9058
  /* Modal positioning - Bottom */
9004
9059
  .bc-modal--position-bottom.bc-modal--container-body {
9005
- bottom: calc(var(--spacing-base) * 8);
9060
+ bottom: var(--spacing-2xl);
9006
9061
  left: 50%;
9007
9062
  transform: translateX(-50%);
9008
9063
  }
@@ -9016,7 +9071,7 @@ a:focus-visible {
9016
9071
  /* Modal positioning - Left */
9017
9072
  .bc-modal--position-left.bc-modal--container-body {
9018
9073
  top: 50%;
9019
- left: calc(var(--spacing-base) * 8);
9074
+ left: var(--spacing-2xl);
9020
9075
  transform: translateY(-50%);
9021
9076
  }
9022
9077
 
@@ -9029,7 +9084,7 @@ a:focus-visible {
9029
9084
  /* Modal positioning - Right */
9030
9085
  .bc-modal--position-right.bc-modal--container-body {
9031
9086
  top: 50%;
9032
- right: calc(var(--spacing-base) * 8);
9087
+ right: var(--spacing-2xl);
9033
9088
  transform: translateY(-50%);
9034
9089
  }
9035
9090
 
@@ -9041,8 +9096,8 @@ a:focus-visible {
9041
9096
 
9042
9097
  /* Modal positioning - Top Left */
9043
9098
  .bc-modal--position-top-start.bc-modal--container-body {
9044
- top: calc(var(--spacing-base) * 8);
9045
- left: calc(var(--spacing-base) * 8);
9099
+ top: var(--spacing-2xl);
9100
+ left: var(--spacing-2xl);
9046
9101
  }
9047
9102
 
9048
9103
  .bc-modal--position-top-start.bc-modal--container-element {
@@ -9052,8 +9107,8 @@ a:focus-visible {
9052
9107
 
9053
9108
  /* Modal positioning - Top Right */
9054
9109
  .bc-modal--position-top-end.bc-modal--container-body {
9055
- top: calc(var(--spacing-base) * 8);
9056
- right: calc(var(--spacing-base) * 8);
9110
+ top: var(--spacing-2xl);
9111
+ right: var(--spacing-2xl);
9057
9112
  }
9058
9113
 
9059
9114
  .bc-modal--position-top-end.bc-modal--container-element {
@@ -9063,8 +9118,8 @@ a:focus-visible {
9063
9118
 
9064
9119
  /* Modal positioning - Bottom Left */
9065
9120
  .bc-modal--position-bottom-start.bc-modal--container-body {
9066
- bottom: calc(var(--spacing-base) * 8);
9067
- left: calc(var(--spacing-base) * 8);
9121
+ bottom: var(--spacing-2xl);
9122
+ left: var(--spacing-2xl);
9068
9123
  }
9069
9124
 
9070
9125
  .bc-modal--position-bottom-start.bc-modal--container-element {
@@ -9074,8 +9129,8 @@ a:focus-visible {
9074
9129
 
9075
9130
  /* Modal positioning - Bottom Right */
9076
9131
  .bc-modal--position-bottom-end.bc-modal--container-body {
9077
- bottom: calc(var(--spacing-base) * 8);
9078
- right: calc(var(--spacing-base) * 8);
9132
+ bottom: var(--spacing-2xl);
9133
+ right: var(--spacing-2xl);
9079
9134
  }
9080
9135
 
9081
9136
  .bc-modal--position-bottom-end.bc-modal--container-element {
@@ -9086,7 +9141,7 @@ a:focus-visible {
9086
9141
  /* Direction-aware modal positioning - Inline Start */
9087
9142
  .bc-modal--position-inline-start.bc-modal--container-body {
9088
9143
  top: 50%;
9089
- inset-inline-start: calc(var(--spacing-base) * 8);
9144
+ inset-inline-start: var(--spacing-2xl);
9090
9145
  transform: translateY(-50%);
9091
9146
  }
9092
9147
 
@@ -9099,7 +9154,7 @@ a:focus-visible {
9099
9154
  /* Direction-aware modal positioning - Inline End */
9100
9155
  .bc-modal--position-inline-end.bc-modal--container-body {
9101
9156
  top: 50%;
9102
- inset-inline-end: calc(var(--spacing-base) * 8);
9157
+ inset-inline-end: var(--spacing-2xl);
9103
9158
  transform: translateY(-50%);
9104
9159
  }
9105
9160
 
@@ -9111,8 +9166,8 @@ a:focus-visible {
9111
9166
 
9112
9167
  /* Direction-aware modal positioning - Top Inline Start */
9113
9168
  .bc-modal--position-top-inline-start.bc-modal--container-body {
9114
- top: calc(var(--spacing-base) * 8);
9115
- inset-inline-start: calc(var(--spacing-base) * 8);
9169
+ top: var(--spacing-2xl);
9170
+ inset-inline-start: var(--spacing-2xl);
9116
9171
  }
9117
9172
 
9118
9173
  .bc-modal--position-top-inline-start.bc-modal--container-element {
@@ -9122,8 +9177,8 @@ a:focus-visible {
9122
9177
 
9123
9178
  /* Direction-aware modal positioning - Top Inline End */
9124
9179
  .bc-modal--position-top-inline-end.bc-modal--container-body {
9125
- top: calc(var(--spacing-base) * 8);
9126
- inset-inline-end: calc(var(--spacing-base) * 8);
9180
+ top: var(--spacing-2xl);
9181
+ inset-inline-end: var(--spacing-2xl);
9127
9182
  }
9128
9183
 
9129
9184
  .bc-modal--position-top-inline-end.bc-modal--container-element {
@@ -9133,8 +9188,8 @@ a:focus-visible {
9133
9188
 
9134
9189
  /* Direction-aware modal positioning - Bottom Inline Start */
9135
9190
  .bc-modal--position-bottom-inline-start.bc-modal--container-body {
9136
- bottom: calc(var(--spacing-base) * 8);
9137
- inset-inline-start: calc(var(--spacing-base) * 8);
9191
+ bottom: var(--spacing-2xl);
9192
+ inset-inline-start: var(--spacing-2xl);
9138
9193
  }
9139
9194
 
9140
9195
  .bc-modal--position-bottom-inline-start.bc-modal--container-element {
@@ -9144,8 +9199,8 @@ a:focus-visible {
9144
9199
 
9145
9200
  /* Direction-aware modal positioning - Bottom Inline End */
9146
9201
  .bc-modal--position-bottom-inline-end.bc-modal--container-body {
9147
- bottom: calc(var(--spacing-base) * 8);
9148
- inset-inline-end: calc(var(--spacing-base) * 8);
9202
+ bottom: var(--spacing-2xl);
9203
+ inset-inline-end: var(--spacing-2xl);
9149
9204
  }
9150
9205
 
9151
9206
  .bc-modal--position-bottom-inline-end.bc-modal--container-element {
@@ -9155,19 +9210,19 @@ a:focus-visible {
9155
9210
 
9156
9211
  /* Modal sizes */
9157
9212
  .bc-modal--size-sm {
9158
- width: min(400px, 90vw);
9213
+ width: var(--overlay-width-sm);
9159
9214
  }
9160
9215
 
9161
9216
  .bc-modal--size-md {
9162
- width: min(600px, 90vw);
9217
+ width: var(--overlay-width-md);
9163
9218
  }
9164
9219
 
9165
9220
  .bc-modal--size-lg {
9166
- width: min(800px, 90vw);
9221
+ width: var(--overlay-width-lg);
9167
9222
  }
9168
9223
 
9169
9224
  .bc-modal--size-xl {
9170
- width: min(1000px, 90vw);
9225
+ width: var(--overlay-width-xl);
9171
9226
  }
9172
9227
 
9173
9228
  /* Modal content container */
@@ -9184,7 +9239,7 @@ a:focus-visible {
9184
9239
  align-items: center;
9185
9240
  justify-content: space-between;
9186
9241
  padding: var(--spacing-lg) var(--spacing-lg) var(--spacing-md);
9187
- border-bottom: 1px solid var(--color-base-300);
9242
+ border-bottom: var(--border-width-thin) solid var(--color-base-300);
9188
9243
  flex-shrink: 0;
9189
9244
  background-color: var(--color-base-100);
9190
9245
  }
@@ -9204,7 +9259,7 @@ a:focus-visible {
9204
9259
  display: flex;
9205
9260
  gap: var(--spacing-stack-md);
9206
9261
  padding: var(--spacing-md) var(--spacing-lg) var(--spacing-lg);
9207
- border-top: 1px solid var(--color-base-300);
9262
+ border-top: var(--border-width-thin) solid var(--color-base-300);
9208
9263
  flex-shrink: 0;
9209
9264
  background-color: var(--color-base-100);
9210
9265
  align-items: center;
@@ -9227,7 +9282,8 @@ a:focus-visible {
9227
9282
  .bc-overlay[data-status='start-opening'] .bc-modal--position-top,
9228
9283
  .bc-overlay[data-status='closing'] .bc-modal--position-top {
9229
9284
  opacity: 0;
9230
- transform: translateX(-50%) translateY(-20px) scale(0.95);
9285
+ transform: translateX(-50%) translateY(calc(-1 * var(--spacing-lgh)))
9286
+ scale(0.95);
9231
9287
  }
9232
9288
 
9233
9289
  .bc-overlay[data-status='opened'] .bc-modal--position-top,
@@ -9240,7 +9296,7 @@ a:focus-visible {
9240
9296
  .bc-overlay[data-status='start-opening'] .bc-modal--position-bottom,
9241
9297
  .bc-overlay[data-status='closing'] .bc-modal--position-bottom {
9242
9298
  opacity: 0;
9243
- transform: translateX(-50%) translateY(20px) scale(0.95);
9299
+ transform: translateX(-50%) translateY(var(--spacing-lgh)) scale(0.95);
9244
9300
  }
9245
9301
 
9246
9302
  .bc-overlay[data-status='opened'] .bc-modal--position-bottom,
@@ -9253,7 +9309,8 @@ a:focus-visible {
9253
9309
  .bc-overlay[data-status='start-opening'] .bc-modal--position-left,
9254
9310
  .bc-overlay[data-status='closing'] .bc-modal--position-left {
9255
9311
  opacity: 0;
9256
- transform: translateY(-50%) translateX(-20px) scale(0.95);
9312
+ transform: translateY(-50%) translateX(calc(-1 * var(--spacing-lgh)))
9313
+ scale(0.95);
9257
9314
  }
9258
9315
 
9259
9316
  .bc-overlay[data-status='opened'] .bc-modal--position-left,
@@ -9266,7 +9323,7 @@ a:focus-visible {
9266
9323
  .bc-overlay[data-status='start-opening'] .bc-modal--position-right,
9267
9324
  .bc-overlay[data-status='closing'] .bc-modal--position-right {
9268
9325
  opacity: 0;
9269
- transform: translateY(-50%) translateX(20px) scale(0.95);
9326
+ transform: translateY(-50%) translateX(var(--spacing-lgh)) scale(0.95);
9270
9327
  }
9271
9328
 
9272
9329
  .bc-overlay[data-status='opened'] .bc-modal--position-right,
@@ -9304,7 +9361,8 @@ a:focus-visible {
9304
9361
  .bc-overlay[data-status='start-opening'] .bc-modal--position-inline-start,
9305
9362
  .bc-overlay[data-status='closing'] .bc-modal--position-inline-start {
9306
9363
  opacity: 0;
9307
- transform: translateY(-50%) translateX(-20px) scale(0.95);
9364
+ transform: translateY(-50%) translateX(calc(-1 * var(--spacing-lgh)))
9365
+ scale(0.95);
9308
9366
  }
9309
9367
 
9310
9368
  .bc-overlay[data-status='opened'] .bc-modal--position-inline-start,
@@ -9317,7 +9375,7 @@ a:focus-visible {
9317
9375
  .bc-overlay[data-status='start-opening'] .bc-modal--position-inline-end,
9318
9376
  .bc-overlay[data-status='closing'] .bc-modal--position-inline-end {
9319
9377
  opacity: 0;
9320
- transform: translateY(-50%) translateX(20px) scale(0.95);
9378
+ transform: translateY(-50%) translateX(var(--spacing-lgh)) scale(0.95);
9321
9379
  }
9322
9380
 
9323
9381
  .bc-overlay[data-status='opened'] .bc-modal--position-inline-end,
@@ -9378,12 +9436,12 @@ a:focus-visible {
9378
9436
  /* Dark mode styles */
9379
9437
  .dark .bc-modal {
9380
9438
  background-color: var(--bg-surface);
9381
- border: 1px solid var(--border-default);
9439
+ border: var(--border-width-thin) solid var(--border-default);
9382
9440
  color: var(--text-normal);
9383
9441
  }
9384
9442
 
9385
9443
  .dark .bc-modal__header {
9386
- border-bottom: 1px solid var(--border-divider);
9444
+ border-bottom: var(--border-width-thin) solid var(--border-divider);
9387
9445
  background-color: var(--bg-elevated);
9388
9446
  }
9389
9447
 
@@ -9393,7 +9451,7 @@ a:focus-visible {
9393
9451
  }
9394
9452
 
9395
9453
  .dark .bc-modal__footer {
9396
- border-top: 1px solid var(--border-divider);
9454
+ border-top: var(--border-width-thin) solid var(--border-divider);
9397
9455
  background-color: var(--bg-elevated);
9398
9456
  }
9399
9457
 
@@ -9411,22 +9469,22 @@ a:focus-visible {
9411
9469
  }
9412
9470
 
9413
9471
  .dark .bc-modal--confirm .bc-modal__footer {
9414
- border-top: 1px solid var(--color-base-700);
9472
+ border-top: var(--border-width-thin) solid var(--color-base-700);
9415
9473
  background: var(--color-base-800);
9416
9474
  }
9417
9475
 
9418
9476
  /* High contrast mode support */
9419
9477
  @media (prefers-contrast: high) {
9420
9478
  .bc-modal {
9421
- border-width: 2px;
9479
+ border-width: var(--border-width-medium);
9422
9480
  }
9423
9481
 
9424
9482
  .bc-modal__header {
9425
- border-bottom-width: 2px;
9483
+ border-bottom-width: var(--border-width-medium);
9426
9484
  }
9427
9485
 
9428
9486
  .bc-modal__footer {
9429
- border-top-width: 2px;
9487
+ border-top-width: var(--border-width-medium);
9430
9488
  }
9431
9489
  }
9432
9490
 
@@ -9514,8 +9572,7 @@ a:focus-visible {
9514
9572
  display: flex;
9515
9573
  align-items: center;
9516
9574
  gap: calc(var(--spacing-base) * 2.5);
9517
- padding: calc(var(--spacing-base) * 5) calc(var(--spacing-base) * 6)
9518
- calc(var(--spacing-base) * 2.5);
9575
+ padding: var(--spacing-lgh) var(--spacing-xl) calc(var(--spacing-base) * 2.5);
9519
9576
  border-bottom: none;
9520
9577
  }
9521
9578
 
@@ -9530,14 +9587,14 @@ a:focus-visible {
9530
9587
  }
9531
9588
 
9532
9589
  .bc-modal__confirm-body {
9533
- padding: 0 calc(var(--spacing-base) * 6) calc(var(--spacing-base) * 5);
9590
+ padding: 0 var(--spacing-xl) var(--spacing-lgh);
9534
9591
  font-size: var(--font-size-sm);
9535
9592
  color: var(--color-base-600);
9536
9593
  line-height: var(--line-height-normal);
9537
9594
  }
9538
9595
 
9539
9596
  .bc-modal__confirm-consequences {
9540
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 3);
9597
+ padding: var(--spacing-md) var(--spacing-mdh);
9541
9598
  border-radius: var(--radius-md);
9542
9599
  background: var(--color-base-50);
9543
9600
  font-size: var(--font-size-xs);
@@ -9545,12 +9602,12 @@ a:focus-visible {
9545
9602
  display: flex;
9546
9603
  flex-direction: column;
9547
9604
  gap: var(--spacing-base);
9548
- margin-top: calc(var(--spacing-base) * 3);
9605
+ margin-top: var(--spacing-mdh);
9549
9606
  }
9550
9607
 
9551
9608
  .bc-modal__confirm-consequences li {
9552
9609
  display: flex;
9553
- gap: calc(var(--spacing-base) * 1.5);
9610
+ gap: var(--spacing-smh);
9554
9611
  list-style: none;
9555
9612
  }
9556
9613
 
@@ -9560,11 +9617,11 @@ a:focus-visible {
9560
9617
  }
9561
9618
 
9562
9619
  .bc-modal--confirm .bc-modal__footer {
9563
- padding: calc(var(--spacing-base) * 3) calc(var(--spacing-base) * 6);
9564
- border-top: 1px solid var(--color-base-200);
9620
+ padding: var(--spacing-mdh) var(--spacing-xl);
9621
+ border-top: var(--border-width-thin) solid var(--color-base-200);
9565
9622
  display: flex;
9566
9623
  justify-content: flex-end;
9567
- gap: calc(var(--spacing-base) * 2);
9624
+ gap: var(--spacing-md);
9568
9625
  background: var(--color-base-50);
9569
9626
  }
9570
9627
 
@@ -9670,10 +9727,10 @@ a:focus-visible {
9670
9727
  display: flex;
9671
9728
  align-items: center;
9672
9729
  justify-content: center;
9673
- line-height: 1;
9730
+ line-height: var(--line-height-none);
9674
9731
  border-radius: var(--radius-xs);
9675
- outline: 1px solid var(--color-gray-300);
9676
- outline-offset: -1px;
9732
+ outline: var(--outline-width-default) solid var(--color-gray-300);
9733
+ outline-offset: calc(-1 * var(--outline-width-default));
9677
9734
  cursor: pointer;
9678
9735
  transition: all
9679
9736
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
@@ -9756,12 +9813,12 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
9756
9813
 
9757
9814
  .bc-popover {
9758
9815
  background: var(--color-white);
9759
- border: 1px solid var(--color-base-200);
9760
- border-radius: var(--radius-md, 5px);
9761
- box-shadow: var(--shadow-md, 0 2px 8px rgba(0, 0, 0, 0.08));
9762
- min-width: 200px;
9763
- max-width: 400px;
9764
- padding: var(--spacing-md, 12px);
9816
+ border: var(--border-width-thin) solid var(--color-base-200);
9817
+ border-radius: var(--radius-md);
9818
+ box-shadow: var(--shadow-md);
9819
+ min-width: var(--overlay-min-width);
9820
+ max-width: var(--overlay-width-sm);
9821
+ padding: var(--spacing-md);
9765
9822
  color: var(--color-base-700);
9766
9823
  }
9767
9824
 
@@ -9920,32 +9977,32 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
9920
9977
  }
9921
9978
 
9922
9979
  .bc-panel--side-all {
9923
- border: 1px solid var(--border-default);
9980
+ border: var(--border-width-thin) solid var(--border-default);
9924
9981
  }
9925
9982
 
9926
9983
  .bc-panel--side-top {
9927
- border-top: 1px solid var(--border-default);
9984
+ border-top: var(--border-width-thin) solid var(--border-default);
9928
9985
  }
9929
9986
 
9930
9987
  .bc-panel--side-bottom {
9931
- border-bottom: 1px solid var(--border-default);
9988
+ border-bottom: var(--border-width-thin) solid var(--border-default);
9932
9989
  }
9933
9990
 
9934
9991
  .bc-panel--side-left {
9935
- border-left: 1px solid var(--border-default);
9992
+ border-left: var(--border-width-thin) solid var(--border-default);
9936
9993
  }
9937
9994
 
9938
9995
  .bc-panel--side-right {
9939
- border-right: 1px solid var(--border-default);
9996
+ border-right: var(--border-width-thin) solid var(--border-default);
9940
9997
  }
9941
9998
 
9942
9999
  /* Direction-aware panel borders */
9943
10000
  .bc-panel--side-inline-start {
9944
- border-inline-start: 1px solid var(--border-default);
10001
+ border-inline-start: var(--border-width-thin) solid var(--border-default);
9945
10002
  }
9946
10003
 
9947
10004
  .bc-panel--side-inline-end {
9948
- border-inline-end: 1px solid var(--border-default);
10005
+ border-inline-end: var(--border-width-thin) solid var(--border-default);
9949
10006
  }
9950
10007
 
9951
10008
  .bc-panel--shadow-sm {
@@ -9966,7 +10023,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
9966
10023
  align-items: center;
9967
10024
  gap: var(--spacing-xs);
9968
10025
  font-family: var(
9969
- --default-ui-font-family,
10026
+ --font-family-default-ui,
9970
10027
  var(--font-ui, var(--font-body, var(--font-family-sans)))
9971
10028
  );
9972
10029
  }
@@ -9982,11 +10039,11 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
9982
10039
  display: inline-flex;
9983
10040
  align-items: center;
9984
10041
  justify-content: center;
9985
- min-width: calc(var(--spacing-base) * 8);
9986
- height: calc(var(--spacing-base) * 8);
10042
+ min-width: var(--spacing-2xl);
10043
+ height: var(--spacing-2xl);
9987
10044
  padding: 0;
9988
10045
  cursor: pointer;
9989
- border: 1px solid transparent;
10046
+ border: var(--border-width-thin) solid transparent;
9990
10047
  border-radius: var(--radius-control-sm, var(--radius-sm));
9991
10048
  background: transparent;
9992
10049
  color: var(--color-base-700);
@@ -10003,7 +10060,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10003
10060
  }
10004
10061
 
10005
10062
  .bc-pagination__item:focus-visible {
10006
- outline: 2px solid var(--color-primary-500);
10063
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
10007
10064
  outline-offset: 2px;
10008
10065
  z-index: 1;
10009
10066
  }
@@ -10038,8 +10095,8 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10038
10095
  display: inline-flex;
10039
10096
  align-items: center;
10040
10097
  justify-content: center;
10041
- min-width: calc(var(--spacing-base) * 8);
10042
- height: calc(var(--spacing-base) * 8);
10098
+ min-width: var(--spacing-2xl);
10099
+ height: var(--spacing-2xl);
10043
10100
  color: var(--color-base-500);
10044
10101
  font-size: var(--font-size-md);
10045
10102
  user-select: none;
@@ -10048,8 +10105,8 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10048
10105
  /* Size Variants */
10049
10106
  .bc-pagination--size-xs .bc-pagination__item,
10050
10107
  .bc-pagination--size-xs .bc-pagination__dots {
10051
- min-width: calc(var(--spacing-base) * 6);
10052
- height: calc(var(--spacing-base) * 6);
10108
+ min-width: var(--spacing-xl);
10109
+ height: var(--spacing-xl);
10053
10110
  font-size: var(--font-size-xs);
10054
10111
  }
10055
10112
 
@@ -10062,8 +10119,8 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10062
10119
 
10063
10120
  .bc-pagination--size-md .bc-pagination__item,
10064
10121
  .bc-pagination--size-md .bc-pagination__dots {
10065
- min-width: calc(var(--spacing-base) * 8);
10066
- height: calc(var(--spacing-base) * 8);
10122
+ min-width: var(--spacing-2xl);
10123
+ height: var(--spacing-2xl);
10067
10124
  font-size: var(--font-size-md);
10068
10125
  }
10069
10126
 
@@ -10076,8 +10133,8 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10076
10133
 
10077
10134
  .bc-pagination--size-xl .bc-pagination__item,
10078
10135
  .bc-pagination--size-xl .bc-pagination__dots {
10079
- min-width: calc(var(--spacing-base) * 10);
10080
- height: calc(var(--spacing-base) * 10);
10136
+ min-width: var(--spacing-2xlh);
10137
+ height: var(--spacing-2xlh);
10081
10138
  font-size: var(--font-size-xl);
10082
10139
  }
10083
10140
 
@@ -10120,7 +10177,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10120
10177
  /* High Contrast Mode Support */
10121
10178
  @media (prefers-contrast: high) {
10122
10179
  .bc-pagination__item {
10123
- border-width: 2px;
10180
+ border-width: var(--border-width-medium);
10124
10181
  }
10125
10182
 
10126
10183
  .bc-pagination__item--active {
@@ -10338,7 +10395,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10338
10395
  @media (prefers-contrast: high) {
10339
10396
  .bc-password-strength__bar,
10340
10397
  .bc-password-strength-bar {
10341
- border: 1px solid var(--border-default);
10398
+ border: var(--border-width-thin) solid var(--border-default);
10342
10399
  }
10343
10400
 
10344
10401
  .dark .bc-password-strength__bar,
@@ -10409,7 +10466,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10409
10466
  line-height: 1.4;
10410
10467
  pointer-events: none;
10411
10468
  font-family: var(
10412
- --default-ui-font-family,
10469
+ --font-family-default-ui,
10413
10470
  var(--font-ui, var(--font-body, var(--font-family-sans)))
10414
10471
  );
10415
10472
  }
@@ -10440,7 +10497,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10440
10497
  .bc-progress-bar-wrapper {
10441
10498
  display: flex;
10442
10499
  flex-direction: column;
10443
- gap: calc(var(--spacing-base) * 1);
10500
+ gap: var(--spacing-sm);
10444
10501
  width: 100%;
10445
10502
  }
10446
10503
 
@@ -10480,11 +10537,11 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10480
10537
  }
10481
10538
 
10482
10539
  .bc-progress-bar--size-md {
10483
- height: calc(var(--spacing-base) * 2);
10540
+ height: var(--spacing-md);
10484
10541
  }
10485
10542
 
10486
10543
  .bc-progress-bar--size-lg {
10487
- height: calc(var(--spacing-base) * 3);
10544
+ height: var(--spacing-mdh);
10488
10545
  }
10489
10546
 
10490
10547
  /* Indeterminate state - animated sliding bar */
@@ -10510,13 +10567,13 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10510
10567
  /* Label text */
10511
10568
  .bc-progress-bar__label {
10512
10569
  font-family: var(
10513
- --default-ui-font-family,
10570
+ --font-family-default-ui,
10514
10571
  var(--font-ui, var(--font-body, var(--font-family-sans)))
10515
10572
  );
10516
10573
  font-size: var(--font-size-sm);
10517
10574
  color: var(--text-muted);
10518
10575
  text-align: right;
10519
- line-height: 1;
10576
+ line-height: var(--line-height-none);
10520
10577
  }
10521
10578
 
10522
10579
  /* Dark mode styles */
@@ -10545,13 +10602,13 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10545
10602
  /* High contrast mode: add borders for better visibility */
10546
10603
  @media (prefers-contrast: high) {
10547
10604
  .bc-progress-bar__track {
10548
- outline: 1px solid currentColor;
10549
- outline-offset: -1px;
10605
+ outline: var(--outline-width-default) solid currentColor;
10606
+ outline-offset: calc(-1 * var(--outline-width-default));
10550
10607
  }
10551
10608
 
10552
10609
  .bc-progress-bar__fill {
10553
- outline: 1px solid var(--progress-fill);
10554
- outline-offset: -1px;
10610
+ outline: var(--outline-width-default) solid var(--progress-fill);
10611
+ outline-offset: calc(-1 * var(--outline-width-default));
10555
10612
  }
10556
10613
  }
10557
10614
 
@@ -10687,7 +10744,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10687
10744
  border-radius: var(--radius-pill, var(--radius-full));
10688
10745
  box-shadow: var(--shadow-surface, var(--shadow-sm));
10689
10746
  position: relative;
10690
- border: 1px solid var(--color-base-300);
10747
+ border: var(--border-width-thin) solid var(--color-base-300);
10691
10748
  padding: var(--spacing-xs);
10692
10749
  display: inline-block;
10693
10750
  }
@@ -10731,7 +10788,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10731
10788
  z-index: 2;
10732
10789
  border-radius: var(--radius-pill, var(--radius-full));
10733
10790
  font-family: var(
10734
- --default-ui-font-family,
10791
+ --font-family-default-ui,
10735
10792
  var(--font-ui, var(--font-body, var(--font-family-sans)))
10736
10793
  );
10737
10794
  }
@@ -10790,7 +10847,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10790
10847
  /* Disabled state */
10791
10848
  .bc-segmented-input--disabled {
10792
10849
  background-color: var(--color-base-300);
10793
- border: 1px solid var(--color-base-300);
10850
+ border: var(--border-width-thin) solid var(--color-base-300);
10794
10851
  cursor: not-allowed;
10795
10852
  }
10796
10853
 
@@ -10812,7 +10869,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10812
10869
  /* Dark mode styles */
10813
10870
  .dark .bc-segmented-input {
10814
10871
  background-color: var(--bg-subtle);
10815
- border: 1px solid var(--border-default);
10872
+ border: var(--border-width-thin) solid var(--border-default);
10816
10873
  }
10817
10874
 
10818
10875
  .dark .bc-segmented-input__indicator {
@@ -10853,7 +10910,7 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10853
10910
  /* Disabled state (dark) */
10854
10911
  .dark .bc-segmented-input--disabled {
10855
10912
  background-color: var(--bg-background);
10856
- border: 1px solid var(--border-divider);
10913
+ border: var(--border-width-thin) solid var(--border-divider);
10857
10914
  opacity: 0.5;
10858
10915
  }
10859
10916
 
@@ -10891,13 +10948,13 @@ export type OverlayMode = 'capturing' | 'non-capturing' */
10891
10948
  display: flex;
10892
10949
  flex-direction: row;
10893
10950
  align-items: center;
10894
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
10951
+ gap: var(--spacing-stack-sm, var(--spacing-md));
10895
10952
  font-size: var(--font-size-sm);
10896
10953
  line-height: var(--line-height-normal);
10897
10954
  transition: all
10898
10955
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
10899
10956
  var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
10900
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 2);
10957
+ padding: var(--spacing-md) var(--spacing-md);
10901
10958
  }
10902
10959
 
10903
10960
  .bc-sidebar-group__header {
@@ -10925,8 +10982,8 @@ span.bc-sidebar-link {
10925
10982
  display: flex;
10926
10983
  align-items: center;
10927
10984
  justify-content: center;
10928
- width: calc(var(--spacing-base) * 4);
10929
- height: calc(var(--spacing-base) * 4);
10985
+ width: var(--spacing-lg);
10986
+ height: var(--spacing-lg);
10930
10987
  color: var(--text-muted);
10931
10988
  }
10932
10989
 
@@ -10934,9 +10991,9 @@ span.bc-sidebar-link {
10934
10991
  display: flex;
10935
10992
  align-items: center;
10936
10993
  justify-content: center;
10937
- width: calc(var(--spacing-base) * 6);
10938
- height: calc(var(--spacing-base) * 6);
10939
- border: 1px solid var(--border-default);
10994
+ width: var(--spacing-xl);
10995
+ height: var(--spacing-xl);
10996
+ border: var(--border-width-thin) solid var(--border-default);
10940
10997
  border-radius: var(--radius-control, var(--radius-md));
10941
10998
  cursor: pointer;
10942
10999
  padding: var(--spacing-sm);
@@ -10957,9 +11014,9 @@ span.bc-sidebar-link {
10957
11014
  }
10958
11015
 
10959
11016
  .bc-sidebar-group--rail {
10960
- padding-inline-start: calc(var(--spacing-base) * 2);
11017
+ padding-inline-start: var(--spacing-md);
10961
11018
  margin-left: 1px;
10962
- border-left: 1px solid var(--border-default);
11019
+ border-left: var(--border-width-thin) solid var(--border-default);
10963
11020
  }
10964
11021
 
10965
11022
  .bc-sidebar-group-collapsible-indicator {
@@ -11008,7 +11065,7 @@ span.bc-sidebar-link {
11008
11065
 
11009
11066
  .bc-sidebar--dark-bg .bc-sidebar-link--action {
11010
11067
  color: var(--text-normal);
11011
- border: 1px solid var(--border-default);
11068
+ border: var(--border-width-thin) solid var(--border-default);
11012
11069
  }
11013
11070
 
11014
11071
  .bc-sidebar--dark-bg .bc-sidebar-link--action:hover {
@@ -11017,7 +11074,7 @@ span.bc-sidebar-link {
11017
11074
  }
11018
11075
 
11019
11076
  .bc-sidebar--dark-bg .bc-sidebar-group--rail {
11020
- border-inline-start: 1px solid var(--border-default);
11077
+ border-inline-start: var(--border-width-thin) solid var(--border-default);
11021
11078
  }
11022
11079
 
11023
11080
  /* Dark background mode in dark theme - inverted back to light colors */
@@ -11027,8 +11084,8 @@ span.bc-sidebar-link {
11027
11084
 
11028
11085
  .bc-sidebar-separator {
11029
11086
  border: none;
11030
- border-top: 1px solid var(--border-default);
11031
- margin: calc(var(--spacing-base) * 2) 0;
11087
+ border-top: var(--border-width-thin) solid var(--border-default);
11088
+ margin: var(--spacing-md) 0;
11032
11089
  }
11033
11090
 
11034
11091
  /* Sink Component */
@@ -11036,7 +11093,7 @@ span.bc-sidebar-link {
11036
11093
  display: flex;
11037
11094
  flex-direction: column;
11038
11095
  border-radius: var(--radius-surface, var(--radius-lg));
11039
- border: 1px solid var(--color-base-300);
11096
+ border: var(--border-width-thin) solid var(--color-base-300);
11040
11097
  padding: var(--spacing-md);
11041
11098
  box-shadow: var(
11042
11099
  --shadow-sink,
@@ -11065,7 +11122,7 @@ span.bc-sidebar-link {
11065
11122
 
11066
11123
  .bc-sink--flat {
11067
11124
  box-shadow: var(--shadow-sink-flat, none);
11068
- border: 1px solid var(--color-base-200);
11125
+ border: var(--border-width-thin) solid var(--color-base-200);
11069
11126
  }
11070
11127
 
11071
11128
  /* Sink sizes */
@@ -11117,7 +11174,7 @@ span.bc-sidebar-link {
11117
11174
  /* Dark mode styles */
11118
11175
  .dark .bc-sink {
11119
11176
  background-color: var(--bg-background);
11120
- border: 1px solid var(--border-default);
11177
+ border: var(--border-width-thin) solid var(--border-default);
11121
11178
  box-shadow: var(--shadow-sink-dark, inset 0 2px 4px var(--shadow-color-dark));
11122
11179
  color: var(--text-normal);
11123
11180
  }
@@ -11138,7 +11195,7 @@ span.bc-sidebar-link {
11138
11195
 
11139
11196
  .dark .bc-sink--flat {
11140
11197
  box-shadow: var(--shadow-sink-dark-flat, none);
11141
- border: 1px solid var(--border-divider);
11198
+ border: var(--border-width-thin) solid var(--border-divider);
11142
11199
  background-color: var(--bg-subtle);
11143
11200
  }
11144
11201
 
@@ -11198,7 +11255,7 @@ span.bc-sidebar-link {
11198
11255
  .bc-skeleton__lines-container {
11199
11256
  display: flex;
11200
11257
  flex-direction: column;
11201
- gap: calc(var(--spacing-base) * 1.5);
11258
+ gap: var(--spacing-smh);
11202
11259
  width: 100%;
11203
11260
  }
11204
11261
 
@@ -11228,8 +11285,8 @@ span.bc-sidebar-link {
11228
11285
  /* High contrast mode: add subtle border */
11229
11286
  @media (prefers-contrast: high) {
11230
11287
  .bc-skeleton {
11231
- outline: 1px solid currentColor;
11232
- outline-offset: -1px;
11288
+ outline: var(--outline-width-default) solid currentColor;
11289
+ outline-offset: calc(-1 * var(--outline-width-default));
11233
11290
  }
11234
11291
  }
11235
11292
 
@@ -11240,15 +11297,15 @@ span.bc-sidebar-link {
11240
11297
  }
11241
11298
 
11242
11299
  .bc-stack--gap-1 {
11243
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
11300
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
11244
11301
  }
11245
11302
 
11246
11303
  .bc-stack--gap-2 {
11247
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
11304
+ gap: var(--spacing-stack-sm, var(--spacing-md));
11248
11305
  }
11249
11306
 
11250
11307
  .bc-stack--gap-4 {
11251
- gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
11308
+ gap: var(--spacing-stack-lg, var(--spacing-lg));
11252
11309
  }
11253
11310
 
11254
11311
  .bc-stack--align-center {
@@ -11278,17 +11335,17 @@ span.bc-sidebar-link {
11278
11335
  align-items: center;
11279
11336
  border-radius: var(--radius-pill, var(--radius-full));
11280
11337
  line-height: 1.2;
11281
- border: 1px solid var(--tag-border);
11338
+ border: var(--border-width-thin) solid var(--tag-border);
11282
11339
  transition: all
11283
11340
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
11284
11341
  var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
11285
11342
  font-size: var(--font-size-md);
11286
- padding: 0 calc(var(--spacing-base) * 2);
11287
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
11343
+ padding: 0 var(--spacing-md);
11344
+ gap: var(--spacing-stack-sm, var(--spacing-md));
11288
11345
  background-color: var(--tag-bg);
11289
11346
  color: var(--tag-text);
11290
11347
  font-family: var(
11291
- --default-ui-font-family,
11348
+ --font-family-default-ui,
11292
11349
  var(--font-ui, var(--font-body, var(--font-family-sans)))
11293
11350
  );
11294
11351
  }
@@ -11300,12 +11357,12 @@ span.bc-sidebar-link {
11300
11357
 
11301
11358
  .bc-tag--xs {
11302
11359
  font-size: var(--font-size-xs);
11303
- padding: 0 calc(var(--spacing-base) * 1);
11360
+ padding: 0 var(--spacing-sm);
11304
11361
  }
11305
11362
 
11306
11363
  .bc-tag--sm {
11307
11364
  font-size: var(--font-size-sm);
11308
- padding: 0 calc(var(--spacing-base) * 1.5);
11365
+ padding: 0 var(--spacing-smh);
11309
11366
  }
11310
11367
 
11311
11368
  .bc-tag--lg {
@@ -11315,7 +11372,7 @@ span.bc-sidebar-link {
11315
11372
 
11316
11373
  .bc-tag--xl {
11317
11374
  font-size: var(--font-size-xl);
11318
- padding: 0 calc(var(--spacing-base) * 3);
11375
+ padding: 0 var(--spacing-mdh);
11319
11376
  }
11320
11377
 
11321
11378
  .bc-tag:has(.bc-tag__close) {
@@ -11331,13 +11388,13 @@ span.bc-sidebar-link {
11331
11388
  display: flex;
11332
11389
  align-items: center;
11333
11390
  justify-content: center;
11334
- width: calc(var(--spacing-base) * 4);
11335
- height: calc(var(--spacing-base) * 4);
11391
+ width: var(--spacing-lg);
11392
+ height: var(--spacing-lg);
11336
11393
  border-radius: var(--radius-full);
11337
11394
  transition: all
11338
11395
  var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
11339
11396
  var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
11340
- border: 1px solid transparent;
11397
+ border: var(--border-width-thin) solid transparent;
11341
11398
  }
11342
11399
 
11343
11400
  .bc-tag__close:hover {
@@ -11395,7 +11452,7 @@ span.bc-sidebar-link {
11395
11452
  display: flex;
11396
11453
  align-items: center;
11397
11454
  justify-content: flex-end;
11398
- gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
11455
+ gap: var(--spacing-stack-sm, var(--spacing-md));
11399
11456
  }
11400
11457
 
11401
11458
  /* Switch Component */
@@ -11454,7 +11511,7 @@ span.bc-sidebar-link {
11454
11511
  transition: background-color var(--motion-transition-fast)
11455
11512
  var(--motion-easing-standard);
11456
11513
  cursor: pointer;
11457
- padding: calc(var(--spacing-base)) var(--spacing-base);
11514
+ padding: var(--spacing-sm) var(--spacing-base);
11458
11515
  }
11459
11516
 
11460
11517
  /* Switch track - off state */
@@ -11482,18 +11539,18 @@ span.bc-sidebar-link {
11482
11539
  .bc-switch__track-label--off {
11483
11540
  justify-content: flex-end;
11484
11541
  padding-inline-end: var(--spacing-base);
11485
- padding-inline-start: calc(var(--spacing-base) * 5);
11542
+ padding-inline-start: var(--spacing-lgh);
11486
11543
  color: var(--color-gray-600);
11487
- line-height: 1;
11544
+ line-height: var(--line-height-none);
11488
11545
  }
11489
11546
 
11490
11547
  /* On label positioning and styling */
11491
11548
  .bc-switch__track-label--on {
11492
11549
  justify-content: flex-start;
11493
- padding-inline-end: calc(var(--spacing-base) * 5);
11550
+ padding-inline-end: var(--spacing-lgh);
11494
11551
  padding-inline-start: var(--spacing-base);
11495
11552
  color: var(--switch-track-on-label, var(--color-gray-100));
11496
- line-height: 1;
11553
+ line-height: var(--line-height-none);
11497
11554
  }
11498
11555
 
11499
11556
  .bc-switch--size-xs .bc-switch__track-label {
@@ -11529,8 +11586,8 @@ span.bc-sidebar-link {
11529
11586
  .bc-switch__thumb {
11530
11587
  grid-area: stack;
11531
11588
  position: relative;
11532
- width: calc(var(--spacing-base) * 4); /* 16px equivalent */
11533
- height: calc(var(--spacing-base) * 4);
11589
+ width: var(--spacing-lg); /* 16px equivalent */
11590
+ height: var(--spacing-lg);
11534
11591
  border-radius: var(--radius-full);
11535
11592
  background-color: var(--color-white);
11536
11593
  box-shadow: var(
@@ -11549,23 +11606,23 @@ span.bc-sidebar-link {
11549
11606
  automatically via the logical property. calc(100% - thumbWidth) moves
11550
11607
  the thumb to the far end of the grid area regardless of track width. */
11551
11608
  .bc-switch__thumb--on {
11552
- inset-inline-start: calc(100% - var(--spacing-base) * 4);
11609
+ inset-inline-start: calc(100% - var(--spacing-lg));
11553
11610
  }
11554
11611
 
11555
11612
  /* Size variants for track and thumb */
11556
11613
  .bc-switch--xs .bc-switch__thumb {
11557
- width: calc(var(--spacing-base) * 3); /* 12px equivalent */
11558
- height: calc(var(--spacing-base) * 3);
11614
+ width: var(--spacing-mdh); /* 12px equivalent */
11615
+ height: var(--spacing-mdh);
11559
11616
  }
11560
11617
  .bc-switch--xs .bc-switch__thumb--on {
11561
- inset-inline-start: calc(100% - var(--spacing-base) * 3);
11618
+ inset-inline-start: calc(100% - var(--spacing-mdh));
11562
11619
  }
11563
11620
  .bc-switch--xs .bc-switch__track-label--off {
11564
11621
  padding-inline-end: var(--spacing-base);
11565
- padding-inline-start: calc(var(--spacing-base) * 4);
11622
+ padding-inline-start: var(--spacing-lg);
11566
11623
  }
11567
11624
  .bc-switch--xs .bc-switch__track-label--on {
11568
- padding-inline-end: calc(var(--spacing-base) * 4);
11625
+ padding-inline-end: var(--spacing-lg);
11569
11626
  padding-inline-start: var(--spacing-base);
11570
11627
  }
11571
11628
  .bc-switch--xs .bc-switch__track {
@@ -11581,10 +11638,10 @@ span.bc-sidebar-link {
11581
11638
  }
11582
11639
  .bc-switch--sm .bc-switch__track-label--off {
11583
11640
  padding-inline-end: var(--spacing-base);
11584
- padding-inline-start: calc(var(--spacing-base) * 5);
11641
+ padding-inline-start: var(--spacing-lgh);
11585
11642
  }
11586
11643
  .bc-switch--sm .bc-switch__track-label--on {
11587
- padding-inline-end: calc(var(--spacing-base) * 5);
11644
+ padding-inline-end: var(--spacing-lgh);
11588
11645
  padding-inline-start: var(--spacing-base);
11589
11646
  }
11590
11647
  .bc-switch--sm .bc-switch__track {
@@ -11592,18 +11649,18 @@ span.bc-sidebar-link {
11592
11649
  }
11593
11650
 
11594
11651
  .bc-switch--md .bc-switch__thumb {
11595
- width: calc(var(--spacing-base) * 4); /* 20px equivalent */
11596
- height: calc(var(--spacing-base) * 4);
11652
+ width: var(--spacing-lg); /* 20px equivalent */
11653
+ height: var(--spacing-lg);
11597
11654
  }
11598
11655
  .bc-switch--md .bc-switch__thumb--on {
11599
- inset-inline-start: calc(100% - var(--spacing-base) * 4);
11656
+ inset-inline-start: calc(100% - var(--spacing-lg));
11600
11657
  }
11601
11658
  .bc-switch--md .bc-switch__track-label--off {
11602
11659
  padding-inline-end: var(--spacing-base);
11603
- padding-inline-start: calc(var(--spacing-base) * 6);
11660
+ padding-inline-start: var(--spacing-xl);
11604
11661
  }
11605
11662
  .bc-switch--md .bc-switch__track-label--on {
11606
- padding-inline-end: calc(var(--spacing-base) * 6);
11663
+ padding-inline-end: var(--spacing-xl);
11607
11664
  padding-inline-start: var(--spacing-base);
11608
11665
  }
11609
11666
  .bc-switch--md .bc-switch__track {
@@ -11611,11 +11668,11 @@ span.bc-sidebar-link {
11611
11668
  }
11612
11669
 
11613
11670
  .bc-switch--lg .bc-switch__thumb {
11614
- width: calc(var(--spacing-base) * 5); /* 20px equivalent */
11615
- height: calc(var(--spacing-base) * 5);
11671
+ width: var(--spacing-lgh); /* 20px equivalent */
11672
+ height: var(--spacing-lgh);
11616
11673
  }
11617
11674
  .bc-switch--lg .bc-switch__thumb--on {
11618
- inset-inline-start: calc(100% - var(--spacing-base) * 5);
11675
+ inset-inline-start: calc(100% - var(--spacing-lgh));
11619
11676
  }
11620
11677
  .bc-switch--lg .bc-switch__track-label--off {
11621
11678
  padding-inline-end: var(--spacing-base);
@@ -11626,15 +11683,15 @@ span.bc-sidebar-link {
11626
11683
  padding-inline-start: var(--spacing-base);
11627
11684
  }
11628
11685
  .bc-switch--lg .bc-switch__track {
11629
- min-width: calc(var(--spacing-base) * 12);
11686
+ min-width: var(--spacing-3xl);
11630
11687
  }
11631
11688
 
11632
11689
  .bc-switch--xl .bc-switch__thumb {
11633
- width: calc(var(--spacing-base) * 6); /* 24px equivalent */
11634
- height: calc(var(--spacing-base) * 6);
11690
+ width: var(--spacing-xl); /* 24px equivalent */
11691
+ height: var(--spacing-xl);
11635
11692
  }
11636
11693
  .bc-switch--xl .bc-switch__thumb--on {
11637
- inset-inline-start: calc(100% - var(--spacing-base) * 6);
11694
+ inset-inline-start: calc(100% - var(--spacing-xl));
11638
11695
  }
11639
11696
  .bc-switch--xl .bc-switch__track-label--off {
11640
11697
  padding-inline-end: var(--spacing-base);
@@ -11651,19 +11708,19 @@ span.bc-sidebar-link {
11651
11708
  /* Match input height — adds vertical padding so the switch occupies the same
11652
11709
  height as text inputs at the corresponding size. */
11653
11710
  .bc-switch--match-input.bc-switch--xs {
11654
- padding-block: calc(var(--spacing-base) * 1.5);
11711
+ padding-block: var(--spacing-smh);
11655
11712
  }
11656
11713
  .bc-switch--match-input.bc-switch--sm {
11657
- padding-block: calc(var(--spacing-base) * 2);
11714
+ padding-block: var(--spacing-md);
11658
11715
  }
11659
11716
  .bc-switch--match-input.bc-switch--md {
11660
11717
  padding-block: calc(var(--spacing-base) * 1.75);
11661
11718
  }
11662
11719
  .bc-switch--match-input.bc-switch--lg {
11663
- padding-block: calc(var(--spacing-base) * 2);
11720
+ padding-block: var(--spacing-md);
11664
11721
  }
11665
11722
  .bc-switch--match-input.bc-switch--xl {
11666
- padding-block: calc(var(--spacing-base) * 2);
11723
+ padding-block: var(--spacing-md);
11667
11724
  }
11668
11725
 
11669
11726
  /* Focus styles are handled by the base focus system */
@@ -11685,12 +11742,13 @@ span.bc-sidebar-link {
11685
11742
 
11686
11743
  .dark .bc-switch__track--off {
11687
11744
  background-color: var(--bg-subtle);
11688
- border: 1px solid var(--border-default);
11745
+ border: var(--border-width-thin) solid var(--border-default);
11689
11746
  }
11690
11747
 
11691
11748
  .dark .bc-switch__track--on {
11692
11749
  background-color: var(--switch-track-on-bg-dark, var(--color-primary-600));
11693
- border: 1px solid var(--switch-track-on-border-dark, var(--color-primary-500));
11750
+ border: var(--border-width-thin) solid
11751
+ var(--switch-track-on-border-dark, var(--color-primary-500));
11694
11752
  }
11695
11753
 
11696
11754
  .dark .bc-switch__track-label--on {
@@ -11738,7 +11796,7 @@ span.bc-sidebar-link {
11738
11796
  background-color: var(--table-bg);
11739
11797
  color: var(--table-text);
11740
11798
  font-family: var(
11741
- --default-ui-font-family,
11799
+ --font-family-default-ui,
11742
11800
  var(--font-ui, var(--font-body, var(--font-family-sans)))
11743
11801
  );
11744
11802
  font-size: var(--font-size-md);
@@ -11792,7 +11850,7 @@ span.bc-sidebar-link {
11792
11850
 
11793
11851
  /* With table border */
11794
11852
  .bc-table-container--with-table-border {
11795
- border: 1px solid var(--table-border);
11853
+ border: var(--border-width-thin) solid var(--table-border);
11796
11854
  }
11797
11855
 
11798
11856
  /* With row borders */
@@ -11802,7 +11860,7 @@ span.bc-sidebar-link {
11802
11860
  .bc-table--with-row-borders > tbody > tr > td,
11803
11861
  .bc-table--with-row-borders > tfoot > tr > th,
11804
11862
  .bc-table--with-row-borders > tfoot > tr > td {
11805
- border-bottom: 1px solid var(--table-border);
11863
+ border-bottom: var(--border-width-thin) solid var(--table-border);
11806
11864
  }
11807
11865
 
11808
11866
  /* With column borders */
@@ -11812,7 +11870,7 @@ span.bc-sidebar-link {
11812
11870
  .bc-table--with-column-borders > tbody > tr > td,
11813
11871
  .bc-table--with-column-borders > tfoot > tr > th,
11814
11872
  .bc-table--with-column-borders > tfoot > tr > td {
11815
- border-right: 1px solid var(--table-border);
11873
+ border-right: var(--border-width-thin) solid var(--table-border);
11816
11874
  }
11817
11875
 
11818
11876
  .bc-table--with-column-borders > thead > tr > th:last-child,
@@ -11854,7 +11912,7 @@ span.bc-sidebar-link {
11854
11912
  .bc-table--size-sm > tbody > tr > td,
11855
11913
  .bc-table--size-sm > tfoot > tr > th,
11856
11914
  .bc-table--size-sm > tfoot > tr > td {
11857
- padding: calc(var(--spacing-base) * 1.5);
11915
+ padding: var(--spacing-smh);
11858
11916
  font-size: var(--font-size-sm);
11859
11917
  }
11860
11918
 
@@ -11873,7 +11931,7 @@ span.bc-sidebar-link {
11873
11931
  .bc-table--size-xl > tbody > tr > td,
11874
11932
  .bc-table--size-xl > tfoot > tr > th,
11875
11933
  .bc-table--size-xl > tfoot > tr > td {
11876
- padding: calc(var(--spacing-base) * 5);
11934
+ padding: var(--spacing-lgh);
11877
11935
  font-size: var(--font-size-lg);
11878
11936
  }
11879
11937
 
@@ -11892,7 +11950,7 @@ span.bc-sidebar-link {
11892
11950
  .bc-table__footer {
11893
11951
  background-color: var(--table-header-bg);
11894
11952
  font-weight: var(--font-weight-semibold);
11895
- border-top: 2px solid var(--table-border);
11953
+ border-top: var(--border-width-medium) solid var(--table-border);
11896
11954
  }
11897
11955
 
11898
11956
  /* Dark mode styles */
@@ -11946,7 +12004,7 @@ span.bc-sidebar-link {
11946
12004
  display: flex;
11947
12005
  position: relative;
11948
12006
  background-color: var(--color-base-100);
11949
- border-bottom: 2px solid var(--color-base-200);
12007
+ border-bottom: var(--border-width-medium) solid var(--color-base-200);
11950
12008
  overflow-x: auto;
11951
12009
  overflow-y: hidden;
11952
12010
  scrollbar-width: none;
@@ -11962,7 +12020,7 @@ span.bc-sidebar-link {
11962
12020
  .bc-tabs--vertical .bc-tabs__list {
11963
12021
  flex-direction: column;
11964
12022
  border-bottom: none;
11965
- border-right: 2px solid var(--color-base-200);
12023
+ border-right: var(--border-width-medium) solid var(--color-base-200);
11966
12024
  min-width: 200px;
11967
12025
  overflow-x: hidden;
11968
12026
  overflow-y: auto;
@@ -11977,7 +12035,7 @@ span.bc-sidebar-link {
11977
12035
  border: none;
11978
12036
  cursor: pointer;
11979
12037
  font-family: var(
11980
- --default-ui-font-family,
12038
+ --font-family-default-ui,
11981
12039
  var(--font-ui, var(--font-body, var(--font-family-sans)))
11982
12040
  );
11983
12041
  font-weight: var(--font-weight-medium);
@@ -12033,8 +12091,8 @@ span.bc-sidebar-link {
12033
12091
  }
12034
12092
 
12035
12093
  .bc-tab:focus-visible {
12036
- outline: 2px solid var(--color-primary-500);
12037
- outline-offset: -2px;
12094
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
12095
+ outline-offset: calc(-1 * var(--outline-width-focus));
12038
12096
  z-index: 1;
12039
12097
  }
12040
12098
 
@@ -12103,8 +12161,8 @@ span.bc-sidebar-link {
12103
12161
  }
12104
12162
 
12105
12163
  .bc-tabs__panel:focus-visible {
12106
- outline: 2px solid var(--color-primary-500);
12107
- outline-offset: -2px;
12164
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
12165
+ outline-offset: calc(-1 * var(--outline-width-focus));
12108
12166
  }
12109
12167
 
12110
12168
  /* Responsive Design */
@@ -12150,7 +12208,7 @@ span.bc-sidebar-link {
12150
12208
  /* High contrast mode support */
12151
12209
  @media (prefers-contrast: high) {
12152
12210
  .bc-tabs__list {
12153
- border-width: 3px;
12211
+ border-width: var(--border-width-thick);
12154
12212
  }
12155
12213
 
12156
12214
  .bc-tab--active::after {
@@ -12246,8 +12304,8 @@ span.bc-sidebar-link {
12246
12304
  }
12247
12305
  .bc-tabs--variant-outline .bc-tab {
12248
12306
  background-color: var(--color-base-50);
12249
- border: 1px solid var(--color-base-300);
12250
- border-bottom: 1px solid var(--color-base-300);
12307
+ border: var(--border-width-thin) solid var(--color-base-300);
12308
+ border-bottom: var(--border-width-thin) solid var(--color-base-300);
12251
12309
  border-radius: var(--radius-control-sm, var(--radius-sm))
12252
12310
  var(--radius-control-sm, var(--radius-sm)) 0 0;
12253
12311
  }
@@ -12305,7 +12363,7 @@ span.bc-sidebar-link {
12305
12363
  /* Underline variant: minimal, clean underline style */
12306
12364
  .bc-tabs--variant-underline .bc-tabs__list {
12307
12365
  background-color: transparent;
12308
- border-bottom: 1px solid var(--color-base-200);
12366
+ border-bottom: var(--border-width-thin) solid var(--color-base-200);
12309
12367
  }
12310
12368
 
12311
12369
  .bc-tabs--variant-underline .bc-tab {
@@ -12375,7 +12433,7 @@ span.bc-sidebar-link {
12375
12433
  }
12376
12434
 
12377
12435
  .bc-tabs--variant-pill .bc-tab--sm {
12378
- padding: var(--spacing-base) calc(var(--spacing-base) * 3);
12436
+ padding: var(--spacing-base) var(--spacing-mdh);
12379
12437
  }
12380
12438
 
12381
12439
  .bc-tabs--variant-pill .bc-tab--md {
@@ -12383,11 +12441,11 @@ span.bc-sidebar-link {
12383
12441
  }
12384
12442
 
12385
12443
  .bc-tabs--variant-pill .bc-tab--lg {
12386
- padding: calc(var(--spacing-base) * 1.5) calc(var(--spacing-base) * 4);
12444
+ padding: var(--spacing-smh) var(--spacing-lg);
12387
12445
  }
12388
12446
 
12389
12447
  .bc-tabs--variant-pill .bc-tab--xl {
12390
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 5);
12448
+ padding: var(--spacing-md) var(--spacing-lgh);
12391
12449
  }
12392
12450
 
12393
12451
  .bc-tabs--variant-pill
@@ -12460,7 +12518,7 @@ span.bc-sidebar-link {
12460
12518
  align-items: center;
12461
12519
  gap: 4px;
12462
12520
  padding: 4px 8px;
12463
- border: 1px solid var(--color-base-300);
12521
+ border: var(--border-width-thin) solid var(--color-base-300);
12464
12522
  border-radius: var(--radius-md, 5px);
12465
12523
  background: var(--color-white);
12466
12524
  min-height: 34px;
@@ -12546,7 +12604,7 @@ span.bc-sidebar-link {
12546
12604
  padding: 0;
12547
12605
  margin-left: 2px;
12548
12606
  font-size: 14px;
12549
- line-height: 1;
12607
+ line-height: var(--line-height-none);
12550
12608
  color: var(--color-base-400);
12551
12609
  opacity: 0.5;
12552
12610
  transition: opacity 120ms ease;
@@ -12601,7 +12659,7 @@ span.bc-sidebar-link {
12601
12659
  font-size: var(--font-size-sm);
12602
12660
  line-height: var(--font-size-sm-lh);
12603
12661
  font-weight: var(--font-weight-medium);
12604
- max-width: 200px;
12662
+ max-width: var(--overlay-width-xs);
12605
12663
  word-wrap: break-word;
12606
12664
  z-index: var(--z-index-tooltip);
12607
12665
  box-shadow: var(--shadow-popover, var(--shadow-md));
@@ -12677,7 +12735,7 @@ span.bc-sidebar-link {
12677
12735
  .dark .bc-tooltip {
12678
12736
  background-color: var(--bg-elevated);
12679
12737
  color: var(--text-normal);
12680
- border: 1px solid var(--border-default);
12738
+ border: var(--border-width-thin) solid var(--border-default);
12681
12739
  box-shadow: var(
12682
12740
  --shadow-tooltip-dark,
12683
12741
  0 10px 15px -3px var(--shadow-color-dark),
@@ -12694,11 +12752,11 @@ span.bc-sidebar-link {
12694
12752
  /* High contrast mode */
12695
12753
  @media (prefers-contrast: high) {
12696
12754
  .bc-tooltip {
12697
- border: 1px solid var(--color-neutral-600);
12755
+ border: var(--border-width-thin) solid var(--color-neutral-600);
12698
12756
  }
12699
12757
 
12700
12758
  .dark .bc-tooltip {
12701
- border: 1px solid var(--color-neutral-400);
12759
+ border: var(--border-width-thin) solid var(--color-neutral-400);
12702
12760
  }
12703
12761
  }
12704
12762
 
@@ -12715,7 +12773,7 @@ span.bc-sidebar-link {
12715
12773
  align-items: center;
12716
12774
  gap: var(--spacing-stack-sm);
12717
12775
  padding: var(--spacing-sm);
12718
- border: 1px solid var(--color-neutral-200);
12776
+ border: var(--border-width-thin) solid var(--color-neutral-200);
12719
12777
  border-radius: var(--radius-control, var(--radius-md));
12720
12778
  background-color: var(--color-neutral-50);
12721
12779
  width: 100%;
@@ -12734,7 +12792,7 @@ span.bc-sidebar-link {
12734
12792
 
12735
12793
  .bc-toolbar__divider {
12736
12794
  width: 1px;
12737
- height: calc(var(--spacing-base) * 6);
12795
+ height: var(--spacing-xl);
12738
12796
  background-color: var(--color-neutral-300);
12739
12797
  margin: 0 var(--spacing-xs);
12740
12798
  }
@@ -12763,9 +12821,9 @@ span.bc-sidebar-link {
12763
12821
 
12764
12822
  .bc-toolbar .bc-input-container {
12765
12823
  /* Reduce horizontal padding in toolbar but keep vertical from size */
12766
- padding-inline: calc(var(--spacing-base) * 3);
12824
+ padding-inline: var(--spacing-mdh);
12767
12825
  outline-width: 1px;
12768
- outline-offset: -1px;
12826
+ outline-offset: calc(-1 * var(--outline-width-default));
12769
12827
  width: auto;
12770
12828
  box-shadow: var(--shadow-none, none);
12771
12829
  }
@@ -12778,7 +12836,7 @@ span.bc-sidebar-link {
12778
12836
  }
12779
12837
 
12780
12838
  .bc-toolbar__divider {
12781
- height: calc(var(--spacing-base) * 4);
12839
+ height: var(--spacing-lg);
12782
12840
  margin: 0 var(--spacing-xs);
12783
12841
  }
12784
12842
 
@@ -12907,7 +12965,7 @@ span.bc-sidebar-link {
12907
12965
  background: var(--color-white);
12908
12966
  border-radius: var(--radius-lg);
12909
12967
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
12910
- border: 1px solid var(--color-base-200);
12968
+ border: var(--border-width-thin) solid var(--color-base-200);
12911
12969
  width: auto;
12912
12970
  }
12913
12971
 
@@ -12938,7 +12996,7 @@ span.bc-sidebar-link {
12938
12996
 
12939
12997
  .bc-toolbar--floating .bc-toolbar__divider {
12940
12998
  width: 1px;
12941
- height: calc(var(--spacing-base) * 5);
12999
+ height: var(--spacing-lgh);
12942
13000
  background: var(--color-base-200);
12943
13001
  margin: 0 calc(var(--spacing-base) * 0.5);
12944
13002
  flex-shrink: 0;
@@ -13073,7 +13131,7 @@ span.bc-sidebar-link {
13073
13131
  background: oklch(0.95 0 0);
13074
13132
  border-radius: var(--radius-sm);
13075
13133
  font-weight: 500;
13076
- line-height: 1;
13134
+ line-height: var(--line-height-none);
13077
13135
  display: inline-flex;
13078
13136
  align-items: center;
13079
13137
  }
@@ -13123,8 +13181,8 @@ span.bc-sidebar-link {
13123
13181
 
13124
13182
  /* Focus styles for keyboard navigation */
13125
13183
  .bc-tree-item__row:focus-visible {
13126
- outline: 2px solid var(--color-primary-500);
13127
- outline-offset: -2px;
13184
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
13185
+ outline-offset: calc(-1 * var(--outline-width-focus));
13128
13186
  }
13129
13187
 
13130
13188
  .dark .bc-tree-item__row:focus-visible {
@@ -13134,7 +13192,7 @@ span.bc-sidebar-link {
13134
13192
  /* Rating Input Component */
13135
13193
  .bc-rating-input {
13136
13194
  display: inline-flex;
13137
- gap: var(--spacing-stack-xs, calc(var(--spacing-base) * 1));
13195
+ gap: var(--spacing-stack-xs, var(--spacing-sm));
13138
13196
  }
13139
13197
 
13140
13198
  .bc-rating-input__icon-container {
@@ -13208,12 +13266,12 @@ span.bc-sidebar-link {
13208
13266
 
13209
13267
  /* Custom radio indicator */
13210
13268
  .bc-radio-group__indicator {
13211
- width: calc(var(--spacing-base) * 5);
13212
- height: calc(var(--spacing-base) * 5);
13213
- min-width: calc(var(--spacing-base) * 5);
13214
- min-height: calc(var(--spacing-base) * 5);
13269
+ width: var(--spacing-lgh);
13270
+ height: var(--spacing-lgh);
13271
+ min-width: var(--spacing-lgh);
13272
+ min-height: var(--spacing-lgh);
13215
13273
  border-radius: 50%;
13216
- border: 1px solid var(--color-base-400);
13274
+ border: var(--border-width-thin) solid var(--color-base-400);
13217
13275
  background-color: --color-white;
13218
13276
  flex-shrink: 0;
13219
13277
  position: relative;
@@ -13233,8 +13291,8 @@ span.bc-sidebar-link {
13233
13291
  .bc-radio-group__input:checked + .bc-radio-group__indicator::after {
13234
13292
  content: '';
13235
13293
  position: absolute;
13236
- width: calc(var(--spacing-base) * 2);
13237
- height: calc(var(--spacing-base) * 2);
13294
+ width: var(--spacing-md);
13295
+ height: var(--spacing-md);
13238
13296
  border-radius: 50%;
13239
13297
  background-color: var(--color-primary-500);
13240
13298
  transition: all var(--motion-duration-fast) var(--motion-easing-standard);
@@ -13242,7 +13300,7 @@ span.bc-sidebar-link {
13242
13300
 
13243
13301
  /* Focus state */
13244
13302
  .bc-radio-group__input:focus-visible + .bc-radio-group__indicator {
13245
- outline: 2px solid var(--interactive-focus);
13303
+ outline: var(--outline-width-focus) solid var(--interactive-focus);
13246
13304
  outline-offset: 2px;
13247
13305
  }
13248
13306
 
@@ -13291,8 +13349,8 @@ span.bc-sidebar-link {
13291
13349
  .bc-radio-group__item--size-xs
13292
13350
  .bc-radio-group__input:checked
13293
13351
  + .bc-radio-group__indicator::after {
13294
- width: calc(var(--spacing-base) * 1.5);
13295
- height: calc(var(--spacing-base) * 1.5);
13352
+ width: var(--spacing-smh);
13353
+ height: var(--spacing-smh);
13296
13354
  }
13297
13355
 
13298
13356
  .bc-radio-group__item--size-xs .bc-radio-group__label {
@@ -13304,10 +13362,10 @@ span.bc-sidebar-link {
13304
13362
  }
13305
13363
 
13306
13364
  .bc-radio-group__item--size-sm .bc-radio-group__indicator {
13307
- width: calc(var(--spacing-base) * 4);
13308
- height: calc(var(--spacing-base) * 4);
13309
- min-width: calc(var(--spacing-base) * 4);
13310
- min-height: calc(var(--spacing-base) * 4);
13365
+ width: var(--spacing-lg);
13366
+ height: var(--spacing-lg);
13367
+ min-width: var(--spacing-lg);
13368
+ min-height: var(--spacing-lg);
13311
13369
  }
13312
13370
 
13313
13371
  .bc-radio-group__item--size-sm
@@ -13328,10 +13386,10 @@ span.bc-sidebar-link {
13328
13386
  /* md is default */
13329
13387
 
13330
13388
  .bc-radio-group__item--size-lg .bc-radio-group__indicator {
13331
- width: calc(var(--spacing-base) * 5);
13332
- height: calc(var(--spacing-base) * 5);
13333
- min-width: calc(var(--spacing-base) * 5);
13334
- min-height: calc(var(--spacing-base) * 5);
13389
+ width: var(--spacing-lgh);
13390
+ height: var(--spacing-lgh);
13391
+ min-width: var(--spacing-lgh);
13392
+ min-height: var(--spacing-lgh);
13335
13393
  }
13336
13394
 
13337
13395
  .bc-radio-group__item--size-lg
@@ -13404,7 +13462,7 @@ span.bc-sidebar-link {
13404
13462
  .bc-notice {
13405
13463
  display: flex;
13406
13464
  flex-direction: row;
13407
- gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
13465
+ gap: var(--spacing-stack-md, var(--spacing-mdh));
13408
13466
  align-items: start;
13409
13467
  border-radius: var(--radius-control, var(--radius-md));
13410
13468
  padding: var(--spacing-md);
@@ -13427,12 +13485,12 @@ span.bc-sidebar-link {
13427
13485
 
13428
13486
  /* Tones */
13429
13487
  .bc-notice--tone-subtle {
13430
- border: 1px solid var(--border-default);
13488
+ border: var(--border-width-thin) solid var(--border-default);
13431
13489
  background-color: var(--bg-surface);
13432
13490
  }
13433
13491
 
13434
13492
  .bc-notice--tone-prominent {
13435
- border: 1px solid var(--border-default);
13493
+ border: var(--border-width-thin) solid var(--border-default);
13436
13494
  }
13437
13495
 
13438
13496
  /* Variants base color variables per tone */
@@ -13571,7 +13629,7 @@ span.bc-sidebar-link {
13571
13629
  border-radius: var(--notification-radius);
13572
13630
  background-color: var(--notification-bg);
13573
13631
  color: var(--notification-text-color);
13574
- border: 1px solid var(--notification-border-color);
13632
+ border: var(--border-width-thin) solid var(--notification-border-color);
13575
13633
  box-shadow: var(--shadow-md);
13576
13634
  }
13577
13635
 
@@ -13698,12 +13756,12 @@ span.bc-sidebar-link {
13698
13756
  display: flex;
13699
13757
  flex-direction: column;
13700
13758
  background: var(--color-white);
13701
- border: 1px solid var(--color-base-200);
13759
+ border: var(--border-width-thin) solid var(--color-base-200);
13702
13760
  border-radius: var(--radius-lg, 8px);
13703
13761
  box-shadow: var(--shadow-lg, 0 4px 16px rgba(0, 0, 0, 0.12));
13704
13762
  overflow: hidden;
13705
13763
  font-family: var(
13706
- --default-ui-font-family,
13764
+ --font-family-default-ui,
13707
13765
  var(--font-ui, var(--font-body, var(--font-family-sans)))
13708
13766
  );
13709
13767
  }
@@ -13714,7 +13772,7 @@ span.bc-sidebar-link {
13714
13772
  align-items: center;
13715
13773
  justify-content: space-between;
13716
13774
  padding: 12px 16px;
13717
- border-bottom: 1px solid var(--color-base-200);
13775
+ border-bottom: var(--border-width-thin) solid var(--color-base-200);
13718
13776
  flex-shrink: 0;
13719
13777
  }
13720
13778
 
@@ -13995,7 +14053,7 @@ span.bc-sidebar-link {
13995
14053
  bottom: 0;
13996
14054
  overflow: hidden;
13997
14055
  opacity: 0.2;
13998
- line-height: 1;
14056
+ line-height: var(--line-height-none);
13999
14057
  text-align: initial;
14000
14058
  forced-color-adjust: none;
14001
14059
  transform-origin: 0 0;
@@ -14122,7 +14180,7 @@ span.bc-sidebar-link {
14122
14180
  .buttonWidgetAnnotation.radioButton
14123
14181
  input {
14124
14182
  background-image: none;
14125
- border: 1px solid transparent;
14183
+ border: var(--border-width-thin) solid transparent;
14126
14184
  box-sizing: border-box;
14127
14185
  font: calc(9px * var(--scale-factor)) sans-serif;
14128
14186
  height: 100%;
@@ -14155,7 +14213,7 @@ span.bc-sidebar-link {
14155
14213
  .buttonWidgetAnnotation.radioButton
14156
14214
  input[disabled] {
14157
14215
  background: none;
14158
- border: 1px solid transparent;
14216
+ border: var(--border-width-thin) solid transparent;
14159
14217
  cursor: not-allowed;
14160
14218
  }
14161
14219
 
@@ -14168,14 +14226,14 @@ span.bc-sidebar-link {
14168
14226
  .bc-pdf-page-viewer__annotation-layer
14169
14227
  .buttonWidgetAnnotation.radioButton
14170
14228
  input:hover {
14171
- border: 1px solid rgba(0, 0, 0, 1);
14229
+ border: var(--border-width-thin) solid rgba(0, 0, 0, 1);
14172
14230
  }
14173
14231
 
14174
14232
  .bc-pdf-page-viewer__annotation-layer .textWidgetAnnotation input:focus,
14175
14233
  .bc-pdf-page-viewer__annotation-layer .textWidgetAnnotation textarea:focus,
14176
14234
  .bc-pdf-page-viewer__annotation-layer .choiceWidgetAnnotation select:focus {
14177
14235
  background: none;
14178
- border: 1px solid transparent;
14236
+ border: var(--border-width-thin) solid transparent;
14179
14237
  }
14180
14238
 
14181
14239
  .bc-pdf-page-viewer__annotation-layer
@@ -14286,7 +14344,7 @@ span.bc-sidebar-link {
14286
14344
  }
14287
14345
 
14288
14346
  .bc-pdf-page-viewer__annotation-layer .popupContent {
14289
- border-top: 1px solid rgba(51, 51, 51, 1);
14347
+ border-top: var(--border-width-thin) solid rgba(51, 51, 51, 1);
14290
14348
  margin-top: calc(2px * var(--scale-factor));
14291
14349
  padding-top: calc(2px * var(--scale-factor));
14292
14350
  }
@@ -14384,7 +14442,7 @@ span.bc-sidebar-link {
14384
14442
  }
14385
14443
 
14386
14444
  .bc-dialog__consequences {
14387
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 3);
14445
+ padding: var(--spacing-md) var(--spacing-mdh);
14388
14446
  border-radius: var(--radius-md);
14389
14447
  background: var(--bg-subtle);
14390
14448
  font-size: var(--font-size-xs);
@@ -14392,13 +14450,13 @@ span.bc-sidebar-link {
14392
14450
  display: flex;
14393
14451
  flex-direction: column;
14394
14452
  gap: var(--spacing-base);
14395
- margin: calc(var(--spacing-base) * 3) 0 0;
14453
+ margin: var(--spacing-mdh) 0 0;
14396
14454
  list-style: none;
14397
14455
  }
14398
14456
 
14399
14457
  .bc-dialog__consequences li {
14400
14458
  display: flex;
14401
- gap: calc(var(--spacing-base) * 1.5);
14459
+ gap: var(--spacing-smh);
14402
14460
  }
14403
14461
 
14404
14462
  .bc-dialog__consequences li::before {
@@ -14410,23 +14468,24 @@ span.bc-sidebar-link {
14410
14468
  .bc-dialog__actions {
14411
14469
  display: flex;
14412
14470
  justify-content: flex-end;
14413
- gap: calc(var(--spacing-base) * 2);
14471
+ gap: var(--spacing-md);
14414
14472
  width: 100%;
14415
14473
  }
14416
14474
 
14417
14475
  .bc-dialog__input {
14418
14476
  display: block;
14419
14477
  width: 100%;
14420
- padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 3);
14421
- margin-top: calc(var(--spacing-base) * 3);
14422
- border: 1px solid var(--border-input);
14478
+ padding: var(--spacing-md) var(--spacing-mdh);
14479
+ margin-top: var(--spacing-mdh);
14480
+ border: var(--border-width-thin) solid var(--border-input);
14423
14481
  border-radius: var(--radius-md);
14424
14482
  background: var(--bg-background);
14425
14483
  color: var(--text-normal);
14426
14484
  font-size: var(--font-size-sm);
14427
14485
  font-family: inherit;
14428
14486
  outline: none;
14429
- transition: border-color 0.15s ease;
14487
+ transition: border-color var(--motion-duration-fast)
14488
+ var(--motion-easing-standard);
14430
14489
  }
14431
14490
 
14432
14491
  .bc-dialog__input::placeholder {
@@ -14520,7 +14579,8 @@ span.bc-sidebar-link {
14520
14579
  /* High contrast */
14521
14580
  @media (prefers-contrast: more) {
14522
14581
  .bc-ribbon {
14523
- outline: 1px solid var(--border-border-light, var(--color-neutral-500));
14582
+ outline: var(--outline-width-default) solid
14583
+ var(--border-border-light, var(--color-neutral-500));
14524
14584
  }
14525
14585
  }
14526
14586
 
@@ -14540,13 +14600,13 @@ span.bc-sidebar-link {
14540
14600
 
14541
14601
  /* Default variant: bordered list */
14542
14602
  .bc-accordion--default {
14543
- border: 1px solid var(--border-default);
14603
+ border: var(--border-width-thin) solid var(--border-default);
14544
14604
  border-radius: var(--radius-md);
14545
14605
  overflow: hidden;
14546
14606
  }
14547
14607
 
14548
14608
  .bc-accordion--default .bc-accordion__item + .bc-accordion__item {
14549
- border-top: 1px solid var(--border-default);
14609
+ border-top: var(--border-width-thin) solid var(--border-default);
14550
14610
  }
14551
14611
 
14552
14612
  /* Separated variant: cards with gaps */
@@ -14555,7 +14615,7 @@ span.bc-sidebar-link {
14555
14615
  }
14556
14616
 
14557
14617
  .bc-accordion--separated .bc-accordion__item {
14558
- border: 1px solid var(--border-default);
14618
+ border: var(--border-width-thin) solid var(--border-default);
14559
14619
  border-radius: var(--radius-md);
14560
14620
  overflow: hidden;
14561
14621
  }
@@ -14591,8 +14651,8 @@ span.bc-sidebar-link {
14591
14651
  }
14592
14652
 
14593
14653
  .bc-accordion__header:focus-visible {
14594
- outline: 2px solid var(--color-primary-500);
14595
- outline-offset: -2px;
14654
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
14655
+ outline-offset: calc(-1 * var(--outline-width-focus));
14596
14656
  }
14597
14657
 
14598
14658
  .bc-accordion__header:disabled {
@@ -14622,8 +14682,8 @@ span.bc-sidebar-link {
14622
14682
  display: inline-block;
14623
14683
  width: 0.5em;
14624
14684
  height: 0.5em;
14625
- border-right: 2px solid currentColor;
14626
- border-bottom: 2px solid currentColor;
14685
+ border-right: var(--border-width-medium) solid currentColor;
14686
+ border-bottom: var(--border-width-medium) solid currentColor;
14627
14687
  transform: rotate(45deg);
14628
14688
  margin-top: -0.15em;
14629
14689
  }
@@ -14723,7 +14783,7 @@ span.bc-sidebar-link {
14723
14783
  display: inline-flex;
14724
14784
  flex-direction: column;
14725
14785
  background-color: var(--bg-background);
14726
- border: 1px solid var(--border-default);
14786
+ border: var(--border-width-thin) solid var(--border-default);
14727
14787
  border-radius: var(--radius-md);
14728
14788
  padding: var(--spacing-md);
14729
14789
  user-select: none;
@@ -14748,14 +14808,14 @@ span.bc-sidebar-link {
14748
14808
  align-items: center;
14749
14809
  justify-content: center;
14750
14810
  background: none;
14751
- border: 1px solid transparent;
14811
+ border: var(--border-width-thin) solid transparent;
14752
14812
  border-radius: var(--radius-sm);
14753
14813
  cursor: pointer;
14754
14814
  color: var(--text-normal);
14755
14815
  font-weight: var(--font-weight-semibold);
14756
14816
  transition: background-color var(--motion-transition-fast)
14757
14817
  var(--motion-easing-standard);
14758
- line-height: 1;
14818
+ line-height: var(--line-height-none);
14759
14819
  }
14760
14820
 
14761
14821
  .bc-calendar__nav-btn:hover:not(:disabled) {
@@ -14763,8 +14823,8 @@ span.bc-sidebar-link {
14763
14823
  }
14764
14824
 
14765
14825
  .bc-calendar__nav-btn:focus-visible {
14766
- outline: 2px solid var(--color-primary-500);
14767
- outline-offset: -2px;
14826
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
14827
+ outline-offset: calc(-1 * var(--outline-width-focus));
14768
14828
  }
14769
14829
 
14770
14830
  .bc-calendar__nav-btn:disabled {
@@ -14803,8 +14863,8 @@ span.bc-sidebar-link {
14803
14863
  }
14804
14864
 
14805
14865
  .bc-calendar__title-btn:focus-visible {
14806
- outline: 2px solid var(--color-primary-500);
14807
- outline-offset: -2px;
14866
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
14867
+ outline-offset: calc(-1 * var(--outline-width-focus));
14808
14868
  }
14809
14869
 
14810
14870
  .bc-calendar__title-btn:disabled {
@@ -14857,8 +14917,8 @@ span.bc-sidebar-link {
14857
14917
  }
14858
14918
 
14859
14919
  .bc-calendar__day:focus-visible {
14860
- outline: 2px solid var(--cal-selected-bg);
14861
- outline-offset: -2px;
14920
+ outline: var(--outline-width-focus) solid var(--cal-selected-bg);
14921
+ outline-offset: calc(-1 * var(--outline-width-focus));
14862
14922
  }
14863
14923
 
14864
14924
  .bc-calendar__day--outside {
@@ -14931,8 +14991,8 @@ span.bc-sidebar-link {
14931
14991
  }
14932
14992
 
14933
14993
  .bc-calendar__month-cell:focus-visible {
14934
- outline: 2px solid var(--cal-selected-bg);
14935
- outline-offset: -2px;
14994
+ outline: var(--outline-width-focus) solid var(--cal-selected-bg);
14995
+ outline-offset: calc(-1 * var(--outline-width-focus));
14936
14996
  }
14937
14997
 
14938
14998
  .bc-calendar__month-cell--current {
@@ -14977,8 +15037,8 @@ span.bc-sidebar-link {
14977
15037
  }
14978
15038
 
14979
15039
  .bc-calendar__year-cell:focus-visible {
14980
- outline: 2px solid var(--cal-selected-bg);
14981
- outline-offset: -2px;
15040
+ outline: var(--outline-width-focus) solid var(--cal-selected-bg);
15041
+ outline-offset: calc(-1 * var(--outline-width-focus));
14982
15042
  }
14983
15043
 
14984
15044
  .bc-calendar__year-cell--current {
@@ -15332,7 +15392,7 @@ span.bc-sidebar-link {
15332
15392
  /* Thumb */
15333
15393
  .bc-advanced-slider__thumb {
15334
15394
  background-color: var(--color-white);
15335
- border: 2px solid var(--slider-color);
15395
+ border: var(--border-width-medium) solid var(--slider-color);
15336
15396
  border-radius: var(--radius-full);
15337
15397
  cursor: grab;
15338
15398
  box-shadow: var(--shadow-sm);
@@ -15352,7 +15412,7 @@ span.bc-sidebar-link {
15352
15412
  }
15353
15413
 
15354
15414
  .bc-advanced-slider__thumb:focus-visible {
15355
- outline: 2px solid var(--color-primary-500);
15415
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
15356
15416
  outline-offset: 2px;
15357
15417
  }
15358
15418
 
@@ -15370,7 +15430,7 @@ span.bc-sidebar-link {
15370
15430
  }
15371
15431
 
15372
15432
  .bc-advanced-slider__thumb-custom:focus-visible {
15373
- outline: 2px solid var(--color-primary-500);
15433
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
15374
15434
  outline-offset: 2px;
15375
15435
  }
15376
15436
 
@@ -15384,7 +15444,7 @@ span.bc-sidebar-link {
15384
15444
  font-weight: var(--font-weight-semibold);
15385
15445
  pointer-events: none;
15386
15446
  text-align: center;
15387
- line-height: 1;
15447
+ line-height: var(--line-height-none);
15388
15448
  }
15389
15449
 
15390
15450
  /* Ticks container */
@@ -15610,7 +15670,7 @@ span.bc-sidebar-link {
15610
15670
  font-variant-numeric: tabular-nums;
15611
15671
  color: var(--text-normal);
15612
15672
  background-color: var(--bg-background);
15613
- border: 1.5px solid var(--border-default);
15673
+ border: var(--border-width-default) solid var(--border-default);
15614
15674
  border-radius: var(--radius-md);
15615
15675
  outline: none;
15616
15676
  caret-color: var(--otp-focus-color);
@@ -15718,14 +15778,15 @@ span.bc-sidebar-link {
15718
15778
  align-items: center;
15719
15779
  justify-content: center;
15720
15780
  gap: var(--spacing-stack-2xs);
15721
- border: 1.5px var(--toggle-border-style) var(--toggle-border);
15781
+ border: var(--border-width-default) var(--toggle-border-style)
15782
+ var(--toggle-border);
15722
15783
  cursor: pointer;
15723
15784
  font-family: inherit;
15724
15785
  font-weight: var(--font-weight-semibold);
15725
15786
  background-color: var(--toggle-bg);
15726
15787
  color: var(--toggle-text);
15727
15788
  text-shadow: var(--toggle-text-shadow);
15728
- line-height: 1;
15789
+ line-height: var(--line-height-none);
15729
15790
  transition: all var(--motion-transition-fast) var(--motion-easing-standard);
15730
15791
  user-select: none;
15731
15792
  }
@@ -15746,7 +15807,7 @@ span.bc-sidebar-link {
15746
15807
  }
15747
15808
 
15748
15809
  .bc-toggle-button:focus-visible {
15749
- outline: 2px solid var(--color-primary-500);
15810
+ outline: var(--outline-width-focus) solid var(--color-primary-500);
15750
15811
  outline-offset: 2px;
15751
15812
  }
15752
15813
 
@@ -15763,8 +15824,8 @@ span.bc-sidebar-link {
15763
15824
  /* Size variants */
15764
15825
  .bc-toggle-button--size-xs {
15765
15826
  font-size: var(--font-size-xs);
15766
- min-height: calc(var(--spacing-base) * 6);
15767
- min-width: calc(var(--spacing-base) * 6);
15827
+ min-height: var(--spacing-xl);
15828
+ min-width: var(--spacing-xl);
15768
15829
  }
15769
15830
 
15770
15831
  .bc-toggle-button--size-sm {
@@ -15775,20 +15836,20 @@ span.bc-sidebar-link {
15775
15836
 
15776
15837
  .bc-toggle-button--size-md {
15777
15838
  font-size: var(--font-size-md);
15778
- min-height: calc(var(--spacing-base) * 8);
15779
- min-width: calc(var(--spacing-base) * 8);
15839
+ min-height: var(--spacing-2xl);
15840
+ min-width: var(--spacing-2xl);
15780
15841
  }
15781
15842
 
15782
15843
  .bc-toggle-button--size-lg {
15783
15844
  font-size: var(--font-size-lg);
15784
- min-height: calc(var(--spacing-base) * 10);
15785
- min-width: calc(var(--spacing-base) * 10);
15845
+ min-height: var(--spacing-2xlh);
15846
+ min-width: var(--spacing-2xlh);
15786
15847
  }
15787
15848
 
15788
15849
  .bc-toggle-button--size-xl {
15789
15850
  font-size: var(--font-size-xl);
15790
- min-height: calc(var(--spacing-base) * 12);
15791
- min-width: calc(var(--spacing-base) * 12);
15851
+ min-height: var(--spacing-3xl);
15852
+ min-width: var(--spacing-3xl);
15792
15853
  }
15793
15854
 
15794
15855
  /* Dark mode */
@@ -15814,7 +15875,7 @@ span.bc-sidebar-link {
15814
15875
  /* High contrast */
15815
15876
  @media (prefers-contrast: high) {
15816
15877
  .bc-toggle-button {
15817
- border-width: 2px;
15878
+ border-width: var(--border-width-medium);
15818
15879
  }
15819
15880
  }
15820
15881