@blukavantui/community 1.0.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -5
- package/dist/build-audit.json +234 -44
- package/dist/checkbox.css +1 -0
- package/dist/checkbox.d.ts +2 -0
- package/dist/checkbox.js +1 -0
- package/dist/chunk-2BSBXDOT.js +1 -0
- package/dist/chunk-4LHIQROI.js +0 -0
- package/dist/chunk-5ENZVZGF.js +0 -0
- package/dist/chunk-6T677NSC.js +1 -0
- package/dist/chunk-7CEOCZ5L.js +0 -0
- package/dist/chunk-7DXFNK7C.js +1 -0
- package/dist/chunk-AL2ETLJV.js +1 -0
- package/dist/chunk-BN3PDE5G.js +0 -0
- package/dist/chunk-CNIIMGT3.js +0 -0
- package/dist/chunk-CSTCEBEK.js +1 -0
- package/dist/chunk-DRZM2AL3.js +0 -0
- package/dist/chunk-EOKNLCNS.js +1 -0
- package/dist/chunk-EPPETNK6.js +1 -0
- package/dist/chunk-EPPSBHZR.js +1 -0
- package/dist/chunk-EPZGLHPD.js +0 -0
- package/dist/chunk-FNX33PDD.js +0 -0
- package/dist/{chunk-NTFHNL7T.js → chunk-G6OW4OZM.js} +1 -1
- package/dist/chunk-GS67ZBLI.js +1 -0
- package/dist/chunk-HO6CYWED.js +0 -0
- package/dist/{chunk-6EHKOVZK.js → chunk-HVR2UDFX.js} +1 -1
- package/dist/chunk-IJ62ILKE.js +0 -0
- package/dist/chunk-IKYBFMHI.js +1 -0
- package/dist/chunk-IO22GWON.js +0 -0
- package/dist/chunk-KVOA55NE.js +0 -0
- package/dist/{chunk-MZBB5ROJ.js → chunk-LF2HELEZ.js} +1 -1
- package/dist/chunk-MYVLBALF.js +1 -0
- package/dist/{chunk-UEOCR2C3.js → chunk-OLDA73XG.js} +2 -2
- package/dist/chunk-RWBLICYX.js +0 -0
- package/dist/chunk-RYD6RHRX.js +0 -0
- package/dist/chunk-T45FJNEQ.js +1 -0
- package/dist/chunk-TZSX4OTV.js +1 -0
- package/dist/chunk-UN2SLVFG.js +1 -0
- package/dist/{chunk-GK3INPAZ.js → chunk-V2YPIC6Z.js} +1 -1
- package/dist/chunk-V4ZQLQ7L.js +0 -0
- package/dist/chunk-VAM3FPCS.js +0 -0
- package/dist/chunk-VJVFHL6P.js +0 -0
- package/dist/chunk-VSTKXZYY.js +0 -0
- package/dist/chunk-W3H7XTA7.js +1 -0
- package/dist/chunk-WG4US4JH.js +1 -0
- package/dist/chunk-WGSTNXAQ.js +0 -0
- package/dist/chunk-WJHCVECU.js +1 -0
- package/dist/chunk-XVMJG26X.js +1 -0
- package/dist/chunk-Y4AXWTAD.js +0 -0
- package/dist/chunk-YCLR3IE3.js +0 -0
- package/dist/chunk-YLFXSHKZ.js +0 -0
- package/dist/chunk-ZDGZGAYG.js +0 -0
- package/dist/columns2.css +1 -0
- package/dist/columns2.d.ts +2 -0
- package/dist/columns2.js +1 -0
- package/dist/columns3.css +1 -0
- package/dist/columns3.d.ts +2 -0
- package/dist/columns3.js +1 -0
- package/dist/columns4.css +1 -0
- package/dist/columns4.d.ts +2 -0
- package/dist/columns4.js +1 -0
- package/dist/command-palette.js +1 -1
- package/dist/component-motion.css +39 -0
- package/dist/component-motion.d.ts +45 -0
- package/dist/component-motion.js +1 -0
- package/dist/content.js +1 -1
- package/dist/core.css +8 -0
- package/dist/core.js +1 -1
- package/dist/data-motion.css +4 -0
- package/dist/data-motion.d.ts +23 -0
- package/dist/data-motion.js +1 -0
- package/dist/data.css +63 -0
- package/dist/data.d.ts +1 -0
- package/dist/data.js +1 -1
- package/dist/date-picker.css +5 -5
- package/dist/date-picker.js +1 -1
- package/dist/date-range-picker.css +5 -5
- package/dist/date-range-picker.js +1 -1
- package/dist/date-time-picker.css +5 -5
- package/dist/date-time-picker.js +1 -1
- package/dist/draft-components.json +77 -0
- package/dist/drawer.js +1 -1
- package/dist/essentials.css +8 -0
- package/dist/feedback.js +1 -1
- package/dist/form-field.css +1 -0
- package/dist/form-field.d.ts +2 -0
- package/dist/form-field.js +1 -0
- package/dist/form-layout/choice.d.ts +15 -0
- package/dist/form-layout/layout.d.ts +12 -0
- package/dist/form-layout/select.d.ts +3 -0
- package/dist/form-layout/shared.d.ts +21 -0
- package/dist/form-layout/table.d.ts +20 -0
- package/dist/form-layout/text.d.ts +3 -0
- package/dist/form-layout/types.d.ts +151 -0
- package/dist/form-layout.css +62 -0
- package/dist/form-layout.d.ts +12 -0
- package/dist/form-layout.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/inputs.css +83 -20
- package/dist/inputs.d.ts +8 -0
- package/dist/inputs.js +1 -1
- package/dist/layout.css +63 -0
- package/dist/layout.d.ts +3 -0
- package/dist/layout.js +1 -1
- package/dist/modal.js +1 -1
- package/dist/motion/action-feedback.d.ts +14 -0
- package/dist/motion/border-glow.d.ts +12 -0
- package/dist/motion/button.d.ts +11 -0
- package/dist/motion/component-settings.d.ts +51 -0
- package/dist/motion/controller.d.ts +33 -0
- package/dist/motion/effects.d.ts +30 -0
- package/dist/motion/feedback.d.ts +6 -0
- package/dist/motion/loading.d.ts +9 -0
- package/dist/motion/optional.d.ts +35 -0
- package/dist/motion/photo.d.ts +7 -0
- package/dist/motion/presence.d.ts +12 -0
- package/dist/motion/scene.d.ts +10 -0
- package/dist/motion/screen.d.ts +6 -0
- package/dist/motion/scroll-reveal.d.ts +13 -0
- package/dist/motion/settings-group.d.ts +14 -0
- package/dist/motion/stagger.d.ts +12 -0
- package/dist/motion/structure.d.ts +18 -0
- package/dist/motion/tabs.d.ts +19 -0
- package/dist/motion/tokens.d.ts +11 -0
- package/dist/motion/value.d.ts +21 -0
- package/dist/motion/view-transition.d.ts +14 -0
- package/dist/motion-enhancers.d.ts +12 -0
- package/dist/motion-enhancers.js +1 -0
- package/dist/motion-settings.d.ts +3 -0
- package/dist/motion-settings.js +1 -0
- package/dist/motion.css +1076 -0
- package/dist/motion.d.ts +20 -0
- package/dist/motion.js +1 -0
- package/dist/native/date-picker.js +1 -1
- package/dist/native/date-range-picker.js +1 -1
- package/dist/native/date-time-picker.js +1 -1
- package/dist/native/form-layout.js +1 -0
- package/dist/native/time-picker.js +1 -1
- package/dist/native-components/form-layout.d.ts +1 -0
- package/dist/native-motion-components.d.ts +3 -0
- package/dist/native-motion-content.d.ts +1 -0
- package/dist/native-motion-foundations.d.ts +3 -0
- package/dist/native-motion-layout.d.ts +3 -0
- package/dist/native-motion-pilot.d.ts +34 -0
- package/dist/native-motion.d.ts +71 -0
- package/dist/notification.js +1 -1
- package/dist/pagination.js +1 -1
- package/dist/radio-button.css +1 -0
- package/dist/radio-button.d.ts +2 -0
- package/dist/radio-button.js +1 -0
- package/dist/radio-group.css +1 -0
- package/dist/radio-group.d.ts +2 -0
- package/dist/radio-group.js +1 -0
- package/dist/select.css +1 -0
- package/dist/select.d.ts +2 -0
- package/dist/select.js +1 -0
- package/dist/sidebar.js +1 -1
- package/dist/sizes.json +416 -112
- package/dist/skeleton.css +8 -0
- package/dist/styles.css +1213 -20
- package/dist/switch.css +1 -0
- package/dist/switch.d.ts +2 -0
- package/dist/switch.js +1 -0
- package/dist/table.css +1 -0
- package/dist/table.d.ts +2 -0
- package/dist/table.js +1 -0
- package/dist/text-area.css +1 -0
- package/dist/text-area.d.ts +2 -0
- package/dist/text-area.js +1 -0
- package/dist/text-input.css +1 -0
- package/dist/text-input.d.ts +2 -0
- package/dist/text-input.js +1 -0
- package/dist/time-picker.css +5 -5
- package/dist/time-picker.js +1 -1
- package/dist/tree-view.js +1 -1
- package/dist/web-motion/chip-ripple.d.ts +6 -0
- package/dist/web-motion/choice-ripple.d.ts +6 -0
- package/dist/web-motion/content.d.ts +9 -0
- package/dist/web-motion/data-rows.d.ts +12 -0
- package/dist/web-motion/fields.d.ts +6 -0
- package/dist/web-motion/navigation.d.ts +6 -0
- package/dist/web-motion/notifications.d.ts +6 -0
- package/dist/web-motion/select-ripple.d.ts +6 -0
- package/dist/web-motion/statistic.d.ts +13 -0
- package/dist/web-motion/surfaces.d.ts +10 -0
- package/dist/web-motion/tree.d.ts +6 -0
- package/docs/FORM-LAYOUT-ESSENTIALS.md +122 -0
- package/docs/PUBLISHING.md +129 -25
- package/draft-components.json +77 -0
- package/edition.json +44 -7
- package/npm-shrinkwrap.json +2 -2
- package/package.json +102 -10
- package/scripts/build-motion-css.mjs +36 -0
- package/scripts/build-motion-styles.mjs +29 -0
- package/scripts/build.mjs +20 -8
- package/scripts/motion-entries.mjs +2 -0
- package/src/checkbox.ts +2 -0
- package/src/columns2.ts +2 -0
- package/src/columns3.ts +2 -0
- package/src/columns4.ts +2 -0
- package/src/component-motion.ts +101 -0
- package/src/data-motion.ts +60 -0
- package/src/data.ts +1 -0
- package/src/form-field.ts +2 -0
- package/src/form-layout/choice.ts +82 -0
- package/src/form-layout/layout.ts +40 -0
- package/src/form-layout/select.ts +97 -0
- package/src/form-layout/shared.ts +57 -0
- package/src/form-layout/table.ts +86 -0
- package/src/form-layout/text.ts +73 -0
- package/src/form-layout/types.ts +59 -0
- package/src/form-layout.ts +12 -0
- package/src/index.ts +2 -0
- package/src/inputs.ts +8 -0
- package/src/layout.ts +3 -0
- package/src/motion/action-feedback.ts +38 -0
- package/src/motion/border-glow.ts +41 -0
- package/src/motion/button.ts +56 -0
- package/src/motion/component-settings.ts +147 -0
- package/src/motion/controller.ts +191 -0
- package/src/motion/effects.ts +75 -0
- package/src/motion/feedback.ts +41 -0
- package/src/motion/loading.ts +40 -0
- package/src/motion/optional.ts +123 -0
- package/src/motion/photo.ts +19 -0
- package/src/motion/presence.ts +44 -0
- package/src/motion/scene.ts +103 -0
- package/src/motion/screen.ts +15 -0
- package/src/motion/scroll-reveal.ts +49 -0
- package/src/motion/settings-group.ts +28 -0
- package/src/motion/stagger.ts +26 -0
- package/src/motion/structure.ts +75 -0
- package/src/motion/tabs.ts +105 -0
- package/src/motion/tokens.ts +2 -0
- package/src/motion/value.ts +61 -0
- package/src/motion/view-transition.ts +57 -0
- package/src/motion-enhancers.ts +12 -0
- package/src/motion-settings.ts +3 -0
- package/src/motion.ts +20 -0
- package/src/native-components/form-layout.ts +21 -0
- package/src/native-motion-components.ts +76 -0
- package/src/native-motion-content.ts +10 -0
- package/src/native-motion-foundations.ts +56 -0
- package/src/native-motion-layout.ts +35 -0
- package/src/native-motion-pilot.ts +151 -0
- package/src/native-motion.ts +188 -0
- package/src/radio-button.ts +2 -0
- package/src/radio-group.ts +2 -0
- package/src/runtime/date-picker.js +21 -12
- package/src/runtime/date-range-picker.js +21 -12
- package/src/runtime/date-time-picker.js +21 -12
- package/src/runtime/time-picker.js +21 -12
- package/src/select.ts +2 -0
- package/src/switch.ts +2 -0
- package/src/table.ts +2 -0
- package/src/text-area.ts +2 -0
- package/src/text-input.ts +2 -0
- package/src/types.ts +0 -12
- package/src/web-motion/chip-ripple.ts +31 -0
- package/src/web-motion/choice-ripple.ts +30 -0
- package/src/web-motion/content.ts +74 -0
- package/src/web-motion/data-rows.ts +106 -0
- package/src/web-motion/fields.ts +52 -0
- package/src/web-motion/navigation.ts +62 -0
- package/src/web-motion/notifications.ts +67 -0
- package/src/web-motion/select-ripple.ts +23 -0
- package/src/web-motion/statistic.ts +23 -0
- package/src/web-motion/surfaces.ts +137 -0
- package/src/web-motion/tree.ts +44 -0
- package/styles/checkbox.css +1 -0
- package/styles/columns2.css +1 -0
- package/styles/columns3.css +1 -0
- package/styles/columns4.css +1 -0
- package/styles/component-motion.css +39 -0
- package/styles/data-motion.css +4 -0
- package/styles/date-picker.css +5 -5
- package/styles/date-range-picker.css +5 -5
- package/styles/date-time-picker.css +5 -5
- package/styles/form-field.css +1 -0
- package/styles/form-layout.css +62 -0
- package/styles/motion-optional.css +15 -0
- package/styles/motion-presets.css +92 -0
- package/styles/motion-tokens.css +6 -0
- package/styles/motion.css +125 -0
- package/styles/radio-button.css +1 -0
- package/styles/radio-group.css +1 -0
- package/styles/select.css +1 -0
- package/styles/skeleton.css +8 -0
- package/styles/switch.css +1 -0
- package/styles/table.css +1 -0
- package/styles/text-area.css +1 -0
- package/styles/text-input.css +1 -0
- package/styles/time-picker.css +5 -5
- package/test/component-motion-settings.test.mjs +35 -0
- package/test/content-overlay-motion.test.mjs +36 -0
- package/test/form-layout.test.mjs +28 -0
- package/test/isolation.test.mjs +2 -2
- package/test/motion.test.mjs +215 -0
- package/dist/chunk-2TCNAQC6.js +0 -1
- package/dist/chunk-CTLZIWMX.js +0 -1
- package/dist/chunk-MHHJZYXW.js +0 -1
- package/dist/chunk-XDYBNO4P.js +0 -1
- /package/dist/{chunk-H7ETPJVW.js → chunk-3PODK22R.js} +0 -0
- /package/dist/{chunk-SIU7DSOA.js → chunk-KBWB4OIF.js} +0 -0
package/dist/styles.css
CHANGED
|
@@ -2410,6 +2410,14 @@ The base shape remains visible when the animated overlay is removed. */
|
|
|
2410
2410
|
-servicestudio-height: 20px;
|
|
2411
2411
|
}
|
|
2412
2412
|
|
|
2413
|
+
/* The opt-in native motion adapter owns the shimmer. Avoid a second legacy
|
|
2414
|
+
wave, including when the adapter is Reduced or Off. Removing the adapter
|
|
2415
|
+
restores the existing IsAnimated behavior without changing its contract. */
|
|
2416
|
+
.blu-skeleton[data-blu-native-motion="loading-skeleton"]::after {
|
|
2417
|
+
animation: none !important;
|
|
2418
|
+
display: none !important;
|
|
2419
|
+
}
|
|
2420
|
+
|
|
2413
2421
|
/* Font loading is headless; the scope supplies shared body and heading tokens. */
|
|
2414
2422
|
.blu-font-provider-block .blu-component-preview {display:none;}
|
|
2415
2423
|
[data-blu-font-scope] :is(h1,h2,h3,h4,h5,h6) {font-family:var(--blu-font-heading-family,var(--blu-font-family,inherit));}
|
|
@@ -4523,7 +4531,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4523
4531
|
.blu-picker [hidden],.blu-picker__dialog [hidden] {display:none!important;}
|
|
4524
4532
|
.blu-picker__fields {display:flex;flex-wrap:wrap;gap:12px;}
|
|
4525
4533
|
.blu-picker__field {flex:1 1 180px;min-width:0;}
|
|
4526
|
-
.blu-picker__field label,.blu-picker__select-
|
|
4534
|
+
.blu-picker__field label,.blu-picker__select-caption {display:block;margin-bottom:5px;color:var(--bluui-text,#182230);font-weight:600;}
|
|
4527
4535
|
.blu-picker__input {display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;}
|
|
4528
4536
|
.blu-picker__field-control {position:relative;}
|
|
4529
4537
|
.blu-picker__field-control>.blu-picker__input {padding-right:38px;}
|
|
@@ -4546,7 +4554,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4546
4554
|
.blu-picker__dialog::backdrop {background:transparent;pointer-events:none;}
|
|
4547
4555
|
.blu-picker__dialog-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
|
|
4548
4556
|
.blu-picker__dialog-head h2 {font-size:16px;line-height:1.4;font-family:var(--blu-font-heading-family,inherit);margin:0;overflow-wrap:anywhere;}
|
|
4549
|
-
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr)
|
|
4557
|
+
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr) 88px 32px;align-items:end;gap:6px;margin-top:0;}
|
|
4550
4558
|
.blu-picker__calendar-nav>.blu-picker__button {height:36px;padding:2px;font-size:22px;}
|
|
4551
4559
|
.blu-picker__select-field {min-width:0;}
|
|
4552
4560
|
.blu-picker__caption {font-size:15px;text-align:center;margin:16px 0 8px;}
|
|
@@ -4571,8 +4579,8 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4571
4579
|
/* Compact popup controls; editable text stays at 16px to avoid iOS focus zoom. */
|
|
4572
4580
|
.blu-picker__dialog .blu-picker__input {min-height:36px;padding:5px 7px;font-size:16px;line-height:1.2;}
|
|
4573
4581
|
.blu-picker__dialog .blu-picker__button {min-height:34px;min-width:32px;padding:5px 9px;font-size:13px;line-height:1.25;}
|
|
4574
|
-
.blu-picker__dialog .blu-picker__select-
|
|
4575
|
-
.blu-picker__calendar-nav .blu-picker__select-
|
|
4582
|
+
.blu-picker__dialog .blu-picker__select-caption {font-size:11px;margin-bottom:2px;}
|
|
4583
|
+
.blu-picker__calendar-nav .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4576
4584
|
.blu-picker__dialog .blu-picker__error {margin-top:4px;font-size:12px;line-height:1.3;}
|
|
4577
4585
|
@media(pointer:coarse){
|
|
4578
4586
|
.blu-picker__field-control>.blu-picker__input {font-size:16px;min-height:44px;}
|
|
@@ -4589,7 +4597,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4589
4597
|
.blu-picker__dialog[data-compact=true] .blu-picker__calendar td {height:24px;}
|
|
4590
4598
|
.blu-picker__dialog[data-compact=true] .blu-picker__day {min-height:24px;padding:3px 0;}
|
|
4591
4599
|
.blu-picker__dialog[data-compact=true] .blu-picker__time-area {margin:4px 0;gap:6px;}
|
|
4592
|
-
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-
|
|
4600
|
+
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
|
|
4593
4601
|
.blu-picker__dialog[data-compact=true] .blu-picker__selection {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4594
4602
|
.blu-picker__dialog[data-compact=true] .blu-picker__popup-actions {margin-top:4px;gap:4px;}
|
|
4595
4603
|
.blu-picker__dialog[data-compact=true] .blu-picker__presets {margin-bottom:4px;gap:4px;}
|
|
@@ -4602,7 +4610,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4602
4610
|
.blu-picker [hidden],.blu-picker__dialog [hidden] {display:none!important;}
|
|
4603
4611
|
.blu-picker__fields {display:flex;flex-wrap:wrap;gap:12px;}
|
|
4604
4612
|
.blu-picker__field {flex:1 1 180px;min-width:0;}
|
|
4605
|
-
.blu-picker__field label,.blu-picker__select-
|
|
4613
|
+
.blu-picker__field label,.blu-picker__select-caption {display:block;margin-bottom:5px;color:var(--bluui-text,#182230);font-weight:600;}
|
|
4606
4614
|
.blu-picker__input {display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;}
|
|
4607
4615
|
.blu-picker__field-control {position:relative;}
|
|
4608
4616
|
.blu-picker__field-control>.blu-picker__input {padding-right:38px;}
|
|
@@ -4625,7 +4633,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4625
4633
|
.blu-picker__dialog::backdrop {background:transparent;pointer-events:none;}
|
|
4626
4634
|
.blu-picker__dialog-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
|
|
4627
4635
|
.blu-picker__dialog-head h2 {font-size:16px;line-height:1.4;font-family:var(--blu-font-heading-family,inherit);margin:0;overflow-wrap:anywhere;}
|
|
4628
|
-
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr)
|
|
4636
|
+
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr) 88px 32px;align-items:end;gap:6px;margin-top:0;}
|
|
4629
4637
|
.blu-picker__calendar-nav>.blu-picker__button {height:36px;padding:2px;font-size:22px;}
|
|
4630
4638
|
.blu-picker__select-field {min-width:0;}
|
|
4631
4639
|
.blu-picker__caption {font-size:15px;text-align:center;margin:16px 0 8px;}
|
|
@@ -4650,8 +4658,8 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4650
4658
|
/* Compact popup controls; editable text stays at 16px to avoid iOS focus zoom. */
|
|
4651
4659
|
.blu-picker__dialog .blu-picker__input {min-height:36px;padding:5px 7px;font-size:16px;line-height:1.2;}
|
|
4652
4660
|
.blu-picker__dialog .blu-picker__button {min-height:34px;min-width:32px;padding:5px 9px;font-size:13px;line-height:1.25;}
|
|
4653
|
-
.blu-picker__dialog .blu-picker__select-
|
|
4654
|
-
.blu-picker__calendar-nav .blu-picker__select-
|
|
4661
|
+
.blu-picker__dialog .blu-picker__select-caption {font-size:11px;margin-bottom:2px;}
|
|
4662
|
+
.blu-picker__calendar-nav .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4655
4663
|
.blu-picker__dialog .blu-picker__error {margin-top:4px;font-size:12px;line-height:1.3;}
|
|
4656
4664
|
@media(pointer:coarse){
|
|
4657
4665
|
.blu-picker__field-control>.blu-picker__input {font-size:16px;min-height:44px;}
|
|
@@ -4668,7 +4676,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4668
4676
|
.blu-picker__dialog[data-compact=true] .blu-picker__calendar td {height:24px;}
|
|
4669
4677
|
.blu-picker__dialog[data-compact=true] .blu-picker__day {min-height:24px;padding:3px 0;}
|
|
4670
4678
|
.blu-picker__dialog[data-compact=true] .blu-picker__time-area {margin:4px 0;gap:6px;}
|
|
4671
|
-
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-
|
|
4679
|
+
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
|
|
4672
4680
|
.blu-picker__dialog[data-compact=true] .blu-picker__selection {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4673
4681
|
.blu-picker__dialog[data-compact=true] .blu-picker__popup-actions {margin-top:4px;gap:4px;}
|
|
4674
4682
|
.blu-picker__dialog[data-compact=true] .blu-picker__presets {margin-bottom:4px;gap:4px;}
|
|
@@ -4681,7 +4689,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4681
4689
|
.blu-picker [hidden],.blu-picker__dialog [hidden] {display:none!important;}
|
|
4682
4690
|
.blu-picker__fields {display:flex;flex-wrap:wrap;gap:12px;}
|
|
4683
4691
|
.blu-picker__field {flex:1 1 180px;min-width:0;}
|
|
4684
|
-
.blu-picker__field label,.blu-picker__select-
|
|
4692
|
+
.blu-picker__field label,.blu-picker__select-caption {display:block;margin-bottom:5px;color:var(--bluui-text,#182230);font-weight:600;}
|
|
4685
4693
|
.blu-picker__input {display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;}
|
|
4686
4694
|
.blu-picker__field-control {position:relative;}
|
|
4687
4695
|
.blu-picker__field-control>.blu-picker__input {padding-right:38px;}
|
|
@@ -4704,7 +4712,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4704
4712
|
.blu-picker__dialog::backdrop {background:transparent;pointer-events:none;}
|
|
4705
4713
|
.blu-picker__dialog-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
|
|
4706
4714
|
.blu-picker__dialog-head h2 {font-size:16px;line-height:1.4;font-family:var(--blu-font-heading-family,inherit);margin:0;overflow-wrap:anywhere;}
|
|
4707
|
-
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr)
|
|
4715
|
+
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr) 88px 32px;align-items:end;gap:6px;margin-top:0;}
|
|
4708
4716
|
.blu-picker__calendar-nav>.blu-picker__button {height:36px;padding:2px;font-size:22px;}
|
|
4709
4717
|
.blu-picker__select-field {min-width:0;}
|
|
4710
4718
|
.blu-picker__caption {font-size:15px;text-align:center;margin:16px 0 8px;}
|
|
@@ -4729,8 +4737,8 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4729
4737
|
/* Compact popup controls; editable text stays at 16px to avoid iOS focus zoom. */
|
|
4730
4738
|
.blu-picker__dialog .blu-picker__input {min-height:36px;padding:5px 7px;font-size:16px;line-height:1.2;}
|
|
4731
4739
|
.blu-picker__dialog .blu-picker__button {min-height:34px;min-width:32px;padding:5px 9px;font-size:13px;line-height:1.25;}
|
|
4732
|
-
.blu-picker__dialog .blu-picker__select-
|
|
4733
|
-
.blu-picker__calendar-nav .blu-picker__select-
|
|
4740
|
+
.blu-picker__dialog .blu-picker__select-caption {font-size:11px;margin-bottom:2px;}
|
|
4741
|
+
.blu-picker__calendar-nav .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4734
4742
|
.blu-picker__dialog .blu-picker__error {margin-top:4px;font-size:12px;line-height:1.3;}
|
|
4735
4743
|
@media(pointer:coarse){
|
|
4736
4744
|
.blu-picker__field-control>.blu-picker__input {font-size:16px;min-height:44px;}
|
|
@@ -4747,7 +4755,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4747
4755
|
.blu-picker__dialog[data-compact=true] .blu-picker__calendar td {height:24px;}
|
|
4748
4756
|
.blu-picker__dialog[data-compact=true] .blu-picker__day {min-height:24px;padding:3px 0;}
|
|
4749
4757
|
.blu-picker__dialog[data-compact=true] .blu-picker__time-area {margin:4px 0;gap:6px;}
|
|
4750
|
-
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-
|
|
4758
|
+
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
|
|
4751
4759
|
.blu-picker__dialog[data-compact=true] .blu-picker__selection {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4752
4760
|
.blu-picker__dialog[data-compact=true] .blu-picker__popup-actions {margin-top:4px;gap:4px;}
|
|
4753
4761
|
.blu-picker__dialog[data-compact=true] .blu-picker__presets {margin-bottom:4px;gap:4px;}
|
|
@@ -4760,7 +4768,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4760
4768
|
.blu-picker [hidden],.blu-picker__dialog [hidden] {display:none!important;}
|
|
4761
4769
|
.blu-picker__fields {display:flex;flex-wrap:wrap;gap:12px;}
|
|
4762
4770
|
.blu-picker__field {flex:1 1 180px;min-width:0;}
|
|
4763
|
-
.blu-picker__field label,.blu-picker__select-
|
|
4771
|
+
.blu-picker__field label,.blu-picker__select-caption {display:block;margin-bottom:5px;color:var(--bluui-text,#182230);font-weight:600;}
|
|
4764
4772
|
.blu-picker__input {display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;}
|
|
4765
4773
|
.blu-picker__field-control {position:relative;}
|
|
4766
4774
|
.blu-picker__field-control>.blu-picker__input {padding-right:38px;}
|
|
@@ -4783,7 +4791,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4783
4791
|
.blu-picker__dialog::backdrop {background:transparent;pointer-events:none;}
|
|
4784
4792
|
.blu-picker__dialog-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
|
|
4785
4793
|
.blu-picker__dialog-head h2 {font-size:16px;line-height:1.4;font-family:var(--blu-font-heading-family,inherit);margin:0;overflow-wrap:anywhere;}
|
|
4786
|
-
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr)
|
|
4794
|
+
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr) 88px 32px;align-items:end;gap:6px;margin-top:0;}
|
|
4787
4795
|
.blu-picker__calendar-nav>.blu-picker__button {height:36px;padding:2px;font-size:22px;}
|
|
4788
4796
|
.blu-picker__select-field {min-width:0;}
|
|
4789
4797
|
.blu-picker__caption {font-size:15px;text-align:center;margin:16px 0 8px;}
|
|
@@ -4808,8 +4816,8 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4808
4816
|
/* Compact popup controls; editable text stays at 16px to avoid iOS focus zoom. */
|
|
4809
4817
|
.blu-picker__dialog .blu-picker__input {min-height:36px;padding:5px 7px;font-size:16px;line-height:1.2;}
|
|
4810
4818
|
.blu-picker__dialog .blu-picker__button {min-height:34px;min-width:32px;padding:5px 9px;font-size:13px;line-height:1.25;}
|
|
4811
|
-
.blu-picker__dialog .blu-picker__select-
|
|
4812
|
-
.blu-picker__calendar-nav .blu-picker__select-
|
|
4819
|
+
.blu-picker__dialog .blu-picker__select-caption {font-size:11px;margin-bottom:2px;}
|
|
4820
|
+
.blu-picker__calendar-nav .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4813
4821
|
.blu-picker__dialog .blu-picker__error {margin-top:4px;font-size:12px;line-height:1.3;}
|
|
4814
4822
|
@media(pointer:coarse){
|
|
4815
4823
|
.blu-picker__field-control>.blu-picker__input {font-size:16px;min-height:44px;}
|
|
@@ -4826,7 +4834,7 @@ Keep bulk commands together in a wrapping row between the panels. */
|
|
|
4826
4834
|
.blu-picker__dialog[data-compact=true] .blu-picker__calendar td {height:24px;}
|
|
4827
4835
|
.blu-picker__dialog[data-compact=true] .blu-picker__day {min-height:24px;padding:3px 0;}
|
|
4828
4836
|
.blu-picker__dialog[data-compact=true] .blu-picker__time-area {margin:4px 0;gap:6px;}
|
|
4829
|
-
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-
|
|
4837
|
+
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
|
|
4830
4838
|
.blu-picker__dialog[data-compact=true] .blu-picker__selection {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
|
|
4831
4839
|
.blu-picker__dialog[data-compact=true] .blu-picker__popup-actions {margin-top:4px;gap:4px;}
|
|
4832
4840
|
.blu-picker__dialog[data-compact=true] .blu-picker__presets {margin-bottom:4px;gap:4px;}
|
|
@@ -8880,3 +8888,1188 @@ beside the live host/List, never inside a JavaScript-owned host. */
|
|
|
8880
8888
|
|
|
8881
8889
|
/* Service Studio caption is hidden once the owned grid has initialized. */
|
|
8882
8890
|
.blu-community-block:has([data-blu-community-ready]) > .blu-community-preview { display: none; }
|
|
8891
|
+
|
|
8892
|
+
/* Community Form & Layout Essentials — local draft; no OutSystems UI selectors. */
|
|
8893
|
+
.blu-field,.blu-columns,.blu-table{box-sizing:border-box;min-width:0;color:var(--bluui-text,#182230);font-family:var(--blu-font-family,Inter,system-ui,sans-serif);font-size:14px}
|
|
8894
|
+
.blu-field *,.blu-columns *,.blu-table *{box-sizing:border-box}
|
|
8895
|
+
.blu-field [hidden],.blu-table [hidden]{display:none!important}
|
|
8896
|
+
.blu-field{--blu-field-height:42px;--blu-field-padding:12px;display:flex;flex-direction:column;gap:7px;border:0;padding:0;margin:0;min-inline-size:0}
|
|
8897
|
+
.blu-field--small{--blu-field-height:34px;--blu-field-padding:9px;font-size:13px}.blu-field--large{--blu-field-height:50px;--blu-field-padding:15px;font-size:16px}
|
|
8898
|
+
.blu-field__label{font-weight:600;line-height:1.5;padding:0;margin:0 0 2px}.blu-field__body{min-width:0}
|
|
8899
|
+
.blu-field__help,.blu-choice__description,.blu-field__count{font-size:12px;color:var(--bluui-text-muted,#5c6b80);line-height:1.5}.blu-field__error{color:var(--bluui-color-error-text,#b42318);font-size:12px;line-height:1.5}.blu-field__count{text-align:end;margin-top:5px;font-variant-numeric:tabular-nums}
|
|
8900
|
+
.blu-text,.blu-textarea,.blu-select__trigger{border:1px solid var(--bluui-control-border,#7b8799);border-radius:var(--blu-radius-md,8px);background:var(--bluui-surface,#fff);color:inherit;transition:border-color .12s,box-shadow .12s}
|
|
8901
|
+
.blu-text{display:flex;align-items:center;gap:8px;min-height:var(--blu-field-height);padding:0 var(--blu-field-padding)}
|
|
8902
|
+
.blu-text__input{width:100%;min-width:0;border:0!important;box-shadow:none!important;outline:none!important;background:transparent!important;color:inherit;padding:9px 0!important;font:inherit;line-height:1.5;height:auto}
|
|
8903
|
+
.blu-text__input::placeholder,.blu-textarea::placeholder{color:var(--bluui-text-muted,#5c6b80);opacity:1}
|
|
8904
|
+
.blu-text:focus-within,.blu-textarea:focus-visible,.blu-select__trigger:focus-visible{border-color:var(--bluui-primary,#4f46e5);outline:2px solid var(--bluui-primary,#4f46e5);outline-offset:2px}
|
|
8905
|
+
.blu-text__adornment{display:inline-flex;flex:none;gap:6px;align-items:center;color:var(--bluui-text-muted,#5c6b80);white-space:nowrap}.blu-text__adornment img{width:24px;height:24px;object-fit:contain;border-radius:4px}
|
|
8906
|
+
.blu-text__action{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:4px;background:transparent;color:var(--bluui-primary,#4f46e5);font:inherit;font-size:12px;font-weight:600;min-width:26px;min-height:30px;cursor:pointer;white-space:nowrap;padding:3px}
|
|
8907
|
+
.blu-text__action:hover{background:var(--bluui-hover,#f0f2f7)}
|
|
8908
|
+
.blu-field button:focus-visible,.blu-table button:focus-visible,.blu-table__scroll:focus-visible{outline:2px solid var(--bluui-primary,#4f46e5);outline-offset:3px}
|
|
8909
|
+
.blu-textarea{display:block;width:100%;min-height:var(--blu-field-height);padding:10px var(--blu-field-padding);font:inherit;line-height:1.6}
|
|
8910
|
+
.blu-field[data-invalid=true] .blu-text,.blu-field[data-invalid=true] .blu-textarea,.blu-field[data-invalid=true] .blu-select__trigger{border-color:var(--bluui-color-error-text,#b42318)}
|
|
8911
|
+
.blu-field[data-disabled=true]{opacity:.6}.blu-field input:disabled,.blu-field textarea:disabled,.blu-field button:disabled{cursor:not-allowed}
|
|
8912
|
+
.blu-field input[readonly],.blu-field textarea[readonly]{cursor:default}
|
|
8913
|
+
.blu-choice{display:flex;align-items:center;position:relative;gap:10px;min-height:32px;cursor:pointer;line-height:1.5}.blu-choice__input{position:absolute;inline-size:1px;block-size:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap;opacity:0}
|
|
8914
|
+
.blu-choice__mark{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:19px;height:19px;border:1.5px solid var(--bluui-control-border,#7b8799);border-radius:5px;background:var(--bluui-surface,#fff);color:var(--bluui-on-primary,#fff)}
|
|
8915
|
+
.blu-choice__input:checked+.blu-choice__mark,.blu-choice__input:indeterminate+.blu-choice__mark{background:var(--bluui-primary,#4f46e5);border-color:var(--bluui-primary,#4f46e5)}
|
|
8916
|
+
.blu-choice--checkbox .blu-choice__input:checked+.blu-choice__mark:after{content:'';width:5px;height:9px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
|
|
8917
|
+
.blu-choice__input:indeterminate+.blu-choice__mark:after{content:'';width:9px;height:2px;background:currentColor;transform:none;border:0}
|
|
8918
|
+
.blu-choice__input:focus-visible+.blu-choice__mark{outline:2px solid var(--bluui-primary,#4f46e5);outline-offset:3px}
|
|
8919
|
+
.blu-choice:has(input:disabled){opacity:.6;cursor:not-allowed}.blu-field[data-disabled=true] .blu-choice:has(input:disabled){opacity:1}
|
|
8920
|
+
.blu-choice--radio .blu-choice__mark{border-radius:50%}.blu-choice--radio .blu-choice__input:checked+.blu-choice__mark:after{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
|
|
8921
|
+
.blu-choice--switch .blu-choice__mark{width:38px;height:22px;border-radius:20px;background:var(--bluui-control-border,#7b8799);padding:2px;justify-content:flex-start}
|
|
8922
|
+
.blu-choice--switch .blu-choice__mark:after{content:'';height:16px;width:16px;background:#fff;border-radius:50%;transition:transform .15s}
|
|
8923
|
+
.blu-choice--switch .blu-choice__input:checked+.blu-choice__mark:after{transform:translateX(14px)}.blu-choice--switch .blu-choice__input:checked+.blu-choice__mark{background:var(--bluui-primary,#4f46e5)}
|
|
8924
|
+
.blu-choice__state{margin-inline-start:auto;font-size:12px;color:var(--bluui-text-muted,#5c6b80)}.blu-choice__description{display:block}
|
|
8925
|
+
.blu-radio-group{display:flex;flex-direction:column;gap:10px}.blu-radio-group--horizontal{flex-direction:row;flex-wrap:wrap;gap:12px 24px}
|
|
8926
|
+
.blu-select{position:relative;display:flex;gap:5px}.blu-select__native{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%);pointer-events:none}
|
|
8927
|
+
.blu-select__trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:var(--blu-field-height);width:100%;padding:9px var(--blu-field-padding);font:inherit;text-align:start;cursor:pointer}
|
|
8928
|
+
.blu-select__trigger:after{content:'';width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg);flex-shrink:0}.blu-select__trigger[data-placeholder=true]{color:var(--bluui-text-muted,#5c6b80)}
|
|
8929
|
+
.blu-select__popup{box-sizing:border-box;position:absolute;inset:calc(100% + 6px) 0 auto;z-index:1000;max-height:320px;overflow:auto;margin:0;padding:6px;border:1px solid var(--bluui-border-strong,#b8c4d4);border-radius:10px;background:var(--bluui-surface,#fff);box-shadow:var(--bluui-menu-shadow,0 10px 30px #17203326);color:var(--bluui-text,#182230);font:inherit}
|
|
8930
|
+
.blu-select__search{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--bluui-control-border,#7b8799);border-radius:6px;background:var(--bluui-surface,#fff);color:inherit;font:inherit;margin-bottom:5px;outline-offset:2px}
|
|
8931
|
+
.blu-select__option{padding:9px 10px;border-radius:5px;cursor:pointer;line-height:1.5}.blu-select__option[aria-selected=true]{font-weight:600;color:var(--bluui-primary,#4f46e5)}.blu-select__option[data-active=true]{background:var(--bluui-selected,#e9e6ff)}.blu-select__option[aria-disabled=true]{opacity:.5;cursor:not-allowed}
|
|
8932
|
+
.blu-columns{display:grid;grid-template-columns:var(--blu-columns-tracks,1fr 1fr);gap:var(--blu-columns-gap,24px)}.blu-columns__column{min-width:0;display:flex;flex-direction:column;gap:20px}
|
|
8933
|
+
@media(max-width:479px){.blu-columns--stack-small{grid-template-columns:minmax(0,1fr)}}
|
|
8934
|
+
@media(max-width:767px){.blu-columns--stack-medium{grid-template-columns:minmax(0,1fr)}}
|
|
8935
|
+
@media(max-width:1023px){.blu-columns--stack-large{grid-template-columns:minmax(0,1fr)}}
|
|
8936
|
+
.blu-table{border:1px solid var(--bluui-border,#e2e8f0);border-radius:12px;background:var(--bluui-surface,#fff);overflow:hidden}
|
|
8937
|
+
.blu-table__scroll{overflow:auto}.blu-table table{width:100%;border-collapse:collapse;font:inherit;text-align:start}.blu-table caption{text-align:start;padding:18px;font-weight:600;font-size:15px}
|
|
8938
|
+
.blu-table th{font-size:12px;color:var(--bluui-text-muted,#5c6b80);background:var(--bluui-surface-muted,#f7f8fb);font-weight:600;white-space:nowrap}
|
|
8939
|
+
.blu-table th,.blu-table td{padding:14px 18px;border-top:1px solid var(--bluui-border,#e2e8f0);line-height:1.5}
|
|
8940
|
+
.blu-table[data-density=Compact] th,.blu-table[data-density=Compact] td{padding:8px 12px}
|
|
8941
|
+
.blu-table[data-striped=true] tbody tr:nth-child(even){background:var(--bluui-surface-muted,#f7f8fb)}
|
|
8942
|
+
.blu-table__sort{font:inherit;font-weight:600;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:12px}
|
|
8943
|
+
.blu-table__empty{text-align:center!important;height:140px;color:var(--bluui-text-muted,#5c6b80)}
|
|
8944
|
+
.blu-table__footer{display:flex;align-items:center;gap:8px;padding:12px 18px;border-top:1px solid var(--bluui-border,#e2e8f0);font-size:12px;flex-wrap:wrap}.blu-table__footer>span{margin-inline-end:auto;color:var(--bluui-text-muted,#5c6b80)}
|
|
8945
|
+
.blu-table-button{border:1px solid var(--bluui-border-strong,#b8c4d4);border-radius:6px;padding:6px 10px;background:var(--bluui-surface,#fff);font:inherit;font-size:12px;color:var(--bluui-text,#182230);cursor:pointer;min-height:30px;white-space:nowrap}.blu-table-button:hover{background:var(--bluui-hover,#f0f2f7)}.blu-table-button:disabled{opacity:.5;cursor:not-allowed}.blu-table__actions{display:flex;gap:6px}
|
|
8946
|
+
@media(prefers-reduced-motion:reduce){.blu-field *{transition:none!important}}
|
|
8947
|
+
@media(forced-colors:active){.blu-choice__mark{forced-color-adjust:none;border-color:ButtonText;background:Canvas;color:HighlightText}.blu-choice__input:checked+.blu-choice__mark,.blu-choice__input:indeterminate+.blu-choice__mark{background:Highlight;border-color:Highlight}.blu-select__option[data-active=true]{outline:2px solid Highlight}.blu-choice--switch .blu-choice__mark:after{background:ButtonText}.blu-choice--switch .blu-choice__input:checked+.blu-choice__mark:after{background:HighlightText}}
|
|
8948
|
+
|
|
8949
|
+
/* Equal height is row-scoped; stacked columns retain their content height. */
|
|
8950
|
+
.blu-columns.blu-columns--equal-height{align-items:stretch}
|
|
8951
|
+
.blu-columns--equal-height > .blu-columns__column > :only-child{flex:1 1 auto}
|
|
8952
|
+
.blu-columns--equal-height > .blu-columns__column > [data-placeholder]{display:flex;flex-direction:column}
|
|
8953
|
+
.blu-columns--equal-height > .blu-columns__column > [data-placeholder] > :only-child{flex:1 1 auto}
|
|
8954
|
+
|
|
8955
|
+
/* styles/motion-presets.css */
|
|
8956
|
+
.blu-motion-enter-fade,
|
|
8957
|
+
.blu-motion-fade-in {
|
|
8958
|
+
animation: blu-motion-enter-fade var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
8959
|
+
}
|
|
8960
|
+
@keyframes blu-motion-enter-fade {
|
|
8961
|
+
0% {
|
|
8962
|
+
opacity: 0;
|
|
8963
|
+
}
|
|
8964
|
+
100% {
|
|
8965
|
+
opacity: 1;
|
|
8966
|
+
}
|
|
8967
|
+
}
|
|
8968
|
+
.blu-motion-exit-fade,
|
|
8969
|
+
.blu-motion-fade-out {
|
|
8970
|
+
animation: blu-motion-exit-fade var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
8971
|
+
}
|
|
8972
|
+
@keyframes blu-motion-exit-fade {
|
|
8973
|
+
0% {
|
|
8974
|
+
opacity: 1;
|
|
8975
|
+
}
|
|
8976
|
+
100% {
|
|
8977
|
+
opacity: 0;
|
|
8978
|
+
}
|
|
8979
|
+
}
|
|
8980
|
+
.blu-motion-enter-slide-up,
|
|
8981
|
+
.blu-motion-slide-up {
|
|
8982
|
+
animation: blu-motion-enter-slide-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
8983
|
+
}
|
|
8984
|
+
@keyframes blu-motion-enter-slide-up {
|
|
8985
|
+
0% {
|
|
8986
|
+
opacity: 0;
|
|
8987
|
+
transform: translateY(var(--blu-motion-distance));
|
|
8988
|
+
}
|
|
8989
|
+
100% {
|
|
8990
|
+
opacity: 1;
|
|
8991
|
+
transform: none;
|
|
8992
|
+
}
|
|
8993
|
+
}
|
|
8994
|
+
.blu-motion-exit-slide-up {
|
|
8995
|
+
animation: blu-motion-exit-slide-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
8996
|
+
}
|
|
8997
|
+
@keyframes blu-motion-exit-slide-up {
|
|
8998
|
+
0% {
|
|
8999
|
+
opacity: 1;
|
|
9000
|
+
transform: none;
|
|
9001
|
+
}
|
|
9002
|
+
100% {
|
|
9003
|
+
opacity: 0;
|
|
9004
|
+
transform: translateY(calc(-1 * var(--blu-motion-distance)));
|
|
9005
|
+
}
|
|
9006
|
+
}
|
|
9007
|
+
.blu-motion-enter-slide-down {
|
|
9008
|
+
animation: blu-motion-enter-slide-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9009
|
+
}
|
|
9010
|
+
@keyframes blu-motion-enter-slide-down {
|
|
9011
|
+
0% {
|
|
9012
|
+
opacity: 0;
|
|
9013
|
+
transform: translateY(calc(-1 * var(--blu-motion-distance)));
|
|
9014
|
+
}
|
|
9015
|
+
100% {
|
|
9016
|
+
opacity: 1;
|
|
9017
|
+
transform: none;
|
|
9018
|
+
}
|
|
9019
|
+
}
|
|
9020
|
+
.blu-motion-exit-slide-down {
|
|
9021
|
+
animation: blu-motion-exit-slide-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9022
|
+
}
|
|
9023
|
+
@keyframes blu-motion-exit-slide-down {
|
|
9024
|
+
0% {
|
|
9025
|
+
opacity: 1;
|
|
9026
|
+
transform: none;
|
|
9027
|
+
}
|
|
9028
|
+
100% {
|
|
9029
|
+
opacity: 0;
|
|
9030
|
+
transform: translateY(var(--blu-motion-distance));
|
|
9031
|
+
}
|
|
9032
|
+
}
|
|
9033
|
+
.blu-motion-enter-slide-left {
|
|
9034
|
+
animation: blu-motion-enter-slide-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9035
|
+
}
|
|
9036
|
+
@keyframes blu-motion-enter-slide-left {
|
|
9037
|
+
0% {
|
|
9038
|
+
opacity: 0;
|
|
9039
|
+
transform: translateX(var(--blu-motion-distance));
|
|
9040
|
+
}
|
|
9041
|
+
100% {
|
|
9042
|
+
opacity: 1;
|
|
9043
|
+
transform: none;
|
|
9044
|
+
}
|
|
9045
|
+
}
|
|
9046
|
+
.blu-motion-exit-slide-left {
|
|
9047
|
+
animation: blu-motion-exit-slide-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9048
|
+
}
|
|
9049
|
+
@keyframes blu-motion-exit-slide-left {
|
|
9050
|
+
0% {
|
|
9051
|
+
opacity: 1;
|
|
9052
|
+
transform: none;
|
|
9053
|
+
}
|
|
9054
|
+
100% {
|
|
9055
|
+
opacity: 0;
|
|
9056
|
+
transform: translateX(calc(-1 * var(--blu-motion-distance)));
|
|
9057
|
+
}
|
|
9058
|
+
}
|
|
9059
|
+
.blu-motion-enter-slide-right {
|
|
9060
|
+
animation: blu-motion-enter-slide-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9061
|
+
}
|
|
9062
|
+
@keyframes blu-motion-enter-slide-right {
|
|
9063
|
+
0% {
|
|
9064
|
+
opacity: 0;
|
|
9065
|
+
transform: translateX(calc(-1 * var(--blu-motion-distance)));
|
|
9066
|
+
}
|
|
9067
|
+
100% {
|
|
9068
|
+
opacity: 1;
|
|
9069
|
+
transform: none;
|
|
9070
|
+
}
|
|
9071
|
+
}
|
|
9072
|
+
.blu-motion-exit-slide-right {
|
|
9073
|
+
animation: blu-motion-exit-slide-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9074
|
+
}
|
|
9075
|
+
@keyframes blu-motion-exit-slide-right {
|
|
9076
|
+
0% {
|
|
9077
|
+
opacity: 1;
|
|
9078
|
+
transform: none;
|
|
9079
|
+
}
|
|
9080
|
+
100% {
|
|
9081
|
+
opacity: 0;
|
|
9082
|
+
transform: translateX(var(--blu-motion-distance));
|
|
9083
|
+
}
|
|
9084
|
+
}
|
|
9085
|
+
.blu-motion-enter-zoom-in,
|
|
9086
|
+
.blu-motion-scale-in {
|
|
9087
|
+
animation: blu-motion-enter-zoom-in var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9088
|
+
}
|
|
9089
|
+
@keyframes blu-motion-enter-zoom-in {
|
|
9090
|
+
0% {
|
|
9091
|
+
opacity: 0;
|
|
9092
|
+
transform: scale(.92);
|
|
9093
|
+
}
|
|
9094
|
+
100% {
|
|
9095
|
+
opacity: 1;
|
|
9096
|
+
transform: none;
|
|
9097
|
+
}
|
|
9098
|
+
}
|
|
9099
|
+
.blu-motion-exit-zoom-in {
|
|
9100
|
+
animation: blu-motion-exit-zoom-in var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9101
|
+
}
|
|
9102
|
+
@keyframes blu-motion-exit-zoom-in {
|
|
9103
|
+
0% {
|
|
9104
|
+
opacity: 1;
|
|
9105
|
+
transform: none;
|
|
9106
|
+
}
|
|
9107
|
+
100% {
|
|
9108
|
+
opacity: 0;
|
|
9109
|
+
transform: scale(1.08);
|
|
9110
|
+
}
|
|
9111
|
+
}
|
|
9112
|
+
.blu-motion-enter-zoom-out {
|
|
9113
|
+
animation: blu-motion-enter-zoom-out var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9114
|
+
}
|
|
9115
|
+
@keyframes blu-motion-enter-zoom-out {
|
|
9116
|
+
0% {
|
|
9117
|
+
opacity: 0;
|
|
9118
|
+
transform: scale(1.08);
|
|
9119
|
+
}
|
|
9120
|
+
100% {
|
|
9121
|
+
opacity: 1;
|
|
9122
|
+
transform: none;
|
|
9123
|
+
}
|
|
9124
|
+
}
|
|
9125
|
+
.blu-motion-exit-zoom-out {
|
|
9126
|
+
animation: blu-motion-exit-zoom-out var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9127
|
+
}
|
|
9128
|
+
@keyframes blu-motion-exit-zoom-out {
|
|
9129
|
+
0% {
|
|
9130
|
+
opacity: 1;
|
|
9131
|
+
transform: none;
|
|
9132
|
+
}
|
|
9133
|
+
100% {
|
|
9134
|
+
opacity: 0;
|
|
9135
|
+
transform: scale(.92);
|
|
9136
|
+
}
|
|
9137
|
+
}
|
|
9138
|
+
.blu-motion-enter-rotate-left {
|
|
9139
|
+
animation: blu-motion-enter-rotate-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9140
|
+
}
|
|
9141
|
+
@keyframes blu-motion-enter-rotate-left {
|
|
9142
|
+
0% {
|
|
9143
|
+
opacity: 0;
|
|
9144
|
+
transform: rotate(8deg) scale(.97);
|
|
9145
|
+
}
|
|
9146
|
+
100% {
|
|
9147
|
+
opacity: 1;
|
|
9148
|
+
transform: none;
|
|
9149
|
+
}
|
|
9150
|
+
}
|
|
9151
|
+
.blu-motion-exit-rotate-left {
|
|
9152
|
+
animation: blu-motion-exit-rotate-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9153
|
+
}
|
|
9154
|
+
@keyframes blu-motion-exit-rotate-left {
|
|
9155
|
+
0% {
|
|
9156
|
+
opacity: 1;
|
|
9157
|
+
transform: none;
|
|
9158
|
+
}
|
|
9159
|
+
100% {
|
|
9160
|
+
opacity: 0;
|
|
9161
|
+
transform: rotate(-8deg) scale(.97);
|
|
9162
|
+
}
|
|
9163
|
+
}
|
|
9164
|
+
.blu-motion-enter-rotate-right {
|
|
9165
|
+
animation: blu-motion-enter-rotate-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9166
|
+
}
|
|
9167
|
+
@keyframes blu-motion-enter-rotate-right {
|
|
9168
|
+
0% {
|
|
9169
|
+
opacity: 0;
|
|
9170
|
+
transform: rotate(-8deg) scale(.97);
|
|
9171
|
+
}
|
|
9172
|
+
100% {
|
|
9173
|
+
opacity: 1;
|
|
9174
|
+
transform: none;
|
|
9175
|
+
}
|
|
9176
|
+
}
|
|
9177
|
+
.blu-motion-exit-rotate-right {
|
|
9178
|
+
animation: blu-motion-exit-rotate-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9179
|
+
}
|
|
9180
|
+
@keyframes blu-motion-exit-rotate-right {
|
|
9181
|
+
0% {
|
|
9182
|
+
opacity: 1;
|
|
9183
|
+
transform: none;
|
|
9184
|
+
}
|
|
9185
|
+
100% {
|
|
9186
|
+
opacity: 0;
|
|
9187
|
+
transform: rotate(8deg) scale(.97);
|
|
9188
|
+
}
|
|
9189
|
+
}
|
|
9190
|
+
.blu-motion-enter-flip-x {
|
|
9191
|
+
animation: blu-motion-enter-flip-x var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9192
|
+
}
|
|
9193
|
+
@keyframes blu-motion-enter-flip-x {
|
|
9194
|
+
0% {
|
|
9195
|
+
opacity: 0;
|
|
9196
|
+
transform: perspective(600px) rotateX(30deg);
|
|
9197
|
+
}
|
|
9198
|
+
100% {
|
|
9199
|
+
opacity: 1;
|
|
9200
|
+
transform: none;
|
|
9201
|
+
}
|
|
9202
|
+
}
|
|
9203
|
+
.blu-motion-exit-flip-x {
|
|
9204
|
+
animation: blu-motion-exit-flip-x var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9205
|
+
}
|
|
9206
|
+
@keyframes blu-motion-exit-flip-x {
|
|
9207
|
+
0% {
|
|
9208
|
+
opacity: 1;
|
|
9209
|
+
transform: none;
|
|
9210
|
+
}
|
|
9211
|
+
100% {
|
|
9212
|
+
opacity: 0;
|
|
9213
|
+
transform: perspective(600px) rotateX(-30deg);
|
|
9214
|
+
}
|
|
9215
|
+
}
|
|
9216
|
+
.blu-motion-enter-flip-y {
|
|
9217
|
+
animation: blu-motion-enter-flip-y var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9218
|
+
}
|
|
9219
|
+
@keyframes blu-motion-enter-flip-y {
|
|
9220
|
+
0% {
|
|
9221
|
+
opacity: 0;
|
|
9222
|
+
transform: perspective(600px) rotateY(30deg);
|
|
9223
|
+
}
|
|
9224
|
+
100% {
|
|
9225
|
+
opacity: 1;
|
|
9226
|
+
transform: none;
|
|
9227
|
+
}
|
|
9228
|
+
}
|
|
9229
|
+
.blu-motion-exit-flip-y {
|
|
9230
|
+
animation: blu-motion-exit-flip-y var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9231
|
+
}
|
|
9232
|
+
@keyframes blu-motion-exit-flip-y {
|
|
9233
|
+
0% {
|
|
9234
|
+
opacity: 1;
|
|
9235
|
+
transform: none;
|
|
9236
|
+
}
|
|
9237
|
+
100% {
|
|
9238
|
+
opacity: 0;
|
|
9239
|
+
transform: perspective(600px) rotateY(-30deg);
|
|
9240
|
+
}
|
|
9241
|
+
}
|
|
9242
|
+
.blu-motion-enter-pop {
|
|
9243
|
+
animation: blu-motion-enter-pop var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9244
|
+
}
|
|
9245
|
+
@keyframes blu-motion-enter-pop {
|
|
9246
|
+
0% {
|
|
9247
|
+
opacity: 0;
|
|
9248
|
+
transform: scale(.9);
|
|
9249
|
+
}
|
|
9250
|
+
72% {
|
|
9251
|
+
opacity: 1;
|
|
9252
|
+
transform: scale(1.025);
|
|
9253
|
+
}
|
|
9254
|
+
100% {
|
|
9255
|
+
opacity: 1;
|
|
9256
|
+
transform: scale(1);
|
|
9257
|
+
}
|
|
9258
|
+
}
|
|
9259
|
+
.blu-motion-exit-pop {
|
|
9260
|
+
animation: blu-motion-exit-pop var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9261
|
+
}
|
|
9262
|
+
@keyframes blu-motion-exit-pop {
|
|
9263
|
+
0% {
|
|
9264
|
+
opacity: 1;
|
|
9265
|
+
transform: scale(1);
|
|
9266
|
+
}
|
|
9267
|
+
25% {
|
|
9268
|
+
opacity: 1;
|
|
9269
|
+
transform: scale(1.025);
|
|
9270
|
+
}
|
|
9271
|
+
100% {
|
|
9272
|
+
opacity: 0;
|
|
9273
|
+
transform: scale(.9);
|
|
9274
|
+
}
|
|
9275
|
+
}
|
|
9276
|
+
.blu-motion-enter-bounce {
|
|
9277
|
+
animation: blu-motion-enter-bounce var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9278
|
+
}
|
|
9279
|
+
@keyframes blu-motion-enter-bounce {
|
|
9280
|
+
0% {
|
|
9281
|
+
opacity: 0;
|
|
9282
|
+
transform: translateY(var(--blu-motion-distance));
|
|
9283
|
+
}
|
|
9284
|
+
72% {
|
|
9285
|
+
opacity: 1;
|
|
9286
|
+
transform: translateY(-3px);
|
|
9287
|
+
}
|
|
9288
|
+
100% {
|
|
9289
|
+
opacity: 1;
|
|
9290
|
+
transform: translateY(0);
|
|
9291
|
+
}
|
|
9292
|
+
}
|
|
9293
|
+
.blu-motion-exit-bounce {
|
|
9294
|
+
animation: blu-motion-exit-bounce var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9295
|
+
}
|
|
9296
|
+
@keyframes blu-motion-exit-bounce {
|
|
9297
|
+
0% {
|
|
9298
|
+
opacity: 1;
|
|
9299
|
+
transform: translateY(0);
|
|
9300
|
+
}
|
|
9301
|
+
25% {
|
|
9302
|
+
opacity: 1;
|
|
9303
|
+
transform: translateY(-3px);
|
|
9304
|
+
}
|
|
9305
|
+
100% {
|
|
9306
|
+
opacity: 0;
|
|
9307
|
+
transform: translateY(var(--blu-motion-distance));
|
|
9308
|
+
}
|
|
9309
|
+
}
|
|
9310
|
+
.blu-motion-enter-wipe-up {
|
|
9311
|
+
animation: blu-motion-enter-wipe-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9312
|
+
}
|
|
9313
|
+
@keyframes blu-motion-enter-wipe-up {
|
|
9314
|
+
0% {
|
|
9315
|
+
opacity: 0;
|
|
9316
|
+
clip-path: inset(100% 0 0 0);
|
|
9317
|
+
}
|
|
9318
|
+
100% {
|
|
9319
|
+
opacity: 1;
|
|
9320
|
+
clip-path: inset(0 0 0 0);
|
|
9321
|
+
}
|
|
9322
|
+
}
|
|
9323
|
+
.blu-motion-exit-wipe-up {
|
|
9324
|
+
animation: blu-motion-exit-wipe-up var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9325
|
+
}
|
|
9326
|
+
@keyframes blu-motion-exit-wipe-up {
|
|
9327
|
+
0% {
|
|
9328
|
+
opacity: 1;
|
|
9329
|
+
clip-path: inset(0 0 0 0);
|
|
9330
|
+
}
|
|
9331
|
+
100% {
|
|
9332
|
+
opacity: 0;
|
|
9333
|
+
clip-path: inset(0 0 100% 0);
|
|
9334
|
+
}
|
|
9335
|
+
}
|
|
9336
|
+
.blu-motion-enter-wipe-down {
|
|
9337
|
+
animation: blu-motion-enter-wipe-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9338
|
+
}
|
|
9339
|
+
@keyframes blu-motion-enter-wipe-down {
|
|
9340
|
+
0% {
|
|
9341
|
+
opacity: 0;
|
|
9342
|
+
clip-path: inset(0 0 100% 0);
|
|
9343
|
+
}
|
|
9344
|
+
100% {
|
|
9345
|
+
opacity: 1;
|
|
9346
|
+
clip-path: inset(0 0 0 0);
|
|
9347
|
+
}
|
|
9348
|
+
}
|
|
9349
|
+
.blu-motion-exit-wipe-down {
|
|
9350
|
+
animation: blu-motion-exit-wipe-down var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9351
|
+
}
|
|
9352
|
+
@keyframes blu-motion-exit-wipe-down {
|
|
9353
|
+
0% {
|
|
9354
|
+
opacity: 1;
|
|
9355
|
+
clip-path: inset(0 0 0 0);
|
|
9356
|
+
}
|
|
9357
|
+
100% {
|
|
9358
|
+
opacity: 0;
|
|
9359
|
+
clip-path: inset(100% 0 0 0);
|
|
9360
|
+
}
|
|
9361
|
+
}
|
|
9362
|
+
.blu-motion-enter-wipe-left {
|
|
9363
|
+
animation: blu-motion-enter-wipe-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9364
|
+
}
|
|
9365
|
+
@keyframes blu-motion-enter-wipe-left {
|
|
9366
|
+
0% {
|
|
9367
|
+
opacity: 0;
|
|
9368
|
+
clip-path: inset(0 0 0 100%);
|
|
9369
|
+
}
|
|
9370
|
+
100% {
|
|
9371
|
+
opacity: 1;
|
|
9372
|
+
clip-path: inset(0 0 0 0);
|
|
9373
|
+
}
|
|
9374
|
+
}
|
|
9375
|
+
.blu-motion-exit-wipe-left {
|
|
9376
|
+
animation: blu-motion-exit-wipe-left var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9377
|
+
}
|
|
9378
|
+
@keyframes blu-motion-exit-wipe-left {
|
|
9379
|
+
0% {
|
|
9380
|
+
opacity: 1;
|
|
9381
|
+
clip-path: inset(0 0 0 0);
|
|
9382
|
+
}
|
|
9383
|
+
100% {
|
|
9384
|
+
opacity: 0;
|
|
9385
|
+
clip-path: inset(0 100% 0 0);
|
|
9386
|
+
}
|
|
9387
|
+
}
|
|
9388
|
+
.blu-motion-enter-wipe-right {
|
|
9389
|
+
animation: blu-motion-enter-wipe-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9390
|
+
}
|
|
9391
|
+
@keyframes blu-motion-enter-wipe-right {
|
|
9392
|
+
0% {
|
|
9393
|
+
opacity: 0;
|
|
9394
|
+
clip-path: inset(0 100% 0 0);
|
|
9395
|
+
}
|
|
9396
|
+
100% {
|
|
9397
|
+
opacity: 1;
|
|
9398
|
+
clip-path: inset(0 0 0 0);
|
|
9399
|
+
}
|
|
9400
|
+
}
|
|
9401
|
+
.blu-motion-exit-wipe-right {
|
|
9402
|
+
animation: blu-motion-exit-wipe-right var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9403
|
+
}
|
|
9404
|
+
@keyframes blu-motion-exit-wipe-right {
|
|
9405
|
+
0% {
|
|
9406
|
+
opacity: 1;
|
|
9407
|
+
clip-path: inset(0 0 0 0);
|
|
9408
|
+
}
|
|
9409
|
+
100% {
|
|
9410
|
+
opacity: 0;
|
|
9411
|
+
clip-path: inset(0 0 0 100%);
|
|
9412
|
+
}
|
|
9413
|
+
}
|
|
9414
|
+
.blu-motion-enter-circle-reveal {
|
|
9415
|
+
animation: blu-motion-enter-circle-reveal var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9416
|
+
}
|
|
9417
|
+
@keyframes blu-motion-enter-circle-reveal {
|
|
9418
|
+
0% {
|
|
9419
|
+
opacity: 0;
|
|
9420
|
+
clip-path: circle(0% at 50% 50%);
|
|
9421
|
+
}
|
|
9422
|
+
100% {
|
|
9423
|
+
opacity: 1;
|
|
9424
|
+
clip-path: circle(72% at 50% 50%);
|
|
9425
|
+
}
|
|
9426
|
+
}
|
|
9427
|
+
.blu-motion-exit-circle-reveal {
|
|
9428
|
+
animation: blu-motion-exit-circle-reveal var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9429
|
+
}
|
|
9430
|
+
@keyframes blu-motion-exit-circle-reveal {
|
|
9431
|
+
0% {
|
|
9432
|
+
opacity: 1;
|
|
9433
|
+
clip-path: circle(72% at 50% 50%);
|
|
9434
|
+
}
|
|
9435
|
+
100% {
|
|
9436
|
+
opacity: 0;
|
|
9437
|
+
clip-path: circle(0% at 50% 50%);
|
|
9438
|
+
}
|
|
9439
|
+
}
|
|
9440
|
+
.blu-motion-enter-blur-clear {
|
|
9441
|
+
animation: blu-motion-enter-blur-clear var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9442
|
+
}
|
|
9443
|
+
@keyframes blu-motion-enter-blur-clear {
|
|
9444
|
+
0% {
|
|
9445
|
+
opacity: 0;
|
|
9446
|
+
filter: blur(6px);
|
|
9447
|
+
}
|
|
9448
|
+
100% {
|
|
9449
|
+
opacity: 1;
|
|
9450
|
+
filter: blur(0px);
|
|
9451
|
+
}
|
|
9452
|
+
}
|
|
9453
|
+
.blu-motion-exit-blur-clear {
|
|
9454
|
+
animation: blu-motion-exit-blur-clear var(--blu-motion-duration) var(--blu-motion-ease) var(--blu-motion-delay) both;
|
|
9455
|
+
}
|
|
9456
|
+
@keyframes blu-motion-exit-blur-clear {
|
|
9457
|
+
0% {
|
|
9458
|
+
opacity: 1;
|
|
9459
|
+
filter: blur(0px);
|
|
9460
|
+
}
|
|
9461
|
+
100% {
|
|
9462
|
+
opacity: 0;
|
|
9463
|
+
filter: blur(6px);
|
|
9464
|
+
}
|
|
9465
|
+
}
|
|
9466
|
+
.blu-motion-ease-standard {
|
|
9467
|
+
--blu-motion-ease: cubic-bezier(.2,.8,.2,1);
|
|
9468
|
+
}
|
|
9469
|
+
.blu-motion-ease-in {
|
|
9470
|
+
--blu-motion-ease: cubic-bezier(.42,0,1,1);
|
|
9471
|
+
}
|
|
9472
|
+
.blu-motion-ease-out {
|
|
9473
|
+
--blu-motion-ease: cubic-bezier(0,0,.58,1);
|
|
9474
|
+
}
|
|
9475
|
+
.blu-motion-ease-in-out {
|
|
9476
|
+
--blu-motion-ease: cubic-bezier(.42,0,.58,1);
|
|
9477
|
+
}
|
|
9478
|
+
.blu-motion-ease-linear {
|
|
9479
|
+
--blu-motion-ease: linear;
|
|
9480
|
+
}
|
|
9481
|
+
.blu-motion-ease-spring {
|
|
9482
|
+
--blu-motion-ease: cubic-bezier(.34,1.25,.64,1);
|
|
9483
|
+
}
|
|
9484
|
+
.blu-motion-origin-center {
|
|
9485
|
+
transform-origin: 50% 50%;
|
|
9486
|
+
}
|
|
9487
|
+
.blu-motion-origin-top {
|
|
9488
|
+
transform-origin: 50% 0%;
|
|
9489
|
+
}
|
|
9490
|
+
.blu-motion-origin-bottom {
|
|
9491
|
+
transform-origin: 50% 100%;
|
|
9492
|
+
}
|
|
9493
|
+
.blu-motion-origin-left {
|
|
9494
|
+
transform-origin: 0% 50%;
|
|
9495
|
+
}
|
|
9496
|
+
.blu-motion-origin-right {
|
|
9497
|
+
transform-origin: 100% 50%;
|
|
9498
|
+
}
|
|
9499
|
+
.blu-motion-origin-top-left {
|
|
9500
|
+
transform-origin: 0% 0%;
|
|
9501
|
+
}
|
|
9502
|
+
.blu-motion-origin-top-right {
|
|
9503
|
+
transform-origin: 100% 0%;
|
|
9504
|
+
}
|
|
9505
|
+
.blu-motion-origin-bottom-left {
|
|
9506
|
+
transform-origin: 0% 100%;
|
|
9507
|
+
}
|
|
9508
|
+
.blu-motion-origin-bottom-right {
|
|
9509
|
+
transform-origin: 100% 100%;
|
|
9510
|
+
}
|
|
9511
|
+
|
|
9512
|
+
/* styles/motion-tokens.css */
|
|
9513
|
+
:root {
|
|
9514
|
+
--blu-motion-fast: 280ms;
|
|
9515
|
+
--blu-motion-normal: 450ms;
|
|
9516
|
+
--blu-motion-slow: 750ms;
|
|
9517
|
+
}
|
|
9518
|
+
|
|
9519
|
+
/* styles/motion-optional.css */
|
|
9520
|
+
.blu-motion-ripple,
|
|
9521
|
+
.blu-motion-shimmer {
|
|
9522
|
+
position: absolute;
|
|
9523
|
+
inset: 0;
|
|
9524
|
+
overflow: hidden;
|
|
9525
|
+
border-radius: inherit;
|
|
9526
|
+
pointer-events: none !important;
|
|
9527
|
+
}
|
|
9528
|
+
.blu-motion-ripple__wave {
|
|
9529
|
+
position: absolute;
|
|
9530
|
+
border-radius: 50%;
|
|
9531
|
+
background: var(--blu-ripple-color,currentColor);
|
|
9532
|
+
pointer-events: none !important;
|
|
9533
|
+
opacity: 0;
|
|
9534
|
+
}
|
|
9535
|
+
.blu-motion-choice-ripple {
|
|
9536
|
+
inset: -10px;
|
|
9537
|
+
border-radius: 999px;
|
|
9538
|
+
--blu-ripple-color:var(--bluui-primary,#4f46e5);
|
|
9539
|
+
}
|
|
9540
|
+
.blu-motion-shimmer__beam {
|
|
9541
|
+
position: absolute;
|
|
9542
|
+
inset: 0;
|
|
9543
|
+
background:
|
|
9544
|
+
linear-gradient(
|
|
9545
|
+
100deg,
|
|
9546
|
+
transparent 20%,
|
|
9547
|
+
var(--blu-shimmer-color,#ffffffb8) 50%,
|
|
9548
|
+
transparent 80%);
|
|
9549
|
+
animation: blu-motion-shimmer var(--blu-shimmer-duration,1800ms) ease-in-out infinite;
|
|
9550
|
+
}
|
|
9551
|
+
@keyframes blu-motion-shimmer {
|
|
9552
|
+
from {
|
|
9553
|
+
transform: translateX(-100%);
|
|
9554
|
+
}
|
|
9555
|
+
to {
|
|
9556
|
+
transform: translateX(100%);
|
|
9557
|
+
}
|
|
9558
|
+
}
|
|
9559
|
+
.blu-motion-shimmer[data-paused=true] .blu-motion-shimmer__beam {
|
|
9560
|
+
animation-play-state: paused;
|
|
9561
|
+
}
|
|
9562
|
+
.blu-motion-icon {
|
|
9563
|
+
display: block;
|
|
9564
|
+
width: 24px;
|
|
9565
|
+
height: 24px;
|
|
9566
|
+
overflow: visible;
|
|
9567
|
+
fill: none;
|
|
9568
|
+
stroke: currentColor;
|
|
9569
|
+
stroke-width: 1.8;
|
|
9570
|
+
stroke-linecap: round;
|
|
9571
|
+
stroke-linejoin: round;
|
|
9572
|
+
pointer-events: none;
|
|
9573
|
+
}
|
|
9574
|
+
.blu-motion-emphasis {
|
|
9575
|
+
position: absolute;
|
|
9576
|
+
pointer-events: none !important;
|
|
9577
|
+
color: var(--blu-emphasis-color,currentColor);
|
|
9578
|
+
}
|
|
9579
|
+
.blu-motion-emphasis--underline {
|
|
9580
|
+
inset: auto 0 0;
|
|
9581
|
+
height: 2px;
|
|
9582
|
+
background: currentColor;
|
|
9583
|
+
transform-origin: left center;
|
|
9584
|
+
border-radius: 2px;
|
|
9585
|
+
}
|
|
9586
|
+
.blu-motion-emphasis--border {
|
|
9587
|
+
inset: 0;
|
|
9588
|
+
border-radius: inherit;
|
|
9589
|
+
}
|
|
9590
|
+
.blu-motion-emphasis--border svg {
|
|
9591
|
+
display: block;
|
|
9592
|
+
width: 100%;
|
|
9593
|
+
height: 100%;
|
|
9594
|
+
fill: none;
|
|
9595
|
+
stroke: currentColor;
|
|
9596
|
+
stroke-width: 2px;
|
|
9597
|
+
}
|
|
9598
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) :is(.blu-motion-shimmer__beam, .blu-motion-ripple__wave) {
|
|
9599
|
+
display: none;
|
|
9600
|
+
animation: none !important;
|
|
9601
|
+
}
|
|
9602
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9603
|
+
.blu-motion-shimmer__beam,
|
|
9604
|
+
.blu-motion-ripple__wave {
|
|
9605
|
+
display: none;
|
|
9606
|
+
animation: none !important;
|
|
9607
|
+
}
|
|
9608
|
+
}
|
|
9609
|
+
@media (forced-colors: active) {
|
|
9610
|
+
.blu-motion-shimmer__beam,
|
|
9611
|
+
.blu-motion-ripple__wave {
|
|
9612
|
+
display: none;
|
|
9613
|
+
}
|
|
9614
|
+
.blu-motion-emphasis {
|
|
9615
|
+
color: Highlight;
|
|
9616
|
+
}
|
|
9617
|
+
}
|
|
9618
|
+
|
|
9619
|
+
/* styles/motion.css */
|
|
9620
|
+
:root {
|
|
9621
|
+
--blu-motion-duration: var(--blu-motion-normal);
|
|
9622
|
+
--blu-motion-delay: 0ms;
|
|
9623
|
+
--blu-motion-distance: 12px;
|
|
9624
|
+
--blu-motion-ease: cubic-bezier(.2, .8, .2, 1);
|
|
9625
|
+
}
|
|
9626
|
+
.blu-motion-fast {
|
|
9627
|
+
--blu-motion-duration: var(--blu-motion-fast);
|
|
9628
|
+
}
|
|
9629
|
+
.blu-motion-slow {
|
|
9630
|
+
--blu-motion-duration: var(--blu-motion-slow);
|
|
9631
|
+
}
|
|
9632
|
+
.blu-motion-delay-1 {
|
|
9633
|
+
--blu-motion-delay: 60ms;
|
|
9634
|
+
}
|
|
9635
|
+
.blu-motion-delay-2 {
|
|
9636
|
+
--blu-motion-delay: 120ms;
|
|
9637
|
+
}
|
|
9638
|
+
.blu-motion-delay-3 {
|
|
9639
|
+
--blu-motion-delay: 180ms;
|
|
9640
|
+
}
|
|
9641
|
+
.blu-motion-spin {
|
|
9642
|
+
animation: blu-motion-spin 800ms linear infinite;
|
|
9643
|
+
}
|
|
9644
|
+
.blu-motion-pulse {
|
|
9645
|
+
animation: blu-motion-pulse 900ms ease-in-out 3;
|
|
9646
|
+
}
|
|
9647
|
+
.blu-motion-hover-lift {
|
|
9648
|
+
transition: transform var(--blu-motion-duration) var(--blu-motion-ease), box-shadow var(--blu-motion-duration) var(--blu-motion-ease);
|
|
9649
|
+
}
|
|
9650
|
+
@media (hover: hover) {
|
|
9651
|
+
.blu-motion-hover-lift:hover {
|
|
9652
|
+
transform: translateY(calc(-1 * var(--blu-motion-lift-distance, 4px)));
|
|
9653
|
+
box-shadow: 0 8px 20px #28334b12;
|
|
9654
|
+
}
|
|
9655
|
+
}
|
|
9656
|
+
.blu-motion-hover-lift:is(:focus-visible, [data-blu-lifted=true]) {
|
|
9657
|
+
transform: translateY(calc(-1 * var(--blu-motion-lift-distance, 4px)));
|
|
9658
|
+
box-shadow: 0 8px 20px #28334b12;
|
|
9659
|
+
}
|
|
9660
|
+
.blu-motion-expand {
|
|
9661
|
+
display: grid;
|
|
9662
|
+
grid-template-rows: 0fr;
|
|
9663
|
+
transition: grid-template-rows var(--blu-motion-duration) var(--blu-motion-ease);
|
|
9664
|
+
}
|
|
9665
|
+
.blu-motion-expand[data-open=true] {
|
|
9666
|
+
grid-template-rows: 1fr;
|
|
9667
|
+
}
|
|
9668
|
+
.blu-motion-expand > * {
|
|
9669
|
+
min-height: 0;
|
|
9670
|
+
overflow: hidden;
|
|
9671
|
+
}
|
|
9672
|
+
@keyframes blu-motion-spin {
|
|
9673
|
+
to {
|
|
9674
|
+
transform: rotate(360deg);
|
|
9675
|
+
}
|
|
9676
|
+
}
|
|
9677
|
+
@keyframes blu-motion-pulse {
|
|
9678
|
+
50% {
|
|
9679
|
+
opacity: .45;
|
|
9680
|
+
}
|
|
9681
|
+
}
|
|
9682
|
+
.blu-motion-button.blu-button {
|
|
9683
|
+
display: inline-grid;
|
|
9684
|
+
gap: 0;
|
|
9685
|
+
transition-duration: var(--blu-motion-duration);
|
|
9686
|
+
}
|
|
9687
|
+
.blu-motion-button__face,
|
|
9688
|
+
.blu-motion-button__reserve {
|
|
9689
|
+
grid-area: 1 / 1;
|
|
9690
|
+
padding-inline: 24px;
|
|
9691
|
+
}
|
|
9692
|
+
.blu-motion-button__face {
|
|
9693
|
+
position: relative;
|
|
9694
|
+
display: inline-flex;
|
|
9695
|
+
align-items: center;
|
|
9696
|
+
justify-content: center;
|
|
9697
|
+
}
|
|
9698
|
+
.blu-motion-button__reserve {
|
|
9699
|
+
visibility: hidden;
|
|
9700
|
+
pointer-events: none;
|
|
9701
|
+
}
|
|
9702
|
+
.blu-motion-button .blu-button__spinner {
|
|
9703
|
+
position: absolute;
|
|
9704
|
+
inset-inline-start: 0;
|
|
9705
|
+
}
|
|
9706
|
+
.blu-motion-button[data-spinner-position=Trailing] .blu-button__spinner {
|
|
9707
|
+
inset-inline-start: auto;
|
|
9708
|
+
inset-inline-end: 0;
|
|
9709
|
+
}
|
|
9710
|
+
.blu-motion-button .blu-button__spinner[hidden] {
|
|
9711
|
+
display: none;
|
|
9712
|
+
}
|
|
9713
|
+
.blu-motion-button.blu-button--loading {
|
|
9714
|
+
pointer-events: auto;
|
|
9715
|
+
}
|
|
9716
|
+
.blu-motion-sr-only {
|
|
9717
|
+
position: absolute;
|
|
9718
|
+
width: 1px;
|
|
9719
|
+
height: 1px;
|
|
9720
|
+
padding: 0;
|
|
9721
|
+
overflow: hidden;
|
|
9722
|
+
clip-path: inset(50%);
|
|
9723
|
+
white-space: nowrap;
|
|
9724
|
+
border: 0;
|
|
9725
|
+
}
|
|
9726
|
+
.blu-loading {
|
|
9727
|
+
display: flex;
|
|
9728
|
+
align-items: center;
|
|
9729
|
+
gap: 10px;
|
|
9730
|
+
font: inherit;
|
|
9731
|
+
color: inherit;
|
|
9732
|
+
}
|
|
9733
|
+
.blu-loading [hidden] {
|
|
9734
|
+
display: none !important;
|
|
9735
|
+
}
|
|
9736
|
+
.blu-loading__visual {
|
|
9737
|
+
width: 20px;
|
|
9738
|
+
height: 20px;
|
|
9739
|
+
flex-shrink: 0;
|
|
9740
|
+
}
|
|
9741
|
+
.blu-loading[data-variant=Spinner] .blu-loading__visual {
|
|
9742
|
+
border: 2px solid currentColor;
|
|
9743
|
+
border-right-color: transparent;
|
|
9744
|
+
border-radius: 50%;
|
|
9745
|
+
animation: blu-motion-spin 800ms linear infinite;
|
|
9746
|
+
}
|
|
9747
|
+
.blu-loading[data-variant=Spinner] i {
|
|
9748
|
+
display: none;
|
|
9749
|
+
}
|
|
9750
|
+
.blu-loading[data-variant=Dots] .blu-loading__visual {
|
|
9751
|
+
display: flex;
|
|
9752
|
+
align-items: center;
|
|
9753
|
+
width: 32px;
|
|
9754
|
+
gap: 3px;
|
|
9755
|
+
}
|
|
9756
|
+
.blu-loading[data-variant=Dots] i {
|
|
9757
|
+
width: 7px;
|
|
9758
|
+
height: 7px;
|
|
9759
|
+
background: currentColor;
|
|
9760
|
+
border-radius: 50%;
|
|
9761
|
+
animation: blu-motion-pulse 900ms ease-in-out infinite;
|
|
9762
|
+
}
|
|
9763
|
+
.blu-loading[data-variant=Dots] i:nth-child(2) {
|
|
9764
|
+
animation-delay: 150ms;
|
|
9765
|
+
}
|
|
9766
|
+
.blu-loading[data-variant=Dots] i:nth-child(3) {
|
|
9767
|
+
animation-delay: 300ms;
|
|
9768
|
+
}
|
|
9769
|
+
.blu-loading progress {
|
|
9770
|
+
width: 100%;
|
|
9771
|
+
height: 8px;
|
|
9772
|
+
accent-color: var(--bluui-primary, #5145e5);
|
|
9773
|
+
border: 0;
|
|
9774
|
+
border-radius: 8px;
|
|
9775
|
+
background: #e7e8f1;
|
|
9776
|
+
overflow: hidden;
|
|
9777
|
+
}
|
|
9778
|
+
.blu-loading progress::-webkit-progress-bar {
|
|
9779
|
+
background: #e7e8f1;
|
|
9780
|
+
border-radius: 8px;
|
|
9781
|
+
}
|
|
9782
|
+
.blu-loading progress::-webkit-progress-value {
|
|
9783
|
+
background: var(--bluui-primary, #5145e5);
|
|
9784
|
+
border-radius: 8px;
|
|
9785
|
+
}
|
|
9786
|
+
.blu-loading progress::-moz-progress-bar {
|
|
9787
|
+
background: var(--bluui-primary, #5145e5);
|
|
9788
|
+
}
|
|
9789
|
+
.blu-loading[data-variant=Bar] {
|
|
9790
|
+
flex-direction: column;
|
|
9791
|
+
align-items: stretch;
|
|
9792
|
+
}
|
|
9793
|
+
.blu-loading__bar {
|
|
9794
|
+
height: 8px;
|
|
9795
|
+
overflow: hidden;
|
|
9796
|
+
border-radius: 8px;
|
|
9797
|
+
background: #e7e8f1;
|
|
9798
|
+
}
|
|
9799
|
+
.blu-loading__bar::after {
|
|
9800
|
+
content: "";
|
|
9801
|
+
display: block;
|
|
9802
|
+
width: 35%;
|
|
9803
|
+
height: 100%;
|
|
9804
|
+
background: var(--bluui-primary, #5145e5);
|
|
9805
|
+
border-radius: inherit;
|
|
9806
|
+
animation: blu-motion-progress 1.2s ease-in-out infinite alternate;
|
|
9807
|
+
}
|
|
9808
|
+
@keyframes blu-motion-progress {
|
|
9809
|
+
to {
|
|
9810
|
+
transform: translateX(185%);
|
|
9811
|
+
}
|
|
9812
|
+
}
|
|
9813
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off),
|
|
9814
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) * {
|
|
9815
|
+
--blu-motion-duration: 0ms;
|
|
9816
|
+
--blu-motion-delay: 0ms;
|
|
9817
|
+
}
|
|
9818
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) :is([class*=blu-motion-], .blu-button__spinner, .blu-loading__visual, .blu-loading i),
|
|
9819
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off)[class*=blu-motion-],
|
|
9820
|
+
.blu-motion-off {
|
|
9821
|
+
animation: none !important;
|
|
9822
|
+
transition: none !important;
|
|
9823
|
+
}
|
|
9824
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-loading__bar::after {
|
|
9825
|
+
animation: none !important;
|
|
9826
|
+
}
|
|
9827
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-motion-hover-lift:is(:hover, :focus-visible, [data-blu-lifted=true]) {
|
|
9828
|
+
transform: none;
|
|
9829
|
+
}
|
|
9830
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9831
|
+
[class*=blu-motion-],
|
|
9832
|
+
.blu-button__spinner,
|
|
9833
|
+
.blu-loading__visual,
|
|
9834
|
+
.blu-loading i,
|
|
9835
|
+
.blu-loading__bar::after {
|
|
9836
|
+
animation: none !important;
|
|
9837
|
+
transition: none !important;
|
|
9838
|
+
}
|
|
9839
|
+
.blu-motion-hover-lift:is(:hover, :focus-visible, [data-blu-lifted=true]) {
|
|
9840
|
+
transform: none;
|
|
9841
|
+
}
|
|
9842
|
+
}
|
|
9843
|
+
.blu-motion-press[data-blu-pressed=true] {
|
|
9844
|
+
transform: scale(.97);
|
|
9845
|
+
}
|
|
9846
|
+
.blu-motion-highlight {
|
|
9847
|
+
animation: blu-motion-highlight 1400ms ease-in-out 1;
|
|
9848
|
+
}
|
|
9849
|
+
.blu-motion-nudge {
|
|
9850
|
+
animation: blu-motion-nudge 280ms var(--blu-motion-ease) 1;
|
|
9851
|
+
}
|
|
9852
|
+
@keyframes blu-motion-highlight {
|
|
9853
|
+
45% {
|
|
9854
|
+
box-shadow: 0 0 0 4px var(--blu-motion-highlight, #7770ed40);
|
|
9855
|
+
}
|
|
9856
|
+
}
|
|
9857
|
+
@keyframes blu-motion-nudge {
|
|
9858
|
+
25% {
|
|
9859
|
+
transform: translateX(-3px);
|
|
9860
|
+
}
|
|
9861
|
+
60% {
|
|
9862
|
+
transform: translateX(3px);
|
|
9863
|
+
}
|
|
9864
|
+
}
|
|
9865
|
+
:is([data-blu-motion=off], [data-blu-motion=reduced], .blu-motion-off) .blu-motion-press[data-blu-pressed=true],
|
|
9866
|
+
.blu-motion-press.blu-motion-off[data-blu-pressed=true] {
|
|
9867
|
+
transform: none;
|
|
9868
|
+
}
|
|
9869
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9870
|
+
.blu-motion-press[data-blu-pressed=true] {
|
|
9871
|
+
transform: none;
|
|
9872
|
+
}
|
|
9873
|
+
}
|
|
9874
|
+
.blu-motion-photo-frame {
|
|
9875
|
+
position: relative;
|
|
9876
|
+
overflow: hidden;
|
|
9877
|
+
isolation: isolate;
|
|
9878
|
+
}
|
|
9879
|
+
.blu-motion-photo-frame > img {
|
|
9880
|
+
display: block;
|
|
9881
|
+
width: 100%;
|
|
9882
|
+
height: 100%;
|
|
9883
|
+
object-fit: cover;
|
|
9884
|
+
}
|
|
9885
|
+
.blu-motion-border-glow {
|
|
9886
|
+
position: absolute;
|
|
9887
|
+
inset: -1px;
|
|
9888
|
+
border-radius: inherit;
|
|
9889
|
+
pointer-events: none !important;
|
|
9890
|
+
z-index: 1;
|
|
9891
|
+
filter: drop-shadow(0 0 4px var(--blu-glow-halo,#9b85ee80));
|
|
9892
|
+
}
|
|
9893
|
+
.blu-motion-border-glow__rim {
|
|
9894
|
+
position: absolute;
|
|
9895
|
+
inset: 0;
|
|
9896
|
+
padding: var(--blu-glow-width,2px);
|
|
9897
|
+
border-radius: inherit;
|
|
9898
|
+
overflow: hidden;
|
|
9899
|
+
pointer-events: none !important;
|
|
9900
|
+
-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
|
|
9901
|
+
-webkit-mask-composite: xor;
|
|
9902
|
+
mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
|
|
9903
|
+
mask-composite: exclude;
|
|
9904
|
+
}
|
|
9905
|
+
.blu-motion-border-glow__beam {
|
|
9906
|
+
position: absolute;
|
|
9907
|
+
left: 50%;
|
|
9908
|
+
top: 50%;
|
|
9909
|
+
width: var(--blu-glow-size,1800px);
|
|
9910
|
+
height: var(--blu-glow-size,1800px);
|
|
9911
|
+
background:
|
|
9912
|
+
conic-gradient(
|
|
9913
|
+
transparent 0deg,
|
|
9914
|
+
transparent 240deg,
|
|
9915
|
+
var(--blu-glow-tail,#b5a4ef60) 265deg,
|
|
9916
|
+
var(--blu-glow-color,#8060dd) 295deg,
|
|
9917
|
+
var(--blu-glow-tip,#d7c6ff) 315deg,
|
|
9918
|
+
transparent 340deg);
|
|
9919
|
+
transform: translate(-50%, -50%) rotate(0turn);
|
|
9920
|
+
animation: blu-border-orbit var(--blu-glow-duration,12s) linear infinite;
|
|
9921
|
+
}
|
|
9922
|
+
.blu-motion-border-glow[data-paused=true] .blu-motion-border-glow__beam {
|
|
9923
|
+
animation-play-state: paused;
|
|
9924
|
+
}
|
|
9925
|
+
@keyframes blu-border-orbit {
|
|
9926
|
+
from {
|
|
9927
|
+
transform: translate(-50%, -50%) rotate(0turn);
|
|
9928
|
+
}
|
|
9929
|
+
to {
|
|
9930
|
+
transform: translate(-50%, -50%) rotate(1turn);
|
|
9931
|
+
}
|
|
9932
|
+
}
|
|
9933
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow {
|
|
9934
|
+
filter: none;
|
|
9935
|
+
}
|
|
9936
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow__rim {
|
|
9937
|
+
background: var(--blu-glow-static,#b5a4ef80);
|
|
9938
|
+
}
|
|
9939
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-motion-border-glow__beam {
|
|
9940
|
+
animation: none !important;
|
|
9941
|
+
display: none;
|
|
9942
|
+
}
|
|
9943
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9944
|
+
.blu-motion-border-glow {
|
|
9945
|
+
filter: none;
|
|
9946
|
+
}
|
|
9947
|
+
.blu-motion-border-glow__rim {
|
|
9948
|
+
background: var(--blu-glow-static,#b5a4ef80);
|
|
9949
|
+
}
|
|
9950
|
+
.blu-motion-border-glow__beam {
|
|
9951
|
+
animation: none !important;
|
|
9952
|
+
display: none;
|
|
9953
|
+
}
|
|
9954
|
+
}
|
|
9955
|
+
@media (forced-colors: active) {
|
|
9956
|
+
.blu-motion-border-glow {
|
|
9957
|
+
display: none;
|
|
9958
|
+
}
|
|
9959
|
+
}
|
|
9960
|
+
[data-blu-content-motion] .blu-profile-card {
|
|
9961
|
+
transition: translate var(--blu-component-motion-duration,450ms) var(--blu-component-motion-ease,ease-in-out);
|
|
9962
|
+
}
|
|
9963
|
+
[data-blu-content-motion] .blu-profile-card:is(:hover, :focus-within) {
|
|
9964
|
+
translate: 0 -4px;
|
|
9965
|
+
}
|
|
9966
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] .blu-profile-card,
|
|
9967
|
+
[data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) .blu-profile-card {
|
|
9968
|
+
translate: none;
|
|
9969
|
+
transition: none;
|
|
9970
|
+
}
|
|
9971
|
+
[data-blu-content-motion] :is(.blu-tree-select__check, .blu-video-player__heatmap) {
|
|
9972
|
+
transition-duration: var(--blu-component-motion-duration,450ms);
|
|
9973
|
+
transition-timing-function: var(--blu-component-motion-ease,ease-in-out);
|
|
9974
|
+
}
|
|
9975
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] :is(.blu-tree-select__check, .blu-video-player__heatmap) {
|
|
9976
|
+
transition: none;
|
|
9977
|
+
}
|
|
9978
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9979
|
+
[data-blu-content-motion] .blu-profile-card {
|
|
9980
|
+
translate: none;
|
|
9981
|
+
transition: none;
|
|
9982
|
+
}
|
|
9983
|
+
}
|
|
9984
|
+
[data-blu-content-motion=chip] .blu-chip__select {
|
|
9985
|
+
border-radius: inherit;
|
|
9986
|
+
}
|
|
9987
|
+
[data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
|
|
9988
|
+
animation-duration: 1800ms;
|
|
9989
|
+
animation-iteration-count: 2;
|
|
9990
|
+
}
|
|
9991
|
+
[data-blu-component-motion=statistic] .blu-statistic__loading {
|
|
9992
|
+
animation-duration: 1800ms;
|
|
9993
|
+
animation-iteration-count: 2;
|
|
9994
|
+
}
|
|
9995
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
|
|
9996
|
+
animation: none !important;
|
|
9997
|
+
display: none;
|
|
9998
|
+
}
|
|
9999
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-component-motion=statistic] .blu-statistic__loading {
|
|
10000
|
+
animation: none !important;
|
|
10001
|
+
}
|
|
10002
|
+
@media (prefers-reduced-motion: reduce) {
|
|
10003
|
+
[data-blu-content-motion=skeleton] .blu-skeleton--animated::after {
|
|
10004
|
+
animation: none !important;
|
|
10005
|
+
display: none;
|
|
10006
|
+
}
|
|
10007
|
+
[data-blu-component-motion=statistic] .blu-statistic__loading {
|
|
10008
|
+
animation: none !important;
|
|
10009
|
+
}
|
|
10010
|
+
}
|
|
10011
|
+
[data-blu-content-motion=media-image] img {
|
|
10012
|
+
transition-duration: var(--blu-component-motion-duration,650ms);
|
|
10013
|
+
transition-timing-function: var(--blu-component-motion-ease,ease-in-out);
|
|
10014
|
+
}
|
|
10015
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion=media-image] img {
|
|
10016
|
+
transition: none !important;
|
|
10017
|
+
transform: none !important;
|
|
10018
|
+
}
|
|
10019
|
+
[data-blu-content-motion] .blu-button {
|
|
10020
|
+
transition-duration: var(--blu-component-motion-duration,280ms);
|
|
10021
|
+
}
|
|
10022
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *,
|
|
10023
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *::before,
|
|
10024
|
+
:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) [data-blu-content-motion] *::after,
|
|
10025
|
+
[data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *,
|
|
10026
|
+
[data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *::before,
|
|
10027
|
+
[data-blu-content-motion]:is([data-blu-motion=reduced], [data-blu-motion=off], .blu-motion-off) *::after {
|
|
10028
|
+
transition: none !important;
|
|
10029
|
+
animation: none !important;
|
|
10030
|
+
}
|
|
10031
|
+
|
|
10032
|
+
/* Opt-in web motion. Existing components remain unchanged without the integration. */
|
|
10033
|
+
[data-blu-component-motion=field] :is(.blu-text,.blu-textarea,.blu-select__trigger,.blu-choice__mark,.blu-text__action){transition:background-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),border-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),box-shadow var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease)}
|
|
10034
|
+
[data-blu-component-motion=field] .blu-choice--switch .blu-choice__mark::after{transition:transform var(--blu-component-motion-duration,320ms) var(--blu-component-motion-ease,cubic-bezier(.2,.8,.2,1))}
|
|
10035
|
+
[data-blu-component-motion=field] .blu-choice--radio .blu-choice__mark::after{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;transform:scale(0);transition:transform var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease-out)}
|
|
10036
|
+
[data-blu-component-motion=field] .blu-choice--radio input:checked+.blu-choice__mark::after{transform:scale(1)}
|
|
10037
|
+
[data-blu-component-motion=field] .blu-select__trigger::after{transition:transform var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease-out)}
|
|
10038
|
+
[data-blu-component-motion=field] .blu-select__trigger[aria-expanded=true]::after{transform:translateY(2px) rotate(225deg)}
|
|
10039
|
+
[data-blu-exit-visual] :disabled{opacity:1!important}
|
|
10040
|
+
/* Focus rings and validation semantics stay immediate; only decorative feedback moves. */
|
|
10041
|
+
:is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) [data-blu-component-motion=field] *,
|
|
10042
|
+
:is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) [data-blu-component-motion=field] *::after{transition:none!important;animation:none!important}
|
|
10043
|
+
@media(prefers-reduced-motion:reduce){[data-blu-component-motion=field] *,[data-blu-component-motion=field] *::after{transition:none!important;animation:none!important}}
|
|
10044
|
+
[data-blu-surface-motion] :is(.blu-select__option,.blu-command__option,.blu-control){transition:background-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),border-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease)}
|
|
10045
|
+
:is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) [data-blu-surface-motion] *{transition:none!important}
|
|
10046
|
+
@media(prefers-reduced-motion:reduce){[data-blu-surface-motion] *{transition:none!important}}
|
|
10047
|
+
/* Side drawers meet both viewport edges; the content scrolls between fixed header/footer. */
|
|
10048
|
+
[data-blu-surface-motion=drawer].blu-overlay:is([data-placement=left],[data-placement=right]){padding:0;align-items:stretch}
|
|
10049
|
+
[data-blu-surface-motion=drawer].blu-overlay:is([data-placement=left],[data-placement=right])>.blu-overlay__panel{margin:0;height:100dvh;max-height:100dvh;min-height:0;border-radius:0}
|
|
10050
|
+
[data-blu-surface-motion=drawer] :is(.blu-overlay__header,.blu-overlay__footer){flex-shrink:0}
|
|
10051
|
+
/* Existing notification keyframes are replaced by the scoped controller. */
|
|
10052
|
+
[data-blu-component-motion=notifications] .blu-notification{animation:none}
|
|
10053
|
+
[data-blu-component-motion=tree] .blu-tree__row{transition:background-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease)}
|
|
10054
|
+
[data-blu-surface-motion=picker] :is(.blu-picker__button,.blu-picker__input,.blu-picker__day){transition:background-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),border-color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease),color var(--blu-component-motion-duration,280ms) var(--blu-component-motion-ease,ease)}
|
|
10055
|
+
:is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) [data-blu-component-motion=tree] *{transition:none!important}
|
|
10056
|
+
@media(prefers-reduced-motion:reduce){[data-blu-component-motion=tree] *{transition:none!important}}
|
|
10057
|
+
/* Web-only active-location markers: existing links retain focus and behavior. */
|
|
10058
|
+
.blu-motion-navigation-marker{position:absolute;display:block;border-radius:3px;background:var(--bluui-primary,#5144ed);pointer-events:none;transform-origin:top left;z-index:1}
|
|
10059
|
+
.blu-motion-navigation-marker[hidden]{display:none}
|
|
10060
|
+
.blu-motion-navigation-marker[data-kind=pagination]{box-sizing:border-box;border:2px solid var(--bluui-primary,#5144ed);border-radius:8px;background:transparent}
|
|
10061
|
+
[data-blu-navigation-motion] .blu-navigation-menu .blu-navigation-menu__link--active{color:var(--bluui-primary,#5144ed);background:var(--bluui-color-primary-soft,#efedff)}
|
|
10062
|
+
@media(forced-colors:active){.blu-motion-navigation-marker{background:Highlight}}
|
|
10063
|
+
@media(forced-colors:active){.blu-motion-navigation-marker[data-kind=pagination]{background:transparent;border-color:Highlight}}
|
|
10064
|
+
|
|
10065
|
+
/* Shared finite transition settings; continuous loading keeps its own cadence. */
|
|
10066
|
+
.blu-motion-button.blu-button{transition-duration:var(--blu-component-motion-duration,var(--blu-motion-duration));transition-timing-function:var(--blu-component-motion-ease,var(--blu-motion-ease))}
|
|
10067
|
+
/* A preference may sit on the component root itself, not only its parent. */
|
|
10068
|
+
:is([data-blu-component-motion],[data-blu-surface-motion],[data-blu-navigation-motion]):is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) *,
|
|
10069
|
+
:is([data-blu-component-motion],[data-blu-surface-motion],[data-blu-navigation-motion]):is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) *::before,
|
|
10070
|
+
:is([data-blu-component-motion],[data-blu-surface-motion],[data-blu-navigation-motion]):is([data-blu-motion=reduced],[data-blu-motion=off],.blu-motion-off) *::after{transition:none!important;animation:none!important}
|
|
10071
|
+
|
|
10072
|
+
.blu-data-motion-exits { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 3; border-radius: inherit; }
|
|
10073
|
+
.blu-data-motion-exit { position: absolute; display: grid; background: var(--bluui-surface, #fff); color: var(--bluui-text-muted, #68758b); font-size: 13px; align-items: center; border-bottom: 1px solid var(--bluui-border, #dce3ed); pointer-events: none; }
|
|
10074
|
+
.blu-data-motion-exit > span { padding: 10px 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
10075
|
+
@media (forced-colors: active) { .blu-data-motion-exits { display: none; } }
|