@tempots/beatui 0.81.0 → 0.82.1
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.
- package/dist/_commonjsHelpers-DKOUU3wS.cjs +1 -0
- package/dist/_commonjsHelpers-DaMA6jEr.js +8 -0
- package/dist/{ar-DwHLVgKj.cjs → ar-D7CXDmVZ.cjs} +1 -1
- package/dist/{ar-Bo_FZZi7.js → ar-nOSKXpIW.js} +1 -1
- package/dist/auth/index.cjs.js +1 -1
- package/dist/auth/index.es.js +63 -1349
- package/dist/auth-divider-BqZPH1-z.cjs +1 -0
- package/dist/auth-divider-Wr-S16kF.js +1355 -0
- package/dist/beatui.css +2035 -295
- package/dist/beatui.tailwind.css +2036 -296
- package/dist/better-auth/index.cjs.js +1 -0
- package/dist/better-auth/index.es.js +754 -0
- package/dist/{de-zI5mdV4M.cjs → de-WzsOu9Gn.cjs} +1 -1
- package/dist/{de-CCqwOkqN.js → de-f2xcEb34.js} +1 -1
- package/dist/{deep-merge-1uN6CG6K.js → deep-merge-BYm0y62g.js} +271 -285
- package/dist/deep-merge-d7sf0xmN.cjs +1 -0
- package/dist/duration-input-B9UNmUCh.cjs +1 -0
- package/dist/{duration-input-C9kpsw-t.js → duration-input-DqcJbxKD.js} +31 -29
- package/dist/editor-toolbar-group--a-xgsJw.cjs +1 -0
- package/dist/editor-toolbar-group-CVpl5mxF.js +31 -0
- package/dist/{es-BF02UrPL.js → es-CDqqzpCw.js} +1 -1
- package/dist/{es-Cw90CAbu.cjs → es-Ds2Xf3wV.cjs} +1 -1
- package/dist/{fa-DPQV4YB8.js → fa-C7tE_hR3.js} +1 -1
- package/dist/{fa-B4lssnzR.cjs → fa-Ct1UtDB7.cjs} +1 -1
- package/dist/{fr-1Kd6z1F-.cjs → fr-CzAkRFed.cjs} +1 -1
- package/dist/{fr-dmxPhwkD.js → fr-yOW_68YY.js} +1 -1
- package/dist/{he-BtQbrVt3.js → he-D2oUloCJ.js} +1 -1
- package/dist/{he-CJ3XnuPm.cjs → he-DlXALrK7.cjs} +1 -1
- package/dist/{hi-BpfnFKHp.cjs → hi-3dBhLwDs.cjs} +1 -1
- package/dist/{hi-D_Le4Yka.js → hi-D5ZlZoQq.js} +1 -1
- package/dist/{hls.light.min-Bhrf47iR.cjs → hls.light.min-C6xKDzRR.cjs} +1 -1
- package/dist/{hls.light.min-C6VwviEa.js → hls.light.min-hEMf_E8u.js} +1 -1
- package/dist/{index-CfaWytS2.cjs → index-05UbKOYe.cjs} +1 -1
- package/dist/{index-K6u33-GC.cjs → index-Bt7FYl80.cjs} +19 -19
- package/dist/{index-YtW7SCWB.js → index-C2Lq1m45.js} +1434 -1463
- package/dist/{index-CGEzILlC.js → index-lYhXnu6I.js} +1 -1
- package/dist/index.cjs.js +4 -4
- package/dist/index.es.js +2389 -2738
- package/dist/input-container-C6qEIjcA.cjs +1 -0
- package/dist/input-container-DiCjOzR2.js +247 -0
- package/dist/{it-DyHjSuHN.js → it-6e6X-4BB.js} +1 -1
- package/dist/{it-COCZ9NyB.cjs → it-DohtcWi9.cjs} +1 -1
- package/dist/{ja-X43lABza.js → ja-BxNuNo2H.js} +1 -1
- package/dist/{ja--NdggLU9.cjs → ja-eyTArrgS.cjs} +1 -1
- package/dist/json-schema/index.cjs.js +1 -8
- package/dist/json-schema/index.es.js +1359 -7608
- package/dist/json-schema-display/index.cjs.js +1 -0
- package/dist/json-schema-display/index.es.js +846 -0
- package/dist/json-structure/index.cjs.js +1 -1
- package/dist/json-structure/index.es.js +542 -698
- package/dist/{ko-BUvb0ggK.cjs → ko-BFLCDMMs.cjs} +1 -1
- package/dist/{ko-B9g9iw99.js → ko-Ch0jFsBV.js} +1 -1
- package/dist/lexical/index.cjs.js +46 -0
- package/dist/lexical/index.es.js +21370 -0
- package/dist/lexical.css +1124 -0
- package/dist/menu-CZzRsQP_.js +372 -0
- package/dist/menu-ClrU72xH.cjs +1 -0
- package/dist/modal-I5srcntN.cjs +1 -0
- package/dist/modal-v3u2Fpnd.js +488 -0
- package/dist/{nl-0S25Gsld.cjs → nl-Bx2ACvr4.cjs} +1 -1
- package/dist/{nl-Ew5jnSsT.js → nl-NuTdZO1s.js} +1 -1
- package/dist/{notice-C-964yaY.js → notice-BuZvdvZh.js} +84 -82
- package/dist/notice-CLDdy1MW.cjs +1 -0
- package/dist/oneof-branch-detection-DsM1K5xc.cjs +8 -0
- package/dist/oneof-branch-detection-Dt8ss9lc.js +6281 -0
- package/dist/{pl-C9f6UBSe.js → pl-Bs4nLJ__.js} +1 -1
- package/dist/{pl-B3k-K3S4.cjs → pl-QHl6sl8f.cjs} +1 -1
- package/dist/prosemirror/index.cjs.js +1 -1
- package/dist/prosemirror/index.es.js +1 -1
- package/dist/{pt-DYtAvbrw.js → pt-BETjHZrL.js} +1 -1
- package/dist/{pt-CKoikRO5.cjs → pt-DZGw2Z-1.cjs} +1 -1
- package/dist/{ru-ZexN-b8V.js → ru-Bi1_DEKM.js} +1 -1
- package/dist/{ru-COb7RSDt.cjs → ru-D03IuLqh.cjs} +1 -1
- package/dist/session-id-3KiilioY.js +8 -0
- package/dist/session-id-B5lJMzbB.cjs +1 -0
- package/dist/stack-BJgsPJ9A.js +873 -0
- package/dist/stack-DcZ_u50f.cjs +1 -0
- package/dist/string-B9vVyfq3.cjs +1 -0
- package/dist/string-DYyMxBl-.js +19 -0
- package/dist/styles-url-B2dzXrYt.cjs +1 -0
- package/dist/styles-url-Cw_mxshe.js +4 -0
- package/dist/text-input-B3VBat1k.js +44 -0
- package/dist/text-input-Ds8e7Z1G.cjs +1 -0
- package/dist/{toolbar-DNpBIoJo.js → toolbar-D994_E_s.js} +4 -4
- package/dist/toolbar-x0_8lmKu.cjs +1 -0
- package/dist/{tr-tO_EH-Y2.cjs → tr-B_-_1wua.cjs} +1 -1
- package/dist/{tr-BDvn05-H.js → tr-DiYB-FwX.js} +1 -1
- package/dist/translations-B4-Zd2LM.cjs +1 -0
- package/dist/translations-Cq8bUKJP.js +584 -0
- package/dist/{translations-DwGC_94w.cjs → translations-D62qqNV9.cjs} +1 -1
- package/dist/{translations-CfWR4loD.js → translations-DPr6c05Z.js} +1 -1
- package/dist/types/better-auth/bridge.d.ts +2 -0
- package/dist/types/better-auth/callbacks.d.ts +6 -0
- package/dist/types/better-auth/components/authenticated.d.ts +4 -0
- package/dist/types/better-auth/components/better-auth-container.d.ts +4 -0
- package/dist/types/better-auth/components/better-auth-modal.d.ts +4 -0
- package/dist/types/better-auth/components/magic-link-form.d.ts +7 -0
- package/dist/types/better-auth/components/passkey-management.d.ts +6 -0
- package/dist/types/better-auth/components/passkey-signin.d.ts +12 -0
- package/dist/types/better-auth/components/two-factor-setup.d.ts +8 -0
- package/dist/types/better-auth/components/two-factor-verify.d.ts +10 -0
- package/dist/types/better-auth/i18n/default.d.ts +29 -0
- package/dist/types/better-auth/i18n/locales/en.d.ts +28 -0
- package/dist/types/better-auth/i18n/translations.d.ts +27 -0
- package/dist/types/better-auth/index.d.ts +22 -0
- package/dist/types/better-auth/provider.d.ts +6 -0
- package/dist/types/better-auth/session.d.ts +14 -0
- package/dist/types/better-auth/social-mapping.d.ts +2 -0
- package/dist/types/better-auth/types.d.ts +164 -0
- package/dist/types/components/auth/auth-container.d.ts +1 -1
- package/dist/types/components/auth/social-providers.d.ts +1 -1
- package/dist/types/components/auth/types.d.ts +2 -0
- package/dist/types/components/editor-toolbar/editor-toolbar-button.d.ts +16 -0
- package/dist/types/components/editor-toolbar/editor-toolbar-group.d.ts +9 -0
- package/dist/types/components/editor-toolbar/index.d.ts +2 -0
- package/dist/types/components/json-schema-display/display-widget-customization.d.ts +61 -0
- package/dist/types/components/json-schema-display/display-wrapper.d.ts +14 -0
- package/dist/types/components/json-schema-display/displays/any-display.d.ts +14 -0
- package/dist/types/components/json-schema-display/displays/array-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/boolean-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/composition-display.d.ts +14 -0
- package/dist/types/components/json-schema-display/displays/enum-const-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/generic-display.d.ts +18 -0
- package/dist/types/components/json-schema-display/displays/null-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/number-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/object-display.d.ts +13 -0
- package/dist/types/components/json-schema-display/displays/string-display.d.ts +14 -0
- package/dist/types/components/json-schema-display/index.d.ts +14 -0
- package/dist/types/components/json-schema-display/json-schema-display.d.ts +25 -0
- package/dist/types/components/json-schema-display/mismatch.d.ts +14 -0
- package/dist/types/components/json-structure/controls/control-utils.d.ts +19 -0
- package/dist/types/components/json-structure/controls/index.d.ts +1 -0
- package/dist/types/components/lexical/bare-editor.d.ts +29 -0
- package/dist/types/components/lexical/code/index.d.ts +1 -0
- package/dist/types/components/lexical/code/language-selector.d.ts +13 -0
- package/dist/types/components/lexical/contextual-editor.d.ts +22 -0
- package/dist/types/components/lexical/docked-editor.d.ts +23 -0
- package/dist/types/components/lexical/floating/block-handle.d.ts +16 -0
- package/dist/types/components/lexical/floating/floating-toolbar.d.ts +12 -0
- package/dist/types/components/lexical/floating/index.d.ts +6 -0
- package/dist/types/components/lexical/floating/slash-command-palette.d.ts +20 -0
- package/dist/types/components/lexical/index.d.ts +8 -0
- package/dist/types/components/lexical/lexical-editor-input.d.ts +30 -0
- package/dist/types/components/lexical/table/index.d.ts +1 -0
- package/dist/types/components/lexical/table/table-controls.d.ts +12 -0
- package/dist/types/components/lexical/toolbar/index.d.ts +6 -0
- package/dist/types/components/lexical/toolbar/lexical-toolbar.d.ts +12 -0
- package/dist/types/components/lexical/toolbar/toolbar-button.d.ts +1 -0
- package/dist/types/components/lexical/toolbar/toolbar-group.d.ts +1 -0
- package/dist/types/components/lexical/toolbar/toolbar-helpers.d.ts +30 -0
- package/dist/types/components/prosemirror/etoolbar-button.d.ts +1 -11
- package/dist/types/components/prosemirror/etoolbar-group.d.ts +1 -4
- package/dist/types/json-schema-display/index.d.ts +1 -0
- package/dist/types/lexical/commands/index.d.ts +17 -0
- package/dist/types/lexical/headless.d.ts +39 -0
- package/dist/types/lexical/horizontal-rule-node.d.ts +20 -0
- package/dist/types/lexical/index.d.ts +20 -0
- package/dist/types/lexical/lazy-loader.d.ts +35 -0
- package/dist/types/lexical/nodes.d.ts +29 -0
- package/dist/types/lexical/plugins/auto-link.d.ts +7 -0
- package/dist/types/lexical/plugins/clipboard.d.ts +11 -0
- package/dist/types/lexical/plugins/code-shiki.d.ts +11 -0
- package/dist/types/lexical/plugins/code.d.ts +7 -0
- package/dist/types/lexical/plugins/dragon.d.ts +6 -0
- package/dist/types/lexical/plugins/file-io.d.ts +10 -0
- package/dist/types/lexical/plugins/hashtag.d.ts +7 -0
- package/dist/types/lexical/plugins/history.d.ts +7 -0
- package/dist/types/lexical/plugins/horizontal-rule.d.ts +12 -0
- package/dist/types/lexical/plugins/html-io.d.ts +9 -0
- package/dist/types/lexical/plugins/index.d.ts +24 -0
- package/dist/types/lexical/plugins/link.d.ts +6 -0
- package/dist/types/lexical/plugins/list.d.ts +6 -0
- package/dist/types/lexical/plugins/mark.d.ts +15 -0
- package/dist/types/lexical/plugins/markdown-io.d.ts +13 -0
- package/dist/types/lexical/plugins/offset.d.ts +6 -0
- package/dist/types/lexical/plugins/overflow.d.ts +7 -0
- package/dist/types/lexical/plugins/plain-text.d.ts +6 -0
- package/dist/types/lexical/plugins/rich-text.d.ts +6 -0
- package/dist/types/lexical/plugins/selection.d.ts +6 -0
- package/dist/types/lexical/plugins/slash-commands.d.ts +26 -0
- package/dist/types/lexical/plugins/table.d.ts +11 -0
- package/dist/types/lexical/plugins/text.d.ts +13 -0
- package/dist/types/lexical/plugins/yjs.d.ts +9 -0
- package/dist/types/lexical/styles-url.d.ts +2 -0
- package/dist/types/lexical/styles.d.ts +2 -0
- package/dist/types/lexical/types.d.ts +634 -0
- package/dist/types/lexical-i18n/default.d.ts +92 -0
- package/dist/types/lexical-i18n/index.d.ts +21 -0
- package/dist/types/lexical-i18n/locales/ar.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/de.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/en.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/es.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/fa.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/fr.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/he.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/hi.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/it.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ja.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ko.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/nl.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/pl.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/pt.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ru.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/tr.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ur.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/vi.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/zh.d.ts +91 -0
- package/dist/types/lexical-i18n/translations.d.ts +21 -0
- package/dist/{ur-DbEqQgS6.js → ur-B69X-xNs.js} +1 -1
- package/dist/{ur-BbnYJ3HS.cjs → ur-DyUSmIbo.cjs} +1 -1
- package/dist/use-animated-toggle-ChycsEoj.js +175 -0
- package/dist/use-animated-toggle-DR6CyMac.cjs +1 -0
- package/dist/use-form-B56E_x5Y.js +859 -0
- package/dist/use-form-Cnp3XQ5X.cjs +2 -0
- package/dist/utils-DEbsp9Q9.js +129 -0
- package/dist/utils-DIUEhA-Z.cjs +1 -0
- package/dist/{vi-CpZUeuSj.js → vi-BdzxA60L.js} +1 -1
- package/dist/{vi-ByBwvGQY.cjs → vi-CBmPaHxg.cjs} +1 -1
- package/dist/widget-customization-Dk7XcVly.cjs +1 -0
- package/dist/widget-customization-Ds9sicAg.js +1073 -0
- package/dist/{zh-DnxK0ieB.cjs → zh-Cb1b8uik.cjs} +1 -1
- package/dist/{zh-DJyhKO0I.js → zh-Dn1UJiZa.js} +1 -1
- package/package.json +59 -8
- package/dist/_commonjsHelpers-C6fGbg64.js +0 -6
- package/dist/_commonjsHelpers-DwGv2jUC.cjs +0 -1
- package/dist/deep-merge-CBIkQM4E.cjs +0 -1
- package/dist/duration-input-DHWhQJnn.cjs +0 -1
- package/dist/modal-CSHIhHvI.js +0 -654
- package/dist/modal-cc8Ehngz.cjs +0 -1
- package/dist/notice-C_BWqu2K.cjs +0 -1
- package/dist/toolbar-D5FcnRju.cjs +0 -1
- package/dist/translations-0tLX4x7M.js +0 -866
- package/dist/translations-WPN3ibDg.cjs +0 -1
- package/dist/use-form-D4JFOcjo.cjs +0 -2
- package/dist/use-form-D4rqJkvG.js +0 -1731
- package/dist/widget-customization-BSjJz3_Y.js +0 -1195
- package/dist/widget-customization-CrFVrt4V.cjs +0 -1
package/dist/beatui.tailwind.css
CHANGED
|
@@ -1649,6 +1649,229 @@ a:focus-visible {
|
|
|
1649
1649
|
background-color: var(--color-white);
|
|
1650
1650
|
}
|
|
1651
1651
|
|
|
1652
|
+
/* Two-Factor Authentication Component */
|
|
1653
|
+
.bc-two-factor {
|
|
1654
|
+
display: flex;
|
|
1655
|
+
flex-direction: column;
|
|
1656
|
+
gap: var(--spacing-stack-xl, var(--spacing-xl));
|
|
1657
|
+
width: 100%;
|
|
1658
|
+
}
|
|
1659
|
+
|
|
1660
|
+
.bc-two-factor__form {
|
|
1661
|
+
display: flex;
|
|
1662
|
+
flex-direction: column;
|
|
1663
|
+
gap: var(--spacing-stack-xl, var(--spacing-xl));
|
|
1664
|
+
}
|
|
1665
|
+
|
|
1666
|
+
/* Method selector */
|
|
1667
|
+
.bc-two-factor__methods {
|
|
1668
|
+
display: flex;
|
|
1669
|
+
gap: var(--spacing-sm);
|
|
1670
|
+
border-bottom: 1px solid var(--color-neutral-200);
|
|
1671
|
+
padding-bottom: var(--spacing-sm);
|
|
1672
|
+
}
|
|
1673
|
+
|
|
1674
|
+
.b-dark .bc-two-factor__methods {
|
|
1675
|
+
border-bottom-color: var(--color-neutral-700);
|
|
1676
|
+
}
|
|
1677
|
+
|
|
1678
|
+
.bc-two-factor__method-button {
|
|
1679
|
+
background: none;
|
|
1680
|
+
border: none;
|
|
1681
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
1682
|
+
font-size: var(--font-size-sm);
|
|
1683
|
+
color: var(--text-muted-light);
|
|
1684
|
+
cursor: pointer;
|
|
1685
|
+
border-radius: var(--radius-sm);
|
|
1686
|
+
transition: all
|
|
1687
|
+
var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
|
|
1688
|
+
var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
|
|
1689
|
+
}
|
|
1690
|
+
|
|
1691
|
+
.bc-two-factor__method-button:hover {
|
|
1692
|
+
color: var(--text-normal-light);
|
|
1693
|
+
background-color: var(--color-neutral-100);
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
.bc-two-factor__method-button--active {
|
|
1697
|
+
color: var(--color-primary-600);
|
|
1698
|
+
font-weight: var(--font-weight-semibold);
|
|
1699
|
+
border-bottom: 2px solid var(--color-primary-600);
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
.b-dark .bc-two-factor__method-button {
|
|
1703
|
+
color: var(--text-muted-dark);
|
|
1704
|
+
}
|
|
1705
|
+
|
|
1706
|
+
.b-dark .bc-two-factor__method-button:hover {
|
|
1707
|
+
color: var(--text-normal-dark);
|
|
1708
|
+
background-color: var(--color-neutral-800);
|
|
1709
|
+
}
|
|
1710
|
+
|
|
1711
|
+
.b-dark .bc-two-factor__method-button--active {
|
|
1712
|
+
color: var(--color-primary-400);
|
|
1713
|
+
border-bottom-color: var(--color-primary-400);
|
|
1714
|
+
}
|
|
1715
|
+
|
|
1716
|
+
/* TOTP URI display */
|
|
1717
|
+
.bc-two-factor__totp-uri {
|
|
1718
|
+
display: flex;
|
|
1719
|
+
flex-direction: column;
|
|
1720
|
+
gap: var(--spacing-md);
|
|
1721
|
+
align-items: center;
|
|
1722
|
+
}
|
|
1723
|
+
|
|
1724
|
+
.bc-two-factor__code-display {
|
|
1725
|
+
display: block;
|
|
1726
|
+
padding: var(--spacing-md);
|
|
1727
|
+
background-color: var(--color-neutral-100);
|
|
1728
|
+
border-radius: var(--radius-md);
|
|
1729
|
+
font-family: var(--font-mono);
|
|
1730
|
+
font-size: var(--font-size-xs);
|
|
1731
|
+
word-break: break-all;
|
|
1732
|
+
text-align: center;
|
|
1733
|
+
}
|
|
1734
|
+
|
|
1735
|
+
.b-dark .bc-two-factor__code-display {
|
|
1736
|
+
background-color: var(--color-neutral-800);
|
|
1737
|
+
}
|
|
1738
|
+
|
|
1739
|
+
/* Backup codes */
|
|
1740
|
+
.bc-two-factor__backup-codes {
|
|
1741
|
+
display: flex;
|
|
1742
|
+
flex-direction: column;
|
|
1743
|
+
gap: var(--spacing-sm);
|
|
1744
|
+
}
|
|
1745
|
+
|
|
1746
|
+
.bc-two-factor__backup-codes ul {
|
|
1747
|
+
display: grid;
|
|
1748
|
+
grid-template-columns: repeat(2, 1fr);
|
|
1749
|
+
gap: var(--spacing-xs);
|
|
1750
|
+
list-style: none;
|
|
1751
|
+
margin: 0;
|
|
1752
|
+
padding: 0;
|
|
1753
|
+
}
|
|
1754
|
+
|
|
1755
|
+
.bc-two-factor__backup-codes li {
|
|
1756
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
1757
|
+
background-color: var(--color-neutral-100);
|
|
1758
|
+
border-radius: var(--radius-sm);
|
|
1759
|
+
font-family: var(--font-mono);
|
|
1760
|
+
font-size: var(--font-size-sm);
|
|
1761
|
+
text-align: center;
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
.b-dark .bc-two-factor__backup-codes li {
|
|
1765
|
+
background-color: var(--color-neutral-800);
|
|
1766
|
+
}
|
|
1767
|
+
|
|
1768
|
+
/* Complete state */
|
|
1769
|
+
.bc-two-factor__complete {
|
|
1770
|
+
text-align: center;
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
/* Code input */
|
|
1774
|
+
.bc-two-factor__code-input {
|
|
1775
|
+
text-align: center;
|
|
1776
|
+
letter-spacing: 0.5em;
|
|
1777
|
+
font-size: var(--font-size-xl);
|
|
1778
|
+
font-family: var(--font-mono);
|
|
1779
|
+
}
|
|
1780
|
+
|
|
1781
|
+
/* Reduced motion support */
|
|
1782
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1783
|
+
.bc-two-factor__method-button {
|
|
1784
|
+
transition: none;
|
|
1785
|
+
}
|
|
1786
|
+
}
|
|
1787
|
+
|
|
1788
|
+
/* Passkey Components */
|
|
1789
|
+
|
|
1790
|
+
/* Passkey management */
|
|
1791
|
+
.bc-passkey-management {
|
|
1792
|
+
display: flex;
|
|
1793
|
+
flex-direction: column;
|
|
1794
|
+
gap: var(--spacing-xl);
|
|
1795
|
+
width: 100%;
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1798
|
+
/* Passkey list */
|
|
1799
|
+
.bc-passkey-list {
|
|
1800
|
+
display: flex;
|
|
1801
|
+
flex-direction: column;
|
|
1802
|
+
gap: var(--spacing-sm);
|
|
1803
|
+
}
|
|
1804
|
+
|
|
1805
|
+
.bc-passkey-item {
|
|
1806
|
+
display: flex;
|
|
1807
|
+
align-items: center;
|
|
1808
|
+
justify-content: space-between;
|
|
1809
|
+
gap: var(--spacing-md);
|
|
1810
|
+
padding: var(--spacing-sm) var(--spacing-md);
|
|
1811
|
+
background-color: var(--color-neutral-50);
|
|
1812
|
+
border-radius: var(--radius-md);
|
|
1813
|
+
border: 1px solid var(--color-neutral-200);
|
|
1814
|
+
}
|
|
1815
|
+
|
|
1816
|
+
.b-dark .bc-passkey-item {
|
|
1817
|
+
background-color: var(--color-neutral-900);
|
|
1818
|
+
border-color: var(--color-neutral-700);
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1821
|
+
.bc-passkey-item__info {
|
|
1822
|
+
display: flex;
|
|
1823
|
+
flex-direction: column;
|
|
1824
|
+
gap: var(--spacing-xs);
|
|
1825
|
+
flex: 1;
|
|
1826
|
+
min-width: 0;
|
|
1827
|
+
}
|
|
1828
|
+
|
|
1829
|
+
.bc-passkey-item__name {
|
|
1830
|
+
font-size: var(--font-size-sm);
|
|
1831
|
+
font-weight: var(--font-weight-medium);
|
|
1832
|
+
color: var(--text-normal-light);
|
|
1833
|
+
overflow: hidden;
|
|
1834
|
+
text-overflow: ellipsis;
|
|
1835
|
+
white-space: nowrap;
|
|
1836
|
+
}
|
|
1837
|
+
|
|
1838
|
+
.b-dark .bc-passkey-item__name {
|
|
1839
|
+
color: var(--text-normal-dark);
|
|
1840
|
+
}
|
|
1841
|
+
|
|
1842
|
+
.bc-passkey-item__date {
|
|
1843
|
+
font-size: var(--font-size-xs);
|
|
1844
|
+
color: var(--text-muted-light);
|
|
1845
|
+
}
|
|
1846
|
+
|
|
1847
|
+
.b-dark .bc-passkey-item__date {
|
|
1848
|
+
color: var(--text-muted-dark);
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1851
|
+
.bc-passkey-item__edit {
|
|
1852
|
+
flex: 1;
|
|
1853
|
+
min-width: 0;
|
|
1854
|
+
}
|
|
1855
|
+
|
|
1856
|
+
.bc-passkey-item__actions {
|
|
1857
|
+
display: flex;
|
|
1858
|
+
gap: var(--spacing-xs);
|
|
1859
|
+
flex-shrink: 0;
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1862
|
+
/* Add passkey */
|
|
1863
|
+
.bc-passkey-add {
|
|
1864
|
+
display: flex;
|
|
1865
|
+
flex-direction: column;
|
|
1866
|
+
gap: var(--spacing-md);
|
|
1867
|
+
}
|
|
1868
|
+
|
|
1869
|
+
/* Sign-in button */
|
|
1870
|
+
.bc-passkey-signin {
|
|
1871
|
+
width: 100%;
|
|
1872
|
+
justify-content: center;
|
|
1873
|
+
}
|
|
1874
|
+
|
|
1652
1875
|
/* Badge Component */
|
|
1653
1876
|
.bc-badge {
|
|
1654
1877
|
--badge-bg: transparent;
|
|
@@ -4512,445 +4735,1962 @@ a:focus-visible {
|
|
|
4512
4735
|
color: var(--color-danger-400);
|
|
4513
4736
|
}
|
|
4514
4737
|
|
|
4515
|
-
|
|
4516
|
-
* JSON Structure Form Component Styles
|
|
4517
|
-
*
|
|
4518
|
-
* CSS styles for JSON Structure form components.
|
|
4519
|
-
* Uses BEM-like naming with bc-json-structure- prefix.
|
|
4520
|
-
*/
|
|
4521
|
-
|
|
4522
|
-
/* =============================================================================
|
|
4523
|
-
Base Styles
|
|
4524
|
-
============================================================================= */
|
|
4738
|
+
/* JSON Schema Display - Read-only value rendering */
|
|
4525
4739
|
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
4529
|
-
|
|
4740
|
+
/* Grid containers — parent holds the shared column tracks */
|
|
4741
|
+
.bc-json-schema-display__fields,
|
|
4742
|
+
.bc-json-schema-display__object {
|
|
4743
|
+
display: grid;
|
|
4744
|
+
grid-template-columns: auto 1fr;
|
|
4745
|
+
column-gap: calc(var(--spacing-base) * 3);
|
|
4530
4746
|
}
|
|
4531
4747
|
|
|
4532
|
-
/*
|
|
4533
|
-
|
|
4534
|
-
|
|
4748
|
+
/* Each field spans both parent columns and inherits their sizing via subgrid */
|
|
4749
|
+
.bc-json-schema-display__field {
|
|
4750
|
+
display: grid;
|
|
4751
|
+
grid-template-columns: subgrid;
|
|
4752
|
+
grid-column: 1 / -1;
|
|
4753
|
+
row-gap: calc(var(--spacing-base) * 0.25);
|
|
4754
|
+
align-items: baseline;
|
|
4755
|
+
padding-block: calc(var(--spacing-base) * 0.5);
|
|
4756
|
+
}
|
|
4535
4757
|
|
|
4536
|
-
|
|
4537
|
-
|
|
4538
|
-
|
|
4758
|
+
/* Extra properties also participate in the shared grid */
|
|
4759
|
+
.bc-json-schema-display__extra-property {
|
|
4760
|
+
display: grid;
|
|
4761
|
+
grid-template-columns: subgrid;
|
|
4762
|
+
grid-column: 1 / -1;
|
|
4539
4763
|
}
|
|
4540
4764
|
|
|
4541
|
-
.bc-json-
|
|
4765
|
+
.bc-json-schema-display__label-row {
|
|
4542
4766
|
display: flex;
|
|
4543
|
-
|
|
4544
|
-
gap:
|
|
4767
|
+
align-items: center;
|
|
4768
|
+
gap: calc(var(--spacing-base) * 1);
|
|
4769
|
+
grid-column: 1;
|
|
4770
|
+
max-width: 16rem;
|
|
4771
|
+
overflow: hidden;
|
|
4772
|
+
text-overflow: ellipsis;
|
|
4773
|
+
white-space: nowrap;
|
|
4545
4774
|
}
|
|
4546
4775
|
|
|
4547
|
-
.bc-json-
|
|
4548
|
-
|
|
4776
|
+
.bc-json-schema-display__description,
|
|
4777
|
+
.bc-json-schema-display__mismatches {
|
|
4778
|
+
grid-column: 1 / -1;
|
|
4549
4779
|
}
|
|
4550
4780
|
|
|
4551
|
-
|
|
4552
|
-
|
|
4553
|
-
|
|
4554
|
-
|
|
4555
|
-
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
4556
|
-
padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4557
|
-
border: 1px solid var(--color-base-200);
|
|
4558
|
-
border-radius: var(--radius-sm);
|
|
4559
|
-
background: var(--color-base-50);
|
|
4781
|
+
.bc-json-schema-display__label {
|
|
4782
|
+
font-size: var(--font-size-sm);
|
|
4783
|
+
font-weight: var(--font-weight-normal);
|
|
4784
|
+
color: var(--color-neutral-500);
|
|
4560
4785
|
}
|
|
4561
4786
|
|
|
4562
|
-
.bc-json-
|
|
4563
|
-
|
|
4564
|
-
justify-content: space-between;
|
|
4565
|
-
align-items: center;
|
|
4566
|
-
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4787
|
+
.b-dark .bc-json-schema-display__label {
|
|
4788
|
+
color: var(--color-neutral-400);
|
|
4567
4789
|
}
|
|
4568
4790
|
|
|
4569
|
-
.bc-json-
|
|
4570
|
-
|
|
4791
|
+
.bc-json-schema-display__required {
|
|
4792
|
+
font-size: var(--font-size-sm);
|
|
4793
|
+
color: var(--color-danger-600);
|
|
4794
|
+
font-weight: var(--font-weight-bold);
|
|
4571
4795
|
}
|
|
4572
4796
|
|
|
4573
|
-
|
|
4574
|
-
|
|
4575
|
-
|
|
4797
|
+
.b-dark .bc-json-schema-display__required {
|
|
4798
|
+
color: var(--color-danger-400);
|
|
4799
|
+
}
|
|
4576
4800
|
|
|
4577
|
-
.bc-json-
|
|
4578
|
-
|
|
4579
|
-
|
|
4580
|
-
|
|
4581
|
-
|
|
4582
|
-
|
|
4801
|
+
.bc-json-schema-display__deprecated {
|
|
4802
|
+
font-size: var(--font-size-xs);
|
|
4803
|
+
color: var(--color-warning-600);
|
|
4804
|
+
background-color: var(--color-warning-100);
|
|
4805
|
+
padding: 0.1em calc(var(--spacing-base) * 1);
|
|
4806
|
+
border-radius: var(--radius-sm);
|
|
4807
|
+
font-weight: var(--font-weight-medium);
|
|
4583
4808
|
}
|
|
4584
4809
|
|
|
4585
|
-
.bc-json-
|
|
4586
|
-
|
|
4587
|
-
|
|
4588
|
-
display: flex;
|
|
4589
|
-
flex-direction: column;
|
|
4590
|
-
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
4810
|
+
.b-dark .bc-json-schema-display__deprecated {
|
|
4811
|
+
color: var(--color-warning-300);
|
|
4812
|
+
background-color: var(--color-warning-900);
|
|
4591
4813
|
}
|
|
4592
4814
|
|
|
4593
|
-
.bc-json-
|
|
4594
|
-
|
|
4595
|
-
|
|
4596
|
-
display: flex;
|
|
4597
|
-
align-items: flex-start;
|
|
4598
|
-
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4815
|
+
.bc-json-schema-display__description {
|
|
4816
|
+
font-size: var(--font-size-xs);
|
|
4817
|
+
color: var(--text-muted-light);
|
|
4599
4818
|
}
|
|
4600
4819
|
|
|
4601
|
-
.bc-json-
|
|
4602
|
-
|
|
4603
|
-
.bc-json-structure-map-entry-content {
|
|
4604
|
-
flex: 1;
|
|
4605
|
-
min-width: 0;
|
|
4820
|
+
.b-dark .bc-json-schema-display__description {
|
|
4821
|
+
color: var(--text-muted-dark);
|
|
4606
4822
|
}
|
|
4607
4823
|
|
|
4608
|
-
.bc-json-
|
|
4609
|
-
|
|
4610
|
-
|
|
4611
|
-
|
|
4612
|
-
}
|
|
4613
|
-
|
|
4614
|
-
.bc-json-structure-collection-add {
|
|
4615
|
-
margin-top: var(--spacing-stack-xs, var(--spacing-base));
|
|
4824
|
+
.bc-json-schema-display__value {
|
|
4825
|
+
font-size: var(--font-size-sm);
|
|
4826
|
+
font-weight: var(--font-weight-medium);
|
|
4827
|
+
color: var(--color-neutral-900);
|
|
4616
4828
|
}
|
|
4617
4829
|
|
|
4618
|
-
|
|
4619
|
-
|
|
4620
|
-
display: flex;
|
|
4621
|
-
justify-content: space-between;
|
|
4622
|
-
align-items: center;
|
|
4623
|
-
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4624
|
-
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
4830
|
+
.b-dark .bc-json-schema-display__value {
|
|
4831
|
+
color: var(--color-neutral-100);
|
|
4625
4832
|
}
|
|
4626
4833
|
|
|
4627
|
-
.bc-json-
|
|
4628
|
-
font-
|
|
4629
|
-
|
|
4630
|
-
|
|
4834
|
+
.bc-json-schema-display__value--null {
|
|
4835
|
+
font-size: var(--font-size-sm);
|
|
4836
|
+
color: var(--color-neutral-400);
|
|
4837
|
+
font-style: italic;
|
|
4631
4838
|
}
|
|
4632
4839
|
|
|
4633
|
-
.bc-json-
|
|
4634
|
-
|
|
4840
|
+
.b-dark .bc-json-schema-display__value--null {
|
|
4841
|
+
color: var(--color-neutral-500);
|
|
4635
4842
|
}
|
|
4636
4843
|
|
|
4637
|
-
|
|
4638
|
-
.bc-json-structure-set-error {
|
|
4639
|
-
color: var(--color-error-500, #dc2626);
|
|
4844
|
+
.bc-json-schema-display__value--missing {
|
|
4640
4845
|
font-size: var(--font-size-sm);
|
|
4641
|
-
|
|
4846
|
+
color: var(--color-danger-600);
|
|
4847
|
+
font-style: italic;
|
|
4642
4848
|
}
|
|
4643
4849
|
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4850
|
+
.b-dark .bc-json-schema-display__value--missing {
|
|
4851
|
+
color: var(--color-danger-400);
|
|
4852
|
+
}
|
|
4647
4853
|
|
|
4648
|
-
.bc-json-
|
|
4649
|
-
|
|
4650
|
-
|
|
4651
|
-
|
|
4854
|
+
.bc-json-schema-display__value-context {
|
|
4855
|
+
font-size: var(--font-size-xs);
|
|
4856
|
+
color: var(--color-neutral-400);
|
|
4857
|
+
margin-left: calc(var(--spacing-base) * 1);
|
|
4652
4858
|
}
|
|
4653
4859
|
|
|
4654
|
-
.bc-json-
|
|
4655
|
-
|
|
4656
|
-
color: var(--color-base-700);
|
|
4657
|
-
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
4860
|
+
.b-dark .bc-json-schema-display__value-context {
|
|
4861
|
+
color: var(--color-neutral-500);
|
|
4658
4862
|
}
|
|
4659
4863
|
|
|
4660
|
-
|
|
4661
|
-
|
|
4864
|
+
/* Links */
|
|
4865
|
+
.bc-json-schema-display__link {
|
|
4866
|
+
color: var(--color-primary-600);
|
|
4867
|
+
text-decoration: underline;
|
|
4662
4868
|
font-size: var(--font-size-sm);
|
|
4663
|
-
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
4664
4869
|
}
|
|
4665
4870
|
|
|
4666
|
-
.bc-json-
|
|
4667
|
-
|
|
4668
|
-
flex-direction: column;
|
|
4669
|
-
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
4871
|
+
.bc-json-schema-display__link:hover {
|
|
4872
|
+
color: var(--color-primary-700);
|
|
4670
4873
|
}
|
|
4671
4874
|
|
|
4672
|
-
.bc-json-
|
|
4673
|
-
|
|
4674
|
-
flex-direction: column;
|
|
4675
|
-
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
4875
|
+
.b-dark .bc-json-schema-display__link {
|
|
4876
|
+
color: var(--color-primary-400);
|
|
4676
4877
|
}
|
|
4677
4878
|
|
|
4678
|
-
.bc-json-
|
|
4679
|
-
|
|
4680
|
-
align-items: center;
|
|
4681
|
-
gap: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5));
|
|
4682
|
-
color: var(--color-base-600);
|
|
4683
|
-
font-size: var(--font-size-sm);
|
|
4879
|
+
.b-dark .bc-json-schema-display__link:hover {
|
|
4880
|
+
color: var(--color-primary-300);
|
|
4684
4881
|
}
|
|
4685
4882
|
|
|
4686
|
-
|
|
4687
|
-
|
|
4688
|
-
|
|
4689
|
-
|
|
4883
|
+
/* Color swatch */
|
|
4884
|
+
.bc-json-schema-display__color-display {
|
|
4885
|
+
display: inline-flex;
|
|
4886
|
+
align-items: center;
|
|
4887
|
+
gap: calc(var(--spacing-base) * 1);
|
|
4690
4888
|
}
|
|
4691
4889
|
|
|
4692
|
-
.bc-json-
|
|
4693
|
-
|
|
4890
|
+
.bc-json-schema-display__color-swatch {
|
|
4891
|
+
display: inline-block;
|
|
4892
|
+
width: 1.25rem;
|
|
4893
|
+
height: 1.25rem;
|
|
4894
|
+
border-radius: var(--radius-sm);
|
|
4895
|
+
border: 1px solid var(--color-neutral-300);
|
|
4896
|
+
vertical-align: middle;
|
|
4694
4897
|
}
|
|
4695
4898
|
|
|
4696
|
-
.bc-json-
|
|
4697
|
-
|
|
4899
|
+
.b-dark .bc-json-schema-display__color-swatch {
|
|
4900
|
+
border-color: var(--color-neutral-600);
|
|
4698
4901
|
}
|
|
4699
4902
|
|
|
4700
|
-
/*
|
|
4701
|
-
|
|
4702
|
-
|
|
4703
|
-
|
|
4704
|
-
.bc-json-structure-choice {
|
|
4705
|
-
display: flex;
|
|
4706
|
-
flex-direction: column;
|
|
4707
|
-
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
4903
|
+
/* Monospace */
|
|
4904
|
+
.bc-json-schema-display__monospace {
|
|
4905
|
+
font-family: var(--font-family-mono, monospace);
|
|
4906
|
+
font-size: var(--font-size-sm);
|
|
4708
4907
|
}
|
|
4709
4908
|
|
|
4710
|
-
|
|
4711
|
-
|
|
4909
|
+
/* Pre-formatted */
|
|
4910
|
+
.bc-json-schema-display__pre {
|
|
4911
|
+
font-family: var(--font-family-mono, monospace);
|
|
4912
|
+
font-size: var(--font-size-sm);
|
|
4913
|
+
white-space: pre-wrap;
|
|
4914
|
+
word-break: break-word;
|
|
4915
|
+
background-color: var(--color-neutral-50);
|
|
4916
|
+
padding: calc(var(--spacing-base) * 2);
|
|
4917
|
+
border-radius: var(--radius-md);
|
|
4918
|
+
border: 1px solid var(--color-neutral-200);
|
|
4919
|
+
margin: 0;
|
|
4920
|
+
overflow-x: auto;
|
|
4712
4921
|
}
|
|
4713
4922
|
|
|
4714
|
-
.bc-json-
|
|
4715
|
-
|
|
4923
|
+
.b-dark .bc-json-schema-display__pre {
|
|
4924
|
+
background-color: var(--color-neutral-800);
|
|
4925
|
+
border-color: var(--color-neutral-700);
|
|
4716
4926
|
}
|
|
4717
4927
|
|
|
4718
|
-
/*
|
|
4719
|
-
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4928
|
+
/* Boolean */
|
|
4929
|
+
.bc-json-schema-display__boolean {
|
|
4930
|
+
display: inline-block;
|
|
4931
|
+
font-size: var(--font-size-sm);
|
|
4932
|
+
font-weight: var(--font-weight-medium);
|
|
4933
|
+
padding: 0 calc(var(--spacing-base) * 1.5);
|
|
4934
|
+
border-radius: var(--radius-full);
|
|
4935
|
+
line-height: 1.6;
|
|
4724
4936
|
}
|
|
4725
4937
|
|
|
4726
|
-
.bc-
|
|
4727
|
-
|
|
4938
|
+
.bc-json-schema-display__boolean--true {
|
|
4939
|
+
color: var(--color-success-700);
|
|
4940
|
+
background-color: var(--color-success-100);
|
|
4728
4941
|
}
|
|
4729
4942
|
|
|
4730
|
-
.bc-
|
|
4731
|
-
|
|
4943
|
+
.bc-json-schema-display__boolean--false {
|
|
4944
|
+
color: var(--color-danger-700);
|
|
4945
|
+
background-color: var(--color-danger-100);
|
|
4732
4946
|
}
|
|
4733
4947
|
|
|
4734
|
-
.bc-
|
|
4735
|
-
|
|
4948
|
+
.b-dark .bc-json-schema-display__boolean--true {
|
|
4949
|
+
color: var(--color-success-300);
|
|
4950
|
+
background-color: var(--color-success-900);
|
|
4736
4951
|
}
|
|
4737
4952
|
|
|
4738
|
-
.bc-
|
|
4739
|
-
|
|
4953
|
+
.b-dark .bc-json-schema-display__boolean--false {
|
|
4954
|
+
color: var(--color-danger-300);
|
|
4955
|
+
background-color: var(--color-danger-900);
|
|
4740
4956
|
}
|
|
4741
4957
|
|
|
4742
|
-
|
|
4743
|
-
|
|
4958
|
+
/* Object */
|
|
4959
|
+
.bc-json-schema-display__object {
|
|
4960
|
+
border-left: calc(var(--spacing-base) * 2) solid var(--color-base-200);
|
|
4961
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
4744
4962
|
}
|
|
4745
4963
|
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
4749
|
-
}
|
|
4750
|
-
.bc-structure-grid--cols-sm-2 {
|
|
4751
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
4752
|
-
}
|
|
4753
|
-
.bc-structure-grid--cols-sm-3 {
|
|
4754
|
-
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
4755
|
-
}
|
|
4756
|
-
.bc-structure-grid--cols-sm-4 {
|
|
4757
|
-
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
4758
|
-
}
|
|
4964
|
+
.b-dark .bc-json-schema-display__object {
|
|
4965
|
+
border-left-color: var(--color-neutral-700);
|
|
4759
4966
|
}
|
|
4760
4967
|
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
|
|
4764
|
-
|
|
4765
|
-
|
|
4766
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
4767
|
-
}
|
|
4768
|
-
.bc-structure-grid--cols-md-3 {
|
|
4769
|
-
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
4770
|
-
}
|
|
4771
|
-
.bc-structure-grid--cols-md-4 {
|
|
4772
|
-
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
4773
|
-
}
|
|
4968
|
+
/* Extra properties */
|
|
4969
|
+
.bc-json-schema-display__extra-property {
|
|
4970
|
+
opacity: 0.7;
|
|
4971
|
+
border-left: 2px dashed var(--color-warning-400);
|
|
4972
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
4774
4973
|
}
|
|
4775
4974
|
|
|
4776
|
-
|
|
4777
|
-
|
|
4778
|
-
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
4779
|
-
}
|
|
4780
|
-
.bc-structure-grid--cols-lg-2 {
|
|
4781
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
4782
|
-
}
|
|
4783
|
-
.bc-structure-grid--cols-lg-3 {
|
|
4784
|
-
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
4785
|
-
}
|
|
4786
|
-
.bc-structure-grid--cols-lg-4 {
|
|
4787
|
-
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
4788
|
-
}
|
|
4975
|
+
.b-dark .bc-json-schema-display__extra-property {
|
|
4976
|
+
border-left-color: var(--color-warning-600);
|
|
4789
4977
|
}
|
|
4790
4978
|
|
|
4791
|
-
/*
|
|
4792
|
-
|
|
4793
|
-
|
|
4979
|
+
/* Array */
|
|
4980
|
+
.bc-json-schema-display__array {
|
|
4981
|
+
display: flex;
|
|
4982
|
+
flex-direction: column;
|
|
4983
|
+
}
|
|
4794
4984
|
|
|
4795
|
-
.bc-json-
|
|
4796
|
-
|
|
4797
|
-
|
|
4798
|
-
|
|
4985
|
+
.bc-json-schema-display__array-item {
|
|
4986
|
+
display: flex;
|
|
4987
|
+
gap: calc(var(--spacing-base) * 1.5);
|
|
4988
|
+
align-items: baseline;
|
|
4799
4989
|
}
|
|
4800
4990
|
|
|
4801
|
-
|
|
4802
|
-
|
|
4991
|
+
/* Strip field wrapper padding inside array items */
|
|
4992
|
+
.bc-json-schema-display__array-item > .bc-json-schema-display__field {
|
|
4993
|
+
padding-block: 0;
|
|
4803
4994
|
}
|
|
4804
4995
|
|
|
4805
|
-
.bc-json-
|
|
4806
|
-
|
|
4996
|
+
.bc-json-schema-display__array-index {
|
|
4997
|
+
font-size: var(--font-size-sm);
|
|
4998
|
+
font-weight: var(--font-weight-normal);
|
|
4999
|
+
color: var(--color-neutral-400);
|
|
5000
|
+
font-family: var(--font-family-mono, monospace);
|
|
5001
|
+
min-width: 2rem;
|
|
5002
|
+
text-align: right;
|
|
5003
|
+
flex-shrink: 0;
|
|
4807
5004
|
}
|
|
4808
5005
|
|
|
4809
|
-
|
|
4810
|
-
|
|
4811
|
-
|
|
5006
|
+
.b-dark .bc-json-schema-display__array-index {
|
|
5007
|
+
color: var(--color-neutral-500);
|
|
5008
|
+
}
|
|
4812
5009
|
|
|
4813
|
-
.bc-json-
|
|
4814
|
-
color: var(--color-base-500);
|
|
5010
|
+
.bc-json-schema-display__empty {
|
|
4815
5011
|
font-size: var(--font-size-sm);
|
|
4816
|
-
|
|
5012
|
+
color: var(--color-neutral-400);
|
|
5013
|
+
font-style: italic;
|
|
4817
5014
|
}
|
|
4818
5015
|
|
|
4819
|
-
.bc-json-
|
|
4820
|
-
|
|
4821
|
-
position: relative;
|
|
5016
|
+
.b-dark .bc-json-schema-display__empty {
|
|
5017
|
+
color: var(--color-neutral-500);
|
|
4822
5018
|
}
|
|
4823
5019
|
|
|
4824
|
-
|
|
4825
|
-
|
|
4826
|
-
position: absolute;
|
|
4827
|
-
top: 0;
|
|
4828
|
-
right: 0;
|
|
5020
|
+
/* Composition (oneOf/anyOf) branch label */
|
|
5021
|
+
.bc-json-schema-display__branch-label {
|
|
4829
5022
|
font-size: var(--font-size-xs);
|
|
4830
|
-
|
|
4831
|
-
|
|
4832
|
-
padding: 0
|
|
5023
|
+
font-weight: var(--font-weight-medium);
|
|
5024
|
+
color: var(--color-primary-600);
|
|
5025
|
+
padding: 0 calc(var(--spacing-base) * 1);
|
|
5026
|
+
background-color: var(--color-primary-50);
|
|
4833
5027
|
border-radius: var(--radius-sm);
|
|
5028
|
+
display: inline-block;
|
|
5029
|
+
margin-bottom: calc(var(--spacing-base) * 1);
|
|
4834
5030
|
}
|
|
4835
5031
|
|
|
4836
|
-
.bc-json-
|
|
4837
|
-
|
|
4838
|
-
|
|
4839
|
-
gap: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5));
|
|
4840
|
-
font-size: var(--font-size-xs);
|
|
4841
|
-
color: var(--color-warning-700);
|
|
4842
|
-
background: var(--color-warning-100);
|
|
4843
|
-
padding: 0.125em 0.5em;
|
|
4844
|
-
border-radius: var(--radius-sm);
|
|
4845
|
-
margin-inline-start: var(
|
|
4846
|
-
--spacing-inline-xs,
|
|
4847
|
-
calc(var(--spacing-base) * 0.5)
|
|
4848
|
-
);
|
|
5032
|
+
.b-dark .bc-json-schema-display__branch-label {
|
|
5033
|
+
color: var(--color-primary-300);
|
|
5034
|
+
background-color: var(--color-primary-900);
|
|
4849
5035
|
}
|
|
4850
5036
|
|
|
4851
|
-
.bc-json-
|
|
4852
|
-
color: var(--color-
|
|
4853
|
-
|
|
5037
|
+
.bc-json-schema-display__branch-label--ambiguous {
|
|
5038
|
+
color: var(--color-warning-700);
|
|
5039
|
+
background-color: var(--color-warning-100);
|
|
4854
5040
|
}
|
|
4855
5041
|
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
5042
|
+
.b-dark .bc-json-schema-display__branch-label--ambiguous {
|
|
5043
|
+
color: var(--color-warning-300);
|
|
5044
|
+
background-color: var(--color-warning-900);
|
|
5045
|
+
}
|
|
4859
5046
|
|
|
4860
|
-
.bc-json-
|
|
4861
|
-
|
|
4862
|
-
background: var(--color-
|
|
4863
|
-
padding: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5))
|
|
4864
|
-
var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4865
|
-
border-radius: var(--radius-sm);
|
|
4866
|
-
color: var(--color-base-600);
|
|
5047
|
+
.bc-json-schema-display__branch-label--no-match {
|
|
5048
|
+
color: var(--color-danger-700);
|
|
5049
|
+
background-color: var(--color-danger-100);
|
|
4867
5050
|
}
|
|
4868
5051
|
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
5052
|
+
.b-dark .bc-json-schema-display__branch-label--no-match {
|
|
5053
|
+
color: var(--color-danger-300);
|
|
5054
|
+
background-color: var(--color-danger-900);
|
|
5055
|
+
}
|
|
4872
5056
|
|
|
4873
|
-
|
|
4874
|
-
|
|
4875
|
-
|
|
5057
|
+
/* Mismatch indicators */
|
|
5058
|
+
.bc-json-schema-display__mismatches {
|
|
5059
|
+
display: flex;
|
|
5060
|
+
flex-wrap: wrap;
|
|
5061
|
+
gap: calc(var(--spacing-base) * 1);
|
|
4876
5062
|
}
|
|
4877
5063
|
|
|
4878
|
-
.bc-json-
|
|
4879
|
-
|
|
4880
|
-
|
|
4881
|
-
|
|
4882
|
-
|
|
5064
|
+
.bc-json-schema-display__mismatch {
|
|
5065
|
+
font-size: var(--font-size-xs);
|
|
5066
|
+
font-weight: var(--font-weight-medium);
|
|
5067
|
+
padding: 0 calc(var(--spacing-base) * 1.5);
|
|
5068
|
+
border-radius: var(--radius-full);
|
|
5069
|
+
line-height: 1.6;
|
|
5070
|
+
}
|
|
5071
|
+
|
|
5072
|
+
.bc-json-schema-display__mismatch--type-mismatch {
|
|
5073
|
+
color: var(--color-danger-700);
|
|
5074
|
+
background-color: var(--color-danger-100);
|
|
5075
|
+
}
|
|
5076
|
+
|
|
5077
|
+
.bc-json-schema-display__mismatch--missing-required {
|
|
5078
|
+
color: var(--color-danger-700);
|
|
5079
|
+
background-color: var(--color-danger-100);
|
|
5080
|
+
}
|
|
5081
|
+
|
|
5082
|
+
.bc-json-schema-display__mismatch--extra-property {
|
|
5083
|
+
color: var(--color-warning-700);
|
|
5084
|
+
background-color: var(--color-warning-100);
|
|
5085
|
+
}
|
|
5086
|
+
|
|
5087
|
+
.bc-json-schema-display__mismatch--enum-mismatch {
|
|
5088
|
+
color: var(--color-warning-700);
|
|
5089
|
+
background-color: var(--color-warning-100);
|
|
5090
|
+
}
|
|
5091
|
+
|
|
5092
|
+
.bc-json-schema-display__mismatch--const-mismatch {
|
|
5093
|
+
color: var(--color-warning-700);
|
|
5094
|
+
background-color: var(--color-warning-100);
|
|
5095
|
+
}
|
|
5096
|
+
|
|
5097
|
+
.bc-json-schema-display__mismatch--constraint-violation {
|
|
5098
|
+
color: var(--color-danger-700);
|
|
5099
|
+
background-color: var(--color-danger-100);
|
|
5100
|
+
}
|
|
5101
|
+
|
|
5102
|
+
.bc-json-schema-display__mismatch-indicator {
|
|
5103
|
+
font-size: var(--font-size-xs);
|
|
5104
|
+
color: var(--color-danger-600);
|
|
5105
|
+
font-style: italic;
|
|
5106
|
+
margin-left: calc(var(--spacing-base) * 1);
|
|
5107
|
+
}
|
|
5108
|
+
|
|
5109
|
+
.b-dark .bc-json-schema-display__mismatch--type-mismatch,
|
|
5110
|
+
.b-dark .bc-json-schema-display__mismatch--missing-required {
|
|
5111
|
+
color: var(--color-danger-300);
|
|
5112
|
+
background-color: var(--color-danger-900);
|
|
5113
|
+
}
|
|
5114
|
+
|
|
5115
|
+
.b-dark .bc-json-schema-display__mismatch--extra-property,
|
|
5116
|
+
.b-dark .bc-json-schema-display__mismatch--enum-mismatch,
|
|
5117
|
+
.b-dark .bc-json-schema-display__mismatch--const-mismatch {
|
|
5118
|
+
color: var(--color-warning-300);
|
|
5119
|
+
background-color: var(--color-warning-900);
|
|
4883
5120
|
}
|
|
4884
5121
|
|
|
5122
|
+
.b-dark .bc-json-schema-display__mismatch--constraint-violation {
|
|
5123
|
+
color: var(--color-danger-300);
|
|
5124
|
+
background-color: var(--color-danger-900);
|
|
5125
|
+
}
|
|
5126
|
+
|
|
5127
|
+
.b-dark .bc-json-schema-display__mismatch-indicator {
|
|
5128
|
+
color: var(--color-danger-400);
|
|
5129
|
+
}
|
|
5130
|
+
|
|
5131
|
+
/**
|
|
5132
|
+
* JSON Structure Form Component Styles
|
|
5133
|
+
*
|
|
5134
|
+
* CSS styles for JSON Structure form components.
|
|
5135
|
+
* Uses BEM-like naming with bc-json-structure- prefix.
|
|
5136
|
+
*/
|
|
5137
|
+
|
|
4885
5138
|
/* =============================================================================
|
|
4886
|
-
|
|
5139
|
+
Base Styles
|
|
4887
5140
|
============================================================================= */
|
|
4888
5141
|
|
|
4889
|
-
.bc-json-structure-
|
|
5142
|
+
.bc-json-structure-form {
|
|
5143
|
+
display: flex;
|
|
5144
|
+
flex-direction: column;
|
|
5145
|
+
gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
|
|
5146
|
+
}
|
|
5147
|
+
|
|
5148
|
+
/* =============================================================================
|
|
5149
|
+
Object Layout
|
|
5150
|
+
============================================================================= */
|
|
5151
|
+
|
|
5152
|
+
.bc-json-structure-object {
|
|
5153
|
+
border-left: calc(var(--spacing-base) * 2) solid var(--color-base-200);
|
|
5154
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
5155
|
+
}
|
|
5156
|
+
|
|
5157
|
+
.bc-json-structure-object-fields {
|
|
5158
|
+
display: flex;
|
|
5159
|
+
flex-direction: column;
|
|
5160
|
+
gap: var(--spacing-stack-md, calc(var(--spacing-base) * 3));
|
|
5161
|
+
}
|
|
5162
|
+
|
|
5163
|
+
.bc-json-structure-object--nested {
|
|
5164
|
+
margin-top: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
5165
|
+
}
|
|
5166
|
+
|
|
5167
|
+
/* Additional properties */
|
|
5168
|
+
.bc-json-structure-additional-property {
|
|
4890
5169
|
display: flex;
|
|
4891
5170
|
flex-direction: column;
|
|
4892
5171
|
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
4893
5172
|
padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4894
|
-
border: 1px
|
|
4895
|
-
border-radius: var(--radius-
|
|
5173
|
+
border: 1px solid var(--color-base-200);
|
|
5174
|
+
border-radius: var(--radius-sm);
|
|
4896
5175
|
background: var(--color-base-50);
|
|
4897
5176
|
}
|
|
4898
5177
|
|
|
4899
|
-
.bc-json-structure-
|
|
4900
|
-
|
|
4901
|
-
|
|
5178
|
+
.bc-json-structure-additional-property-header {
|
|
5179
|
+
display: flex;
|
|
5180
|
+
justify-content: space-between;
|
|
5181
|
+
align-items: center;
|
|
5182
|
+
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5183
|
+
}
|
|
5184
|
+
|
|
5185
|
+
.bc-json-structure-additional-property-value {
|
|
5186
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
5187
|
+
}
|
|
5188
|
+
|
|
5189
|
+
/* =============================================================================
|
|
5190
|
+
Array/Set/Map Layout
|
|
5191
|
+
============================================================================= */
|
|
5192
|
+
|
|
5193
|
+
.bc-json-structure-array,
|
|
5194
|
+
.bc-json-structure-set,
|
|
5195
|
+
.bc-json-structure-map {
|
|
5196
|
+
display: flex;
|
|
5197
|
+
flex-direction: column;
|
|
5198
|
+
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
5199
|
+
}
|
|
5200
|
+
|
|
5201
|
+
.bc-json-structure-array-items,
|
|
5202
|
+
.bc-json-structure-set-items,
|
|
5203
|
+
.bc-json-structure-map-entries {
|
|
5204
|
+
display: flex;
|
|
5205
|
+
flex-direction: column;
|
|
5206
|
+
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
5207
|
+
}
|
|
5208
|
+
|
|
5209
|
+
.bc-json-structure-array-item,
|
|
5210
|
+
.bc-json-structure-set-item,
|
|
5211
|
+
.bc-json-structure-map-entry {
|
|
5212
|
+
display: flex;
|
|
5213
|
+
align-items: flex-start;
|
|
5214
|
+
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5215
|
+
}
|
|
5216
|
+
|
|
5217
|
+
.bc-json-structure-array-item-content,
|
|
5218
|
+
.bc-json-structure-set-item-content,
|
|
5219
|
+
.bc-json-structure-map-entry-content {
|
|
5220
|
+
flex: 1;
|
|
5221
|
+
min-width: 0;
|
|
5222
|
+
}
|
|
5223
|
+
|
|
5224
|
+
.bc-json-structure-array-item-actions,
|
|
5225
|
+
.bc-json-structure-set-item-actions,
|
|
5226
|
+
.bc-json-structure-map-entry-actions {
|
|
5227
|
+
flex-shrink: 0;
|
|
5228
|
+
}
|
|
5229
|
+
|
|
5230
|
+
.bc-json-structure-collection-add {
|
|
5231
|
+
margin-top: var(--spacing-stack-xs, var(--spacing-base));
|
|
5232
|
+
}
|
|
5233
|
+
|
|
5234
|
+
/* Map entry specific styles */
|
|
5235
|
+
.bc-json-structure-map-entry-header {
|
|
5236
|
+
display: flex;
|
|
5237
|
+
justify-content: space-between;
|
|
5238
|
+
align-items: center;
|
|
5239
|
+
gap: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5240
|
+
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
5241
|
+
}
|
|
5242
|
+
|
|
5243
|
+
.bc-json-structure-map-entry-key {
|
|
4902
5244
|
font-family: var(--font-family-mono);
|
|
5245
|
+
font-weight: 600;
|
|
5246
|
+
color: var(--color-base-700);
|
|
4903
5247
|
}
|
|
4904
5248
|
|
|
4905
|
-
.bc-json-structure-
|
|
5249
|
+
.bc-json-structure-map-entry-value {
|
|
5250
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
5251
|
+
}
|
|
5252
|
+
|
|
5253
|
+
/* Set error indicator */
|
|
5254
|
+
.bc-json-structure-set-error {
|
|
5255
|
+
color: var(--color-error-500, #dc2626);
|
|
5256
|
+
font-size: var(--font-size-sm);
|
|
5257
|
+
margin-top: var(--spacing-stack-xs, var(--spacing-base));
|
|
5258
|
+
}
|
|
5259
|
+
|
|
5260
|
+
/* =============================================================================
|
|
5261
|
+
Tuple Layout
|
|
5262
|
+
============================================================================= */
|
|
5263
|
+
|
|
5264
|
+
.bc-json-structure-tuple {
|
|
5265
|
+
display: flex;
|
|
5266
|
+
flex-direction: column;
|
|
5267
|
+
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
5268
|
+
}
|
|
5269
|
+
|
|
5270
|
+
.bc-json-structure-tuple-label {
|
|
5271
|
+
font-weight: 600;
|
|
5272
|
+
color: var(--color-base-700);
|
|
5273
|
+
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
5274
|
+
}
|
|
5275
|
+
|
|
5276
|
+
.bc-json-structure-tuple-description {
|
|
5277
|
+
color: var(--color-base-500);
|
|
5278
|
+
font-size: var(--font-size-sm);
|
|
5279
|
+
margin-bottom: var(--spacing-stack-xs, var(--spacing-base));
|
|
5280
|
+
}
|
|
5281
|
+
|
|
5282
|
+
.bc-json-structure-tuple-elements {
|
|
5283
|
+
display: flex;
|
|
5284
|
+
flex-direction: column;
|
|
5285
|
+
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
5286
|
+
}
|
|
5287
|
+
|
|
5288
|
+
.bc-json-structure-tuple-element {
|
|
4906
5289
|
display: flex;
|
|
4907
5290
|
flex-direction: column;
|
|
4908
5291
|
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
4909
|
-
padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
4910
|
-
border: 1px solid var(--color-warning-300);
|
|
4911
|
-
border-radius: var(--radius-md);
|
|
4912
|
-
background: var(--color-warning-50);
|
|
4913
|
-
color: var(--color-warning-700);
|
|
4914
5292
|
}
|
|
4915
5293
|
|
|
4916
|
-
.bc-
|
|
5294
|
+
.bc-json-structure-tuple-element-header {
|
|
5295
|
+
display: flex;
|
|
5296
|
+
align-items: center;
|
|
5297
|
+
gap: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5));
|
|
5298
|
+
color: var(--color-base-600);
|
|
4917
5299
|
font-size: var(--font-size-sm);
|
|
4918
|
-
line-height: var(--line-height-normal);
|
|
4919
|
-
font-family: var(
|
|
4920
|
-
--default-ui-font-family,
|
|
4921
|
-
var(--font-ui, var(--font-body, var(--font-family-sans)))
|
|
4922
|
-
);
|
|
4923
5300
|
}
|
|
4924
5301
|
|
|
4925
|
-
.bc-
|
|
4926
|
-
font-
|
|
5302
|
+
.bc-json-structure-tuple-position {
|
|
5303
|
+
font-family: var(--font-family-mono);
|
|
5304
|
+
font-weight: 600;
|
|
5305
|
+
color: var(--color-base-500);
|
|
4927
5306
|
}
|
|
4928
5307
|
|
|
4929
|
-
.bc-
|
|
4930
|
-
font-weight:
|
|
5308
|
+
.bc-json-structure-tuple-element-name {
|
|
5309
|
+
font-weight: 500;
|
|
4931
5310
|
}
|
|
4932
5311
|
|
|
4933
|
-
.bc-
|
|
4934
|
-
|
|
4935
|
-
opacity: 0.5;
|
|
5312
|
+
.bc-json-structure-tuple-element-control {
|
|
5313
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
4936
5314
|
}
|
|
4937
5315
|
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
5316
|
+
/* =============================================================================
|
|
5317
|
+
Choice Layout
|
|
5318
|
+
============================================================================= */
|
|
5319
|
+
|
|
5320
|
+
.bc-json-structure-choice {
|
|
5321
|
+
display: flex;
|
|
5322
|
+
flex-direction: column;
|
|
5323
|
+
gap: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
4941
5324
|
}
|
|
4942
5325
|
|
|
4943
|
-
|
|
4944
|
-
|
|
4945
|
-
color: var(--text-normal-dark);
|
|
5326
|
+
.bc-json-structure-choice-selector {
|
|
5327
|
+
margin-bottom: var(--spacing-stack-sm, calc(var(--spacing-base) * 2));
|
|
4946
5328
|
}
|
|
4947
5329
|
|
|
4948
|
-
.
|
|
4949
|
-
|
|
5330
|
+
.bc-json-structure-choice-options {
|
|
5331
|
+
padding-inline-start: calc(var(--spacing-base) * 2);
|
|
4950
5332
|
}
|
|
4951
5333
|
|
|
4952
|
-
|
|
4953
|
-
|
|
5334
|
+
/* =============================================================================
|
|
5335
|
+
Grid Layout (for objects with many properties)
|
|
5336
|
+
============================================================================= */
|
|
5337
|
+
|
|
5338
|
+
.bc-structure-grid {
|
|
5339
|
+
display: grid;
|
|
5340
|
+
}
|
|
5341
|
+
|
|
5342
|
+
.bc-structure-grid--gap-4 {
|
|
5343
|
+
gap: var(--spacing-stack-lg, calc(var(--spacing-base) * 4));
|
|
5344
|
+
}
|
|
5345
|
+
|
|
5346
|
+
.bc-structure-grid--cols-1 {
|
|
5347
|
+
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
5348
|
+
}
|
|
5349
|
+
|
|
5350
|
+
.bc-structure-grid--cols-2 {
|
|
5351
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
5352
|
+
}
|
|
5353
|
+
|
|
5354
|
+
.bc-structure-grid--cols-3 {
|
|
5355
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
5356
|
+
}
|
|
5357
|
+
|
|
5358
|
+
.bc-structure-grid--cols-4 {
|
|
5359
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
5360
|
+
}
|
|
5361
|
+
|
|
5362
|
+
@media (width >= 40rem) {
|
|
5363
|
+
.bc-structure-grid--cols-sm-1 {
|
|
5364
|
+
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
5365
|
+
}
|
|
5366
|
+
.bc-structure-grid--cols-sm-2 {
|
|
5367
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
5368
|
+
}
|
|
5369
|
+
.bc-structure-grid--cols-sm-3 {
|
|
5370
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
5371
|
+
}
|
|
5372
|
+
.bc-structure-grid--cols-sm-4 {
|
|
5373
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
5374
|
+
}
|
|
5375
|
+
}
|
|
5376
|
+
|
|
5377
|
+
@media (width >= 48rem) {
|
|
5378
|
+
.bc-structure-grid--cols-md-1 {
|
|
5379
|
+
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
5380
|
+
}
|
|
5381
|
+
.bc-structure-grid--cols-md-2 {
|
|
5382
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
5383
|
+
}
|
|
5384
|
+
.bc-structure-grid--cols-md-3 {
|
|
5385
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
5386
|
+
}
|
|
5387
|
+
.bc-structure-grid--cols-md-4 {
|
|
5388
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
5389
|
+
}
|
|
5390
|
+
}
|
|
5391
|
+
|
|
5392
|
+
@media (width >= 64rem) {
|
|
5393
|
+
.bc-structure-grid--cols-lg-1 {
|
|
5394
|
+
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
5395
|
+
}
|
|
5396
|
+
.bc-structure-grid--cols-lg-2 {
|
|
5397
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
5398
|
+
}
|
|
5399
|
+
.bc-structure-grid--cols-lg-3 {
|
|
5400
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
5401
|
+
}
|
|
5402
|
+
.bc-structure-grid--cols-lg-4 {
|
|
5403
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
5404
|
+
}
|
|
5405
|
+
}
|
|
5406
|
+
|
|
5407
|
+
/* =============================================================================
|
|
5408
|
+
Validation States
|
|
5409
|
+
============================================================================= */
|
|
5410
|
+
|
|
5411
|
+
.bc-json-structure-error {
|
|
5412
|
+
color: var(--color-error-500, #dc2626);
|
|
5413
|
+
font-size: var(--font-size-sm);
|
|
5414
|
+
margin-top: var(--spacing-stack-xs, var(--spacing-base));
|
|
5415
|
+
}
|
|
5416
|
+
|
|
5417
|
+
.bc-json-structure-field--invalid {
|
|
5418
|
+
--field-border-color: var(--color-error-500, #dc2626);
|
|
5419
|
+
}
|
|
5420
|
+
|
|
5421
|
+
.bc-json-structure-field--valid {
|
|
5422
|
+
--field-border-color: var(--color-success-500, #16a34a);
|
|
5423
|
+
}
|
|
5424
|
+
|
|
5425
|
+
/* =============================================================================
|
|
5426
|
+
Metadata Display
|
|
5427
|
+
============================================================================= */
|
|
5428
|
+
|
|
5429
|
+
.bc-json-structure-description {
|
|
5430
|
+
color: var(--color-base-500);
|
|
5431
|
+
font-size: var(--font-size-sm);
|
|
5432
|
+
margin-top: var(--spacing-stack-xs, var(--spacing-base));
|
|
5433
|
+
}
|
|
5434
|
+
|
|
5435
|
+
.bc-json-structure-deprecated {
|
|
5436
|
+
opacity: 0.7;
|
|
5437
|
+
position: relative;
|
|
5438
|
+
}
|
|
5439
|
+
|
|
5440
|
+
.bc-json-structure-deprecated::before {
|
|
5441
|
+
content: '(deprecated)';
|
|
5442
|
+
position: absolute;
|
|
5443
|
+
top: 0;
|
|
5444
|
+
right: 0;
|
|
5445
|
+
font-size: var(--font-size-xs);
|
|
5446
|
+
color: var(--color-warning-500, #d97706);
|
|
5447
|
+
background: var(--color-warning-100, #fef3c7);
|
|
5448
|
+
padding: 0.125em 0.5em;
|
|
5449
|
+
border-radius: var(--radius-sm);
|
|
5450
|
+
}
|
|
5451
|
+
|
|
5452
|
+
.bc-json-structure-deprecated-badge {
|
|
5453
|
+
display: inline-flex;
|
|
5454
|
+
align-items: center;
|
|
5455
|
+
gap: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5));
|
|
5456
|
+
font-size: var(--font-size-xs);
|
|
5457
|
+
color: var(--color-warning-700);
|
|
5458
|
+
background: var(--color-warning-100);
|
|
5459
|
+
padding: 0.125em 0.5em;
|
|
5460
|
+
border-radius: var(--radius-sm);
|
|
5461
|
+
margin-inline-start: var(
|
|
5462
|
+
--spacing-inline-xs,
|
|
5463
|
+
calc(var(--spacing-base) * 0.5)
|
|
5464
|
+
);
|
|
5465
|
+
}
|
|
5466
|
+
|
|
5467
|
+
.bc-json-structure-required-indicator {
|
|
5468
|
+
color: var(--color-error-500, #dc2626);
|
|
5469
|
+
margin-inline-start: 0.25em;
|
|
5470
|
+
}
|
|
5471
|
+
|
|
5472
|
+
/* =============================================================================
|
|
5473
|
+
Const/Enum Display
|
|
5474
|
+
============================================================================= */
|
|
5475
|
+
|
|
5476
|
+
.bc-json-structure-const {
|
|
5477
|
+
font-family: var(--font-family-mono);
|
|
5478
|
+
background: var(--color-base-100);
|
|
5479
|
+
padding: var(--spacing-inline-xs, calc(var(--spacing-base) * 0.5))
|
|
5480
|
+
var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5481
|
+
border-radius: var(--radius-sm);
|
|
5482
|
+
color: var(--color-base-600);
|
|
5483
|
+
}
|
|
5484
|
+
|
|
5485
|
+
/* =============================================================================
|
|
5486
|
+
Read-Only State
|
|
5487
|
+
============================================================================= */
|
|
5488
|
+
|
|
5489
|
+
.bc-json-structure-readonly {
|
|
5490
|
+
pointer-events: none;
|
|
5491
|
+
opacity: 0.7;
|
|
5492
|
+
}
|
|
5493
|
+
|
|
5494
|
+
.bc-json-structure-readonly input,
|
|
5495
|
+
.bc-json-structure-readonly select,
|
|
5496
|
+
.bc-json-structure-readonly textarea {
|
|
5497
|
+
background: var(--color-base-100);
|
|
5498
|
+
cursor: not-allowed;
|
|
5499
|
+
}
|
|
5500
|
+
|
|
5501
|
+
/* =============================================================================
|
|
5502
|
+
Placeholder Styles (temporary, for development)
|
|
5503
|
+
============================================================================= */
|
|
5504
|
+
|
|
5505
|
+
.bc-json-structure-placeholder {
|
|
5506
|
+
display: flex;
|
|
5507
|
+
flex-direction: column;
|
|
5508
|
+
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
5509
|
+
padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5510
|
+
border: 1px dashed var(--color-base-300);
|
|
5511
|
+
border-radius: var(--radius-md);
|
|
5512
|
+
background: var(--color-base-50);
|
|
5513
|
+
}
|
|
5514
|
+
|
|
5515
|
+
.bc-json-structure-placeholder > span:first-child {
|
|
5516
|
+
font-size: var(--font-size-xs);
|
|
5517
|
+
color: var(--color-base-400);
|
|
5518
|
+
font-family: var(--font-family-mono);
|
|
5519
|
+
}
|
|
5520
|
+
|
|
5521
|
+
.bc-json-structure-unknown {
|
|
5522
|
+
display: flex;
|
|
5523
|
+
flex-direction: column;
|
|
5524
|
+
gap: var(--spacing-stack-xs, var(--spacing-base));
|
|
5525
|
+
padding: var(--spacing-inline-sm, calc(var(--spacing-base) * 2));
|
|
5526
|
+
border: 1px solid var(--color-warning-300);
|
|
5527
|
+
border-radius: var(--radius-md);
|
|
5528
|
+
background: var(--color-warning-50);
|
|
5529
|
+
color: var(--color-warning-700);
|
|
5530
|
+
}
|
|
5531
|
+
|
|
5532
|
+
.bc-label {
|
|
5533
|
+
font-size: var(--font-size-sm);
|
|
5534
|
+
line-height: var(--line-height-normal);
|
|
5535
|
+
font-family: var(
|
|
5536
|
+
--default-ui-font-family,
|
|
5537
|
+
var(--font-ui, var(--font-body, var(--font-family-sans)))
|
|
5538
|
+
);
|
|
5539
|
+
}
|
|
5540
|
+
|
|
5541
|
+
.bc-label--emphasis {
|
|
5542
|
+
font-weight: var(--font-weight-bold);
|
|
5543
|
+
}
|
|
5544
|
+
|
|
5545
|
+
.bc-label--default {
|
|
5546
|
+
font-weight: var(--font-weight-medium);
|
|
5547
|
+
}
|
|
5548
|
+
|
|
5549
|
+
.bc-label--muted {
|
|
5550
|
+
font-weight: var(--font-weight-medium);
|
|
5551
|
+
opacity: 0.5;
|
|
5552
|
+
}
|
|
5553
|
+
|
|
5554
|
+
.bc-label--danger {
|
|
5555
|
+
font-weight: var(--font-weight-medium);
|
|
5556
|
+
color: var(--color-danger-500);
|
|
5557
|
+
}
|
|
5558
|
+
|
|
5559
|
+
/* Dark mode styles */
|
|
5560
|
+
.b-dark .bc-label {
|
|
5561
|
+
color: var(--text-normal-dark);
|
|
5562
|
+
}
|
|
5563
|
+
|
|
5564
|
+
.b-dark .bc-label--muted {
|
|
5565
|
+
color: var(--text-muted-dark);
|
|
5566
|
+
}
|
|
5567
|
+
|
|
5568
|
+
.b-dark .bc-label--danger {
|
|
5569
|
+
color: var(--color-danger-400);
|
|
5570
|
+
}
|
|
5571
|
+
|
|
5572
|
+
@layer components {
|
|
5573
|
+
/* Lexical Editor Component */
|
|
5574
|
+
|
|
5575
|
+
/* Container wrapper for toolbar + editor */
|
|
5576
|
+
.bc-lexical-editor-container {
|
|
5577
|
+
display: flex;
|
|
5578
|
+
flex-direction: column;
|
|
5579
|
+
border: 1px solid var(--color-neutral-200);
|
|
5580
|
+
border-radius: var(--radius-control, var(--radius-md));
|
|
5581
|
+
background-color: var(--color-neutral-50);
|
|
5582
|
+
overflow: hidden;
|
|
5583
|
+
transition: all
|
|
5584
|
+
var(--motion-transition-fast, var(--motion-duration-fast, 0.2s))
|
|
5585
|
+
var(--motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));
|
|
5586
|
+
}
|
|
5587
|
+
|
|
5588
|
+
/* Fixed height mode on container: fill parent, constrain children */
|
|
5589
|
+
.bc-lexical-editor-container--fixed {
|
|
5590
|
+
height: 100%;
|
|
5591
|
+
}
|
|
5592
|
+
|
|
5593
|
+
/* Editor surface (contenteditable) */
|
|
5594
|
+
.bc-lexical-editor {
|
|
5595
|
+
position: relative;
|
|
5596
|
+
min-height: 150px;
|
|
5597
|
+
padding: 1rem;
|
|
5598
|
+
outline: none;
|
|
5599
|
+
font-family: inherit;
|
|
5600
|
+
font-size: inherit;
|
|
5601
|
+
line-height: 1.6;
|
|
5602
|
+
color: var(--color-neutral-900);
|
|
5603
|
+
background-color: var(--color-white);
|
|
5604
|
+
}
|
|
5605
|
+
|
|
5606
|
+
/* Fixed height mode: fill container, scroll on overflow */
|
|
5607
|
+
.bc-lexical-editor--fixed {
|
|
5608
|
+
flex: 1 1 0;
|
|
5609
|
+
overflow-y: auto;
|
|
5610
|
+
}
|
|
5611
|
+
|
|
5612
|
+
/* Auto height mode: grow with content */
|
|
5613
|
+
.bc-lexical-editor--auto {
|
|
5614
|
+
overflow-y: visible;
|
|
5615
|
+
}
|
|
5616
|
+
|
|
5617
|
+
/* Focus state */
|
|
5618
|
+
.bc-lexical-editor-container:focus-within {
|
|
5619
|
+
border-color: var(--color-primary-500);
|
|
5620
|
+
box-shadow: 0 0 0 2px var(--color-primary-100);
|
|
5621
|
+
}
|
|
5622
|
+
|
|
5623
|
+
/* Error state */
|
|
5624
|
+
.bc-lexical-editor-container--error {
|
|
5625
|
+
border-color: var(--color-danger-600);
|
|
5626
|
+
}
|
|
5627
|
+
|
|
5628
|
+
.bc-lexical-editor-container--error:focus-within {
|
|
5629
|
+
border-color: var(--color-danger-600);
|
|
5630
|
+
box-shadow: 0 0 0 2px var(--color-danger-100);
|
|
5631
|
+
}
|
|
5632
|
+
|
|
5633
|
+
/* Read-only state */
|
|
5634
|
+
.bc-lexical-editor--readonly {
|
|
5635
|
+
cursor: default;
|
|
5636
|
+
background-color: var(--color-neutral-100);
|
|
5637
|
+
color: var(--color-neutral-700);
|
|
5638
|
+
}
|
|
5639
|
+
|
|
5640
|
+
/* Placeholder styling */
|
|
5641
|
+
.bc-lexical-editor [data-lexical-placeholder] {
|
|
5642
|
+
color: var(--color-neutral-400);
|
|
5643
|
+
pointer-events: none;
|
|
5644
|
+
position: absolute;
|
|
5645
|
+
top: 1rem;
|
|
5646
|
+
left: 1rem;
|
|
5647
|
+
user-select: none;
|
|
5648
|
+
font-style: italic;
|
|
5649
|
+
}
|
|
5650
|
+
|
|
5651
|
+
/* Typography within editor */
|
|
5652
|
+
.bc-lexical-editor h1 {
|
|
5653
|
+
font-size: 2rem;
|
|
5654
|
+
font-weight: 700;
|
|
5655
|
+
line-height: 1.2;
|
|
5656
|
+
margin-top: 1.5rem;
|
|
5657
|
+
margin-bottom: 0.75rem;
|
|
5658
|
+
}
|
|
5659
|
+
|
|
5660
|
+
.bc-lexical-editor h1:first-child {
|
|
5661
|
+
margin-top: 0;
|
|
5662
|
+
}
|
|
5663
|
+
|
|
5664
|
+
.bc-lexical-editor h2 {
|
|
5665
|
+
font-size: 1.5rem;
|
|
5666
|
+
font-weight: 700;
|
|
5667
|
+
line-height: 1.3;
|
|
5668
|
+
margin-top: 1.25rem;
|
|
5669
|
+
margin-bottom: 0.625rem;
|
|
5670
|
+
}
|
|
5671
|
+
|
|
5672
|
+
.bc-lexical-editor h2:first-child {
|
|
5673
|
+
margin-top: 0;
|
|
5674
|
+
}
|
|
5675
|
+
|
|
5676
|
+
.bc-lexical-editor h3 {
|
|
5677
|
+
font-size: 1.25rem;
|
|
5678
|
+
font-weight: 600;
|
|
5679
|
+
line-height: 1.4;
|
|
5680
|
+
margin-top: 1rem;
|
|
5681
|
+
margin-bottom: 0.5rem;
|
|
5682
|
+
}
|
|
5683
|
+
|
|
5684
|
+
.bc-lexical-editor h3:first-child {
|
|
5685
|
+
margin-top: 0;
|
|
5686
|
+
}
|
|
5687
|
+
|
|
5688
|
+
.bc-lexical-editor h4 {
|
|
5689
|
+
font-size: 1.125rem;
|
|
5690
|
+
font-weight: 600;
|
|
5691
|
+
line-height: 1.5;
|
|
5692
|
+
margin-top: 0.875rem;
|
|
5693
|
+
margin-bottom: 0.5rem;
|
|
5694
|
+
}
|
|
5695
|
+
|
|
5696
|
+
.bc-lexical-editor h4:first-child {
|
|
5697
|
+
margin-top: 0;
|
|
5698
|
+
}
|
|
5699
|
+
|
|
5700
|
+
.bc-lexical-editor h5 {
|
|
5701
|
+
font-size: 1rem;
|
|
5702
|
+
font-weight: 600;
|
|
5703
|
+
line-height: 1.5;
|
|
5704
|
+
margin-top: 0.75rem;
|
|
5705
|
+
margin-bottom: 0.5rem;
|
|
5706
|
+
}
|
|
5707
|
+
|
|
5708
|
+
.bc-lexical-editor h5:first-child {
|
|
5709
|
+
margin-top: 0;
|
|
5710
|
+
}
|
|
5711
|
+
|
|
5712
|
+
.bc-lexical-editor h6 {
|
|
5713
|
+
font-size: 0.875rem;
|
|
5714
|
+
font-weight: 600;
|
|
5715
|
+
line-height: 1.5;
|
|
5716
|
+
margin-top: 0.75rem;
|
|
5717
|
+
margin-bottom: 0.5rem;
|
|
5718
|
+
text-transform: uppercase;
|
|
5719
|
+
letter-spacing: 0.05em;
|
|
5720
|
+
}
|
|
5721
|
+
|
|
5722
|
+
.bc-lexical-editor h6:first-child {
|
|
5723
|
+
margin-top: 0;
|
|
5724
|
+
}
|
|
5725
|
+
|
|
5726
|
+
.bc-lexical-editor p {
|
|
5727
|
+
margin-top: 0.5rem;
|
|
5728
|
+
margin-bottom: 0.5rem;
|
|
5729
|
+
}
|
|
5730
|
+
|
|
5731
|
+
.bc-lexical-editor p:first-child {
|
|
5732
|
+
margin-top: 0;
|
|
5733
|
+
}
|
|
5734
|
+
|
|
5735
|
+
.bc-lexical-editor p:last-child {
|
|
5736
|
+
margin-bottom: 0;
|
|
5737
|
+
}
|
|
5738
|
+
|
|
5739
|
+
.bc-lexical-editor blockquote {
|
|
5740
|
+
margin: 1rem 0;
|
|
5741
|
+
padding-left: 1rem;
|
|
5742
|
+
border-left: 4px solid var(--color-neutral-300);
|
|
5743
|
+
color: var(--color-neutral-700);
|
|
5744
|
+
font-style: italic;
|
|
5745
|
+
}
|
|
5746
|
+
|
|
5747
|
+
.bc-lexical-editor ul,
|
|
5748
|
+
.bc-lexical-editor ol {
|
|
5749
|
+
margin: 0.75rem 0;
|
|
5750
|
+
padding-left: 1.5rem;
|
|
5751
|
+
}
|
|
5752
|
+
|
|
5753
|
+
.bc-lexical-editor ul {
|
|
5754
|
+
list-style-type: disc;
|
|
5755
|
+
}
|
|
5756
|
+
|
|
5757
|
+
.bc-lexical-editor ol {
|
|
5758
|
+
list-style-type: decimal;
|
|
5759
|
+
}
|
|
5760
|
+
|
|
5761
|
+
.bc-lexical-editor li {
|
|
5762
|
+
margin: 0.25rem 0;
|
|
5763
|
+
}
|
|
5764
|
+
|
|
5765
|
+
.bc-lexical-editor code {
|
|
5766
|
+
font-family: 'Monaco', 'Courier New', monospace;
|
|
5767
|
+
font-size: 0.875em;
|
|
5768
|
+
background-color: var(--color-neutral-100);
|
|
5769
|
+
color: var(--color-neutral-800);
|
|
5770
|
+
padding: 0.125rem 0.375rem;
|
|
5771
|
+
border-radius: var(--radius-xs, 0.25rem);
|
|
5772
|
+
}
|
|
5773
|
+
|
|
5774
|
+
.bc-lexical-editor pre {
|
|
5775
|
+
margin: 1rem 0;
|
|
5776
|
+
padding: 1rem;
|
|
5777
|
+
background-color: var(--color-neutral-100);
|
|
5778
|
+
border-radius: var(--radius-md, 0.5rem);
|
|
5779
|
+
overflow-x: auto;
|
|
5780
|
+
border: 1px solid var(--color-neutral-200);
|
|
5781
|
+
}
|
|
5782
|
+
|
|
5783
|
+
.bc-lexical-editor pre code {
|
|
5784
|
+
background-color: transparent;
|
|
5785
|
+
padding: 0;
|
|
5786
|
+
border-radius: 0;
|
|
5787
|
+
font-size: 0.875rem;
|
|
5788
|
+
line-height: 1.5;
|
|
5789
|
+
}
|
|
5790
|
+
|
|
5791
|
+
.bc-lexical-editor a {
|
|
5792
|
+
color: var(--color-primary-600);
|
|
5793
|
+
text-decoration: underline;
|
|
5794
|
+
text-underline-offset: 0.125rem;
|
|
5795
|
+
cursor: pointer;
|
|
5796
|
+
}
|
|
5797
|
+
|
|
5798
|
+
.bc-lexical-editor a:hover {
|
|
5799
|
+
color: var(--color-primary-700);
|
|
5800
|
+
}
|
|
5801
|
+
|
|
5802
|
+
.bc-lexical-editor hr {
|
|
5803
|
+
margin: 1.5rem 0;
|
|
5804
|
+
border: none;
|
|
5805
|
+
border-top: 2px solid var(--color-neutral-200);
|
|
5806
|
+
}
|
|
5807
|
+
|
|
5808
|
+
.bc-lexical-editor strong,
|
|
5809
|
+
.bc-lexical-bold {
|
|
5810
|
+
font-weight: 700;
|
|
5811
|
+
}
|
|
5812
|
+
|
|
5813
|
+
.bc-lexical-editor em,
|
|
5814
|
+
.bc-lexical-italic {
|
|
5815
|
+
font-style: italic;
|
|
5816
|
+
}
|
|
5817
|
+
|
|
5818
|
+
.bc-lexical-editor u,
|
|
5819
|
+
.bc-lexical-underline {
|
|
5820
|
+
text-decoration: underline;
|
|
5821
|
+
}
|
|
5822
|
+
|
|
5823
|
+
.bc-lexical-editor s,
|
|
5824
|
+
.bc-lexical-strikethrough {
|
|
5825
|
+
text-decoration: line-through;
|
|
5826
|
+
}
|
|
5827
|
+
|
|
5828
|
+
.bc-lexical-code {
|
|
5829
|
+
font-family: 'Monaco', 'Courier New', monospace;
|
|
5830
|
+
font-size: 0.875em;
|
|
5831
|
+
background-color: var(--color-neutral-100);
|
|
5832
|
+
color: var(--color-neutral-800);
|
|
5833
|
+
padding: 0.125rem 0.375rem;
|
|
5834
|
+
border-radius: var(--radius-xs, 0.25rem);
|
|
5835
|
+
}
|
|
5836
|
+
|
|
5837
|
+
.b-dark .bc-lexical-code {
|
|
5838
|
+
background-color: var(--color-neutral-800);
|
|
5839
|
+
color: var(--color-neutral-200);
|
|
5840
|
+
}
|
|
5841
|
+
|
|
5842
|
+
/* Check list items */
|
|
5843
|
+
.bc-lexical-li-checked,
|
|
5844
|
+
.bc-lexical-li-unchecked {
|
|
5845
|
+
list-style-type: none;
|
|
5846
|
+
position: relative;
|
|
5847
|
+
padding-left: 1.5rem;
|
|
5848
|
+
margin-left: -1.5rem;
|
|
5849
|
+
}
|
|
5850
|
+
|
|
5851
|
+
.bc-lexical-li-checked::before,
|
|
5852
|
+
.bc-lexical-li-unchecked::before {
|
|
5853
|
+
content: '';
|
|
5854
|
+
position: absolute;
|
|
5855
|
+
left: 0;
|
|
5856
|
+
top: 0.35em;
|
|
5857
|
+
width: 1em;
|
|
5858
|
+
height: 1em;
|
|
5859
|
+
border: 2px solid var(--color-neutral-400);
|
|
5860
|
+
border-radius: var(--radius-xs, 0.25rem);
|
|
5861
|
+
cursor: pointer;
|
|
5862
|
+
}
|
|
5863
|
+
|
|
5864
|
+
.bc-lexical-li-checked::before {
|
|
5865
|
+
background-color: var(--color-primary-500);
|
|
5866
|
+
border-color: var(--color-primary-500);
|
|
5867
|
+
}
|
|
5868
|
+
|
|
5869
|
+
.bc-lexical-li-checked::after {
|
|
5870
|
+
content: '';
|
|
5871
|
+
position: absolute;
|
|
5872
|
+
left: 0.25em;
|
|
5873
|
+
top: 0.45em;
|
|
5874
|
+
width: 0.5em;
|
|
5875
|
+
height: 0.25em;
|
|
5876
|
+
border-left: 2px solid white;
|
|
5877
|
+
border-bottom: 2px solid white;
|
|
5878
|
+
transform: rotate(-45deg);
|
|
5879
|
+
}
|
|
5880
|
+
|
|
5881
|
+
.bc-lexical-li-checked {
|
|
5882
|
+
text-decoration: line-through;
|
|
5883
|
+
color: var(--color-neutral-500);
|
|
5884
|
+
}
|
|
5885
|
+
|
|
5886
|
+
.b-dark .bc-lexical-li-checked::before {
|
|
5887
|
+
background-color: var(--color-primary-400);
|
|
5888
|
+
border-color: var(--color-primary-400);
|
|
5889
|
+
}
|
|
5890
|
+
|
|
5891
|
+
.b-dark .bc-lexical-li-unchecked::before {
|
|
5892
|
+
border-color: var(--color-neutral-600);
|
|
5893
|
+
}
|
|
5894
|
+
|
|
5895
|
+
/* Dark mode styles */
|
|
5896
|
+
.b-dark .bc-lexical-editor-container {
|
|
5897
|
+
background-color: var(--color-neutral-800);
|
|
5898
|
+
border-color: var(--color-neutral-700);
|
|
5899
|
+
}
|
|
5900
|
+
|
|
5901
|
+
.b-dark .bc-lexical-editor {
|
|
5902
|
+
background-color: var(--bg-surface-dark);
|
|
5903
|
+
color: var(--text-normal-dark);
|
|
5904
|
+
}
|
|
5905
|
+
|
|
5906
|
+
.b-dark .bc-lexical-editor-container:focus-within {
|
|
5907
|
+
border-color: var(--color-primary-400);
|
|
5908
|
+
box-shadow: 0 0 0 2px var(--color-primary-900);
|
|
5909
|
+
}
|
|
5910
|
+
|
|
5911
|
+
.b-dark .bc-lexical-editor-container--error {
|
|
5912
|
+
border-color: var(--color-danger-400);
|
|
5913
|
+
}
|
|
5914
|
+
|
|
5915
|
+
.b-dark .bc-lexical-editor-container--error:focus-within {
|
|
5916
|
+
border-color: var(--color-danger-400);
|
|
5917
|
+
box-shadow: 0 0 0 2px var(--color-danger-900);
|
|
5918
|
+
}
|
|
5919
|
+
|
|
5920
|
+
.b-dark .bc-lexical-editor--readonly {
|
|
5921
|
+
background-color: var(--color-neutral-900);
|
|
5922
|
+
color: var(--text-muted-dark);
|
|
5923
|
+
}
|
|
5924
|
+
|
|
5925
|
+
.b-dark .bc-lexical-editor [data-lexical-placeholder] {
|
|
5926
|
+
color: var(--color-neutral-500);
|
|
5927
|
+
}
|
|
5928
|
+
|
|
5929
|
+
.b-dark .bc-lexical-editor blockquote {
|
|
5930
|
+
border-left-color: var(--color-neutral-600);
|
|
5931
|
+
color: var(--text-muted-dark);
|
|
5932
|
+
}
|
|
5933
|
+
|
|
5934
|
+
.b-dark .bc-lexical-editor code {
|
|
5935
|
+
background-color: var(--color-neutral-800);
|
|
5936
|
+
color: var(--color-neutral-200);
|
|
5937
|
+
}
|
|
5938
|
+
|
|
5939
|
+
.b-dark .bc-lexical-editor pre {
|
|
5940
|
+
background-color: var(--color-neutral-900);
|
|
5941
|
+
border-color: var(--color-neutral-700);
|
|
5942
|
+
}
|
|
5943
|
+
|
|
5944
|
+
.b-dark .bc-lexical-editor a {
|
|
5945
|
+
color: var(--color-primary-400);
|
|
5946
|
+
}
|
|
5947
|
+
|
|
5948
|
+
.b-dark .bc-lexical-editor a:hover {
|
|
5949
|
+
color: var(--color-primary-300);
|
|
5950
|
+
}
|
|
5951
|
+
|
|
5952
|
+
.b-dark .bc-lexical-editor hr {
|
|
5953
|
+
border-top-color: var(--color-neutral-700);
|
|
5954
|
+
}
|
|
5955
|
+
|
|
5956
|
+
/* Collaboration: Remote cursors and selections */
|
|
5957
|
+
.bc-lexical-collaboration-cursor {
|
|
5958
|
+
position: absolute;
|
|
5959
|
+
pointer-events: none;
|
|
5960
|
+
user-select: none;
|
|
5961
|
+
}
|
|
5962
|
+
|
|
5963
|
+
.bc-lexical-collaboration-cursor__caret {
|
|
5964
|
+
position: absolute;
|
|
5965
|
+
width: 2px;
|
|
5966
|
+
height: 1.2em;
|
|
5967
|
+
background-color: currentColor;
|
|
5968
|
+
animation: bc-lexical-cursor-blink 1s infinite;
|
|
5969
|
+
}
|
|
5970
|
+
|
|
5971
|
+
.bc-lexical-collaboration-cursor__name {
|
|
5972
|
+
position: absolute;
|
|
5973
|
+
top: -20px;
|
|
5974
|
+
left: 0;
|
|
5975
|
+
padding: 2px 6px;
|
|
5976
|
+
background-color: currentColor;
|
|
5977
|
+
color: white;
|
|
5978
|
+
font-size: 0.75rem;
|
|
5979
|
+
font-weight: 500;
|
|
5980
|
+
border-radius: var(--radius-sm);
|
|
5981
|
+
white-space: nowrap;
|
|
5982
|
+
opacity: 0;
|
|
5983
|
+
transition: opacity 0.2s;
|
|
5984
|
+
}
|
|
5985
|
+
|
|
5986
|
+
.bc-lexical-collaboration-cursor:hover
|
|
5987
|
+
.bc-lexical-collaboration-cursor__name {
|
|
5988
|
+
opacity: 1;
|
|
5989
|
+
}
|
|
5990
|
+
|
|
5991
|
+
.bc-lexical-collaboration-selection {
|
|
5992
|
+
position: absolute;
|
|
5993
|
+
pointer-events: none;
|
|
5994
|
+
background-color: currentColor;
|
|
5995
|
+
opacity: 0.3;
|
|
5996
|
+
}
|
|
5997
|
+
|
|
5998
|
+
@keyframes bc-lexical-cursor-blink {
|
|
5999
|
+
0%,
|
|
6000
|
+
49% {
|
|
6001
|
+
opacity: 1;
|
|
6002
|
+
}
|
|
6003
|
+
50%,
|
|
6004
|
+
100% {
|
|
6005
|
+
opacity: 0;
|
|
6006
|
+
}
|
|
6007
|
+
}
|
|
6008
|
+
|
|
6009
|
+
/* Accessibility */
|
|
6010
|
+
@media (prefers-reduced-motion: reduce) {
|
|
6011
|
+
.bc-lexical-editor-container {
|
|
6012
|
+
transition: none;
|
|
6013
|
+
}
|
|
6014
|
+
}
|
|
6015
|
+
|
|
6016
|
+
@media (prefers-contrast: high) {
|
|
6017
|
+
.bc-lexical-editor-container {
|
|
6018
|
+
border-width: 2px;
|
|
6019
|
+
}
|
|
6020
|
+
|
|
6021
|
+
.bc-lexical-editor-container:focus-within {
|
|
6022
|
+
box-shadow: 0 0 0 3px var(--color-primary-100);
|
|
6023
|
+
}
|
|
6024
|
+
|
|
6025
|
+
.b-dark .bc-lexical-editor-container:focus-within {
|
|
6026
|
+
box-shadow: 0 0 0 3px var(--color-primary-900);
|
|
6027
|
+
}
|
|
6028
|
+
}
|
|
6029
|
+
}
|
|
6030
|
+
|
|
6031
|
+
@layer components {
|
|
6032
|
+
/* Lexical Editor Toolbar */
|
|
6033
|
+
|
|
6034
|
+
/* Toolbar positioned at top of editor container */
|
|
6035
|
+
.bc-lexical-toolbar {
|
|
6036
|
+
border-bottom: 1px solid var(--color-neutral-200);
|
|
6037
|
+
border-radius: 0;
|
|
6038
|
+
border: none;
|
|
6039
|
+
background-color: var(--color-neutral-50);
|
|
6040
|
+
padding: var(--spacing-xs) var(--spacing-sm);
|
|
6041
|
+
flex-wrap: wrap;
|
|
6042
|
+
}
|
|
6043
|
+
|
|
6044
|
+
.b-dark .bc-lexical-toolbar {
|
|
6045
|
+
background-color: var(--color-neutral-800);
|
|
6046
|
+
}
|
|
6047
|
+
|
|
6048
|
+
/* When toolbar is inside the editor container, add bottom border */
|
|
6049
|
+
.bc-lexical-editor-container > .bc-lexical-toolbar {
|
|
6050
|
+
border-bottom: 1px solid var(--color-neutral-200);
|
|
6051
|
+
}
|
|
6052
|
+
|
|
6053
|
+
.b-dark .bc-lexical-editor-container > .bc-lexical-toolbar {
|
|
6054
|
+
border-bottom-color: var(--color-neutral-700);
|
|
6055
|
+
}
|
|
6056
|
+
|
|
6057
|
+
/* Bottom position variant */
|
|
6058
|
+
.bc-lexical-toolbar--bottom {
|
|
6059
|
+
border-bottom: none;
|
|
6060
|
+
border-top: 1px solid var(--color-neutral-200);
|
|
6061
|
+
}
|
|
6062
|
+
|
|
6063
|
+
.b-dark .bc-lexical-toolbar--bottom {
|
|
6064
|
+
border-top-color: var(--color-neutral-700);
|
|
6065
|
+
}
|
|
6066
|
+
|
|
6067
|
+
/* Hidden state for readOnly mode */
|
|
6068
|
+
.bc-lexical-toolbar--hidden {
|
|
6069
|
+
display: none;
|
|
6070
|
+
}
|
|
6071
|
+
|
|
6072
|
+
/* Toolbar selects (font family/size) */
|
|
6073
|
+
.bc-lexical-toolbar-select {
|
|
6074
|
+
height: 28px;
|
|
6075
|
+
padding: 0 var(--spacing-xs);
|
|
6076
|
+
border: 1px solid var(--color-neutral-300);
|
|
6077
|
+
border-radius: var(--radius-sm);
|
|
6078
|
+
background-color: var(--color-surface);
|
|
6079
|
+
color: var(--color-neutral-900);
|
|
6080
|
+
font-size: 0.75rem;
|
|
6081
|
+
cursor: pointer;
|
|
6082
|
+
}
|
|
6083
|
+
|
|
6084
|
+
.b-dark .bc-lexical-toolbar-select {
|
|
6085
|
+
border-color: var(--color-neutral-600);
|
|
6086
|
+
background-color: var(--color-neutral-700);
|
|
6087
|
+
color: var(--color-neutral-100);
|
|
6088
|
+
}
|
|
6089
|
+
|
|
6090
|
+
/* Color picker labels */
|
|
6091
|
+
.bc-lexical-toolbar-color {
|
|
6092
|
+
display: inline-flex;
|
|
6093
|
+
align-items: center;
|
|
6094
|
+
justify-content: center;
|
|
6095
|
+
position: relative;
|
|
6096
|
+
width: 28px;
|
|
6097
|
+
height: 28px;
|
|
6098
|
+
cursor: pointer;
|
|
6099
|
+
border-radius: var(--radius-sm);
|
|
6100
|
+
}
|
|
6101
|
+
|
|
6102
|
+
.bc-lexical-toolbar-color:hover {
|
|
6103
|
+
background-color: var(--color-neutral-200);
|
|
6104
|
+
}
|
|
6105
|
+
|
|
6106
|
+
.b-dark .bc-lexical-toolbar-color:hover {
|
|
6107
|
+
background-color: var(--color-neutral-600);
|
|
6108
|
+
}
|
|
6109
|
+
|
|
6110
|
+
.bc-lexical-toolbar-color input[type='color'] {
|
|
6111
|
+
position: absolute;
|
|
6112
|
+
inset: 0;
|
|
6113
|
+
width: 100%;
|
|
6114
|
+
height: 100%;
|
|
6115
|
+
opacity: 0;
|
|
6116
|
+
cursor: pointer;
|
|
6117
|
+
border: none;
|
|
6118
|
+
padding: 0;
|
|
6119
|
+
}
|
|
6120
|
+
|
|
6121
|
+
.bc-lexical-toolbar-color-icon {
|
|
6122
|
+
font-size: 0.875rem;
|
|
6123
|
+
font-weight: 700;
|
|
6124
|
+
pointer-events: none;
|
|
6125
|
+
line-height: 1;
|
|
6126
|
+
}
|
|
6127
|
+
|
|
6128
|
+
.bc-lexical-toolbar-color-icon--highlight {
|
|
6129
|
+
background-color: #ffff00;
|
|
6130
|
+
padding: 0 2px;
|
|
6131
|
+
border-radius: 2px;
|
|
6132
|
+
}
|
|
6133
|
+
|
|
6134
|
+
.bc-lexical-toolbar-color-icon--bg {
|
|
6135
|
+
font-size: 1rem;
|
|
6136
|
+
}
|
|
6137
|
+
|
|
6138
|
+
/* Responsive: compact toolbar on small containers */
|
|
6139
|
+
@container (max-width: 400px) {
|
|
6140
|
+
.bc-lexical-toolbar {
|
|
6141
|
+
padding: var(--spacing-2xs) var(--spacing-xs);
|
|
6142
|
+
gap: var(--spacing-2xs);
|
|
6143
|
+
}
|
|
6144
|
+
}
|
|
6145
|
+
}
|
|
6146
|
+
|
|
6147
|
+
@layer components {
|
|
6148
|
+
/* Lexical Floating Toolbar */
|
|
6149
|
+
|
|
6150
|
+
.bc-floating-toolbar {
|
|
6151
|
+
display: flex;
|
|
6152
|
+
align-items: center;
|
|
6153
|
+
gap: var(--spacing-xs);
|
|
6154
|
+
padding: var(--spacing-xs);
|
|
6155
|
+
border-radius: var(--radius-md);
|
|
6156
|
+
background-color: var(--color-white);
|
|
6157
|
+
border: 1px solid var(--color-neutral-200);
|
|
6158
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
|
|
6159
|
+
z-index: 1000;
|
|
6160
|
+
animation: bc-floating-toolbar-enter 0.15s ease-out;
|
|
6161
|
+
}
|
|
6162
|
+
|
|
6163
|
+
.b-dark .bc-floating-toolbar {
|
|
6164
|
+
background-color: var(--color-neutral-800);
|
|
6165
|
+
border-color: var(--color-neutral-700);
|
|
6166
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
|
|
6167
|
+
}
|
|
6168
|
+
|
|
6169
|
+
@keyframes bc-floating-toolbar-enter {
|
|
6170
|
+
from {
|
|
6171
|
+
opacity: 0;
|
|
6172
|
+
transform: translateX(-50%) translateY(4px);
|
|
6173
|
+
}
|
|
6174
|
+
to {
|
|
6175
|
+
opacity: 1;
|
|
6176
|
+
transform: translateX(-50%) translateY(0);
|
|
6177
|
+
}
|
|
6178
|
+
}
|
|
6179
|
+
|
|
6180
|
+
/* Slash Command Palette */
|
|
6181
|
+
|
|
6182
|
+
.bc-slash-command-palette {
|
|
6183
|
+
min-width: 280px;
|
|
6184
|
+
max-width: 360px;
|
|
6185
|
+
max-height: 400px;
|
|
6186
|
+
overflow-y: auto;
|
|
6187
|
+
border-radius: var(--radius-md);
|
|
6188
|
+
background-color: var(--color-white);
|
|
6189
|
+
border: 1px solid var(--color-neutral-200);
|
|
6190
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
|
|
6191
|
+
padding: var(--spacing-xs);
|
|
6192
|
+
z-index: 1000;
|
|
6193
|
+
animation: bc-slash-palette-enter 0.12s ease-out;
|
|
6194
|
+
}
|
|
6195
|
+
|
|
6196
|
+
.b-dark .bc-slash-command-palette {
|
|
6197
|
+
background-color: var(--color-neutral-800);
|
|
6198
|
+
border-color: var(--color-neutral-700);
|
|
6199
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
|
|
6200
|
+
}
|
|
6201
|
+
|
|
6202
|
+
@keyframes bc-slash-palette-enter {
|
|
6203
|
+
from {
|
|
6204
|
+
opacity: 0;
|
|
6205
|
+
transform: translateY(-4px);
|
|
6206
|
+
}
|
|
6207
|
+
to {
|
|
6208
|
+
opacity: 1;
|
|
6209
|
+
transform: translateY(0);
|
|
6210
|
+
}
|
|
6211
|
+
}
|
|
6212
|
+
|
|
6213
|
+
.bc-slash-command-palette__item {
|
|
6214
|
+
display: flex;
|
|
6215
|
+
align-items: center;
|
|
6216
|
+
gap: var(--spacing-sm);
|
|
6217
|
+
padding: var(--spacing-sm);
|
|
6218
|
+
border-radius: var(--radius-sm);
|
|
6219
|
+
cursor: pointer;
|
|
6220
|
+
transition: background-color 0.12s ease;
|
|
6221
|
+
}
|
|
6222
|
+
|
|
6223
|
+
.bc-slash-command-palette__item:hover,
|
|
6224
|
+
.bc-slash-command-palette__item[aria-selected='true'] {
|
|
6225
|
+
background-color: var(--color-primary-50);
|
|
6226
|
+
}
|
|
6227
|
+
|
|
6228
|
+
.b-dark .bc-slash-command-palette__item:hover,
|
|
6229
|
+
.b-dark .bc-slash-command-palette__item[aria-selected='true'] {
|
|
6230
|
+
background-color: var(--color-primary-900);
|
|
6231
|
+
}
|
|
6232
|
+
|
|
6233
|
+
.bc-slash-command-palette__icon {
|
|
6234
|
+
flex-shrink: 0;
|
|
6235
|
+
display: flex;
|
|
6236
|
+
align-items: center;
|
|
6237
|
+
justify-content: center;
|
|
6238
|
+
width: 20px;
|
|
6239
|
+
height: 20px;
|
|
6240
|
+
}
|
|
6241
|
+
|
|
6242
|
+
.bc-slash-command-palette__content {
|
|
6243
|
+
flex: 1;
|
|
6244
|
+
min-width: 0;
|
|
6245
|
+
}
|
|
6246
|
+
|
|
6247
|
+
.bc-slash-command-palette__label {
|
|
6248
|
+
font-weight: 500;
|
|
6249
|
+
font-size: var(--font-size-sm);
|
|
6250
|
+
color: var(--color-neutral-900);
|
|
6251
|
+
margin-bottom: 2px;
|
|
6252
|
+
}
|
|
6253
|
+
|
|
6254
|
+
.b-dark .bc-slash-command-palette__label {
|
|
6255
|
+
color: var(--color-neutral-100);
|
|
6256
|
+
}
|
|
6257
|
+
|
|
6258
|
+
.bc-slash-command-palette__description {
|
|
6259
|
+
font-size: var(--font-size-xs);
|
|
6260
|
+
color: var(--color-neutral-500);
|
|
6261
|
+
overflow: hidden;
|
|
6262
|
+
text-overflow: ellipsis;
|
|
6263
|
+
white-space: nowrap;
|
|
6264
|
+
}
|
|
6265
|
+
|
|
6266
|
+
.bc-slash-command-palette__category {
|
|
6267
|
+
font-size: var(--font-size-xs);
|
|
6268
|
+
color: var(--color-neutral-500);
|
|
6269
|
+
padding: 2px 6px;
|
|
6270
|
+
border-radius: var(--radius-sm);
|
|
6271
|
+
background-color: var(--color-neutral-100);
|
|
6272
|
+
flex-shrink: 0;
|
|
6273
|
+
}
|
|
6274
|
+
|
|
6275
|
+
.b-dark .bc-slash-command-palette__category {
|
|
6276
|
+
background-color: var(--color-neutral-700);
|
|
6277
|
+
color: var(--color-neutral-400);
|
|
6278
|
+
}
|
|
6279
|
+
|
|
6280
|
+
.bc-slash-command-palette__empty {
|
|
6281
|
+
padding: var(--spacing-md);
|
|
6282
|
+
color: var(--color-neutral-500);
|
|
6283
|
+
text-align: center;
|
|
6284
|
+
font-size: var(--font-size-sm);
|
|
6285
|
+
}
|
|
6286
|
+
|
|
6287
|
+
/* Block Handle */
|
|
6288
|
+
|
|
6289
|
+
.bc-block-handle {
|
|
6290
|
+
z-index: 999;
|
|
6291
|
+
animation: bc-block-handle-enter 0.1s ease-out;
|
|
6292
|
+
}
|
|
6293
|
+
|
|
6294
|
+
@keyframes bc-block-handle-enter {
|
|
6295
|
+
from {
|
|
6296
|
+
opacity: 0;
|
|
6297
|
+
}
|
|
6298
|
+
to {
|
|
6299
|
+
opacity: 1;
|
|
6300
|
+
}
|
|
6301
|
+
}
|
|
6302
|
+
|
|
6303
|
+
.bc-block-handle__button {
|
|
6304
|
+
display: flex;
|
|
6305
|
+
align-items: center;
|
|
6306
|
+
justify-content: center;
|
|
6307
|
+
width: 24px;
|
|
6308
|
+
height: 24px;
|
|
6309
|
+
border: 1px solid var(--color-neutral-200);
|
|
6310
|
+
border-radius: var(--radius-sm);
|
|
6311
|
+
background-color: var(--color-white);
|
|
6312
|
+
color: var(--color-neutral-400);
|
|
6313
|
+
cursor: pointer;
|
|
6314
|
+
padding: 0;
|
|
6315
|
+
transition: all 0.12s ease;
|
|
6316
|
+
}
|
|
6317
|
+
|
|
6318
|
+
.bc-block-handle__button:hover {
|
|
6319
|
+
background-color: var(--color-neutral-100);
|
|
6320
|
+
color: var(--color-neutral-600);
|
|
6321
|
+
border-color: var(--color-neutral-300);
|
|
6322
|
+
}
|
|
6323
|
+
|
|
6324
|
+
.bc-block-handle__button:disabled {
|
|
6325
|
+
opacity: 0.4;
|
|
6326
|
+
cursor: not-allowed;
|
|
6327
|
+
}
|
|
6328
|
+
|
|
6329
|
+
.b-dark .bc-block-handle__button {
|
|
6330
|
+
background-color: var(--color-neutral-800);
|
|
6331
|
+
border-color: var(--color-neutral-700);
|
|
6332
|
+
color: var(--color-neutral-500);
|
|
6333
|
+
}
|
|
6334
|
+
|
|
6335
|
+
.b-dark .bc-block-handle__button:hover {
|
|
6336
|
+
background-color: var(--color-neutral-700);
|
|
6337
|
+
color: var(--color-neutral-300);
|
|
6338
|
+
border-color: var(--color-neutral-600);
|
|
6339
|
+
}
|
|
6340
|
+
}
|
|
6341
|
+
|
|
6342
|
+
@layer components {
|
|
6343
|
+
/* Lexical Table Component */
|
|
6344
|
+
|
|
6345
|
+
/* Table structure */
|
|
6346
|
+
.bc-lexical-table {
|
|
6347
|
+
border-collapse: collapse;
|
|
6348
|
+
border-spacing: 0;
|
|
6349
|
+
width: 100%;
|
|
6350
|
+
margin: 1rem 0;
|
|
6351
|
+
overflow: hidden;
|
|
6352
|
+
table-layout: fixed;
|
|
6353
|
+
}
|
|
6354
|
+
|
|
6355
|
+
.bc-lexical-table-row {
|
|
6356
|
+
border-bottom: 1px solid var(--color-neutral-200);
|
|
6357
|
+
}
|
|
6358
|
+
|
|
6359
|
+
.bc-lexical-table-cell,
|
|
6360
|
+
.bc-lexical-table-cell-header {
|
|
6361
|
+
border: 1px solid var(--color-neutral-200);
|
|
6362
|
+
padding: 0.5rem 0.75rem;
|
|
6363
|
+
position: relative;
|
|
6364
|
+
vertical-align: top;
|
|
6365
|
+
min-width: 75px;
|
|
6366
|
+
}
|
|
6367
|
+
|
|
6368
|
+
.bc-lexical-table-cell-header {
|
|
6369
|
+
background-color: var(--color-neutral-50);
|
|
6370
|
+
font-weight: 600;
|
|
6371
|
+
text-align: left;
|
|
6372
|
+
}
|
|
6373
|
+
|
|
6374
|
+
/* Selected cell highlight */
|
|
6375
|
+
.bc-lexical-table-cell--selected {
|
|
6376
|
+
background-color: var(--color-primary-50);
|
|
6377
|
+
outline: 2px solid var(--color-primary-500);
|
|
6378
|
+
outline-offset: -2px;
|
|
6379
|
+
}
|
|
6380
|
+
|
|
6381
|
+
/* Table context menu */
|
|
6382
|
+
.bc-table-context-menu {
|
|
6383
|
+
display: flex;
|
|
6384
|
+
flex-direction: column;
|
|
6385
|
+
}
|
|
6386
|
+
|
|
6387
|
+
.bc-table-menu-button {
|
|
6388
|
+
font-family: inherit;
|
|
6389
|
+
line-height: 1.5;
|
|
6390
|
+
white-space: nowrap;
|
|
6391
|
+
}
|
|
6392
|
+
|
|
6393
|
+
.bc-table-menu-button:hover:not(:disabled) {
|
|
6394
|
+
background-color: var(--color-neutral-100);
|
|
6395
|
+
}
|
|
6396
|
+
|
|
6397
|
+
.bc-table-menu-button:active:not(:disabled) {
|
|
6398
|
+
background-color: var(--color-neutral-200);
|
|
6399
|
+
}
|
|
6400
|
+
|
|
6401
|
+
.bc-table-menu-button:disabled {
|
|
6402
|
+
opacity: 0.5;
|
|
6403
|
+
cursor: not-allowed;
|
|
6404
|
+
}
|
|
6405
|
+
|
|
6406
|
+
.bc-table-menu-separator {
|
|
6407
|
+
/* Separator styling defined inline in component */
|
|
6408
|
+
}
|
|
6409
|
+
|
|
6410
|
+
/* Dark mode styles */
|
|
6411
|
+
.b-dark .bc-lexical-table-cell,
|
|
6412
|
+
.b-dark .bc-lexical-table-cell-header {
|
|
6413
|
+
border-color: var(--color-neutral-700);
|
|
6414
|
+
}
|
|
6415
|
+
|
|
6416
|
+
.b-dark .bc-lexical-table-row {
|
|
6417
|
+
border-bottom-color: var(--color-neutral-700);
|
|
6418
|
+
}
|
|
6419
|
+
|
|
6420
|
+
.b-dark .bc-lexical-table-cell-header {
|
|
6421
|
+
background-color: var(--color-neutral-800);
|
|
6422
|
+
}
|
|
6423
|
+
|
|
6424
|
+
.b-dark .bc-lexical-table-cell--selected {
|
|
6425
|
+
background-color: var(--color-primary-900);
|
|
6426
|
+
outline-color: var(--color-primary-400);
|
|
6427
|
+
}
|
|
6428
|
+
|
|
6429
|
+
.b-dark .bc-table-context-menu {
|
|
6430
|
+
background-color: var(--color-neutral-800);
|
|
6431
|
+
border-color: var(--color-neutral-700);
|
|
6432
|
+
}
|
|
6433
|
+
|
|
6434
|
+
.b-dark .bc-table-menu-button {
|
|
6435
|
+
color: var(--color-neutral-100);
|
|
6436
|
+
}
|
|
6437
|
+
|
|
6438
|
+
.b-dark .bc-table-menu-button:hover:not(:disabled) {
|
|
6439
|
+
background-color: var(--color-neutral-700);
|
|
6440
|
+
}
|
|
6441
|
+
|
|
6442
|
+
.b-dark .bc-table-menu-button:active:not(:disabled) {
|
|
6443
|
+
background-color: var(--color-neutral-600);
|
|
6444
|
+
}
|
|
6445
|
+
|
|
6446
|
+
.b-dark .bc-table-menu-separator {
|
|
6447
|
+
background-color: var(--color-neutral-700);
|
|
6448
|
+
}
|
|
6449
|
+
|
|
6450
|
+
/* Accessibility */
|
|
6451
|
+
@media (prefers-reduced-motion: reduce) {
|
|
6452
|
+
.bc-table-menu-button {
|
|
6453
|
+
transition: none;
|
|
6454
|
+
}
|
|
6455
|
+
}
|
|
6456
|
+
|
|
6457
|
+
@media (prefers-contrast: high) {
|
|
6458
|
+
.bc-lexical-table-cell,
|
|
6459
|
+
.bc-lexical-table-cell-header {
|
|
6460
|
+
border-width: 2px;
|
|
6461
|
+
}
|
|
6462
|
+
|
|
6463
|
+
.bc-lexical-table-cell--selected {
|
|
6464
|
+
outline-width: 3px;
|
|
6465
|
+
}
|
|
6466
|
+
}
|
|
6467
|
+
}
|
|
6468
|
+
|
|
6469
|
+
@layer components {
|
|
6470
|
+
/* Lexical Code Block Component */
|
|
6471
|
+
|
|
6472
|
+
/* Code block structure */
|
|
6473
|
+
.bc-lexical-code-block {
|
|
6474
|
+
position: relative;
|
|
6475
|
+
margin: 1rem 0;
|
|
6476
|
+
padding: 1rem;
|
|
6477
|
+
background-color: var(--color-neutral-50);
|
|
6478
|
+
border: 1px solid var(--color-neutral-200);
|
|
6479
|
+
border-radius: var(--radius-md);
|
|
6480
|
+
overflow-x: auto;
|
|
6481
|
+
font-family:
|
|
6482
|
+
'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Courier New', monospace;
|
|
6483
|
+
font-size: 0.875rem;
|
|
6484
|
+
line-height: 1.6;
|
|
6485
|
+
}
|
|
6486
|
+
|
|
6487
|
+
/* Language selector */
|
|
6488
|
+
.bc-code-language-selector {
|
|
6489
|
+
/* Positioning handled inline */
|
|
6490
|
+
}
|
|
6491
|
+
|
|
6492
|
+
.bc-code-language-button:hover:not(:disabled) {
|
|
6493
|
+
background-color: var(--color-neutral-200);
|
|
6494
|
+
border-color: var(--color-neutral-400);
|
|
6495
|
+
}
|
|
6496
|
+
|
|
6497
|
+
.bc-code-language-button:disabled {
|
|
6498
|
+
opacity: 0.5;
|
|
6499
|
+
cursor: not-allowed;
|
|
6500
|
+
}
|
|
6501
|
+
|
|
6502
|
+
.bc-code-language-dropdown {
|
|
6503
|
+
/* Dropdown styling handled inline */
|
|
6504
|
+
}
|
|
6505
|
+
|
|
6506
|
+
.bc-code-language-option:hover {
|
|
6507
|
+
background-color: var(--color-neutral-100);
|
|
6508
|
+
}
|
|
6509
|
+
|
|
6510
|
+
.bc-code-language-option:active {
|
|
6511
|
+
background-color: var(--color-neutral-200);
|
|
6512
|
+
}
|
|
6513
|
+
|
|
6514
|
+
/* Syntax highlighting token colors (light theme) */
|
|
6515
|
+
.bc-lexical-code-block .token.comment,
|
|
6516
|
+
.bc-lexical-code-block .token.prolog,
|
|
6517
|
+
.bc-lexical-code-block .token.doctype,
|
|
6518
|
+
.bc-lexical-code-block .token.cdata {
|
|
6519
|
+
color: #6a737d;
|
|
6520
|
+
font-style: italic;
|
|
6521
|
+
}
|
|
6522
|
+
|
|
6523
|
+
.bc-lexical-code-block .token.punctuation {
|
|
6524
|
+
color: #24292e;
|
|
6525
|
+
}
|
|
6526
|
+
|
|
6527
|
+
.bc-lexical-code-block .token.property,
|
|
6528
|
+
.bc-lexical-code-block .token.tag,
|
|
6529
|
+
.bc-lexical-code-block .token.boolean,
|
|
6530
|
+
.bc-lexical-code-block .token.number,
|
|
6531
|
+
.bc-lexical-code-block .token.constant,
|
|
6532
|
+
.bc-lexical-code-block .token.symbol,
|
|
6533
|
+
.bc-lexical-code-block .token.deleted {
|
|
6534
|
+
color: #005cc5;
|
|
6535
|
+
}
|
|
6536
|
+
|
|
6537
|
+
.bc-lexical-code-block .token.selector,
|
|
6538
|
+
.bc-lexical-code-block .token.attr-name,
|
|
6539
|
+
.bc-lexical-code-block .token.string,
|
|
6540
|
+
.bc-lexical-code-block .token.char,
|
|
6541
|
+
.bc-lexical-code-block .token.builtin,
|
|
6542
|
+
.bc-lexical-code-block .token.inserted {
|
|
6543
|
+
color: #032f62;
|
|
6544
|
+
}
|
|
6545
|
+
|
|
6546
|
+
.bc-lexical-code-block .token.operator,
|
|
6547
|
+
.bc-lexical-code-block .token.entity,
|
|
6548
|
+
.bc-lexical-code-block .token.url,
|
|
6549
|
+
.bc-lexical-code-block .language-css .token.string,
|
|
6550
|
+
.bc-lexical-code-block .style .token.string {
|
|
6551
|
+
color: #d73a49;
|
|
6552
|
+
}
|
|
6553
|
+
|
|
6554
|
+
.bc-lexical-code-block .token.atrule,
|
|
6555
|
+
.bc-lexical-code-block .token.attr-value,
|
|
6556
|
+
.bc-lexical-code-block .token.keyword {
|
|
6557
|
+
color: #d73a49;
|
|
6558
|
+
}
|
|
6559
|
+
|
|
6560
|
+
.bc-lexical-code-block .token.function,
|
|
6561
|
+
.bc-lexical-code-block .token.class-name {
|
|
6562
|
+
color: #6f42c1;
|
|
6563
|
+
}
|
|
6564
|
+
|
|
6565
|
+
.bc-lexical-code-block .token.regex,
|
|
6566
|
+
.bc-lexical-code-block .token.important,
|
|
6567
|
+
.bc-lexical-code-block .token.variable {
|
|
6568
|
+
color: #e36209;
|
|
6569
|
+
}
|
|
6570
|
+
|
|
6571
|
+
/* Line numbers (optional) */
|
|
6572
|
+
.bc-lexical-code-block--with-line-numbers {
|
|
6573
|
+
padding-left: 3.5rem;
|
|
6574
|
+
}
|
|
6575
|
+
|
|
6576
|
+
.bc-lexical-code-block .line-number {
|
|
6577
|
+
position: absolute;
|
|
6578
|
+
left: 0;
|
|
6579
|
+
width: 3rem;
|
|
6580
|
+
text-align: right;
|
|
6581
|
+
color: var(--color-neutral-400);
|
|
6582
|
+
user-select: none;
|
|
6583
|
+
padding-right: 1rem;
|
|
6584
|
+
}
|
|
6585
|
+
|
|
6586
|
+
/* Dark mode styles */
|
|
6587
|
+
.b-dark .bc-lexical-code-block {
|
|
6588
|
+
background-color: var(--color-neutral-900);
|
|
6589
|
+
border-color: var(--color-neutral-700);
|
|
6590
|
+
color: var(--color-neutral-100);
|
|
6591
|
+
}
|
|
6592
|
+
|
|
6593
|
+
.b-dark .bc-code-language-button {
|
|
6594
|
+
background-color: var(--color-neutral-800);
|
|
6595
|
+
border-color: var(--color-neutral-600);
|
|
6596
|
+
color: var(--color-neutral-200);
|
|
6597
|
+
}
|
|
6598
|
+
|
|
6599
|
+
.b-dark .bc-code-language-button:hover:not(:disabled) {
|
|
6600
|
+
background-color: var(--color-neutral-700);
|
|
6601
|
+
border-color: var(--color-neutral-500);
|
|
6602
|
+
}
|
|
6603
|
+
|
|
6604
|
+
.b-dark .bc-code-language-dropdown {
|
|
6605
|
+
background-color: var(--color-neutral-800);
|
|
6606
|
+
border-color: var(--color-neutral-700);
|
|
6607
|
+
}
|
|
6608
|
+
|
|
6609
|
+
.b-dark .bc-code-language-option {
|
|
6610
|
+
color: var(--color-neutral-100);
|
|
6611
|
+
}
|
|
6612
|
+
|
|
6613
|
+
.b-dark .bc-code-language-option:hover {
|
|
6614
|
+
background-color: var(--color-neutral-700);
|
|
6615
|
+
}
|
|
6616
|
+
|
|
6617
|
+
.b-dark .bc-code-language-option:active {
|
|
6618
|
+
background-color: var(--color-neutral-600);
|
|
6619
|
+
}
|
|
6620
|
+
|
|
6621
|
+
/* Syntax highlighting token colors (dark theme) */
|
|
6622
|
+
.b-dark .bc-lexical-code-block .token.comment,
|
|
6623
|
+
.b-dark .bc-lexical-code-block .token.prolog,
|
|
6624
|
+
.b-dark .bc-lexical-code-block .token.doctype,
|
|
6625
|
+
.b-dark .bc-lexical-code-block .token.cdata {
|
|
6626
|
+
color: #8b949e;
|
|
6627
|
+
}
|
|
6628
|
+
|
|
6629
|
+
.b-dark .bc-lexical-code-block .token.punctuation {
|
|
6630
|
+
color: #c9d1d9;
|
|
6631
|
+
}
|
|
6632
|
+
|
|
6633
|
+
.b-dark .bc-lexical-code-block .token.property,
|
|
6634
|
+
.b-dark .bc-lexical-code-block .token.tag,
|
|
6635
|
+
.b-dark .bc-lexical-code-block .token.boolean,
|
|
6636
|
+
.b-dark .bc-lexical-code-block .token.number,
|
|
6637
|
+
.b-dark .bc-lexical-code-block .token.constant,
|
|
6638
|
+
.b-dark .bc-lexical-code-block .token.symbol,
|
|
6639
|
+
.b-dark .bc-lexical-code-block .token.deleted {
|
|
6640
|
+
color: #79c0ff;
|
|
6641
|
+
}
|
|
6642
|
+
|
|
6643
|
+
.b-dark .bc-lexical-code-block .token.selector,
|
|
6644
|
+
.b-dark .bc-lexical-code-block .token.attr-name,
|
|
6645
|
+
.b-dark .bc-lexical-code-block .token.string,
|
|
6646
|
+
.b-dark .bc-lexical-code-block .token.char,
|
|
6647
|
+
.b-dark .bc-lexical-code-block .token.builtin,
|
|
6648
|
+
.b-dark .bc-lexical-code-block .token.inserted {
|
|
6649
|
+
color: #a5d6ff;
|
|
6650
|
+
}
|
|
6651
|
+
|
|
6652
|
+
.b-dark .bc-lexical-code-block .token.operator,
|
|
6653
|
+
.b-dark .bc-lexical-code-block .token.entity,
|
|
6654
|
+
.b-dark .bc-lexical-code-block .token.url,
|
|
6655
|
+
.b-dark .bc-lexical-code-block .language-css .token.string,
|
|
6656
|
+
.b-dark .bc-lexical-code-block .style .token.string {
|
|
6657
|
+
color: #ff7b72;
|
|
6658
|
+
}
|
|
6659
|
+
|
|
6660
|
+
.b-dark .bc-lexical-code-block .token.atrule,
|
|
6661
|
+
.b-dark .bc-lexical-code-block .token.attr-value,
|
|
6662
|
+
.b-dark .bc-lexical-code-block .token.keyword {
|
|
6663
|
+
color: #ff7b72;
|
|
6664
|
+
}
|
|
6665
|
+
|
|
6666
|
+
.b-dark .bc-lexical-code-block .token.function,
|
|
6667
|
+
.b-dark .bc-lexical-code-block .token.class-name {
|
|
6668
|
+
color: #d2a8ff;
|
|
6669
|
+
}
|
|
6670
|
+
|
|
6671
|
+
.b-dark .bc-lexical-code-block .token.regex,
|
|
6672
|
+
.b-dark .bc-lexical-code-block .token.important,
|
|
6673
|
+
.b-dark .bc-lexical-code-block .token.variable {
|
|
6674
|
+
color: #ffa657;
|
|
6675
|
+
}
|
|
6676
|
+
|
|
6677
|
+
.b-dark .bc-lexical-code-block .line-number {
|
|
6678
|
+
color: var(--color-neutral-600);
|
|
6679
|
+
}
|
|
6680
|
+
|
|
6681
|
+
/* Accessibility */
|
|
6682
|
+
@media (prefers-reduced-motion: reduce) {
|
|
6683
|
+
.bc-code-language-button,
|
|
6684
|
+
.bc-code-language-option {
|
|
6685
|
+
transition: none;
|
|
6686
|
+
}
|
|
6687
|
+
}
|
|
6688
|
+
|
|
6689
|
+
@media (prefers-contrast: high) {
|
|
6690
|
+
.bc-lexical-code-block {
|
|
6691
|
+
border-width: 2px;
|
|
6692
|
+
}
|
|
6693
|
+
}
|
|
4954
6694
|
}
|
|
4955
6695
|
|
|
4956
6696
|
/* Link Component */
|