blue-web 1.21.1 → 1.21.7
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/LICENSE +164 -164
- package/README.md +74 -74
- package/dist/js/actions.d.ts +6 -6
- package/dist/js/color-mode.d.ts +4 -4
- package/dist/js/dialog.d.ts +18 -18
- package/dist/js/edit-view.d.ts +14 -14
- package/dist/js/edit-view.js +2 -2
- package/dist/js/input-splitted.d.ts +19 -19
- package/dist/js/odometer.d.ts +30 -30
- package/dist/js/odometer.js +8 -8
- package/dist/js/progress.d.ts +2 -2
- package/dist/js/read-view.d.ts +35 -35
- package/dist/js/read-view.js +18 -18
- package/dist/js/select-list.d.ts +46 -46
- package/dist/js/select-list.js +17 -17
- package/dist/js/shared.d.ts +14 -14
- package/dist/js/side-layout.d.ts +7 -7
- package/dist/js/utils.d.ts +18 -18
- package/dist/js/utils.js +6 -6
- package/dist/merged.scss +2170 -2170
- package/dist/neu.scss +92 -92
- package/dist/style.css +1 -1
- package/dist/style.min.css +1 -1
- package/dist/style.scss +62 -62
- package/dist/styles/_action-menu.scss +57 -57
- package/dist/styles/_actions.scss +37 -37
- package/dist/styles/_anchor.scss +42 -42
- package/dist/styles/_bootstrap-mixins_overwritten.scss +106 -106
- package/dist/styles/_bootstrap-variables.scss +46 -46
- package/dist/styles/_bootstrap.scss +64 -64
- package/dist/styles/_button-icon-wrapper.scss +28 -28
- package/dist/styles/_buttons.scss +120 -120
- package/dist/styles/_collapse.scss +72 -72
- package/dist/styles/_container-grid.scss +52 -52
- package/dist/styles/_devexpress.scss +104 -104
- package/dist/styles/_general.scss +55 -55
- package/dist/styles/_hover.scss +37 -37
- package/dist/styles/_input-group.scss +29 -29
- package/dist/styles/_inter.scss +19 -19
- package/dist/styles/_intro.scss +22 -22
- package/dist/styles/_keyframes.scss +73 -73
- package/dist/styles/_layout.scss +175 -175
- package/dist/styles/_menu-item.scss +86 -86
- package/dist/styles/_mixins.scss +6 -6
- package/dist/styles/_modal.scss +118 -118
- package/dist/styles/_page-header.scss +14 -14
- package/dist/styles/_scrollspy.scss +78 -78
- package/dist/styles/_status.scss +131 -131
- package/dist/styles/_text-icons.scss +15 -15
- package/dist/styles/_tooltips.scss +150 -150
- package/dist/styles/_utils.scss +20 -20
- package/dist/styles/_variables.scss +128 -128
- package/dist/styles/mixins/_action-menu.scss +64 -64
- package/dist/styles/mixins/_custom-property.scss +10 -10
- package/dist/styles/mixins/_menu-item.scss +136 -136
- package/dist/styles/mixins/_misc.scss +7 -7
- package/dist/styles/mixins/_scroll-shadow.scss +9 -9
- package/dist/styles/mixins/_switch.scss +91 -91
- package/package.json +87 -88
- package/dist/container-grid.css +0 -196
- package/dist/js/auto-theme.bundle.js +0 -1
- package/dist/js/auto-theme.d.ts +0 -26
- package/dist/js/auto-theme.js +0 -169
- package/dist/js/button.bundle.js +0 -1
- package/dist/js/button.d.ts +0 -6
- package/dist/js/button.js +0 -16
- package/dist/js/dialog.bundle.js.LICENSE.txt +0 -5
- package/dist/js/dxf-viewer.js +0 -129
- package/dist/js/searchbox.bundle.js +0 -2
- package/dist/js/searchbox.bundle.js.LICENSE.txt +0 -11
- package/dist/js/searchbox.d.ts +0 -16
- package/dist/js/searchbox.js +0 -158
- package/dist/tailwind-main.css +0 -737
package/dist/merged.scss
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Blue Web v1.21.
|
|
3
|
-
* Licensed under GNU General Public License v3.0 (https://github.com/bruegmann/blue-web/blob/master/LICENSE).
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
// Main color theme. E.g. used for background for body and sidebar.
|
|
7
|
-
$theme: hsl(217deg 10% 94%) !default;
|
|
8
|
-
$theme-dark: hsl(217deg 10% 8%) !default;
|
|
9
|
-
$primary: hsl(221, 97%, 53%) !default;
|
|
10
|
-
$white: #fff !default;
|
|
11
|
-
$gray-100: hsl(217deg 17% 98%) !default;
|
|
12
|
-
$gray-200: hsl(217deg 16% 93%) !default;
|
|
13
|
-
$gray-300: hsl(217deg 14% 89%) !default;
|
|
14
|
-
$gray-400: hsl(217deg 14% 83%) !default;
|
|
15
|
-
$gray-500: hsl(217deg 11% 71%) !default;
|
|
16
|
-
$gray-600: hsl(217deg 7% 46%) !default;
|
|
17
|
-
$gray-700: hsl(217deg 9% 31%) !default;
|
|
18
|
-
$gray-800: hsl(217deg 10% 23%) !default;
|
|
19
|
-
$gray-900: hsl(217deg 11% 15%) !default;
|
|
20
|
-
$black: #000 !default;
|
|
21
|
-
|
|
22
|
-
$light: #ecedf0 !default;
|
|
23
|
-
|
|
24
|
-
// Components
|
|
25
|
-
//
|
|
26
|
-
|
|
27
|
-
$font-size-base: 1rem !default;
|
|
28
|
-
|
|
29
|
-
$h1-font-size: $font-size-base * 2 !default;
|
|
30
|
-
$h2-font-size: $font-size-base * 1.5 !default;
|
|
31
|
-
$h3-font-size: $font-size-base * 1.25 !default;
|
|
32
|
-
$h4-font-size: $font-size-base * 1.125 !default;
|
|
33
|
-
$h5-font-size: $font-size-base * 1.1 !default;
|
|
34
|
-
$h6-font-size: $font-size-base !default;
|
|
35
|
-
|
|
36
|
-
$border-radius: 0.7rem !default;
|
|
37
|
-
$border-radius-lg: 1rem !default;
|
|
38
|
-
$border-radius-sm: 0.5rem !default;
|
|
39
|
-
|
|
40
|
-
$custom-checkbox-indicator-border-radius: $border-radius-sm !default;
|
|
41
|
-
|
|
42
|
-
$link-decoration: none !default;
|
|
43
|
-
$link-hover-decoration: underline !default;
|
|
44
|
-
|
|
45
|
-
// Tint focus border and shadow in primary color.
|
|
46
|
-
// In a future Bootstrap release, this might not be necessary anymore.
|
|
47
|
-
$focus-ring-color: #{rgba(var(--bs-primary-rgb), 25%)} !default;
|
|
48
|
-
$input-focus-border-color: #{rgba(var(--bs-primary-rgb), 50%)} !default;
|
|
49
|
-
|
|
50
|
-
$enable-button-pointers: false !default;
|
|
51
|
-
$focus-ring-width: 0.125rem !default;
|
|
52
|
-
|
|
53
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Blue Web v1.21.7 (https://bruegmann.github.io/blue-web)
|
|
3
|
+
* Licensed under GNU General Public License v3.0 (https://github.com/bruegmann/blue-web/blob/master/LICENSE).
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// Main color theme. E.g. used for background for body and sidebar.
|
|
7
|
+
$theme: hsl(217deg 10% 94%) !default;
|
|
8
|
+
$theme-dark: hsl(217deg 10% 8%) !default;
|
|
9
|
+
$primary: hsl(221, 97%, 53%) !default;
|
|
10
|
+
$white: #fff !default;
|
|
11
|
+
$gray-100: hsl(217deg 17% 98%) !default;
|
|
12
|
+
$gray-200: hsl(217deg 16% 93%) !default;
|
|
13
|
+
$gray-300: hsl(217deg 14% 89%) !default;
|
|
14
|
+
$gray-400: hsl(217deg 14% 83%) !default;
|
|
15
|
+
$gray-500: hsl(217deg 11% 71%) !default;
|
|
16
|
+
$gray-600: hsl(217deg 7% 46%) !default;
|
|
17
|
+
$gray-700: hsl(217deg 9% 31%) !default;
|
|
18
|
+
$gray-800: hsl(217deg 10% 23%) !default;
|
|
19
|
+
$gray-900: hsl(217deg 11% 15%) !default;
|
|
20
|
+
$black: #000 !default;
|
|
21
|
+
|
|
22
|
+
$light: #ecedf0 !default;
|
|
23
|
+
|
|
24
|
+
// Components
|
|
25
|
+
//
|
|
26
|
+
|
|
27
|
+
$font-size-base: 1rem !default;
|
|
28
|
+
|
|
29
|
+
$h1-font-size: $font-size-base * 2 !default;
|
|
30
|
+
$h2-font-size: $font-size-base * 1.5 !default;
|
|
31
|
+
$h3-font-size: $font-size-base * 1.25 !default;
|
|
32
|
+
$h4-font-size: $font-size-base * 1.125 !default;
|
|
33
|
+
$h5-font-size: $font-size-base * 1.1 !default;
|
|
34
|
+
$h6-font-size: $font-size-base !default;
|
|
35
|
+
|
|
36
|
+
$border-radius: 0.7rem !default;
|
|
37
|
+
$border-radius-lg: 1rem !default;
|
|
38
|
+
$border-radius-sm: 0.5rem !default;
|
|
39
|
+
|
|
40
|
+
$custom-checkbox-indicator-border-radius: $border-radius-sm !default;
|
|
41
|
+
|
|
42
|
+
$link-decoration: none !default;
|
|
43
|
+
$link-hover-decoration: underline !default;
|
|
44
|
+
|
|
45
|
+
// Tint focus border and shadow in primary color.
|
|
46
|
+
// In a future Bootstrap release, this might not be necessary anymore.
|
|
47
|
+
$focus-ring-color: #{rgba(var(--bs-primary-rgb), 25%)} !default;
|
|
48
|
+
$input-focus-border-color: #{rgba(var(--bs-primary-rgb), 50%)} !default;
|
|
49
|
+
|
|
50
|
+
$enable-button-pointers: false !default;
|
|
51
|
+
$focus-ring-width: 0.125rem !default;
|
|
52
|
+
|
|
53
|
+
|
|
54
54
|
// Bootstrap functions
|
|
55
55
|
//
|
|
56
56
|
// Utility mixins and functions for evaluating source code across our variables, maps, and mixins.
|
|
@@ -353,7 +353,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
|
|
|
353
353
|
}
|
|
354
354
|
@return $result;
|
|
355
355
|
}
|
|
356
|
-
|
|
356
|
+
|
|
357
357
|
// Variables
|
|
358
358
|
//
|
|
359
359
|
// Variables should follow the `$component-state-property-size` formula for
|
|
@@ -2209,7 +2209,7 @@ $carousel-control-icon-filter-dark: $carousel-dark-control-icon-filter !defaul
|
|
|
2209
2209
|
|
|
2210
2210
|
$btn-close-filter-dark: $btn-close-white-filter !default;
|
|
2211
2211
|
// TODO: can be removed safely in v6, only here to avoid breaking changes in v5.3
|
|
2212
|
-
|
|
2212
|
+
|
|
2213
2213
|
// Toggles
|
|
2214
2214
|
//
|
|
2215
2215
|
// Used in conjunction with global variables to enable certain theme features.
|
|
@@ -3650,536 +3650,536 @@ $rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height
|
|
|
3650
3650
|
}
|
|
3651
3651
|
}
|
|
3652
3652
|
|
|
3653
|
-
|
|
3654
|
-
$theme-colors: () !default;
|
|
3655
|
-
// stylelint-disable-next-line scss/dollar-variable-default
|
|
3656
|
-
$theme-colors: map-merge(
|
|
3657
|
-
(
|
|
3658
|
-
"theme": $theme
|
|
3659
|
-
),
|
|
3660
|
-
$theme-colors
|
|
3661
|
-
);
|
|
3662
|
-
|
|
3663
|
-
// Alpha value (RGBA) e.g. for header background.
|
|
3664
|
-
$shimmering: 0.8 !default;
|
|
3665
|
-
|
|
3666
|
-
// Thumb color of scrollbar.
|
|
3667
|
-
$scrollbar-thumb-color: white !default;
|
|
3668
|
-
|
|
3669
|
-
// Thumb color of scrollbar as RGB (like `255, 255, 255`).
|
|
3670
|
-
$scrollbar-thumb-color-rgb:
|
|
3671
|
-
red($scrollbar-thumb-color), green($scrollbar-thumb-color), blue($scrollbar-thumb-color) !default;
|
|
3672
|
-
|
|
3673
|
-
// Default size for many components, like sidebar menu items.
|
|
3674
|
-
$normal-size: calc(
|
|
3675
|
-
var(--bs-btn-border-width, 1px) + var(--bs-btn-padding-y, 0.375rem) +
|
|
3676
|
-
(var(--bs-btn-font-size, 1rem) * var(--bs-btn-line-height, 1.5)) + var(--bs-btn-padding-y, 0.375rem) +
|
|
3677
|
-
var(--bs-btn-border-width, 1px)
|
|
3678
|
-
) !default;
|
|
3679
|
-
|
|
3680
|
-
// Height of actions menu when it is expanded, like on mobile devices.
|
|
3681
|
-
$actions-height: 7.5rem !default;
|
|
3682
|
-
|
|
3683
|
-
// Background color of menu toggle button.
|
|
3684
|
-
$bla-button-bg-normal: rgba(0, 0, 0, 0.1) !default;
|
|
3685
|
-
|
|
3686
|
-
// Background color of menu toggle button on hover state.
|
|
3687
|
-
$bla-button-bg-hover: rgba(white, 0.25) !default;
|
|
3688
|
-
|
|
3689
|
-
// Font size for sidebar menu items.
|
|
3690
|
-
$bla-btn-font-size: 1em !default;
|
|
3691
|
-
|
|
3692
|
-
// Padding for action menu items.
|
|
3693
|
-
$bla-header-nav-padding: 0.75rem !default;
|
|
3694
|
-
|
|
3695
|
-
// Width of the sidebar.
|
|
3696
|
-
$bla-sidebar-width: 16.563rem !default;
|
|
3697
|
-
|
|
3698
|
-
// Background of sidebar.
|
|
3699
|
-
$sidebar-bg: $theme !default;
|
|
3700
|
-
$sidebar-bg-dark: $theme-dark !default;
|
|
3701
|
-
|
|
3702
|
-
// Background of sidebar when it's opened (on mobile devices).
|
|
3703
|
-
$sidebar-open-bg: darken($sidebar-bg, 30%) !default;
|
|
3704
|
-
|
|
3705
|
-
// Background of sidebar menu dropdown menus
|
|
3706
|
-
$sidebar-deep-bg: darken($sidebar-bg, 4%) !default;
|
|
3707
|
-
|
|
3708
|
-
// Text color of sidebar.
|
|
3709
|
-
$sidebar-color: color-contrast($sidebar-bg, $gray-900) !default;
|
|
3710
|
-
$sidebar-color-dark: color-contrast($sidebar-bg-dark, $gray-900) !default;
|
|
3711
|
-
|
|
3712
|
-
// Color of indicator for active menu item in sidebar.
|
|
3713
|
-
$sidebar-indicator-color: $primary !default;
|
|
3714
|
-
$sidebar-indicator-color-dark: $white !default;
|
|
3715
|
-
|
|
3716
|
-
// Background of search control in sidebar.
|
|
3717
|
-
$sidebar-search-bg: $input-bg !default;
|
|
3718
|
-
|
|
3719
|
-
// Background of the body element
|
|
3720
|
-
$app-bg: $theme !default;
|
|
3721
|
-
$app-bg-dark: $theme-dark !default;
|
|
3722
|
-
|
|
3723
|
-
// Background color of Header
|
|
3724
|
-
$header-bg: $theme !default;
|
|
3725
|
-
$header-bg-dark: $theme-dark !default;
|
|
3726
|
-
|
|
3727
|
-
// Text color of header elements
|
|
3728
|
-
$header-color: color-contrast($header-bg, $gray-900) !default;
|
|
3729
|
-
$header-color-dark: color-contrast($header-bg-dark, $gray-900) !default;
|
|
3730
|
-
|
|
3731
|
-
// Background of header action menu dropdown menus
|
|
3732
|
-
$header-deep-bg: darken($header-bg, 4%) !default;
|
|
3733
|
-
|
|
3734
|
-
// Background color, when hovering action menu item.
|
|
3735
|
-
$actions-control-bg-hover: $bla-button-bg-hover !default;
|
|
3736
|
-
|
|
3737
|
-
// Shrink sidebar on smaller screens
|
|
3738
|
-
$sidebar-shrink: true !default;
|
|
3739
|
-
|
|
3740
|
-
// Breakpoint for sidebar shrink
|
|
3741
|
-
$sidebar-shrink-breakpoint: 600px !default;
|
|
3742
|
-
|
|
3743
|
-
// Breakpoint for sidebar fully expanded
|
|
3744
|
-
$sidebar-expanded-breakpoint: 1400px !default;
|
|
3745
|
-
|
|
3746
|
-
$corner-shape: #{round} !default;
|
|
3747
|
-
|
|
3748
|
-
:root {
|
|
3749
|
-
--blue-app-bg: #{$app-bg};
|
|
3750
|
-
|
|
3751
|
-
--blue-scrollbar-thumb-color-rgb: #{$scrollbar-thumb-color-rgb};
|
|
3752
|
-
|
|
3753
|
-
--blue-sidebar-width: #{$bla-sidebar-width};
|
|
3754
|
-
--blue-sidebar-color: #{$sidebar-color};
|
|
3755
|
-
--blue-theme: var(--theme, #{$theme});
|
|
3756
|
-
--blue-shimmering: 0.9;
|
|
3757
|
-
|
|
3758
|
-
--blue-sidebar-bg: #{$sidebar-bg};
|
|
3759
|
-
--blue-header-bg: #{$header-bg};
|
|
3760
|
-
|
|
3761
|
-
--blue-header-height: 3.429rem;
|
|
3762
|
-
--blue-header-color: #{$header-color};
|
|
3763
|
-
--blue-action-link-bg-color: var(--blue-theme);
|
|
3764
|
-
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
|
|
3765
|
-
--blue-menu-item-height: #{$normal-size};
|
|
3766
|
-
|
|
3767
|
-
--blue-corner-shape: #{$corner-shape};
|
|
3768
|
-
}
|
|
3769
|
-
|
|
3770
|
-
@include color-mode(dark, true) {
|
|
3771
|
-
--blue-app-bg: #{$app-bg-dark};
|
|
3772
|
-
|
|
3773
|
-
--blue-sidebar-color: #{$sidebar-color-dark};
|
|
3774
|
-
|
|
3775
|
-
--blue-sidebar-bg: #{$sidebar-bg-dark};
|
|
3776
|
-
--blue-header-bg: #{$header-bg-dark};
|
|
3777
|
-
|
|
3778
|
-
--blue-header-color: #{$header-color-dark};
|
|
3779
|
-
|
|
3780
|
-
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
3781
|
-
}
|
|
3782
|
-
|
|
3783
|
-
|
|
3784
|
-
@mixin header-bg() {
|
|
3785
|
-
background-image: linear-gradient(
|
|
3786
|
-
var(--blue-header-bg, $header-bg),
|
|
3787
|
-
rgba(var(--blue-header-bg-rgb, var(--bs-theme-rgb)), var(--blue-shimmering, $shimmering))
|
|
3788
|
-
);
|
|
3789
|
-
backdrop-filter: blur(3px) saturate(125%);
|
|
3790
|
-
}
|
|
3791
|
-
|
|
3792
|
-
@mixin blue-menu-item-background() {
|
|
3793
|
-
content: "";
|
|
3794
|
-
position: absolute;
|
|
3795
|
-
top: 0.125rem;
|
|
3796
|
-
right: 0.125rem;
|
|
3797
|
-
bottom: 0.125rem;
|
|
3798
|
-
left: 0.125rem;
|
|
3799
|
-
background-color: currentColor;
|
|
3800
|
-
border-radius: $border-radius;
|
|
3801
|
-
transform: scale(0.9);
|
|
3802
|
-
opacity: 0;
|
|
3803
|
-
transition: all 0.2s;
|
|
3804
|
-
|
|
3805
|
-
@media (prefers-reduced-motion) {
|
|
3806
|
-
transition: none;
|
|
3807
|
-
}
|
|
3808
|
-
}
|
|
3809
|
-
|
|
3810
|
-
@mixin blue-menu-item-indicator() {
|
|
3811
|
-
content: "";
|
|
3812
|
-
position: absolute;
|
|
3813
|
-
top: 0.625rem;
|
|
3814
|
-
bottom: 0.625rem;
|
|
3815
|
-
left: 0.125rem;
|
|
3816
|
-
right: initial;
|
|
3817
|
-
width: 3px;
|
|
3818
|
-
height: auto;
|
|
3819
|
-
background-color: var(--blue-menu-item-indicator-bg);
|
|
3820
|
-
border-radius: 1rem;
|
|
3821
|
-
animation: blue-menu-item-indicator-in-from-side 0.2s ease-in-out;
|
|
3822
|
-
|
|
3823
|
-
@media (prefers-reduced-motion) {
|
|
3824
|
-
animation-duration: 0s;
|
|
3825
|
-
}
|
|
3826
|
-
}
|
|
3827
|
-
|
|
3828
|
-
@mixin blue-menu-item-indicator-horizontal() {
|
|
3829
|
-
top: initial;
|
|
3830
|
-
bottom: 0.125rem;
|
|
3831
|
-
left: 50%;
|
|
3832
|
-
transform: translateX(-50%);
|
|
3833
|
-
width: 2em;
|
|
3834
|
-
height: 3px;
|
|
3835
|
-
animation: blue-menu-item-indicator-in-from-below 0.2s ease-in-out;
|
|
3836
|
-
|
|
3837
|
-
@media (prefers-reduced-motion) {
|
|
3838
|
-
animation-duration: 0s;
|
|
3839
|
-
}
|
|
3840
|
-
}
|
|
3841
|
-
|
|
3842
|
-
@mixin blue-menu-item-dropdown-for-shrunk-sidebar() {
|
|
3843
|
-
& > .blue-menu-item-wrapper {
|
|
3844
|
-
display: block;
|
|
3845
|
-
position: relative;
|
|
3846
|
-
|
|
3847
|
-
&:not(:has(.blue-menu-item-dropdown)) > .blue-menu-item:hover {
|
|
3848
|
-
.blue-menu-item-label {
|
|
3849
|
-
&::before,
|
|
3850
|
-
& {
|
|
3851
|
-
animation: tips-horz 150ms cubic-bezier(0.5, 0, 0.6, 1.3) 1ms forwards;
|
|
3852
|
-
|
|
3853
|
-
@media (prefers-reduced-motion) {
|
|
3854
|
-
animation-duration: 0s;
|
|
3855
|
-
}
|
|
3856
|
-
}
|
|
3857
|
-
|
|
3858
|
-
&::before {
|
|
3859
|
-
content: "";
|
|
3860
|
-
display: block;
|
|
3861
|
-
position: absolute;
|
|
3862
|
-
border: 5px solid transparent;
|
|
3863
|
-
z-index: 1001;
|
|
3864
|
-
|
|
3865
|
-
top: 50%;
|
|
3866
|
-
border-left-width: 0;
|
|
3867
|
-
border-right-color: var(--bs-tooltip-bg, #353539);
|
|
3868
|
-
left: calc(0em - 5px);
|
|
3869
|
-
transform: translate(0.5em, -50%);
|
|
3870
|
-
opacity: 0;
|
|
3871
|
-
}
|
|
3872
|
-
|
|
3873
|
-
display: block;
|
|
3874
|
-
text-transform: none;
|
|
3875
|
-
line-height: 1;
|
|
3876
|
-
font-size: 0.9em;
|
|
3877
|
-
-webkit-user-select: none;
|
|
3878
|
-
user-select: none;
|
|
3879
|
-
pointer-events: none;
|
|
3880
|
-
position: absolute;
|
|
3881
|
-
font-family: var(--bs-font-sans-serif);
|
|
3882
|
-
text-align: center;
|
|
3883
|
-
min-width: 3em;
|
|
3884
|
-
max-width: var(--bs-tooltip-max-width, 21em);
|
|
3885
|
-
padding: var(--bs-tooltip-padding-y, 1ch) var(--bs-tooltip-padding-x, 1.5ch);
|
|
3886
|
-
border-radius: var(--bs-tooltip-border-radius, 0.3em);
|
|
3887
|
-
box-shadow: 0 1em 2em -0.5em rgba(0, 0, 0, 0.35);
|
|
3888
|
-
background: var(--bs-tooltip-bg, #353539);
|
|
3889
|
-
color: var(--bs-tooltip-color, #fff);
|
|
3890
|
-
z-index: 1000;
|
|
3891
|
-
width: auto;
|
|
3892
|
-
top: 50%;
|
|
3893
|
-
left: calc(100% + 5px);
|
|
3894
|
-
transform: translate(-0.5em, -50%);
|
|
3895
|
-
overflow: visible;
|
|
3896
|
-
opacity: 0;
|
|
3897
|
-
}
|
|
3898
|
-
}
|
|
3899
|
-
|
|
3900
|
-
& > .blue-menu-item-dropdown,
|
|
3901
|
-
& > .blue-outside > .blue-menu-item-dropdown {
|
|
3902
|
-
@extend .ms-1;
|
|
3903
|
-
@extend .rounded;
|
|
3904
|
-
@extend .shadow;
|
|
3905
|
-
@extend .blue-menu-item-dropdown-from-start;
|
|
3906
|
-
|
|
3907
|
-
position: absolute;
|
|
3908
|
-
top: 0;
|
|
3909
|
-
width: $bla-sidebar-width;
|
|
3910
|
-
left: $normal-size;
|
|
3911
|
-
max-height: calc(100vh - (var(--offset-top, 0px) + 1rem));
|
|
3912
|
-
overflow-y: auto;
|
|
3913
|
-
overflow-x: hidden;
|
|
3914
|
-
background-color: var(--blue-sidebar-bg);
|
|
3915
|
-
|
|
3916
|
-
&::before {
|
|
3917
|
-
content: none;
|
|
3918
|
-
}
|
|
3919
|
-
}
|
|
3920
|
-
|
|
3921
|
-
&:has(.blue-menu-item-dropdown) {
|
|
3922
|
-
& > .blue-menu-item {
|
|
3923
|
-
@extend .highlighted;
|
|
3924
|
-
}
|
|
3925
|
-
}
|
|
3926
|
-
}
|
|
3927
|
-
}
|
|
3928
|
-
|
|
3929
|
-
@mixin show-action-menu-again() {
|
|
3930
|
-
max-height: initial;
|
|
3931
|
-
overflow: initial;
|
|
3932
|
-
|
|
3933
|
-
.blue-actions-menu {
|
|
3934
|
-
max-width: initial;
|
|
3935
|
-
}
|
|
3936
|
-
}
|
|
3937
|
-
|
|
3938
|
-
@mixin actions($breakpoint) {
|
|
3939
|
-
@media (max-width: #{$breakpoint + 1px}) {
|
|
3940
|
-
&.open {
|
|
3941
|
-
display: block;
|
|
3942
|
-
width: auto;
|
|
3943
|
-
position: absolute;
|
|
3944
|
-
z-index: 1;
|
|
3945
|
-
left: unset;
|
|
3946
|
-
top: 0.25rem;
|
|
3947
|
-
box-shadow: 0.6rem 6rem 6rem rgba(0, 0, 0, 0.3);
|
|
3948
|
-
animation: fadeInDown 0.5s;
|
|
3949
|
-
|
|
3950
|
-
@media (prefers-reduced-motion) {
|
|
3951
|
-
animation-duration: 0s;
|
|
3952
|
-
}
|
|
3953
|
-
|
|
3954
|
-
border-radius: $border-radius;
|
|
3955
|
-
|
|
3956
|
-
@include show-action-menu-again();
|
|
3957
|
-
|
|
3958
|
-
.blue-actions-menu-item:not(.blue-actions-menu-toggle) {
|
|
3959
|
-
display: flex;
|
|
3960
|
-
}
|
|
3961
|
-
|
|
3962
|
-
.blue-actions-menu {
|
|
3963
|
-
flex-direction: column;
|
|
3964
|
-
.blue-menu-item-dropdown {
|
|
3965
|
-
--blue-sidebar-bg: #{darken($theme, 34%)};
|
|
3966
|
-
}
|
|
3967
|
-
}
|
|
3968
|
-
}
|
|
3969
|
-
|
|
3970
|
-
.blue-actions-menu-item:not(.blue-actions-menu-toggle) {
|
|
3971
|
-
display: none;
|
|
3972
|
-
}
|
|
3973
|
-
}
|
|
3974
|
-
|
|
3975
|
-
@media (min-width: $breakpoint) {
|
|
3976
|
-
@include show-action-menu-again();
|
|
3977
|
-
|
|
3978
|
-
.blue-actions-menu .blue-actions-label {
|
|
3979
|
-
display: inline;
|
|
3980
|
-
}
|
|
3981
|
-
|
|
3982
|
-
.blue-actions-menu-toggle {
|
|
3983
|
-
display: none;
|
|
3984
|
-
}
|
|
3985
|
-
|
|
3986
|
-
.blue-actions-menu > .blue-menu-item-wrapper > .blue-menu-item-dropdown,
|
|
3987
|
-
.blue-actions-menu > .blue-menu-item-wrapper > * > .blue-menu-item-dropdown {
|
|
3988
|
-
position: absolute;
|
|
3989
|
-
right: 0;
|
|
3990
|
-
}
|
|
3991
|
-
}
|
|
3992
|
-
}
|
|
3993
|
-
|
|
3994
|
-
@mixin switch($width: 35px, $height: 20px, $padding: 3px, $color: $body-color, $color-active: $success) {
|
|
3995
|
-
$slider-size: $height - ($padding * 2);
|
|
3996
|
-
|
|
3997
|
-
& {
|
|
3998
|
-
position: relative;
|
|
3999
|
-
display: inline-block;
|
|
4000
|
-
width: $width;
|
|
4001
|
-
height: $height;
|
|
4002
|
-
|
|
4003
|
-
input {
|
|
4004
|
-
display: none;
|
|
4005
|
-
}
|
|
4006
|
-
|
|
4007
|
-
&.disabled {
|
|
4008
|
-
opacity: 0.8;
|
|
4009
|
-
}
|
|
4010
|
-
|
|
4011
|
-
&:not(.disabled) {
|
|
4012
|
-
.slider {
|
|
4013
|
-
cursor: pointer;
|
|
4014
|
-
}
|
|
4015
|
-
}
|
|
4016
|
-
|
|
4017
|
-
.slider {
|
|
4018
|
-
position: absolute;
|
|
4019
|
-
top: 0;
|
|
4020
|
-
left: 0;
|
|
4021
|
-
right: 0;
|
|
4022
|
-
bottom: 0;
|
|
4023
|
-
background-color: $input-group-addon-bg;
|
|
4024
|
-
transition: 0.4s;
|
|
4025
|
-
|
|
4026
|
-
@media (prefers-reduced-motion) {
|
|
4027
|
-
transition: none;
|
|
4028
|
-
}
|
|
4029
|
-
|
|
4030
|
-
box-shadow: inset 0 0 0 1px rgba($color, 0.5);
|
|
4031
|
-
|
|
4032
|
-
&::before {
|
|
4033
|
-
content: "";
|
|
4034
|
-
position: absolute;
|
|
4035
|
-
height: $slider-size;
|
|
4036
|
-
width: $slider-size;
|
|
4037
|
-
left: $padding;
|
|
4038
|
-
bottom: $padding;
|
|
4039
|
-
background-color: $color;
|
|
4040
|
-
transition: 0.4s;
|
|
4041
|
-
|
|
4042
|
-
@media (prefers-reduced-motion) {
|
|
4043
|
-
transition: none;
|
|
4044
|
-
}
|
|
4045
|
-
}
|
|
4046
|
-
|
|
4047
|
-
&::after {
|
|
4048
|
-
content: attr(data-label);
|
|
4049
|
-
position: absolute;
|
|
4050
|
-
top: 50%;
|
|
4051
|
-
left: 50%;
|
|
4052
|
-
transform: translate(-50%, -50%);
|
|
4053
|
-
margin-left: ($slider-size * 0.5);
|
|
4054
|
-
transition: margin-left 0.4s;
|
|
4055
|
-
|
|
4056
|
-
@media (prefers-reduced-motion) {
|
|
4057
|
-
transition: none;
|
|
4058
|
-
}
|
|
4059
|
-
|
|
4060
|
-
color: $color;
|
|
4061
|
-
}
|
|
4062
|
-
}
|
|
4063
|
-
|
|
4064
|
-
input:checked {
|
|
4065
|
-
& + .slider {
|
|
4066
|
-
background-color: $color-active;
|
|
4067
|
-
box-shadow: inset 0 0 12px rgba(255, 255, 255, 0.3);
|
|
4068
|
-
|
|
4069
|
-
&::before {
|
|
4070
|
-
transform: translateX($width - $slider-size - ($padding * 2));
|
|
4071
|
-
background-color: white;
|
|
4072
|
-
}
|
|
4073
|
-
|
|
4074
|
-
&::after {
|
|
4075
|
-
color: white;
|
|
4076
|
-
margin-left: ($slider-size * 0.5) * -1;
|
|
4077
|
-
}
|
|
4078
|
-
}
|
|
4079
|
-
}
|
|
4080
|
-
input:focus + .slider {
|
|
4081
|
-
box-shadow: 0 0 1px $color-active;
|
|
4082
|
-
}
|
|
4083
|
-
}
|
|
4084
|
-
}
|
|
4085
|
-
|
|
4086
|
-
@mixin customProperty($name, $value) {
|
|
4087
|
-
// fallback for older browser who do not support custom properties / css variables
|
|
4088
|
-
#{$name}: #{$value};
|
|
4089
|
-
|
|
4090
|
-
// create a css variable (this might override the variable on any of the ancestor elements)
|
|
4091
|
-
--#{$name}: #{$value};
|
|
4092
|
-
|
|
4093
|
-
// use the css variable on the property
|
|
4094
|
-
#{$name}: var(--#{$name}, #{$value});
|
|
4095
|
-
}
|
|
4096
|
-
|
|
4097
|
-
@mixin scroll-shadow($bg, $light-base: white) {
|
|
4098
|
-
background: linear-gradient($bg 30%, rgba($light-base, 0)),
|
|
4099
|
-
linear-gradient(rgba($light-base, 0) 10px, $bg 70%) bottom,
|
|
4100
|
-
radial-gradient(at top, rgba(0, 0, 0, 0.2), transparent 70%),
|
|
4101
|
-
radial-gradient(at bottom, rgba(0, 0, 0, 0.2), transparent 70%) bottom;
|
|
4102
|
-
background-repeat: no-repeat;
|
|
4103
|
-
background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
|
|
4104
|
-
background-attachment: local, local, scroll, scroll;
|
|
4105
|
-
}
|
|
4106
|
-
|
|
4107
|
-
|
|
4108
|
-
@keyframes fade-in {
|
|
4109
|
-
from {
|
|
4110
|
-
opacity: 0;
|
|
4111
|
-
}
|
|
4112
|
-
to {
|
|
4113
|
-
opacity: 1;
|
|
4114
|
-
}
|
|
4115
|
-
}
|
|
4116
|
-
|
|
4117
|
-
@keyframes blAppearUp {
|
|
4118
|
-
from {
|
|
4119
|
-
margin-top: 2.5rem;
|
|
4120
|
-
}
|
|
4121
|
-
to {
|
|
4122
|
-
margin-top: 0;
|
|
4123
|
-
}
|
|
4124
|
-
}
|
|
4125
|
-
|
|
4126
|
-
@keyframes blue-menu-item-dropdown {
|
|
4127
|
-
from {
|
|
4128
|
-
transform: translateY(-50%);
|
|
4129
|
-
opacity: 0;
|
|
4130
|
-
}
|
|
4131
|
-
}
|
|
4132
|
-
|
|
4133
|
-
@keyframes enabledBlueAppPage {
|
|
4134
|
-
from {
|
|
4135
|
-
transform: scale(0.98);
|
|
4136
|
-
opacity: 0;
|
|
4137
|
-
}
|
|
4138
|
-
to {
|
|
4139
|
-
opacity: 1;
|
|
4140
|
-
}
|
|
4141
|
-
}
|
|
4142
|
-
|
|
4143
|
-
@keyframes fadeInDown {
|
|
4144
|
-
from {
|
|
4145
|
-
opacity: 0;
|
|
4146
|
-
transform: translate3d(0, -100%, 0);
|
|
4147
|
-
}
|
|
4148
|
-
|
|
4149
|
-
to {
|
|
4150
|
-
opacity: 1;
|
|
4151
|
-
transform: none;
|
|
4152
|
-
}
|
|
4153
|
-
}
|
|
4154
|
-
|
|
4155
|
-
@keyframes alert-in {
|
|
4156
|
-
from {
|
|
4157
|
-
transform: scale(0, 0);
|
|
4158
|
-
opacity: 0.2;
|
|
4159
|
-
transition: 0s;
|
|
4160
|
-
}
|
|
4161
|
-
}
|
|
4162
|
-
|
|
4163
|
-
@keyframes circlebounce {
|
|
4164
|
-
0%,
|
|
4165
|
-
100% {
|
|
4166
|
-
transform: scale(0);
|
|
4167
|
-
}
|
|
4168
|
-
50% {
|
|
4169
|
-
transform: scale(1);
|
|
4170
|
-
}
|
|
4171
|
-
}
|
|
4172
|
-
|
|
4173
|
-
@keyframes scrolling {
|
|
4174
|
-
from {
|
|
4175
|
-
transform: translateX(-100%);
|
|
4176
|
-
}
|
|
4177
|
-
to {
|
|
4178
|
-
transform: translateX(100%);
|
|
4179
|
-
}
|
|
4180
|
-
}
|
|
4181
|
-
|
|
4182
|
-
|
|
3653
|
+
|
|
3654
|
+
$theme-colors: () !default;
|
|
3655
|
+
// stylelint-disable-next-line scss/dollar-variable-default
|
|
3656
|
+
$theme-colors: map-merge(
|
|
3657
|
+
(
|
|
3658
|
+
"theme": $theme
|
|
3659
|
+
),
|
|
3660
|
+
$theme-colors
|
|
3661
|
+
);
|
|
3662
|
+
|
|
3663
|
+
// Alpha value (RGBA) e.g. for header background.
|
|
3664
|
+
$shimmering: 0.8 !default;
|
|
3665
|
+
|
|
3666
|
+
// Thumb color of scrollbar.
|
|
3667
|
+
$scrollbar-thumb-color: white !default;
|
|
3668
|
+
|
|
3669
|
+
// Thumb color of scrollbar as RGB (like `255, 255, 255`).
|
|
3670
|
+
$scrollbar-thumb-color-rgb:
|
|
3671
|
+
red($scrollbar-thumb-color), green($scrollbar-thumb-color), blue($scrollbar-thumb-color) !default;
|
|
3672
|
+
|
|
3673
|
+
// Default size for many components, like sidebar menu items.
|
|
3674
|
+
$normal-size: calc(
|
|
3675
|
+
var(--bs-btn-border-width, 1px) + var(--bs-btn-padding-y, 0.375rem) +
|
|
3676
|
+
(var(--bs-btn-font-size, 1rem) * var(--bs-btn-line-height, 1.5)) + var(--bs-btn-padding-y, 0.375rem) +
|
|
3677
|
+
var(--bs-btn-border-width, 1px)
|
|
3678
|
+
) !default;
|
|
3679
|
+
|
|
3680
|
+
// Height of actions menu when it is expanded, like on mobile devices.
|
|
3681
|
+
$actions-height: 7.5rem !default;
|
|
3682
|
+
|
|
3683
|
+
// Background color of menu toggle button.
|
|
3684
|
+
$bla-button-bg-normal: rgba(0, 0, 0, 0.1) !default;
|
|
3685
|
+
|
|
3686
|
+
// Background color of menu toggle button on hover state.
|
|
3687
|
+
$bla-button-bg-hover: rgba(white, 0.25) !default;
|
|
3688
|
+
|
|
3689
|
+
// Font size for sidebar menu items.
|
|
3690
|
+
$bla-btn-font-size: 1em !default;
|
|
3691
|
+
|
|
3692
|
+
// Padding for action menu items.
|
|
3693
|
+
$bla-header-nav-padding: 0.75rem !default;
|
|
3694
|
+
|
|
3695
|
+
// Width of the sidebar.
|
|
3696
|
+
$bla-sidebar-width: 16.563rem !default;
|
|
3697
|
+
|
|
3698
|
+
// Background of sidebar.
|
|
3699
|
+
$sidebar-bg: $theme !default;
|
|
3700
|
+
$sidebar-bg-dark: $theme-dark !default;
|
|
3701
|
+
|
|
3702
|
+
// Background of sidebar when it's opened (on mobile devices).
|
|
3703
|
+
$sidebar-open-bg: darken($sidebar-bg, 30%) !default;
|
|
3704
|
+
|
|
3705
|
+
// Background of sidebar menu dropdown menus
|
|
3706
|
+
$sidebar-deep-bg: darken($sidebar-bg, 4%) !default;
|
|
3707
|
+
|
|
3708
|
+
// Text color of sidebar.
|
|
3709
|
+
$sidebar-color: color-contrast($sidebar-bg, $gray-900) !default;
|
|
3710
|
+
$sidebar-color-dark: color-contrast($sidebar-bg-dark, $gray-900) !default;
|
|
3711
|
+
|
|
3712
|
+
// Color of indicator for active menu item in sidebar.
|
|
3713
|
+
$sidebar-indicator-color: $primary !default;
|
|
3714
|
+
$sidebar-indicator-color-dark: $white !default;
|
|
3715
|
+
|
|
3716
|
+
// Background of search control in sidebar.
|
|
3717
|
+
$sidebar-search-bg: $input-bg !default;
|
|
3718
|
+
|
|
3719
|
+
// Background of the body element
|
|
3720
|
+
$app-bg: $theme !default;
|
|
3721
|
+
$app-bg-dark: $theme-dark !default;
|
|
3722
|
+
|
|
3723
|
+
// Background color of Header
|
|
3724
|
+
$header-bg: $theme !default;
|
|
3725
|
+
$header-bg-dark: $theme-dark !default;
|
|
3726
|
+
|
|
3727
|
+
// Text color of header elements
|
|
3728
|
+
$header-color: color-contrast($header-bg, $gray-900) !default;
|
|
3729
|
+
$header-color-dark: color-contrast($header-bg-dark, $gray-900) !default;
|
|
3730
|
+
|
|
3731
|
+
// Background of header action menu dropdown menus
|
|
3732
|
+
$header-deep-bg: darken($header-bg, 4%) !default;
|
|
3733
|
+
|
|
3734
|
+
// Background color, when hovering action menu item.
|
|
3735
|
+
$actions-control-bg-hover: $bla-button-bg-hover !default;
|
|
3736
|
+
|
|
3737
|
+
// Shrink sidebar on smaller screens
|
|
3738
|
+
$sidebar-shrink: true !default;
|
|
3739
|
+
|
|
3740
|
+
// Breakpoint for sidebar shrink
|
|
3741
|
+
$sidebar-shrink-breakpoint: 600px !default;
|
|
3742
|
+
|
|
3743
|
+
// Breakpoint for sidebar fully expanded
|
|
3744
|
+
$sidebar-expanded-breakpoint: 1400px !default;
|
|
3745
|
+
|
|
3746
|
+
$corner-shape: #{round} !default;
|
|
3747
|
+
|
|
3748
|
+
:root {
|
|
3749
|
+
--blue-app-bg: #{$app-bg};
|
|
3750
|
+
|
|
3751
|
+
--blue-scrollbar-thumb-color-rgb: #{$scrollbar-thumb-color-rgb};
|
|
3752
|
+
|
|
3753
|
+
--blue-sidebar-width: #{$bla-sidebar-width};
|
|
3754
|
+
--blue-sidebar-color: #{$sidebar-color};
|
|
3755
|
+
--blue-theme: var(--theme, #{$theme});
|
|
3756
|
+
--blue-shimmering: 0.9;
|
|
3757
|
+
|
|
3758
|
+
--blue-sidebar-bg: #{$sidebar-bg};
|
|
3759
|
+
--blue-header-bg: #{$header-bg};
|
|
3760
|
+
|
|
3761
|
+
--blue-header-height: 3.429rem;
|
|
3762
|
+
--blue-header-color: #{$header-color};
|
|
3763
|
+
--blue-action-link-bg-color: var(--blue-theme);
|
|
3764
|
+
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
|
|
3765
|
+
--blue-menu-item-height: #{$normal-size};
|
|
3766
|
+
|
|
3767
|
+
--blue-corner-shape: #{$corner-shape};
|
|
3768
|
+
}
|
|
3769
|
+
|
|
3770
|
+
@include color-mode(dark, true) {
|
|
3771
|
+
--blue-app-bg: #{$app-bg-dark};
|
|
3772
|
+
|
|
3773
|
+
--blue-sidebar-color: #{$sidebar-color-dark};
|
|
3774
|
+
|
|
3775
|
+
--blue-sidebar-bg: #{$sidebar-bg-dark};
|
|
3776
|
+
--blue-header-bg: #{$header-bg-dark};
|
|
3777
|
+
|
|
3778
|
+
--blue-header-color: #{$header-color-dark};
|
|
3779
|
+
|
|
3780
|
+
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
3781
|
+
}
|
|
3782
|
+
|
|
3783
|
+
|
|
3784
|
+
@mixin header-bg() {
|
|
3785
|
+
background-image: linear-gradient(
|
|
3786
|
+
var(--blue-header-bg, $header-bg),
|
|
3787
|
+
rgba(var(--blue-header-bg-rgb, var(--bs-theme-rgb)), var(--blue-shimmering, $shimmering))
|
|
3788
|
+
);
|
|
3789
|
+
backdrop-filter: blur(3px) saturate(125%);
|
|
3790
|
+
}
|
|
3791
|
+
|
|
3792
|
+
@mixin blue-menu-item-background() {
|
|
3793
|
+
content: "";
|
|
3794
|
+
position: absolute;
|
|
3795
|
+
top: 0.125rem;
|
|
3796
|
+
right: 0.125rem;
|
|
3797
|
+
bottom: 0.125rem;
|
|
3798
|
+
left: 0.125rem;
|
|
3799
|
+
background-color: currentColor;
|
|
3800
|
+
border-radius: $border-radius;
|
|
3801
|
+
transform: scale(0.9);
|
|
3802
|
+
opacity: 0;
|
|
3803
|
+
transition: all 0.2s;
|
|
3804
|
+
|
|
3805
|
+
@media (prefers-reduced-motion) {
|
|
3806
|
+
transition: none;
|
|
3807
|
+
}
|
|
3808
|
+
}
|
|
3809
|
+
|
|
3810
|
+
@mixin blue-menu-item-indicator() {
|
|
3811
|
+
content: "";
|
|
3812
|
+
position: absolute;
|
|
3813
|
+
top: 0.625rem;
|
|
3814
|
+
bottom: 0.625rem;
|
|
3815
|
+
left: 0.125rem;
|
|
3816
|
+
right: initial;
|
|
3817
|
+
width: 3px;
|
|
3818
|
+
height: auto;
|
|
3819
|
+
background-color: var(--blue-menu-item-indicator-bg);
|
|
3820
|
+
border-radius: 1rem;
|
|
3821
|
+
animation: blue-menu-item-indicator-in-from-side 0.2s ease-in-out;
|
|
3822
|
+
|
|
3823
|
+
@media (prefers-reduced-motion) {
|
|
3824
|
+
animation-duration: 0s;
|
|
3825
|
+
}
|
|
3826
|
+
}
|
|
3827
|
+
|
|
3828
|
+
@mixin blue-menu-item-indicator-horizontal() {
|
|
3829
|
+
top: initial;
|
|
3830
|
+
bottom: 0.125rem;
|
|
3831
|
+
left: 50%;
|
|
3832
|
+
transform: translateX(-50%);
|
|
3833
|
+
width: 2em;
|
|
3834
|
+
height: 3px;
|
|
3835
|
+
animation: blue-menu-item-indicator-in-from-below 0.2s ease-in-out;
|
|
3836
|
+
|
|
3837
|
+
@media (prefers-reduced-motion) {
|
|
3838
|
+
animation-duration: 0s;
|
|
3839
|
+
}
|
|
3840
|
+
}
|
|
3841
|
+
|
|
3842
|
+
@mixin blue-menu-item-dropdown-for-shrunk-sidebar() {
|
|
3843
|
+
& > .blue-menu-item-wrapper {
|
|
3844
|
+
display: block;
|
|
3845
|
+
position: relative;
|
|
3846
|
+
|
|
3847
|
+
&:not(:has(.blue-menu-item-dropdown)) > .blue-menu-item:hover {
|
|
3848
|
+
.blue-menu-item-label {
|
|
3849
|
+
&::before,
|
|
3850
|
+
& {
|
|
3851
|
+
animation: tips-horz 150ms cubic-bezier(0.5, 0, 0.6, 1.3) 1ms forwards;
|
|
3852
|
+
|
|
3853
|
+
@media (prefers-reduced-motion) {
|
|
3854
|
+
animation-duration: 0s;
|
|
3855
|
+
}
|
|
3856
|
+
}
|
|
3857
|
+
|
|
3858
|
+
&::before {
|
|
3859
|
+
content: "";
|
|
3860
|
+
display: block;
|
|
3861
|
+
position: absolute;
|
|
3862
|
+
border: 5px solid transparent;
|
|
3863
|
+
z-index: 1001;
|
|
3864
|
+
|
|
3865
|
+
top: 50%;
|
|
3866
|
+
border-left-width: 0;
|
|
3867
|
+
border-right-color: var(--bs-tooltip-bg, #353539);
|
|
3868
|
+
left: calc(0em - 5px);
|
|
3869
|
+
transform: translate(0.5em, -50%);
|
|
3870
|
+
opacity: 0;
|
|
3871
|
+
}
|
|
3872
|
+
|
|
3873
|
+
display: block;
|
|
3874
|
+
text-transform: none;
|
|
3875
|
+
line-height: 1;
|
|
3876
|
+
font-size: 0.9em;
|
|
3877
|
+
-webkit-user-select: none;
|
|
3878
|
+
user-select: none;
|
|
3879
|
+
pointer-events: none;
|
|
3880
|
+
position: absolute;
|
|
3881
|
+
font-family: var(--bs-font-sans-serif);
|
|
3882
|
+
text-align: center;
|
|
3883
|
+
min-width: 3em;
|
|
3884
|
+
max-width: var(--bs-tooltip-max-width, 21em);
|
|
3885
|
+
padding: var(--bs-tooltip-padding-y, 1ch) var(--bs-tooltip-padding-x, 1.5ch);
|
|
3886
|
+
border-radius: var(--bs-tooltip-border-radius, 0.3em);
|
|
3887
|
+
box-shadow: 0 1em 2em -0.5em rgba(0, 0, 0, 0.35);
|
|
3888
|
+
background: var(--bs-tooltip-bg, #353539);
|
|
3889
|
+
color: var(--bs-tooltip-color, #fff);
|
|
3890
|
+
z-index: 1000;
|
|
3891
|
+
width: auto;
|
|
3892
|
+
top: 50%;
|
|
3893
|
+
left: calc(100% + 5px);
|
|
3894
|
+
transform: translate(-0.5em, -50%);
|
|
3895
|
+
overflow: visible;
|
|
3896
|
+
opacity: 0;
|
|
3897
|
+
}
|
|
3898
|
+
}
|
|
3899
|
+
|
|
3900
|
+
& > .blue-menu-item-dropdown,
|
|
3901
|
+
& > .blue-outside > .blue-menu-item-dropdown {
|
|
3902
|
+
@extend .ms-1;
|
|
3903
|
+
@extend .rounded;
|
|
3904
|
+
@extend .shadow;
|
|
3905
|
+
@extend .blue-menu-item-dropdown-from-start;
|
|
3906
|
+
|
|
3907
|
+
position: absolute;
|
|
3908
|
+
top: 0;
|
|
3909
|
+
width: $bla-sidebar-width;
|
|
3910
|
+
left: $normal-size;
|
|
3911
|
+
max-height: calc(100vh - (var(--offset-top, 0px) + 1rem));
|
|
3912
|
+
overflow-y: auto;
|
|
3913
|
+
overflow-x: hidden;
|
|
3914
|
+
background-color: var(--blue-sidebar-bg);
|
|
3915
|
+
|
|
3916
|
+
&::before {
|
|
3917
|
+
content: none;
|
|
3918
|
+
}
|
|
3919
|
+
}
|
|
3920
|
+
|
|
3921
|
+
&:has(.blue-menu-item-dropdown) {
|
|
3922
|
+
& > .blue-menu-item {
|
|
3923
|
+
@extend .highlighted;
|
|
3924
|
+
}
|
|
3925
|
+
}
|
|
3926
|
+
}
|
|
3927
|
+
}
|
|
3928
|
+
|
|
3929
|
+
@mixin show-action-menu-again() {
|
|
3930
|
+
max-height: initial;
|
|
3931
|
+
overflow: initial;
|
|
3932
|
+
|
|
3933
|
+
.blue-actions-menu {
|
|
3934
|
+
max-width: initial;
|
|
3935
|
+
}
|
|
3936
|
+
}
|
|
3937
|
+
|
|
3938
|
+
@mixin actions($breakpoint) {
|
|
3939
|
+
@media (max-width: #{$breakpoint + 1px}) {
|
|
3940
|
+
&.open {
|
|
3941
|
+
display: block;
|
|
3942
|
+
width: auto;
|
|
3943
|
+
position: absolute;
|
|
3944
|
+
z-index: 1;
|
|
3945
|
+
left: unset;
|
|
3946
|
+
top: 0.25rem;
|
|
3947
|
+
box-shadow: 0.6rem 6rem 6rem rgba(0, 0, 0, 0.3);
|
|
3948
|
+
animation: fadeInDown 0.5s;
|
|
3949
|
+
|
|
3950
|
+
@media (prefers-reduced-motion) {
|
|
3951
|
+
animation-duration: 0s;
|
|
3952
|
+
}
|
|
3953
|
+
|
|
3954
|
+
border-radius: $border-radius;
|
|
3955
|
+
|
|
3956
|
+
@include show-action-menu-again();
|
|
3957
|
+
|
|
3958
|
+
.blue-actions-menu-item:not(.blue-actions-menu-toggle) {
|
|
3959
|
+
display: flex;
|
|
3960
|
+
}
|
|
3961
|
+
|
|
3962
|
+
.blue-actions-menu {
|
|
3963
|
+
flex-direction: column;
|
|
3964
|
+
.blue-menu-item-dropdown {
|
|
3965
|
+
--blue-sidebar-bg: #{darken($theme, 34%)};
|
|
3966
|
+
}
|
|
3967
|
+
}
|
|
3968
|
+
}
|
|
3969
|
+
|
|
3970
|
+
.blue-actions-menu-item:not(.blue-actions-menu-toggle) {
|
|
3971
|
+
display: none;
|
|
3972
|
+
}
|
|
3973
|
+
}
|
|
3974
|
+
|
|
3975
|
+
@media (min-width: $breakpoint) {
|
|
3976
|
+
@include show-action-menu-again();
|
|
3977
|
+
|
|
3978
|
+
.blue-actions-menu .blue-actions-label {
|
|
3979
|
+
display: inline;
|
|
3980
|
+
}
|
|
3981
|
+
|
|
3982
|
+
.blue-actions-menu-toggle {
|
|
3983
|
+
display: none;
|
|
3984
|
+
}
|
|
3985
|
+
|
|
3986
|
+
.blue-actions-menu > .blue-menu-item-wrapper > .blue-menu-item-dropdown,
|
|
3987
|
+
.blue-actions-menu > .blue-menu-item-wrapper > * > .blue-menu-item-dropdown {
|
|
3988
|
+
position: absolute;
|
|
3989
|
+
right: 0;
|
|
3990
|
+
}
|
|
3991
|
+
}
|
|
3992
|
+
}
|
|
3993
|
+
|
|
3994
|
+
@mixin switch($width: 35px, $height: 20px, $padding: 3px, $color: $body-color, $color-active: $success) {
|
|
3995
|
+
$slider-size: $height - ($padding * 2);
|
|
3996
|
+
|
|
3997
|
+
& {
|
|
3998
|
+
position: relative;
|
|
3999
|
+
display: inline-block;
|
|
4000
|
+
width: $width;
|
|
4001
|
+
height: $height;
|
|
4002
|
+
|
|
4003
|
+
input {
|
|
4004
|
+
display: none;
|
|
4005
|
+
}
|
|
4006
|
+
|
|
4007
|
+
&.disabled {
|
|
4008
|
+
opacity: 0.8;
|
|
4009
|
+
}
|
|
4010
|
+
|
|
4011
|
+
&:not(.disabled) {
|
|
4012
|
+
.slider {
|
|
4013
|
+
cursor: pointer;
|
|
4014
|
+
}
|
|
4015
|
+
}
|
|
4016
|
+
|
|
4017
|
+
.slider {
|
|
4018
|
+
position: absolute;
|
|
4019
|
+
top: 0;
|
|
4020
|
+
left: 0;
|
|
4021
|
+
right: 0;
|
|
4022
|
+
bottom: 0;
|
|
4023
|
+
background-color: $input-group-addon-bg;
|
|
4024
|
+
transition: 0.4s;
|
|
4025
|
+
|
|
4026
|
+
@media (prefers-reduced-motion) {
|
|
4027
|
+
transition: none;
|
|
4028
|
+
}
|
|
4029
|
+
|
|
4030
|
+
box-shadow: inset 0 0 0 1px rgba($color, 0.5);
|
|
4031
|
+
|
|
4032
|
+
&::before {
|
|
4033
|
+
content: "";
|
|
4034
|
+
position: absolute;
|
|
4035
|
+
height: $slider-size;
|
|
4036
|
+
width: $slider-size;
|
|
4037
|
+
left: $padding;
|
|
4038
|
+
bottom: $padding;
|
|
4039
|
+
background-color: $color;
|
|
4040
|
+
transition: 0.4s;
|
|
4041
|
+
|
|
4042
|
+
@media (prefers-reduced-motion) {
|
|
4043
|
+
transition: none;
|
|
4044
|
+
}
|
|
4045
|
+
}
|
|
4046
|
+
|
|
4047
|
+
&::after {
|
|
4048
|
+
content: attr(data-label);
|
|
4049
|
+
position: absolute;
|
|
4050
|
+
top: 50%;
|
|
4051
|
+
left: 50%;
|
|
4052
|
+
transform: translate(-50%, -50%);
|
|
4053
|
+
margin-left: ($slider-size * 0.5);
|
|
4054
|
+
transition: margin-left 0.4s;
|
|
4055
|
+
|
|
4056
|
+
@media (prefers-reduced-motion) {
|
|
4057
|
+
transition: none;
|
|
4058
|
+
}
|
|
4059
|
+
|
|
4060
|
+
color: $color;
|
|
4061
|
+
}
|
|
4062
|
+
}
|
|
4063
|
+
|
|
4064
|
+
input:checked {
|
|
4065
|
+
& + .slider {
|
|
4066
|
+
background-color: $color-active;
|
|
4067
|
+
box-shadow: inset 0 0 12px rgba(255, 255, 255, 0.3);
|
|
4068
|
+
|
|
4069
|
+
&::before {
|
|
4070
|
+
transform: translateX($width - $slider-size - ($padding * 2));
|
|
4071
|
+
background-color: white;
|
|
4072
|
+
}
|
|
4073
|
+
|
|
4074
|
+
&::after {
|
|
4075
|
+
color: white;
|
|
4076
|
+
margin-left: ($slider-size * 0.5) * -1;
|
|
4077
|
+
}
|
|
4078
|
+
}
|
|
4079
|
+
}
|
|
4080
|
+
input:focus + .slider {
|
|
4081
|
+
box-shadow: 0 0 1px $color-active;
|
|
4082
|
+
}
|
|
4083
|
+
}
|
|
4084
|
+
}
|
|
4085
|
+
|
|
4086
|
+
@mixin customProperty($name, $value) {
|
|
4087
|
+
// fallback for older browser who do not support custom properties / css variables
|
|
4088
|
+
#{$name}: #{$value};
|
|
4089
|
+
|
|
4090
|
+
// create a css variable (this might override the variable on any of the ancestor elements)
|
|
4091
|
+
--#{$name}: #{$value};
|
|
4092
|
+
|
|
4093
|
+
// use the css variable on the property
|
|
4094
|
+
#{$name}: var(--#{$name}, #{$value});
|
|
4095
|
+
}
|
|
4096
|
+
|
|
4097
|
+
@mixin scroll-shadow($bg, $light-base: white) {
|
|
4098
|
+
background: linear-gradient($bg 30%, rgba($light-base, 0)),
|
|
4099
|
+
linear-gradient(rgba($light-base, 0) 10px, $bg 70%) bottom,
|
|
4100
|
+
radial-gradient(at top, rgba(0, 0, 0, 0.2), transparent 70%),
|
|
4101
|
+
radial-gradient(at bottom, rgba(0, 0, 0, 0.2), transparent 70%) bottom;
|
|
4102
|
+
background-repeat: no-repeat;
|
|
4103
|
+
background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
|
|
4104
|
+
background-attachment: local, local, scroll, scroll;
|
|
4105
|
+
}
|
|
4106
|
+
|
|
4107
|
+
|
|
4108
|
+
@keyframes fade-in {
|
|
4109
|
+
from {
|
|
4110
|
+
opacity: 0;
|
|
4111
|
+
}
|
|
4112
|
+
to {
|
|
4113
|
+
opacity: 1;
|
|
4114
|
+
}
|
|
4115
|
+
}
|
|
4116
|
+
|
|
4117
|
+
@keyframes blAppearUp {
|
|
4118
|
+
from {
|
|
4119
|
+
margin-top: 2.5rem;
|
|
4120
|
+
}
|
|
4121
|
+
to {
|
|
4122
|
+
margin-top: 0;
|
|
4123
|
+
}
|
|
4124
|
+
}
|
|
4125
|
+
|
|
4126
|
+
@keyframes blue-menu-item-dropdown {
|
|
4127
|
+
from {
|
|
4128
|
+
transform: translateY(-50%);
|
|
4129
|
+
opacity: 0;
|
|
4130
|
+
}
|
|
4131
|
+
}
|
|
4132
|
+
|
|
4133
|
+
@keyframes enabledBlueAppPage {
|
|
4134
|
+
from {
|
|
4135
|
+
transform: scale(0.98);
|
|
4136
|
+
opacity: 0;
|
|
4137
|
+
}
|
|
4138
|
+
to {
|
|
4139
|
+
opacity: 1;
|
|
4140
|
+
}
|
|
4141
|
+
}
|
|
4142
|
+
|
|
4143
|
+
@keyframes fadeInDown {
|
|
4144
|
+
from {
|
|
4145
|
+
opacity: 0;
|
|
4146
|
+
transform: translate3d(0, -100%, 0);
|
|
4147
|
+
}
|
|
4148
|
+
|
|
4149
|
+
to {
|
|
4150
|
+
opacity: 1;
|
|
4151
|
+
transform: none;
|
|
4152
|
+
}
|
|
4153
|
+
}
|
|
4154
|
+
|
|
4155
|
+
@keyframes alert-in {
|
|
4156
|
+
from {
|
|
4157
|
+
transform: scale(0, 0);
|
|
4158
|
+
opacity: 0.2;
|
|
4159
|
+
transition: 0s;
|
|
4160
|
+
}
|
|
4161
|
+
}
|
|
4162
|
+
|
|
4163
|
+
@keyframes circlebounce {
|
|
4164
|
+
0%,
|
|
4165
|
+
100% {
|
|
4166
|
+
transform: scale(0);
|
|
4167
|
+
}
|
|
4168
|
+
50% {
|
|
4169
|
+
transform: scale(1);
|
|
4170
|
+
}
|
|
4171
|
+
}
|
|
4172
|
+
|
|
4173
|
+
@keyframes scrolling {
|
|
4174
|
+
from {
|
|
4175
|
+
transform: translateX(-100%);
|
|
4176
|
+
}
|
|
4177
|
+
to {
|
|
4178
|
+
transform: translateX(100%);
|
|
4179
|
+
}
|
|
4180
|
+
}
|
|
4181
|
+
|
|
4182
|
+
|
|
4183
4183
|
@mixin bsBanner($file) {
|
|
4184
4184
|
/*!
|
|
4185
4185
|
* Bootstrap #{$file} v5.3.8 (https://getbootstrap.com/)
|
|
@@ -4187,14 +4187,14 @@ $corner-shape: #{round} !default;
|
|
|
4187
4187
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
4188
4188
|
*/
|
|
4189
4189
|
}
|
|
4190
|
-
|
|
4191
|
-
@include bsBanner("");
|
|
4192
|
-
|
|
4193
|
-
// scss-docs-start import-stack
|
|
4194
|
-
// Configuration
|
|
4195
|
-
|
|
4196
|
-
|
|
4197
|
-
|
|
4190
|
+
|
|
4191
|
+
@include bsBanner("");
|
|
4192
|
+
|
|
4193
|
+
// scss-docs-start import-stack
|
|
4194
|
+
// Configuration
|
|
4195
|
+
|
|
4196
|
+
|
|
4197
|
+
|
|
4198
4198
|
// Re-assigned maps
|
|
4199
4199
|
//
|
|
4200
4200
|
// Placed here so that others can override the default Sass maps and see automatic updates to utilities and more.
|
|
@@ -4369,8 +4369,8 @@ $utilities-links-underline: map-loop($utilities-colors, rgba-css-var, "$key", "l
|
|
|
4369
4369
|
$negative-spacers: if($enable-negative-margins, negativify-map($spacers), null) !default;
|
|
4370
4370
|
|
|
4371
4371
|
$gutters: $spacers !default;
|
|
4372
|
-
|
|
4373
|
-
|
|
4372
|
+
|
|
4373
|
+
|
|
4374
4374
|
// Utilities
|
|
4375
4375
|
|
|
4376
4376
|
$utilities: () !default;
|
|
@@ -5177,9 +5177,9 @@ $utilities: map-merge(
|
|
|
5177
5177
|
),
|
|
5178
5178
|
$utilities
|
|
5179
5179
|
);
|
|
5180
|
-
|
|
5181
|
-
|
|
5182
|
-
// Layout & components
|
|
5180
|
+
|
|
5181
|
+
|
|
5182
|
+
// Layout & components
|
|
5183
5183
|
:root,
|
|
5184
5184
|
[data-bs-theme="light"] {
|
|
5185
5185
|
// Note: Custom variable values only support SassScript inside `#{}`.
|
|
@@ -5367,7 +5367,7 @@ $utilities: map-merge(
|
|
|
5367
5367
|
// scss-docs-end root-dark-mode-vars
|
|
5368
5368
|
}
|
|
5369
5369
|
}
|
|
5370
|
-
|
|
5370
|
+
|
|
5371
5371
|
// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix
|
|
5372
5372
|
|
|
5373
5373
|
|
|
@@ -5985,7 +5985,7 @@ progress {
|
|
|
5985
5985
|
[hidden] {
|
|
5986
5986
|
display: none !important;
|
|
5987
5987
|
}
|
|
5988
|
-
|
|
5988
|
+
|
|
5989
5989
|
//
|
|
5990
5990
|
// Headings
|
|
5991
5991
|
//
|
|
@@ -6092,7 +6092,7 @@ progress {
|
|
|
6092
6092
|
content: "\2014\00A0"; // em dash, nbsp
|
|
6093
6093
|
}
|
|
6094
6094
|
}
|
|
6095
|
-
|
|
6095
|
+
|
|
6096
6096
|
// Responsive images (ensure images don't scale beyond their parents)
|
|
6097
6097
|
//
|
|
6098
6098
|
// This is purposefully opt-in via an explicit class rather than being the default for all `<img>`s.
|
|
@@ -6135,7 +6135,7 @@ progress {
|
|
|
6135
6135
|
@include font-size($figure-caption-font-size);
|
|
6136
6136
|
color: $figure-caption-color;
|
|
6137
6137
|
}
|
|
6138
|
-
|
|
6138
|
+
|
|
6139
6139
|
// Container widths
|
|
6140
6140
|
//
|
|
6141
6141
|
// Set the container width, and override it for fixed navbars in media queries.
|
|
@@ -6177,7 +6177,7 @@ progress {
|
|
|
6177
6177
|
}
|
|
6178
6178
|
}
|
|
6179
6179
|
}
|
|
6180
|
-
|
|
6180
|
+
|
|
6181
6181
|
// Row
|
|
6182
6182
|
//
|
|
6183
6183
|
// Rows contain your columns.
|
|
@@ -6217,7 +6217,7 @@ progress {
|
|
|
6217
6217
|
@if $enable-grid-classes {
|
|
6218
6218
|
@include make-grid-columns();
|
|
6219
6219
|
}
|
|
6220
|
-
|
|
6220
|
+
|
|
6221
6221
|
//
|
|
6222
6222
|
// Basic Bootstrap table
|
|
6223
6223
|
//
|
|
@@ -6389,7 +6389,7 @@ progress {
|
|
|
6389
6389
|
}
|
|
6390
6390
|
}
|
|
6391
6391
|
}
|
|
6392
|
-
|
|
6392
|
+
|
|
6393
6393
|
//
|
|
6394
6394
|
// Labels
|
|
6395
6395
|
//
|
|
@@ -7261,7 +7261,7 @@ textarea {
|
|
|
7261
7261
|
}
|
|
7262
7262
|
// scss-docs-end form-validation-states-loop
|
|
7263
7263
|
|
|
7264
|
-
|
|
7264
|
+
|
|
7265
7265
|
//
|
|
7266
7266
|
// Base styles
|
|
7267
7267
|
//
|
|
@@ -7478,7 +7478,7 @@ textarea {
|
|
|
7478
7478
|
.btn-sm {
|
|
7479
7479
|
@include button-size($btn-padding-y-sm, $btn-padding-x-sm, $btn-font-size-sm, $btn-border-radius-sm);
|
|
7480
7480
|
}
|
|
7481
|
-
|
|
7481
|
+
|
|
7482
7482
|
.fade {
|
|
7483
7483
|
@include transition($transition-fade);
|
|
7484
7484
|
|
|
@@ -7506,7 +7506,7 @@ textarea {
|
|
|
7506
7506
|
}
|
|
7507
7507
|
}
|
|
7508
7508
|
// scss-docs-end collapse-classes
|
|
7509
|
-
|
|
7509
|
+
|
|
7510
7510
|
// The dropdown wrapper (`<div>`)
|
|
7511
7511
|
.dropup,
|
|
7512
7512
|
.dropend,
|
|
@@ -7757,7 +7757,7 @@ textarea {
|
|
|
7757
7757
|
--#{$prefix}dropdown-header-color: #{$dropdown-dark-header-color};
|
|
7758
7758
|
// scss-docs-end dropdown-dark-css-vars
|
|
7759
7759
|
}
|
|
7760
|
-
|
|
7760
|
+
|
|
7761
7761
|
// Make the div behave like a button
|
|
7762
7762
|
.btn-group,
|
|
7763
7763
|
.btn-group-vertical {
|
|
@@ -7905,7 +7905,7 @@ textarea {
|
|
|
7905
7905
|
@include border-top-radius(0);
|
|
7906
7906
|
}
|
|
7907
7907
|
}
|
|
7908
|
-
|
|
7908
|
+
|
|
7909
7909
|
// Base class
|
|
7910
7910
|
//
|
|
7911
7911
|
// Kickstart any navigation component with a set of style resets. Works with
|
|
@@ -8103,7 +8103,7 @@ textarea {
|
|
|
8103
8103
|
display: block;
|
|
8104
8104
|
}
|
|
8105
8105
|
}
|
|
8106
|
-
|
|
8106
|
+
|
|
8107
8107
|
// Navbar
|
|
8108
8108
|
//
|
|
8109
8109
|
// Provide a static navbar from which we expand to create full-width, fixed, and
|
|
@@ -8393,7 +8393,7 @@ textarea {
|
|
|
8393
8393
|
}
|
|
8394
8394
|
}
|
|
8395
8395
|
}
|
|
8396
|
-
|
|
8396
|
+
|
|
8397
8397
|
//
|
|
8398
8398
|
// Base styles
|
|
8399
8399
|
//
|
|
@@ -8632,7 +8632,7 @@ textarea {
|
|
|
8632
8632
|
}
|
|
8633
8633
|
}
|
|
8634
8634
|
}
|
|
8635
|
-
|
|
8635
|
+
|
|
8636
8636
|
//
|
|
8637
8637
|
// Base styles
|
|
8638
8638
|
//
|
|
@@ -8786,7 +8786,7 @@ textarea {
|
|
|
8786
8786
|
}
|
|
8787
8787
|
}
|
|
8788
8788
|
}
|
|
8789
|
-
|
|
8789
|
+
|
|
8790
8790
|
.breadcrumb {
|
|
8791
8791
|
// scss-docs-start breadcrumb-css-vars
|
|
8792
8792
|
--#{$prefix}breadcrumb-padding-x: #{$breadcrumb-padding-x};
|
|
@@ -8827,7 +8827,7 @@ textarea {
|
|
|
8827
8827
|
color: var(--#{$prefix}breadcrumb-item-active-color);
|
|
8828
8828
|
}
|
|
8829
8829
|
}
|
|
8830
|
-
|
|
8830
|
+
|
|
8831
8831
|
.pagination {
|
|
8832
8832
|
// scss-docs-start pagination-css-vars
|
|
8833
8833
|
--#{$prefix}pagination-padding-x: #{$pagination-padding-x};
|
|
@@ -8937,7 +8937,7 @@ textarea {
|
|
|
8937
8937
|
.pagination-sm {
|
|
8938
8938
|
@include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $pagination-border-radius-sm);
|
|
8939
8939
|
}
|
|
8940
|
-
|
|
8940
|
+
|
|
8941
8941
|
// Base class
|
|
8942
8942
|
//
|
|
8943
8943
|
// Requires one of the contextual, color modifier classes for `color` and
|
|
@@ -8976,7 +8976,7 @@ textarea {
|
|
|
8976
8976
|
position: relative;
|
|
8977
8977
|
top: -1px;
|
|
8978
8978
|
}
|
|
8979
|
-
|
|
8979
|
+
|
|
8980
8980
|
//
|
|
8981
8981
|
// Base styles
|
|
8982
8982
|
//
|
|
@@ -9045,7 +9045,7 @@ textarea {
|
|
|
9045
9045
|
}
|
|
9046
9046
|
}
|
|
9047
9047
|
// scss-docs-end alert-modifiers
|
|
9048
|
-
|
|
9048
|
+
|
|
9049
9049
|
// Disable animation if transitions are disabled
|
|
9050
9050
|
|
|
9051
9051
|
// scss-docs-start progress-keyframes
|
|
@@ -9114,7 +9114,7 @@ textarea {
|
|
|
9114
9114
|
}
|
|
9115
9115
|
}
|
|
9116
9116
|
}
|
|
9117
|
-
|
|
9117
|
+
|
|
9118
9118
|
// Base class
|
|
9119
9119
|
//
|
|
9120
9120
|
// Easily usable on <ul>, <ol>, or <div>.
|
|
@@ -9314,7 +9314,7 @@ textarea {
|
|
|
9314
9314
|
}
|
|
9315
9315
|
}
|
|
9316
9316
|
// scss-docs-end list-group-modifiers
|
|
9317
|
-
|
|
9317
|
+
|
|
9318
9318
|
// Transparent background and border properties included for button version.
|
|
9319
9319
|
// iOS requires the button element instead of an anchor tag.
|
|
9320
9320
|
// If you want the anchor version, it requires `href="#"`.
|
|
@@ -9381,7 +9381,7 @@ textarea {
|
|
|
9381
9381
|
@include btn-close-white();
|
|
9382
9382
|
}
|
|
9383
9383
|
}
|
|
9384
|
-
|
|
9384
|
+
|
|
9385
9385
|
.toast {
|
|
9386
9386
|
// scss-docs-start toast-css-vars
|
|
9387
9387
|
--#{$prefix}toast-zindex: #{$zindex-toast};
|
|
@@ -9455,7 +9455,7 @@ textarea {
|
|
|
9455
9455
|
padding: var(--#{$prefix}toast-padding-x);
|
|
9456
9456
|
word-wrap: break-word;
|
|
9457
9457
|
}
|
|
9458
|
-
|
|
9458
|
+
|
|
9459
9459
|
// stylelint-disable function-disallowed-list
|
|
9460
9460
|
|
|
9461
9461
|
// .modal-open - body class for killing the scroll
|
|
@@ -9696,7 +9696,7 @@ textarea {
|
|
|
9696
9696
|
}
|
|
9697
9697
|
}
|
|
9698
9698
|
// scss-docs-end modal-fullscreen-loop
|
|
9699
|
-
|
|
9699
|
+
|
|
9700
9700
|
// Base class
|
|
9701
9701
|
.tooltip {
|
|
9702
9702
|
// scss-docs-start tooltip-css-vars
|
|
@@ -9816,7 +9816,7 @@ textarea {
|
|
|
9816
9816
|
background-color: var(--#{$prefix}tooltip-bg);
|
|
9817
9817
|
@include border-radius(var(--#{$prefix}tooltip-border-radius));
|
|
9818
9818
|
}
|
|
9819
|
-
|
|
9819
|
+
|
|
9820
9820
|
.popover {
|
|
9821
9821
|
// scss-docs-start popover-css-vars
|
|
9822
9822
|
--#{$prefix}popover-zindex: #{$zindex-popover};
|
|
@@ -10013,7 +10013,7 @@ textarea {
|
|
|
10013
10013
|
padding: var(--#{$prefix}popover-body-padding-y) var(--#{$prefix}popover-body-padding-x);
|
|
10014
10014
|
color: var(--#{$prefix}popover-body-color);
|
|
10015
10015
|
}
|
|
10016
|
-
|
|
10016
|
+
|
|
10017
10017
|
// Notes on the classes:
|
|
10018
10018
|
//
|
|
10019
10019
|
// 1. .carousel.pointer-event should ideally be pan-y (to allow for users to scroll vertically)
|
|
@@ -10240,7 +10240,7 @@ textarea {
|
|
|
10240
10240
|
@include carousel-dark();
|
|
10241
10241
|
}
|
|
10242
10242
|
}
|
|
10243
|
-
|
|
10243
|
+
|
|
10244
10244
|
//
|
|
10245
10245
|
// Rotating border
|
|
10246
10246
|
//
|
|
@@ -10327,7 +10327,7 @@ textarea {
|
|
|
10327
10327
|
}
|
|
10328
10328
|
}
|
|
10329
10329
|
}
|
|
10330
|
-
|
|
10330
|
+
|
|
10331
10331
|
// stylelint-disable function-disallowed-list
|
|
10332
10332
|
|
|
10333
10333
|
%offcanvas-css-vars {
|
|
@@ -10475,7 +10475,7 @@ textarea {
|
|
|
10475
10475
|
padding: var(--#{$prefix}offcanvas-padding-y) var(--#{$prefix}offcanvas-padding-x);
|
|
10476
10476
|
overflow-y: auto;
|
|
10477
10477
|
}
|
|
10478
|
-
|
|
10478
|
+
|
|
10479
10479
|
.placeholder {
|
|
10480
10480
|
display: inline-block;
|
|
10481
10481
|
min-height: 1em;
|
|
@@ -10527,9 +10527,9 @@ textarea {
|
|
|
10527
10527
|
mask-position: -200% 0%;
|
|
10528
10528
|
}
|
|
10529
10529
|
}
|
|
10530
|
-
|
|
10531
|
-
|
|
10532
|
-
// Helpers
|
|
10530
|
+
|
|
10531
|
+
|
|
10532
|
+
// Helpers
|
|
10533
10533
|
.clearfix {
|
|
10534
10534
|
@include clearfix();
|
|
10535
10535
|
}
|
|
@@ -10727,23 +10727,23 @@ textarea {
|
|
|
10727
10727
|
opacity: $hr-opacity;
|
|
10728
10728
|
}
|
|
10729
10729
|
|
|
10730
|
-
|
|
10731
|
-
|
|
10732
|
-
// Enable responsive for position
|
|
10733
|
-
$utilities: map-merge(
|
|
10734
|
-
$utilities,
|
|
10735
|
-
(
|
|
10736
|
-
"position": map-merge(
|
|
10737
|
-
map-get($utilities, "position"),
|
|
10738
|
-
(
|
|
10739
|
-
responsive: true
|
|
10740
|
-
)
|
|
10741
|
-
)
|
|
10742
|
-
)
|
|
10743
|
-
);
|
|
10744
|
-
|
|
10745
|
-
// Utilities
|
|
10746
|
-
// Loop over each breakpoint
|
|
10730
|
+
|
|
10731
|
+
|
|
10732
|
+
// Enable responsive for position
|
|
10733
|
+
$utilities: map-merge(
|
|
10734
|
+
$utilities,
|
|
10735
|
+
(
|
|
10736
|
+
"position": map-merge(
|
|
10737
|
+
map-get($utilities, "position"),
|
|
10738
|
+
(
|
|
10739
|
+
responsive: true
|
|
10740
|
+
)
|
|
10741
|
+
)
|
|
10742
|
+
)
|
|
10743
|
+
);
|
|
10744
|
+
|
|
10745
|
+
// Utilities
|
|
10746
|
+
// Loop over each breakpoint
|
|
10747
10747
|
@each $breakpoint in map-keys($grid-breakpoints) {
|
|
10748
10748
|
|
|
10749
10749
|
// Generate media query if needed
|
|
@@ -10774,848 +10774,848 @@ $utilities: map-merge(
|
|
|
10774
10774
|
@if type-of($utility) == "map" and map-get($utility, rfs) and (map-get($utility, responsive) or $infix == "") {
|
|
10775
10775
|
@include generate-utility($utility, $infix, true);
|
|
10776
10776
|
}
|
|
10777
|
-
}
|
|
10777
|
+
}
|
|
10778
|
+
}
|
|
10779
|
+
}
|
|
10780
|
+
}
|
|
10781
|
+
|
|
10782
|
+
|
|
10783
|
+
// Print utilities
|
|
10784
|
+
@media print {
|
|
10785
|
+
@each $key, $utility in $utilities {
|
|
10786
|
+
// The utility can be disabled with `false`, thus check if the utility is a map first
|
|
10787
|
+
// Then check if the utility needs print styles
|
|
10788
|
+
@if type-of($utility) == "map" and map-get($utility, print) == true {
|
|
10789
|
+
@include generate-utility($utility, "-print");
|
|
10790
|
+
}
|
|
10791
|
+
}
|
|
10792
|
+
}
|
|
10793
|
+
|
|
10794
|
+
// scss-docs-end import-stack
|
|
10795
|
+
|
|
10796
|
+
|
|
10797
|
+
// Make it overridable via CSS variables, as it is not yet possible in Bootstrap.
|
|
10798
|
+
// Check with a newer Bootstrap version to see if it is still necessary.
|
|
10799
|
+
.form-check-input:checked {
|
|
10800
|
+
background-color: var(--bs-primary, #{$form-check-input-checked-bg-color});
|
|
10801
|
+
border-color: var(--bs-primary, #{$form-check-input-checked-border-color});
|
|
10802
|
+
}
|
|
10803
|
+
|
|
10804
|
+
// Resets cursor from Bootstrap' _reboot.scss based on option.
|
|
10805
|
+
@if ($enable-button-pointers: false) {
|
|
10806
|
+
summary,
|
|
10807
|
+
[role="button"] {
|
|
10808
|
+
cursor: unset;
|
|
10809
|
+
}
|
|
10810
|
+
}
|
|
10811
|
+
|
|
10812
|
+
// In previous versions of Bootstrap, `.page-header` was a class that could be used to add a border to the bottom of a page header.
|
|
10813
|
+
// Unfortunately his class was removed in Bootstrap 5, so it's now part of Blue Web CSS.
|
|
10814
|
+
.blue-page-header,
|
|
10815
|
+
.page-header {
|
|
10816
|
+
padding-bottom: 0.563rem;
|
|
10817
|
+
margin: 2.5rem 0 1.25rem;
|
|
10818
|
+
border-bottom: 0.25rem solid var(--blue-page-header-border-color, $table-border-color);
|
|
10819
|
+
}
|
|
10820
|
+
|
|
10821
|
+
// Vertically alignment, especially for Bootstrap Icons.
|
|
10822
|
+
.blue-icon,
|
|
10823
|
+
.bi {
|
|
10824
|
+
display: inline-block;
|
|
10825
|
+
vertical-align: -0.125em;
|
|
10826
|
+
}
|
|
10827
|
+
|
|
10828
|
+
* {
|
|
10829
|
+
scrollbar-width: thin;
|
|
10830
|
+
}
|
|
10831
|
+
|
|
10832
|
+
html,
|
|
10833
|
+
body {
|
|
10834
|
+
height: 100%;
|
|
10835
|
+
}
|
|
10836
|
+
|
|
10837
|
+
body {
|
|
10838
|
+
background: var(--blue-app-bg, #{$app-bg});
|
|
10839
|
+
}
|
|
10840
|
+
|
|
10841
|
+
// Idee für Effekt von http://www.w3schools.com/howto/howto_css_animate_buttons.asp
|
|
10842
|
+
.btn,
|
|
10843
|
+
.nav-pills > li > a,
|
|
10844
|
+
.pager li > a,
|
|
10845
|
+
.pagination > li > a,
|
|
10846
|
+
.list-group a.list-group-item {
|
|
10847
|
+
&:not(.disabled):not(.readonly):not(.dropdown-toggle) {
|
|
10848
|
+
transition:
|
|
10849
|
+
background-color 0.3s,
|
|
10850
|
+
color 0.15s,
|
|
10851
|
+
box-shadow 0.3s,
|
|
10852
|
+
opacity 0.3s;
|
|
10853
|
+
position: relative;
|
|
10854
|
+
|
|
10855
|
+
@media (prefers-reduced-motion) {
|
|
10856
|
+
transition: none;
|
|
10857
|
+
}
|
|
10858
|
+
|
|
10859
|
+
&:hover,
|
|
10860
|
+
&:active,
|
|
10861
|
+
&:focus {
|
|
10862
|
+
z-index: 1;
|
|
10863
|
+
}
|
|
10864
|
+
}
|
|
10865
|
+
}
|
|
10866
|
+
|
|
10867
|
+
// .blue-header-title.sidebar {
|
|
10868
|
+
// width: $bla-sidebar-width;
|
|
10869
|
+
// padding-left: calc(#{$normal-size} + #{$spacer});
|
|
10870
|
+
// transform: translateX(-100%);
|
|
10871
|
+
// transition: transform 0.4s;
|
|
10872
|
+
// background: var(--blue-sidebar-bg);
|
|
10873
|
+
// color: $sidebar-color;
|
|
10874
|
+
|
|
10875
|
+
// @media (prefers-reduced-motion) {
|
|
10876
|
+
// transition: none;
|
|
10877
|
+
// }
|
|
10878
|
+
// }
|
|
10879
|
+
|
|
10880
|
+
.blue-scroll-shadow {
|
|
10881
|
+
@include scroll-shadow(var(--bs-body-bg));
|
|
10882
|
+
}
|
|
10883
|
+
|
|
10884
|
+
// Sets `margin: 0` to last child.
|
|
10885
|
+
// Useful for creating a gap between items together with `mb-3`.
|
|
10886
|
+
// Inspired by Tailwind CSS class `last:m-0`.
|
|
10887
|
+
.m-last-0:last-child {
|
|
10888
|
+
margin: 0 !important;
|
|
10889
|
+
}
|
|
10890
|
+
|
|
10891
|
+
// Shows empty message if the element has no children.
|
|
10892
|
+
// Can be used for lists and such.
|
|
10893
|
+
// For localization you should override CSS variable `--message` dynamically.
|
|
10894
|
+
.blue-empty-message {
|
|
10895
|
+
--message: "No items found.";
|
|
10896
|
+
&:empty::before {
|
|
10897
|
+
content: var(--message);
|
|
10898
|
+
color: var(--bs-secondary-color);
|
|
10899
|
+
display: flex;
|
|
10900
|
+
padding: 1rem;
|
|
10901
|
+
justify-content: center;
|
|
10902
|
+
}
|
|
10903
|
+
}
|
|
10904
|
+
|
|
10905
|
+
.blue-loading {
|
|
10906
|
+
background-color: $primary;
|
|
10907
|
+
}
|
|
10908
|
+
|
|
10909
|
+
.blue-status-alert,
|
|
10910
|
+
.blue-status-circle {
|
|
10911
|
+
position: fixed;
|
|
10912
|
+
display: none;
|
|
10913
|
+
box-shadow: 0 0.313rem 0.938rem rgba(0, 0, 0, 0.2);
|
|
10914
|
+
}
|
|
10915
|
+
|
|
10916
|
+
.blue-status-alert,
|
|
10917
|
+
.blue-status-circle {
|
|
10918
|
+
z-index: 6000;
|
|
10919
|
+
}
|
|
10920
|
+
|
|
10921
|
+
.blue-status-alert {
|
|
10922
|
+
&:after {
|
|
10923
|
+
content: "";
|
|
10924
|
+
display: block;
|
|
10925
|
+
position: absolute;
|
|
10926
|
+
width: 100%;
|
|
10927
|
+
height: 100%;
|
|
10928
|
+
top: 50%;
|
|
10929
|
+
left: 0;
|
|
10930
|
+
pointer-events: none;
|
|
10931
|
+
background-image: radial-gradient(circle, rgba(black, 0.7) 10%, transparent 10.01%);
|
|
10932
|
+
background-repeat: no-repeat;
|
|
10933
|
+
background-position: 50%;
|
|
10934
|
+
animation: alert-in 1s;
|
|
10935
|
+
|
|
10936
|
+
@media (prefers-reduced-motion) {
|
|
10937
|
+
animation-duration: 0s;
|
|
10938
|
+
}
|
|
10939
|
+
|
|
10940
|
+
& {
|
|
10941
|
+
transform: scale(10, 10);
|
|
10942
|
+
opacity: 0;
|
|
10943
|
+
transition:
|
|
10944
|
+
transform 0.5s,
|
|
10945
|
+
opacity 1s;
|
|
10946
|
+
}
|
|
10947
|
+
|
|
10948
|
+
@media (prefers-reduced-motion) {
|
|
10949
|
+
transition: none;
|
|
10950
|
+
}
|
|
10951
|
+
}
|
|
10952
|
+
|
|
10953
|
+
& {
|
|
10954
|
+
transform: translate3d(0, 0, 0);
|
|
10955
|
+
overflow: hidden;
|
|
10956
|
+
white-space: pre-wrap;
|
|
10957
|
+
|
|
10958
|
+
bottom: 2.5rem + 4rem + 0.938rem;
|
|
10959
|
+
left: 1rem;
|
|
10960
|
+
right: 1rem;
|
|
10961
|
+
|
|
10962
|
+
max-height: calc(100vh - 15rem);
|
|
10963
|
+
max-height: calc(100dvh - 15rem);
|
|
10964
|
+
}
|
|
10965
|
+
|
|
10966
|
+
.alert-body {
|
|
10967
|
+
max-height: calc(100vh - 16rem);
|
|
10968
|
+
max-height: calc(100dvh - 16rem);
|
|
10969
|
+
overflow-y: auto;
|
|
10970
|
+
}
|
|
10971
|
+
}
|
|
10972
|
+
|
|
10973
|
+
@media screen and (min-width: 768px) {
|
|
10974
|
+
.blue-status-alert {
|
|
10975
|
+
left: calc(50% - 18.75rem);
|
|
10976
|
+
right: calc(50% - 18.75rem);
|
|
10977
|
+
}
|
|
10978
|
+
}
|
|
10979
|
+
|
|
10980
|
+
.blue-status-circle {
|
|
10981
|
+
bottom: 2.5rem;
|
|
10982
|
+
left: calc(50% - 1.25rem);
|
|
10983
|
+
border-radius: 50%;
|
|
10984
|
+
width: 4rem;
|
|
10985
|
+
height: 4rem;
|
|
10986
|
+
color: #fff;
|
|
10987
|
+
|
|
10988
|
+
&:not(.blue-loading) {
|
|
10989
|
+
align-items: center;
|
|
10990
|
+
justify-content: center;
|
|
10991
|
+
font-size: 2.5em;
|
|
10992
|
+
}
|
|
10993
|
+
}
|
|
10994
|
+
|
|
10995
|
+
.blue-status-success {
|
|
10996
|
+
background-color: #5cb85c;
|
|
10997
|
+
}
|
|
10998
|
+
|
|
10999
|
+
.blue-status-info {
|
|
11000
|
+
background-color: #5bc0de;
|
|
11001
|
+
}
|
|
11002
|
+
|
|
11003
|
+
.blue-status-warning {
|
|
11004
|
+
background-color: #d58512;
|
|
11005
|
+
}
|
|
11006
|
+
|
|
11007
|
+
.blue-status-danger {
|
|
11008
|
+
background-color: #d43f3a;
|
|
11009
|
+
}
|
|
11010
|
+
|
|
11011
|
+
.spinner-bounce-circle {
|
|
11012
|
+
width: 100%;
|
|
11013
|
+
height: 100%;
|
|
11014
|
+
|
|
11015
|
+
position: relative;
|
|
11016
|
+
margin: 0;
|
|
11017
|
+
}
|
|
11018
|
+
|
|
11019
|
+
.spinner-bounce-circle div {
|
|
11020
|
+
width: 100%;
|
|
11021
|
+
height: 100%;
|
|
11022
|
+
border-radius: 50%;
|
|
11023
|
+
background-color: #fff;
|
|
11024
|
+
opacity: 0.6;
|
|
11025
|
+
position: absolute;
|
|
11026
|
+
top: 0;
|
|
11027
|
+
left: 0;
|
|
11028
|
+
|
|
11029
|
+
animation: circlebounce 2s infinite ease-in-out;
|
|
11030
|
+
}
|
|
11031
|
+
|
|
11032
|
+
.spinner-bounce-circle div:nth-child(1) {
|
|
11033
|
+
-webkit-animation-delay: -1s;
|
|
11034
|
+
animation-delay: -1s;
|
|
11035
|
+
}
|
|
11036
|
+
|
|
11037
|
+
.blue-menu-item {
|
|
11038
|
+
display: inline-flex;
|
|
11039
|
+
align-items: center;
|
|
11040
|
+
transition:
|
|
11041
|
+
width 0.5s,
|
|
11042
|
+
background-color 0.3s,
|
|
11043
|
+
color 0.15s,
|
|
11044
|
+
box-shadow 0.3s,
|
|
11045
|
+
opacity 0.3s !important;
|
|
11046
|
+
color: inherit;
|
|
11047
|
+
border-color: transparent;
|
|
11048
|
+
--bs-btn-active-border-color: transparent;
|
|
11049
|
+
--bs-btn-disabled-border-color: transparent;
|
|
11050
|
+
|
|
11051
|
+
@media (prefers-reduced-motion) {
|
|
11052
|
+
transition: none !important;
|
|
11053
|
+
}
|
|
11054
|
+
|
|
11055
|
+
&:focus-visible {
|
|
11056
|
+
&,
|
|
11057
|
+
&.active {
|
|
11058
|
+
box-shadow: inset 0 0 0 0.25rem color-mix(in srgb, currentColor 15%, transparent);
|
|
11059
|
+
}
|
|
11060
|
+
}
|
|
11061
|
+
|
|
11062
|
+
&::before {
|
|
11063
|
+
--visual-padding: 0.125rem;
|
|
11064
|
+
|
|
11065
|
+
content: "";
|
|
11066
|
+
position: absolute;
|
|
11067
|
+
top: var(--visual-padding);
|
|
11068
|
+
right: var(--visual-padding);
|
|
11069
|
+
bottom: var(--visual-padding);
|
|
11070
|
+
left: var(--visual-padding);
|
|
11071
|
+
background-color: currentColor;
|
|
11072
|
+
border-radius: var(--bs-btn-border-radius);
|
|
11073
|
+
transform: scale(0.9);
|
|
11074
|
+
opacity: 0;
|
|
11075
|
+
transition: all 0.2s;
|
|
11076
|
+
|
|
11077
|
+
@media (prefers-reduced-motion) {
|
|
11078
|
+
transition: none;
|
|
11079
|
+
}
|
|
11080
|
+
}
|
|
11081
|
+
|
|
11082
|
+
&:hover,
|
|
11083
|
+
&:active,
|
|
11084
|
+
&.active,
|
|
11085
|
+
&:has(+ :popover-open) {
|
|
11086
|
+
&::before {
|
|
11087
|
+
transform: scale(1);
|
|
11088
|
+
opacity: 0.25;
|
|
11089
|
+
}
|
|
11090
|
+
}
|
|
11091
|
+
|
|
11092
|
+
&.active,
|
|
11093
|
+
&:has(+ :popover-open) {
|
|
11094
|
+
&::before {
|
|
11095
|
+
opacity: 0.16;
|
|
11096
|
+
}
|
|
11097
|
+
}
|
|
11098
|
+
|
|
11099
|
+
&.current {
|
|
11100
|
+
position: relative;
|
|
11101
|
+
&::after {
|
|
11102
|
+
@include blue-menu-item-indicator();
|
|
11103
|
+
}
|
|
11104
|
+
}
|
|
11105
|
+
}
|
|
11106
|
+
|
|
11107
|
+
.blue-horizontal {
|
|
11108
|
+
.blue-menu-item.current::after {
|
|
11109
|
+
@include blue-menu-item-indicator-horizontal();
|
|
11110
|
+
}
|
|
11111
|
+
}
|
|
11112
|
+
|
|
11113
|
+
.blue-menu-item-current-hidden {
|
|
11114
|
+
&:is(:where(.blue-menu-item):is(.current) *) {
|
|
11115
|
+
display: none !important;
|
|
11116
|
+
}
|
|
11117
|
+
}
|
|
11118
|
+
.blue-menu-item-default-hidden {
|
|
11119
|
+
&:is(:where(.blue-menu-item):is(:not(.current)) *) {
|
|
11120
|
+
display: none !important;
|
|
11121
|
+
}
|
|
11122
|
+
}
|
|
11123
|
+
|
|
11124
|
+
.blue-header-title {
|
|
11125
|
+
a {
|
|
11126
|
+
color: inherit;
|
|
11127
|
+
|
|
11128
|
+
&:focus {
|
|
11129
|
+
text-decoration: none;
|
|
11130
|
+
}
|
|
11131
|
+
}
|
|
11132
|
+
}
|
|
11133
|
+
|
|
11134
|
+
.blue-header-title-image {
|
|
11135
|
+
width: var(--blue-header-title-image-width, var(--blue-header-title-image-size, 2rem));
|
|
11136
|
+
height: var(--blue-header-title-image-height, var(--blue-header-title-image-size, 2rem));
|
|
11137
|
+
}
|
|
11138
|
+
|
|
11139
|
+
.blue-input-group {
|
|
11140
|
+
border: $input-border-width solid $input-border-color;
|
|
11141
|
+
border-radius: $input-border-radius;
|
|
11142
|
+
background-color: $input-bg;
|
|
11143
|
+
|
|
11144
|
+
&.focus,
|
|
11145
|
+
&:has(input:focus) {
|
|
11146
|
+
box-shadow: $input-btn-focus-box-shadow;
|
|
11147
|
+
border-color: $input-focus-border-color;
|
|
11148
|
+
|
|
11149
|
+
.input-group-text {
|
|
11150
|
+
color: #{var(--bs-primary-text-emphasis)};
|
|
11151
|
+
}
|
|
11152
|
+
}
|
|
11153
|
+
|
|
11154
|
+
.input-group-text {
|
|
11155
|
+
border-color: transparent;
|
|
11156
|
+
background-color: transparent;
|
|
11157
|
+
}
|
|
11158
|
+
|
|
11159
|
+
.form-control {
|
|
11160
|
+
border: none;
|
|
11161
|
+
background-color: transparent !important;
|
|
11162
|
+
|
|
11163
|
+
&:focus {
|
|
11164
|
+
box-shadow: none;
|
|
11165
|
+
}
|
|
11166
|
+
}
|
|
11167
|
+
}
|
|
11168
|
+
|
|
11169
|
+
.blue-actions {
|
|
11170
|
+
--max-width: calc(
|
|
11171
|
+
var(--bs-btn-border-width, 1px) + var(--bs-btn-padding-x, 0.75rem) + var(--bs-btn-font-size, 1rem) +
|
|
11172
|
+
var(--bs-btn-padding-x, 0.75rem) + var(--bs-btn-border-width, 1px)
|
|
11173
|
+
);
|
|
11174
|
+
|
|
11175
|
+
max-height: var(--blue-header-height);
|
|
11176
|
+
overflow: hidden;
|
|
11177
|
+
|
|
11178
|
+
.blue-actions-menu {
|
|
11179
|
+
max-width: var(--max-width);
|
|
11180
|
+
& > .blue-menu-item-wrapper {
|
|
11181
|
+
display: block;
|
|
11182
|
+
position: relative;
|
|
11183
|
+
}
|
|
11184
|
+
}
|
|
11185
|
+
|
|
11186
|
+
&.open {
|
|
11187
|
+
left: 0;
|
|
11188
|
+
right: 0;
|
|
11189
|
+
top: 0;
|
|
11190
|
+
background-color: var(--blue-menu-item-dropdown-bg);
|
|
11191
|
+
}
|
|
11192
|
+
|
|
11193
|
+
&.none {
|
|
11194
|
+
@include actions(0px);
|
|
11195
|
+
}
|
|
11196
|
+
|
|
11197
|
+
&.sm {
|
|
11198
|
+
@include actions(768px);
|
|
11199
|
+
}
|
|
11200
|
+
|
|
11201
|
+
&.md {
|
|
11202
|
+
@include actions(992px);
|
|
11203
|
+
}
|
|
11204
|
+
|
|
11205
|
+
&.lg {
|
|
11206
|
+
@include actions(1200px);
|
|
11207
|
+
}
|
|
11208
|
+
|
|
11209
|
+
// Support for MenuItems
|
|
11210
|
+
.blue-menu-item {
|
|
11211
|
+
width: auto;
|
|
11212
|
+
|
|
11213
|
+
&.active::after {
|
|
11214
|
+
@include blue-menu-item-indicator-horizontal();
|
|
11215
|
+
}
|
|
11216
|
+
}
|
|
11217
|
+
|
|
11218
|
+
.blue-menu-item-dropdown-toggle .blue-menu-item-label {
|
|
11219
|
+
margin-right: 0.5rem;
|
|
11220
|
+
}
|
|
11221
|
+
|
|
11222
|
+
.blue-menu-item-label {
|
|
11223
|
+
display: initial;
|
|
11224
|
+
}
|
|
11225
|
+
}
|
|
11226
|
+
|
|
11227
|
+
.blue-tooltip,
|
|
11228
|
+
.blue-tooltip-start,
|
|
11229
|
+
.blue-tooltip-end,
|
|
11230
|
+
.blue-tooltip-up,
|
|
11231
|
+
.blue-tooltip-down {
|
|
11232
|
+
--#{$prefix}tooltip-zindex: #{$zindex-tooltip};
|
|
11233
|
+
--#{$prefix}tooltip-max-width: #{$tooltip-max-width};
|
|
11234
|
+
--#{$prefix}tooltip-padding-x: #{$tooltip-padding-x};
|
|
11235
|
+
--#{$prefix}tooltip-padding-y: #{$tooltip-padding-y};
|
|
11236
|
+
@include rfs($tooltip-font-size, --#{$prefix}tooltip-font-size);
|
|
11237
|
+
--#{$prefix}tooltip-color: #{$tooltip-color};
|
|
11238
|
+
--#{$prefix}tooltip-bg: #{$tooltip-bg};
|
|
11239
|
+
--#{$prefix}tooltip-border-radius: #{$tooltip-border-radius};
|
|
11240
|
+
--#{$prefix}tooltip-opacity: #{$tooltip-opacity};
|
|
11241
|
+
|
|
11242
|
+
// @apply relative inline-block;
|
|
11243
|
+
position: relative;
|
|
11244
|
+
display: inline-block;
|
|
11245
|
+
|
|
11246
|
+
--tt-bg: var(--#{$prefix}tooltip-bg, black);
|
|
11247
|
+
--tt-off: calc(100% + 0.5rem);
|
|
11248
|
+
--tt-tail: calc(100% + 1px + 0.25rem);
|
|
11249
|
+
|
|
11250
|
+
> :where(.blue-tooltip-content),
|
|
11251
|
+
&[data-tooltip]:before {
|
|
11252
|
+
// @apply text-neutral-content rounded-field absolute max-w-[20rem] px-2 py-1 text-center whitespace-normal opacity-0;
|
|
11253
|
+
|
|
11254
|
+
@include reset-text();
|
|
11255
|
+
@include font-size(var(--#{$prefix}tooltip-font-size));
|
|
11256
|
+
|
|
11257
|
+
color: var(--#{$prefix}tooltip-color);
|
|
11258
|
+
@include border-radius(var(--#{$prefix}tooltip-border-radius));
|
|
11259
|
+
position: absolute;
|
|
11260
|
+
max-width: var(--#{$prefix}tooltip-max-width);
|
|
11261
|
+
padding: var(--#{$prefix}tooltip-padding-y) var(--#{$prefix}tooltip-padding-x);
|
|
11262
|
+
text-align: center;
|
|
11263
|
+
white-space: normal;
|
|
11264
|
+
opacity: 0;
|
|
11265
|
+
|
|
11266
|
+
line-height: 1.25em;
|
|
11267
|
+
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
|
|
11268
|
+
background-color: var(--tt-bg);
|
|
11269
|
+
width: max-content;
|
|
11270
|
+
pointer-events: none;
|
|
11271
|
+
z-index: var(--#{$prefix}tooltip-zindex);
|
|
11272
|
+
--tw-content: attr(data-tooltip);
|
|
11273
|
+
content: var(--tw-content);
|
|
11274
|
+
}
|
|
11275
|
+
|
|
11276
|
+
&:after {
|
|
11277
|
+
// @apply absolute opacity-0;
|
|
11278
|
+
position: absolute;
|
|
11279
|
+
opacity: 0;
|
|
11280
|
+
|
|
11281
|
+
background-color: var(--tt-bg);
|
|
11282
|
+
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
|
|
11283
|
+
content: "";
|
|
11284
|
+
pointer-events: none;
|
|
11285
|
+
width: 0.625rem;
|
|
11286
|
+
height: 0.25rem;
|
|
11287
|
+
display: block;
|
|
11288
|
+
position: absolute;
|
|
11289
|
+
mask-repeat: no-repeat;
|
|
11290
|
+
mask-position: -1px 0;
|
|
11291
|
+
--mask-tooltip: url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");
|
|
11292
|
+
mask-image: var(--mask-tooltip);
|
|
11293
|
+
}
|
|
11294
|
+
}
|
|
11295
|
+
|
|
11296
|
+
.blue-tooltip,
|
|
11297
|
+
.blue-tooltip-up {
|
|
11298
|
+
> .blue-tooltip-content,
|
|
11299
|
+
&[data-tooltip]:before {
|
|
11300
|
+
transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
|
|
11301
|
+
inset: auto auto var(--tt-off) 50%;
|
|
11302
|
+
}
|
|
11303
|
+
}
|
|
11304
|
+
|
|
11305
|
+
.blue-tooltip-down {
|
|
11306
|
+
> .blue-tooltip-content,
|
|
11307
|
+
&[data-tooltip]:before {
|
|
11308
|
+
transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem));
|
|
11309
|
+
inset: var(--tt-off) auto auto 50%;
|
|
11310
|
+
}
|
|
11311
|
+
}
|
|
11312
|
+
|
|
11313
|
+
.blue-tooltip-start {
|
|
11314
|
+
> .blue-tooltip-content,
|
|
11315
|
+
&[data-tooltip]:before {
|
|
11316
|
+
transform: translateX(calc(var(--tt-pos, 0.25rem) - 0.25rem)) translateY(-50%);
|
|
11317
|
+
inset: 50% var(--tt-off) auto auto;
|
|
11318
|
+
}
|
|
11319
|
+
}
|
|
11320
|
+
|
|
11321
|
+
.blue-tooltip-end {
|
|
11322
|
+
> .blue-tooltip-content,
|
|
11323
|
+
&[data-tooltip]:before {
|
|
11324
|
+
transform: translateX(calc(var(--tt-pos, -0.25rem) + 0.25rem)) translateY(-50%);
|
|
11325
|
+
inset: 50% auto auto var(--tt-off);
|
|
11326
|
+
}
|
|
11327
|
+
}
|
|
11328
|
+
|
|
11329
|
+
.blue-tooltip,
|
|
11330
|
+
.blue-tooltip-start,
|
|
11331
|
+
.blue-tooltip-end,
|
|
11332
|
+
.blue-tooltip-up,
|
|
11333
|
+
.blue-tooltip-down {
|
|
11334
|
+
&.blue-tooltip-open,
|
|
11335
|
+
&[data-tooltip]:hover,
|
|
11336
|
+
&:hover,
|
|
11337
|
+
&:has(:focus-visible) {
|
|
11338
|
+
> .blue-tooltip-content,
|
|
11339
|
+
&[data-tooltip]:before,
|
|
11340
|
+
&:after {
|
|
11341
|
+
// @apply opacity-100;
|
|
11342
|
+
opacity: var(--#{$prefix}tooltip-opacity);
|
|
11343
|
+
--tt-pos: 0rem;
|
|
11344
|
+
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
|
|
11345
|
+
}
|
|
11346
|
+
}
|
|
11347
|
+
}
|
|
11348
|
+
|
|
11349
|
+
.blue-tooltip,
|
|
11350
|
+
.blue-tooltip-up {
|
|
11351
|
+
&:after {
|
|
11352
|
+
transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
|
|
11353
|
+
inset: auto auto var(--tt-tail) 50%;
|
|
11354
|
+
}
|
|
11355
|
+
}
|
|
11356
|
+
|
|
11357
|
+
.blue-tooltip-down {
|
|
11358
|
+
&:after {
|
|
11359
|
+
transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem)) rotate(180deg);
|
|
11360
|
+
inset: var(--tt-tail) auto auto 50%;
|
|
11361
|
+
}
|
|
11362
|
+
}
|
|
11363
|
+
|
|
11364
|
+
.blue-tooltip-start {
|
|
11365
|
+
&:after {
|
|
11366
|
+
transform: translateX(var(--tt-pos, 0.25rem)) translateY(-50%) rotate(-90deg);
|
|
11367
|
+
inset: 50% calc(var(--tt-tail) + 1px) auto auto;
|
|
11368
|
+
}
|
|
11369
|
+
}
|
|
11370
|
+
|
|
11371
|
+
.blue-tooltip-end {
|
|
11372
|
+
&:after {
|
|
11373
|
+
transform: translateX(var(--tt-pos, -0.25rem)) translateY(-50%) rotate(90deg);
|
|
11374
|
+
inset: 50% auto auto calc(var(--tt-tail) + 1px);
|
|
11375
|
+
}
|
|
11376
|
+
}
|
|
11377
|
+
|
|
11378
|
+
@media (hover: hover) {
|
|
11379
|
+
.blue-d-hover {
|
|
11380
|
+
&:not(:hover):not(:focus):not(:active):not(.active):not(:focus-within) {
|
|
11381
|
+
.blue-d-hover-content-active {
|
|
11382
|
+
display: none !important;
|
|
11383
|
+
}
|
|
11384
|
+
}
|
|
11385
|
+
|
|
11386
|
+
&:hover,
|
|
11387
|
+
&:focus,
|
|
11388
|
+
&:active,
|
|
11389
|
+
&.active,
|
|
11390
|
+
&:focus-within {
|
|
11391
|
+
.blue-d-hover-content-default {
|
|
11392
|
+
display: none !important;
|
|
11393
|
+
}
|
|
11394
|
+
}
|
|
11395
|
+
}
|
|
11396
|
+
|
|
11397
|
+
.blue-opacity-hover {
|
|
11398
|
+
&:not(:hover):not(:focus):not(:active):not(.active):not(:focus-within) {
|
|
11399
|
+
.blue-opacity-hover-content-active {
|
|
11400
|
+
opacity: 0;
|
|
11401
|
+
}
|
|
11402
|
+
}
|
|
11403
|
+
|
|
11404
|
+
&:hover,
|
|
11405
|
+
&:focus,
|
|
11406
|
+
&:active,
|
|
11407
|
+
&.active,
|
|
11408
|
+
&:focus-within {
|
|
11409
|
+
.blue-opacity-hover-content-default {
|
|
11410
|
+
opacity: 0;
|
|
11411
|
+
}
|
|
11412
|
+
}
|
|
11413
|
+
}
|
|
11414
|
+
}
|
|
11415
|
+
|
|
11416
|
+
// Extending `.icon-link > .bi` by Bootstrap to allow wrapped icons.
|
|
11417
|
+
|
|
11418
|
+
.blue-btn-icon-wrapper {
|
|
11419
|
+
display: contents;
|
|
11420
|
+
|
|
11421
|
+
& > * {
|
|
11422
|
+
flex-shrink: 0;
|
|
11423
|
+
@include transition($icon-link-icon-transition);
|
|
11424
|
+
}
|
|
11425
|
+
& > svg {
|
|
11426
|
+
width: $icon-link-icon-size;
|
|
11427
|
+
height: $icon-link-icon-size;
|
|
11428
|
+
fill: currentcolor;
|
|
11429
|
+
}
|
|
11430
|
+
}
|
|
11431
|
+
|
|
11432
|
+
.icon-link-hover {
|
|
11433
|
+
&:hover,
|
|
11434
|
+
&:focus-visible {
|
|
11435
|
+
.blue-btn-icon-wrapper > * {
|
|
11436
|
+
transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform);
|
|
11437
|
+
}
|
|
11438
|
+
}
|
|
11439
|
+
}
|
|
11440
|
+
|
|
11441
|
+
.blue-btn-square {
|
|
11442
|
+
padding: calc(var(--bs-btn-padding-y) + #{$icon-link-underline-offset});
|
|
11443
|
+
}
|
|
11444
|
+
|
|
11445
|
+
// Inspired by Bootstrap's button system but extended with more variants
|
|
11446
|
+
|
|
11447
|
+
// Soft buttons
|
|
11448
|
+
|
|
11449
|
+
// scss-docs-start btn-variant-loops
|
|
11450
|
+
@each $color, $value in $theme-colors {
|
|
11451
|
+
$bg: tint-color($value, 80%);
|
|
11452
|
+
$text-color: shade-color($value, 60%);
|
|
11453
|
+
|
|
11454
|
+
.blue-btn-soft-#{$color} {
|
|
11455
|
+
@if $color == "light" {
|
|
11456
|
+
$text-color: color-contrast($value);
|
|
11457
|
+
}
|
|
11458
|
+
|
|
11459
|
+
@include button-variant(
|
|
11460
|
+
$bg,
|
|
11461
|
+
$bg,
|
|
11462
|
+
$text-color,
|
|
11463
|
+
$hover-background: shade-color($bg, $btn-hover-bg-shade-amount),
|
|
11464
|
+
$hover-border: shade-color($bg, $btn-hover-border-shade-amount),
|
|
11465
|
+
$active-background: shade-color($bg, $btn-active-bg-shade-amount),
|
|
11466
|
+
$active-border: shade-color($bg, $btn-active-border-shade-amount)
|
|
11467
|
+
);
|
|
11468
|
+
}
|
|
11469
|
+
}
|
|
11470
|
+
|
|
11471
|
+
@include color-mode(dark) {
|
|
11472
|
+
@each $color, $value in $theme-colors {
|
|
11473
|
+
$bg: shade-color($value, 80%);
|
|
11474
|
+
$text-color: tint-color($value, 60%);
|
|
11475
|
+
|
|
11476
|
+
.blue-btn-soft-#{$color} {
|
|
11477
|
+
@if $color == "dark" {
|
|
11478
|
+
$text-color: color-contrast($value);
|
|
11479
|
+
}
|
|
11480
|
+
|
|
11481
|
+
@include button-variant(
|
|
11482
|
+
$bg,
|
|
11483
|
+
$bg,
|
|
11484
|
+
$text-color,
|
|
11485
|
+
$hover-background: tint-color($bg, $btn-hover-bg-tint-amount),
|
|
11486
|
+
$hover-border: tint-color($bg, $btn-hover-border-tint-amount),
|
|
11487
|
+
$active-background: tint-color($bg, $btn-active-bg-tint-amount),
|
|
11488
|
+
$active-border: tint-color($bg, $btn-active-border-tint-amount)
|
|
11489
|
+
);
|
|
11490
|
+
}
|
|
11491
|
+
}
|
|
11492
|
+
}
|
|
11493
|
+
|
|
11494
|
+
// Plain buttons
|
|
11495
|
+
|
|
11496
|
+
// scss-docs-start btn-variant-loops
|
|
11497
|
+
@each $color, $value in $theme-colors {
|
|
11498
|
+
$bg: tint-color($value, 80%);
|
|
11499
|
+
$text-color: $value;
|
|
11500
|
+
|
|
11501
|
+
$active-background: if(
|
|
11502
|
+
$color == $color-contrast-light,
|
|
11503
|
+
shade-color($value, $btn-active-bg-shade-amount),
|
|
11504
|
+
tint-color($value, $btn-active-bg-tint-amount)
|
|
11505
|
+
);
|
|
11506
|
+
|
|
11507
|
+
.blue-btn-plain-#{$color} {
|
|
11508
|
+
&:not(:hover) {
|
|
11509
|
+
box-shadow: none;
|
|
11510
|
+
background-image: none;
|
|
11511
|
+
}
|
|
11512
|
+
|
|
11513
|
+
@if $color == "light" {
|
|
11514
|
+
$text-color: color-contrast($value);
|
|
11515
|
+
}
|
|
11516
|
+
|
|
11517
|
+
// More contrast for secondary plain button
|
|
11518
|
+
@if $color == "secondary" {
|
|
11519
|
+
$text-color: shade-color($value, 60%);
|
|
11520
|
+
}
|
|
11521
|
+
|
|
11522
|
+
@include button-variant(
|
|
11523
|
+
transparent,
|
|
11524
|
+
transparent,
|
|
11525
|
+
$text-color,
|
|
11526
|
+
$hover-background: tint-color($value, 80%),
|
|
11527
|
+
$hover-border: tint-color($value, 80%),
|
|
11528
|
+
$hover-color: if($color == "light", color-contrast($value), shade-color($value, 60%)),
|
|
11529
|
+
$active-background: shade-color($bg, $btn-hover-bg-shade-amount),
|
|
11530
|
+
$active-border: shade-color($bg, $btn-hover-border-shade-amount),
|
|
11531
|
+
$disabled-background: transparent,
|
|
11532
|
+
$disabled-border: transparent,
|
|
11533
|
+
$disabled-color: $text-color
|
|
11534
|
+
);
|
|
11535
|
+
}
|
|
11536
|
+
}
|
|
11537
|
+
|
|
11538
|
+
@include color-mode(dark) {
|
|
11539
|
+
@each $color, $value in $theme-colors {
|
|
11540
|
+
$bg: shade-color($value, 80%);
|
|
11541
|
+
$text-color: tint-color($value, 40%);
|
|
11542
|
+
|
|
11543
|
+
.blue-btn-plain-#{$color} {
|
|
11544
|
+
@if $color == "dark" {
|
|
11545
|
+
$text-color: color-contrast($value);
|
|
11546
|
+
}
|
|
11547
|
+
|
|
11548
|
+
// More contrast for secondary plain button
|
|
11549
|
+
@if $color == "secondary" {
|
|
11550
|
+
$text-color: tint-color($value, 60%);
|
|
11551
|
+
}
|
|
11552
|
+
|
|
11553
|
+
@include button-variant(
|
|
11554
|
+
transparent,
|
|
11555
|
+
transparent,
|
|
11556
|
+
$text-color,
|
|
11557
|
+
$hover-background: tint-color($bg, $btn-hover-bg-tint-amount),
|
|
11558
|
+
$hover-border: tint-color($bg, $btn-hover-border-tint-amount),
|
|
11559
|
+
$active-background: tint-color($bg, $btn-active-bg-tint-amount),
|
|
11560
|
+
$active-border: tint-color($bg, $btn-active-border-tint-amount)
|
|
11561
|
+
);
|
|
11562
|
+
}
|
|
11563
|
+
}
|
|
11564
|
+
}
|
|
11565
|
+
|
|
11566
|
+
|
|
11567
|
+
|
|
11568
|
+
|
|
11569
|
+
|
|
11570
|
+
|
|
11571
|
+
|
|
11572
|
+
|
|
11573
|
+
|
|
11574
|
+
@mixin make-grid-columns-cq($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {
|
|
11575
|
+
.col {
|
|
11576
|
+
flex: initial;
|
|
11577
|
+
max-width: initial;
|
|
11578
|
+
width: 100%;
|
|
11579
|
+
}
|
|
11580
|
+
|
|
11581
|
+
@each $breakpoint in map-keys($breakpoints) {
|
|
11582
|
+
$infix: breakpoint-infix($breakpoint, $breakpoints);
|
|
11583
|
+
|
|
11584
|
+
@for $i from 1 through $columns {
|
|
11585
|
+
.col#{$infix}-#{$i} {
|
|
11586
|
+
@extend .col;
|
|
11587
|
+
}
|
|
11588
|
+
}
|
|
11589
|
+
}
|
|
11590
|
+
|
|
11591
|
+
@each $breakpoint in map-keys($breakpoints) {
|
|
11592
|
+
$infix: breakpoint-infix($breakpoint, $breakpoints);
|
|
11593
|
+
|
|
11594
|
+
// @for $i from 1 through $columns {
|
|
11595
|
+
// .col#{$infix}-#{$i} {
|
|
11596
|
+
// flex: initial;
|
|
11597
|
+
// max-width: initial;
|
|
11598
|
+
// width: 100%;
|
|
11599
|
+
// }
|
|
11600
|
+
// }
|
|
11601
|
+
|
|
11602
|
+
@if breakpoint-min($breakpoint, $breakpoints) {
|
|
11603
|
+
@container (min-width: #{breakpoint-min($breakpoint, $breakpoints)}) {
|
|
11604
|
+
@for $i from 1 through $columns {
|
|
11605
|
+
.col#{$infix}-#{$i} {
|
|
11606
|
+
@include make-col($i, $columns);
|
|
11607
|
+
}
|
|
11608
|
+
}
|
|
11609
|
+
}
|
|
11610
|
+
}
|
|
10778
11611
|
}
|
|
10779
|
-
}
|
|
10780
11612
|
}
|
|
10781
11613
|
|
|
10782
|
-
|
|
10783
|
-
|
|
10784
|
-
@
|
|
10785
|
-
@each $key, $utility in $utilities {
|
|
10786
|
-
// The utility can be disabled with `false`, thus check if the utility is a map first
|
|
10787
|
-
// Then check if the utility needs print styles
|
|
10788
|
-
@if type-of($utility) == "map" and map-get($utility, print) == true {
|
|
10789
|
-
@include generate-utility($utility, "-print");
|
|
10790
|
-
}
|
|
10791
|
-
}
|
|
11614
|
+
.blue-container-grid {
|
|
11615
|
+
container-type: inline-size;
|
|
11616
|
+
@include make-grid-columns-cq();
|
|
10792
11617
|
}
|
|
10793
|
-
|
|
10794
|
-
// scss-docs-end import-stack
|
|
10795
|
-
|
|
10796
|
-
|
|
10797
|
-
// Make it overridable via CSS variables, as it is not yet possible in Bootstrap.
|
|
10798
|
-
// Check with a newer Bootstrap version to see if it is still necessary.
|
|
10799
|
-
.form-check-input:checked {
|
|
10800
|
-
background-color: var(--bs-primary, #{$form-check-input-checked-bg-color});
|
|
10801
|
-
border-color: var(--bs-primary, #{$form-check-input-checked-border-color});
|
|
10802
|
-
}
|
|
10803
|
-
|
|
10804
|
-
// Resets cursor from Bootstrap' _reboot.scss based on option.
|
|
10805
|
-
@if ($enable-button-pointers: false) {
|
|
10806
|
-
summary,
|
|
10807
|
-
[role="button"] {
|
|
10808
|
-
cursor: unset;
|
|
10809
|
-
}
|
|
10810
|
-
}
|
|
10811
|
-
|
|
10812
|
-
// In previous versions of Bootstrap, `.page-header` was a class that could be used to add a border to the bottom of a page header.
|
|
10813
|
-
// Unfortunately his class was removed in Bootstrap 5, so it's now part of Blue Web CSS.
|
|
10814
|
-
.blue-page-header,
|
|
10815
|
-
.page-header {
|
|
10816
|
-
padding-bottom: 0.563rem;
|
|
10817
|
-
margin: 2.5rem 0 1.25rem;
|
|
10818
|
-
border-bottom: 0.25rem solid var(--blue-page-header-border-color, $table-border-color);
|
|
10819
|
-
}
|
|
10820
|
-
|
|
10821
|
-
// Vertically alignment, especially for Bootstrap Icons.
|
|
10822
|
-
.blue-icon,
|
|
10823
|
-
.bi {
|
|
10824
|
-
display: inline-block;
|
|
10825
|
-
vertical-align: -0.125em;
|
|
10826
|
-
}
|
|
10827
|
-
|
|
10828
|
-
* {
|
|
10829
|
-
scrollbar-width: thin;
|
|
10830
|
-
}
|
|
10831
|
-
|
|
10832
|
-
html,
|
|
10833
|
-
body {
|
|
10834
|
-
height: 100%;
|
|
10835
|
-
}
|
|
10836
|
-
|
|
10837
|
-
body {
|
|
10838
|
-
background: var(--blue-app-bg, #{$app-bg});
|
|
10839
|
-
}
|
|
10840
|
-
|
|
10841
|
-
// Idee für Effekt von http://www.w3schools.com/howto/howto_css_animate_buttons.asp
|
|
10842
|
-
.btn,
|
|
10843
|
-
.nav-pills > li > a,
|
|
10844
|
-
.pager li > a,
|
|
10845
|
-
.pagination > li > a,
|
|
10846
|
-
.list-group a.list-group-item {
|
|
10847
|
-
&:not(.disabled):not(.readonly):not(.dropdown-toggle) {
|
|
10848
|
-
transition:
|
|
10849
|
-
background-color 0.3s,
|
|
10850
|
-
color 0.15s,
|
|
10851
|
-
box-shadow 0.3s,
|
|
10852
|
-
opacity 0.3s;
|
|
10853
|
-
position: relative;
|
|
10854
|
-
|
|
10855
|
-
@media (prefers-reduced-motion) {
|
|
10856
|
-
transition: none;
|
|
10857
|
-
}
|
|
10858
|
-
|
|
10859
|
-
&:hover,
|
|
10860
|
-
&:active,
|
|
10861
|
-
&:focus {
|
|
10862
|
-
z-index: 1;
|
|
10863
|
-
}
|
|
10864
|
-
}
|
|
10865
|
-
}
|
|
10866
|
-
|
|
10867
|
-
// .blue-header-title.sidebar {
|
|
10868
|
-
// width: $bla-sidebar-width;
|
|
10869
|
-
// padding-left: calc(#{$normal-size} + #{$spacer});
|
|
10870
|
-
// transform: translateX(-100%);
|
|
10871
|
-
// transition: transform 0.4s;
|
|
10872
|
-
// background: var(--blue-sidebar-bg);
|
|
10873
|
-
// color: $sidebar-color;
|
|
10874
|
-
|
|
10875
|
-
// @media (prefers-reduced-motion) {
|
|
10876
|
-
// transition: none;
|
|
10877
|
-
// }
|
|
10878
|
-
// }
|
|
10879
|
-
|
|
10880
|
-
.blue-scroll-shadow {
|
|
10881
|
-
@include scroll-shadow(var(--bs-body-bg));
|
|
10882
|
-
}
|
|
10883
|
-
|
|
10884
|
-
// Sets `margin: 0` to last child.
|
|
10885
|
-
// Useful for creating a gap between items together with `mb-3`.
|
|
10886
|
-
// Inspired by Tailwind CSS class `last:m-0`.
|
|
10887
|
-
.m-last-0:last-child {
|
|
10888
|
-
margin: 0 !important;
|
|
10889
|
-
}
|
|
10890
|
-
|
|
10891
|
-
// Shows empty message if the element has no children.
|
|
10892
|
-
// Can be used for lists and such.
|
|
10893
|
-
// For localization you should override CSS variable `--message` dynamically.
|
|
10894
|
-
.blue-empty-message {
|
|
10895
|
-
--message: "No items found.";
|
|
10896
|
-
&:empty::before {
|
|
10897
|
-
content: var(--message);
|
|
10898
|
-
color: var(--bs-secondary-color);
|
|
10899
|
-
display: flex;
|
|
10900
|
-
padding: 1rem;
|
|
10901
|
-
justify-content: center;
|
|
10902
|
-
}
|
|
10903
|
-
}
|
|
10904
|
-
|
|
10905
|
-
.blue-loading {
|
|
10906
|
-
background-color: $primary;
|
|
10907
|
-
}
|
|
10908
|
-
|
|
10909
|
-
.blue-status-alert,
|
|
10910
|
-
.blue-status-circle {
|
|
10911
|
-
position: fixed;
|
|
10912
|
-
display: none;
|
|
10913
|
-
box-shadow: 0 0.313rem 0.938rem rgba(0, 0, 0, 0.2);
|
|
10914
|
-
}
|
|
10915
|
-
|
|
10916
|
-
.blue-status-alert,
|
|
10917
|
-
.blue-status-circle {
|
|
10918
|
-
z-index: 6000;
|
|
10919
|
-
}
|
|
10920
|
-
|
|
10921
|
-
.blue-status-alert {
|
|
10922
|
-
&:after {
|
|
10923
|
-
content: "";
|
|
10924
|
-
display: block;
|
|
10925
|
-
position: absolute;
|
|
10926
|
-
width: 100%;
|
|
10927
|
-
height: 100%;
|
|
10928
|
-
top: 50%;
|
|
10929
|
-
left: 0;
|
|
10930
|
-
pointer-events: none;
|
|
10931
|
-
background-image: radial-gradient(circle, rgba(black, 0.7) 10%, transparent 10.01%);
|
|
10932
|
-
background-repeat: no-repeat;
|
|
10933
|
-
background-position: 50%;
|
|
10934
|
-
animation: alert-in 1s;
|
|
10935
|
-
|
|
10936
|
-
@media (prefers-reduced-motion) {
|
|
10937
|
-
animation-duration: 0s;
|
|
10938
|
-
}
|
|
10939
|
-
|
|
10940
|
-
& {
|
|
10941
|
-
transform: scale(10, 10);
|
|
10942
|
-
opacity: 0;
|
|
10943
|
-
transition:
|
|
10944
|
-
transform 0.5s,
|
|
10945
|
-
opacity 1s;
|
|
10946
|
-
}
|
|
10947
|
-
|
|
10948
|
-
@media (prefers-reduced-motion) {
|
|
10949
|
-
transition: none;
|
|
10950
|
-
}
|
|
10951
|
-
}
|
|
10952
|
-
|
|
10953
|
-
& {
|
|
10954
|
-
transform: translate3d(0, 0, 0);
|
|
10955
|
-
overflow: hidden;
|
|
10956
|
-
white-space: pre-wrap;
|
|
10957
|
-
|
|
10958
|
-
bottom: 2.5rem + 4rem + 0.938rem;
|
|
10959
|
-
left: 1rem;
|
|
10960
|
-
right: 1rem;
|
|
10961
|
-
|
|
10962
|
-
max-height: calc(100vh - 15rem);
|
|
10963
|
-
max-height: calc(100dvh - 15rem);
|
|
10964
|
-
}
|
|
10965
|
-
|
|
10966
|
-
.alert-body {
|
|
10967
|
-
max-height: calc(100vh - 16rem);
|
|
10968
|
-
max-height: calc(100dvh - 16rem);
|
|
10969
|
-
overflow-y: auto;
|
|
10970
|
-
}
|
|
10971
|
-
}
|
|
10972
|
-
|
|
10973
|
-
@media screen and (min-width: 768px) {
|
|
10974
|
-
.blue-status-alert {
|
|
10975
|
-
left: calc(50% - 18.75rem);
|
|
10976
|
-
right: calc(50% - 18.75rem);
|
|
10977
|
-
}
|
|
10978
|
-
}
|
|
10979
|
-
|
|
10980
|
-
.blue-status-circle {
|
|
10981
|
-
bottom: 2.5rem;
|
|
10982
|
-
left: calc(50% - 1.25rem);
|
|
10983
|
-
border-radius: 50%;
|
|
10984
|
-
width: 4rem;
|
|
10985
|
-
height: 4rem;
|
|
10986
|
-
color: #fff;
|
|
10987
|
-
|
|
10988
|
-
&:not(.blue-loading) {
|
|
10989
|
-
align-items: center;
|
|
10990
|
-
justify-content: center;
|
|
10991
|
-
font-size: 2.5em;
|
|
10992
|
-
}
|
|
10993
|
-
}
|
|
10994
|
-
|
|
10995
|
-
.blue-status-success {
|
|
10996
|
-
background-color: #5cb85c;
|
|
10997
|
-
}
|
|
10998
|
-
|
|
10999
|
-
.blue-status-info {
|
|
11000
|
-
background-color: #5bc0de;
|
|
11001
|
-
}
|
|
11002
|
-
|
|
11003
|
-
.blue-status-warning {
|
|
11004
|
-
background-color: #d58512;
|
|
11005
|
-
}
|
|
11006
|
-
|
|
11007
|
-
.blue-status-danger {
|
|
11008
|
-
background-color: #d43f3a;
|
|
11009
|
-
}
|
|
11010
|
-
|
|
11011
|
-
.spinner-bounce-circle {
|
|
11012
|
-
width: 100%;
|
|
11013
|
-
height: 100%;
|
|
11014
|
-
|
|
11015
|
-
position: relative;
|
|
11016
|
-
margin: 0;
|
|
11017
|
-
}
|
|
11018
|
-
|
|
11019
|
-
.spinner-bounce-circle div {
|
|
11020
|
-
width: 100%;
|
|
11021
|
-
height: 100%;
|
|
11022
|
-
border-radius: 50%;
|
|
11023
|
-
background-color: #fff;
|
|
11024
|
-
opacity: 0.6;
|
|
11025
|
-
position: absolute;
|
|
11026
|
-
top: 0;
|
|
11027
|
-
left: 0;
|
|
11028
|
-
|
|
11029
|
-
animation: circlebounce 2s infinite ease-in-out;
|
|
11030
|
-
}
|
|
11031
|
-
|
|
11032
|
-
.spinner-bounce-circle div:nth-child(1) {
|
|
11033
|
-
-webkit-animation-delay: -1s;
|
|
11034
|
-
animation-delay: -1s;
|
|
11035
|
-
}
|
|
11036
|
-
|
|
11037
|
-
.blue-menu-item {
|
|
11038
|
-
display: inline-flex;
|
|
11039
|
-
align-items: center;
|
|
11040
|
-
transition:
|
|
11041
|
-
width 0.5s,
|
|
11042
|
-
background-color 0.3s,
|
|
11043
|
-
color 0.15s,
|
|
11044
|
-
box-shadow 0.3s,
|
|
11045
|
-
opacity 0.3s !important;
|
|
11046
|
-
color: inherit;
|
|
11047
|
-
border-color: transparent;
|
|
11048
|
-
--bs-btn-active-border-color: transparent;
|
|
11049
|
-
--bs-btn-disabled-border-color: transparent;
|
|
11050
|
-
|
|
11051
|
-
@media (prefers-reduced-motion) {
|
|
11052
|
-
transition: none !important;
|
|
11053
|
-
}
|
|
11054
|
-
|
|
11055
|
-
&:focus-visible {
|
|
11056
|
-
&,
|
|
11057
|
-
&.active {
|
|
11058
|
-
box-shadow: inset 0 0 0 0.25rem color-mix(in srgb, currentColor 15%, transparent);
|
|
11059
|
-
}
|
|
11060
|
-
}
|
|
11061
|
-
|
|
11062
|
-
&::before {
|
|
11063
|
-
--visual-padding: 0.125rem;
|
|
11064
|
-
|
|
11065
|
-
content: "";
|
|
11066
|
-
position: absolute;
|
|
11067
|
-
top: var(--visual-padding);
|
|
11068
|
-
right: var(--visual-padding);
|
|
11069
|
-
bottom: var(--visual-padding);
|
|
11070
|
-
left: var(--visual-padding);
|
|
11071
|
-
background-color: currentColor;
|
|
11072
|
-
border-radius: var(--bs-btn-border-radius);
|
|
11073
|
-
transform: scale(0.9);
|
|
11074
|
-
opacity: 0;
|
|
11075
|
-
transition: all 0.2s;
|
|
11076
|
-
|
|
11077
|
-
@media (prefers-reduced-motion) {
|
|
11078
|
-
transition: none;
|
|
11079
|
-
}
|
|
11080
|
-
}
|
|
11081
|
-
|
|
11082
|
-
&:hover,
|
|
11083
|
-
&:active,
|
|
11084
|
-
&.active,
|
|
11085
|
-
&:has(+ :popover-open) {
|
|
11086
|
-
&::before {
|
|
11087
|
-
transform: scale(1);
|
|
11088
|
-
opacity: 0.25;
|
|
11089
|
-
}
|
|
11090
|
-
}
|
|
11091
|
-
|
|
11092
|
-
&.active,
|
|
11093
|
-
&:has(+ :popover-open) {
|
|
11094
|
-
&::before {
|
|
11095
|
-
opacity: 0.16;
|
|
11096
|
-
}
|
|
11097
|
-
}
|
|
11098
|
-
|
|
11099
|
-
&.current {
|
|
11100
|
-
position: relative;
|
|
11101
|
-
&::after {
|
|
11102
|
-
@include blue-menu-item-indicator();
|
|
11103
|
-
}
|
|
11104
|
-
}
|
|
11105
|
-
}
|
|
11106
|
-
|
|
11107
|
-
.blue-horizontal {
|
|
11108
|
-
.blue-menu-item.current::after {
|
|
11109
|
-
@include blue-menu-item-indicator-horizontal();
|
|
11110
|
-
}
|
|
11111
|
-
}
|
|
11112
|
-
|
|
11113
|
-
.blue-menu-item-current-hidden {
|
|
11114
|
-
&:is(:where(.blue-menu-item):is(.current) *) {
|
|
11115
|
-
display: none !important;
|
|
11116
|
-
}
|
|
11117
|
-
}
|
|
11118
|
-
.blue-menu-item-default-hidden {
|
|
11119
|
-
&:is(:where(.blue-menu-item):is(:not(.current)) *) {
|
|
11120
|
-
display: none !important;
|
|
11121
|
-
}
|
|
11122
|
-
}
|
|
11123
|
-
|
|
11124
|
-
.blue-header-title {
|
|
11125
|
-
a {
|
|
11126
|
-
color: inherit;
|
|
11127
|
-
|
|
11128
|
-
&:focus {
|
|
11129
|
-
text-decoration: none;
|
|
11130
|
-
}
|
|
11131
|
-
}
|
|
11132
|
-
}
|
|
11133
|
-
|
|
11134
|
-
.blue-header-title-image {
|
|
11135
|
-
width: var(--blue-header-title-image-width, var(--blue-header-title-image-size, 2rem));
|
|
11136
|
-
height: var(--blue-header-title-image-height, var(--blue-header-title-image-size, 2rem));
|
|
11137
|
-
}
|
|
11138
|
-
|
|
11139
|
-
.blue-input-group {
|
|
11140
|
-
border: $input-border-width solid $input-border-color;
|
|
11141
|
-
border-radius: $input-border-radius;
|
|
11142
|
-
background-color: $input-bg;
|
|
11143
|
-
|
|
11144
|
-
&.focus,
|
|
11145
|
-
&:has(input:focus) {
|
|
11146
|
-
box-shadow: $input-btn-focus-box-shadow;
|
|
11147
|
-
border-color: $input-focus-border-color;
|
|
11148
|
-
|
|
11149
|
-
.input-group-text {
|
|
11150
|
-
color: #{var(--bs-primary-text-emphasis)};
|
|
11151
|
-
}
|
|
11152
|
-
}
|
|
11153
|
-
|
|
11154
|
-
.input-group-text {
|
|
11155
|
-
border-color: transparent;
|
|
11156
|
-
background-color: transparent;
|
|
11157
|
-
}
|
|
11158
|
-
|
|
11159
|
-
.form-control {
|
|
11160
|
-
border: none;
|
|
11161
|
-
background-color: transparent !important;
|
|
11162
|
-
|
|
11163
|
-
&:focus {
|
|
11164
|
-
box-shadow: none;
|
|
11165
|
-
}
|
|
11166
|
-
}
|
|
11167
|
-
}
|
|
11168
|
-
|
|
11169
|
-
.blue-actions {
|
|
11170
|
-
--max-width: calc(
|
|
11171
|
-
var(--bs-btn-border-width, 1px) + var(--bs-btn-padding-x, 0.75rem) + var(--bs-btn-font-size, 1rem) +
|
|
11172
|
-
var(--bs-btn-padding-x, 0.75rem) + var(--bs-btn-border-width, 1px)
|
|
11173
|
-
);
|
|
11174
|
-
|
|
11175
|
-
max-height: var(--blue-header-height);
|
|
11176
|
-
overflow: hidden;
|
|
11177
|
-
|
|
11178
|
-
.blue-actions-menu {
|
|
11179
|
-
max-width: var(--max-width);
|
|
11180
|
-
& > .blue-menu-item-wrapper {
|
|
11181
|
-
display: block;
|
|
11182
|
-
position: relative;
|
|
11183
|
-
}
|
|
11184
|
-
}
|
|
11185
|
-
|
|
11186
|
-
&.open {
|
|
11187
|
-
left: 0;
|
|
11188
|
-
right: 0;
|
|
11189
|
-
top: 0;
|
|
11190
|
-
background-color: var(--blue-menu-item-dropdown-bg);
|
|
11191
|
-
}
|
|
11192
|
-
|
|
11193
|
-
&.none {
|
|
11194
|
-
@include actions(0px);
|
|
11195
|
-
}
|
|
11196
|
-
|
|
11197
|
-
&.sm {
|
|
11198
|
-
@include actions(768px);
|
|
11199
|
-
}
|
|
11200
|
-
|
|
11201
|
-
&.md {
|
|
11202
|
-
@include actions(992px);
|
|
11203
|
-
}
|
|
11204
|
-
|
|
11205
|
-
&.lg {
|
|
11206
|
-
@include actions(1200px);
|
|
11207
|
-
}
|
|
11208
|
-
|
|
11209
|
-
// Support for MenuItems
|
|
11210
|
-
.blue-menu-item {
|
|
11211
|
-
width: auto;
|
|
11212
|
-
|
|
11213
|
-
&.active::after {
|
|
11214
|
-
@include blue-menu-item-indicator-horizontal();
|
|
11215
|
-
}
|
|
11216
|
-
}
|
|
11217
|
-
|
|
11218
|
-
.blue-menu-item-dropdown-toggle .blue-menu-item-label {
|
|
11219
|
-
margin-right: 0.5rem;
|
|
11220
|
-
}
|
|
11221
|
-
|
|
11222
|
-
.blue-menu-item-label {
|
|
11223
|
-
display: initial;
|
|
11224
|
-
}
|
|
11225
|
-
}
|
|
11226
|
-
|
|
11227
|
-
.blue-tooltip,
|
|
11228
|
-
.blue-tooltip-start,
|
|
11229
|
-
.blue-tooltip-end,
|
|
11230
|
-
.blue-tooltip-up,
|
|
11231
|
-
.blue-tooltip-down {
|
|
11232
|
-
--#{$prefix}tooltip-zindex: #{$zindex-tooltip};
|
|
11233
|
-
--#{$prefix}tooltip-max-width: #{$tooltip-max-width};
|
|
11234
|
-
--#{$prefix}tooltip-padding-x: #{$tooltip-padding-x};
|
|
11235
|
-
--#{$prefix}tooltip-padding-y: #{$tooltip-padding-y};
|
|
11236
|
-
@include rfs($tooltip-font-size, --#{$prefix}tooltip-font-size);
|
|
11237
|
-
--#{$prefix}tooltip-color: #{$tooltip-color};
|
|
11238
|
-
--#{$prefix}tooltip-bg: #{$tooltip-bg};
|
|
11239
|
-
--#{$prefix}tooltip-border-radius: #{$tooltip-border-radius};
|
|
11240
|
-
--#{$prefix}tooltip-opacity: #{$tooltip-opacity};
|
|
11241
|
-
|
|
11242
|
-
// @apply relative inline-block;
|
|
11243
|
-
position: relative;
|
|
11244
|
-
display: inline-block;
|
|
11245
|
-
|
|
11246
|
-
--tt-bg: var(--#{$prefix}tooltip-bg, black);
|
|
11247
|
-
--tt-off: calc(100% + 0.5rem);
|
|
11248
|
-
--tt-tail: calc(100% + 1px + 0.25rem);
|
|
11249
|
-
|
|
11250
|
-
> :where(.blue-tooltip-content),
|
|
11251
|
-
&[data-tooltip]:before {
|
|
11252
|
-
// @apply text-neutral-content rounded-field absolute max-w-[20rem] px-2 py-1 text-center whitespace-normal opacity-0;
|
|
11253
|
-
|
|
11254
|
-
@include reset-text();
|
|
11255
|
-
@include font-size(var(--#{$prefix}tooltip-font-size));
|
|
11256
|
-
|
|
11257
|
-
color: var(--#{$prefix}tooltip-color);
|
|
11258
|
-
@include border-radius(var(--#{$prefix}tooltip-border-radius));
|
|
11259
|
-
position: absolute;
|
|
11260
|
-
max-width: var(--#{$prefix}tooltip-max-width);
|
|
11261
|
-
padding: var(--#{$prefix}tooltip-padding-y) var(--#{$prefix}tooltip-padding-x);
|
|
11262
|
-
text-align: center;
|
|
11263
|
-
white-space: normal;
|
|
11264
|
-
opacity: 0;
|
|
11265
|
-
|
|
11266
|
-
line-height: 1.25em;
|
|
11267
|
-
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
|
|
11268
|
-
background-color: var(--tt-bg);
|
|
11269
|
-
width: max-content;
|
|
11270
|
-
pointer-events: none;
|
|
11271
|
-
z-index: var(--#{$prefix}tooltip-zindex);
|
|
11272
|
-
--tw-content: attr(data-tooltip);
|
|
11273
|
-
content: var(--tw-content);
|
|
11274
|
-
}
|
|
11275
|
-
|
|
11276
|
-
&:after {
|
|
11277
|
-
// @apply absolute opacity-0;
|
|
11278
|
-
position: absolute;
|
|
11279
|
-
opacity: 0;
|
|
11280
|
-
|
|
11281
|
-
background-color: var(--tt-bg);
|
|
11282
|
-
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
|
|
11283
|
-
content: "";
|
|
11284
|
-
pointer-events: none;
|
|
11285
|
-
width: 0.625rem;
|
|
11286
|
-
height: 0.25rem;
|
|
11287
|
-
display: block;
|
|
11288
|
-
position: absolute;
|
|
11289
|
-
mask-repeat: no-repeat;
|
|
11290
|
-
mask-position: -1px 0;
|
|
11291
|
-
--mask-tooltip: url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");
|
|
11292
|
-
mask-image: var(--mask-tooltip);
|
|
11293
|
-
}
|
|
11294
|
-
}
|
|
11295
|
-
|
|
11296
|
-
.blue-tooltip,
|
|
11297
|
-
.blue-tooltip-up {
|
|
11298
|
-
> .blue-tooltip-content,
|
|
11299
|
-
&[data-tooltip]:before {
|
|
11300
|
-
transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
|
|
11301
|
-
inset: auto auto var(--tt-off) 50%;
|
|
11302
|
-
}
|
|
11303
|
-
}
|
|
11304
|
-
|
|
11305
|
-
.blue-tooltip-down {
|
|
11306
|
-
> .blue-tooltip-content,
|
|
11307
|
-
&[data-tooltip]:before {
|
|
11308
|
-
transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem));
|
|
11309
|
-
inset: var(--tt-off) auto auto 50%;
|
|
11310
|
-
}
|
|
11311
|
-
}
|
|
11312
|
-
|
|
11313
|
-
.blue-tooltip-start {
|
|
11314
|
-
> .blue-tooltip-content,
|
|
11315
|
-
&[data-tooltip]:before {
|
|
11316
|
-
transform: translateX(calc(var(--tt-pos, 0.25rem) - 0.25rem)) translateY(-50%);
|
|
11317
|
-
inset: 50% var(--tt-off) auto auto;
|
|
11318
|
-
}
|
|
11319
|
-
}
|
|
11320
|
-
|
|
11321
|
-
.blue-tooltip-end {
|
|
11322
|
-
> .blue-tooltip-content,
|
|
11323
|
-
&[data-tooltip]:before {
|
|
11324
|
-
transform: translateX(calc(var(--tt-pos, -0.25rem) + 0.25rem)) translateY(-50%);
|
|
11325
|
-
inset: 50% auto auto var(--tt-off);
|
|
11326
|
-
}
|
|
11327
|
-
}
|
|
11328
|
-
|
|
11329
|
-
.blue-tooltip,
|
|
11330
|
-
.blue-tooltip-start,
|
|
11331
|
-
.blue-tooltip-end,
|
|
11332
|
-
.blue-tooltip-up,
|
|
11333
|
-
.blue-tooltip-down {
|
|
11334
|
-
&.blue-tooltip-open,
|
|
11335
|
-
&[data-tooltip]:hover,
|
|
11336
|
-
&:hover,
|
|
11337
|
-
&:has(:focus-visible) {
|
|
11338
|
-
> .blue-tooltip-content,
|
|
11339
|
-
&[data-tooltip]:before,
|
|
11340
|
-
&:after {
|
|
11341
|
-
// @apply opacity-100;
|
|
11342
|
-
opacity: var(--#{$prefix}tooltip-opacity);
|
|
11343
|
-
--tt-pos: 0rem;
|
|
11344
|
-
transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
|
|
11345
|
-
}
|
|
11346
|
-
}
|
|
11347
|
-
}
|
|
11348
|
-
|
|
11349
|
-
.blue-tooltip,
|
|
11350
|
-
.blue-tooltip-up {
|
|
11351
|
-
&:after {
|
|
11352
|
-
transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
|
|
11353
|
-
inset: auto auto var(--tt-tail) 50%;
|
|
11354
|
-
}
|
|
11355
|
-
}
|
|
11356
|
-
|
|
11357
|
-
.blue-tooltip-down {
|
|
11358
|
-
&:after {
|
|
11359
|
-
transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem)) rotate(180deg);
|
|
11360
|
-
inset: var(--tt-tail) auto auto 50%;
|
|
11361
|
-
}
|
|
11362
|
-
}
|
|
11363
|
-
|
|
11364
|
-
.blue-tooltip-start {
|
|
11365
|
-
&:after {
|
|
11366
|
-
transform: translateX(var(--tt-pos, 0.25rem)) translateY(-50%) rotate(-90deg);
|
|
11367
|
-
inset: 50% calc(var(--tt-tail) + 1px) auto auto;
|
|
11368
|
-
}
|
|
11369
|
-
}
|
|
11370
|
-
|
|
11371
|
-
.blue-tooltip-end {
|
|
11372
|
-
&:after {
|
|
11373
|
-
transform: translateX(var(--tt-pos, -0.25rem)) translateY(-50%) rotate(90deg);
|
|
11374
|
-
inset: 50% auto auto calc(var(--tt-tail) + 1px);
|
|
11375
|
-
}
|
|
11376
|
-
}
|
|
11377
|
-
|
|
11378
|
-
@media (hover: hover) {
|
|
11379
|
-
.blue-d-hover {
|
|
11380
|
-
&:not(:hover):not(:focus):not(:active):not(.active):not(:focus-within) {
|
|
11381
|
-
.blue-d-hover-content-active {
|
|
11382
|
-
display: none !important;
|
|
11383
|
-
}
|
|
11384
|
-
}
|
|
11385
|
-
|
|
11386
|
-
&:hover,
|
|
11387
|
-
&:focus,
|
|
11388
|
-
&:active,
|
|
11389
|
-
&.active,
|
|
11390
|
-
&:focus-within {
|
|
11391
|
-
.blue-d-hover-content-default {
|
|
11392
|
-
display: none !important;
|
|
11393
|
-
}
|
|
11394
|
-
}
|
|
11395
|
-
}
|
|
11396
|
-
|
|
11397
|
-
.blue-opacity-hover {
|
|
11398
|
-
&:not(:hover):not(:focus):not(:active):not(.active):not(:focus-within) {
|
|
11399
|
-
.blue-opacity-hover-content-active {
|
|
11400
|
-
opacity: 0;
|
|
11401
|
-
}
|
|
11402
|
-
}
|
|
11403
|
-
|
|
11404
|
-
&:hover,
|
|
11405
|
-
&:focus,
|
|
11406
|
-
&:active,
|
|
11407
|
-
&.active,
|
|
11408
|
-
&:focus-within {
|
|
11409
|
-
.blue-opacity-hover-content-default {
|
|
11410
|
-
opacity: 0;
|
|
11411
|
-
}
|
|
11412
|
-
}
|
|
11413
|
-
}
|
|
11414
|
-
}
|
|
11415
|
-
|
|
11416
|
-
// Extending `.icon-link > .bi` by Bootstrap to allow wrapped icons.
|
|
11417
|
-
|
|
11418
|
-
.blue-btn-icon-wrapper {
|
|
11419
|
-
display: contents;
|
|
11420
|
-
|
|
11421
|
-
& > * {
|
|
11422
|
-
flex-shrink: 0;
|
|
11423
|
-
@include transition($icon-link-icon-transition);
|
|
11424
|
-
}
|
|
11425
|
-
& > svg {
|
|
11426
|
-
width: $icon-link-icon-size;
|
|
11427
|
-
height: $icon-link-icon-size;
|
|
11428
|
-
fill: currentcolor;
|
|
11429
|
-
}
|
|
11430
|
-
}
|
|
11431
|
-
|
|
11432
|
-
.icon-link-hover {
|
|
11433
|
-
&:hover,
|
|
11434
|
-
&:focus-visible {
|
|
11435
|
-
.blue-btn-icon-wrapper > * {
|
|
11436
|
-
transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform);
|
|
11437
|
-
}
|
|
11438
|
-
}
|
|
11439
|
-
}
|
|
11440
|
-
|
|
11441
|
-
.blue-btn-square {
|
|
11442
|
-
padding: calc(var(--bs-btn-padding-y) + #{$icon-link-underline-offset});
|
|
11443
|
-
}
|
|
11444
|
-
|
|
11445
|
-
// Inspired by Bootstrap's button system but extended with more variants
|
|
11446
|
-
|
|
11447
|
-
// Soft buttons
|
|
11448
|
-
|
|
11449
|
-
// scss-docs-start btn-variant-loops
|
|
11450
|
-
@each $color, $value in $theme-colors {
|
|
11451
|
-
$bg: tint-color($value, 80%);
|
|
11452
|
-
$text-color: shade-color($value, 60%);
|
|
11453
|
-
|
|
11454
|
-
.blue-btn-soft-#{$color} {
|
|
11455
|
-
@if $color == "light" {
|
|
11456
|
-
$text-color: color-contrast($value);
|
|
11457
|
-
}
|
|
11458
|
-
|
|
11459
|
-
@include button-variant(
|
|
11460
|
-
$bg,
|
|
11461
|
-
$bg,
|
|
11462
|
-
$text-color,
|
|
11463
|
-
$hover-background: shade-color($bg, $btn-hover-bg-shade-amount),
|
|
11464
|
-
$hover-border: shade-color($bg, $btn-hover-border-shade-amount),
|
|
11465
|
-
$active-background: shade-color($bg, $btn-active-bg-shade-amount),
|
|
11466
|
-
$active-border: shade-color($bg, $btn-active-border-shade-amount)
|
|
11467
|
-
);
|
|
11468
|
-
}
|
|
11469
|
-
}
|
|
11470
|
-
|
|
11471
|
-
@include color-mode(dark) {
|
|
11472
|
-
@each $color, $value in $theme-colors {
|
|
11473
|
-
$bg: shade-color($value, 80%);
|
|
11474
|
-
$text-color: tint-color($value, 60%);
|
|
11475
|
-
|
|
11476
|
-
.blue-btn-soft-#{$color} {
|
|
11477
|
-
@if $color == "dark" {
|
|
11478
|
-
$text-color: color-contrast($value);
|
|
11479
|
-
}
|
|
11480
|
-
|
|
11481
|
-
@include button-variant(
|
|
11482
|
-
$bg,
|
|
11483
|
-
$bg,
|
|
11484
|
-
$text-color,
|
|
11485
|
-
$hover-background: tint-color($bg, $btn-hover-bg-tint-amount),
|
|
11486
|
-
$hover-border: tint-color($bg, $btn-hover-border-tint-amount),
|
|
11487
|
-
$active-background: tint-color($bg, $btn-active-bg-tint-amount),
|
|
11488
|
-
$active-border: tint-color($bg, $btn-active-border-tint-amount)
|
|
11489
|
-
);
|
|
11490
|
-
}
|
|
11491
|
-
}
|
|
11492
|
-
}
|
|
11493
|
-
|
|
11494
|
-
// Plain buttons
|
|
11495
|
-
|
|
11496
|
-
// scss-docs-start btn-variant-loops
|
|
11497
|
-
@each $color, $value in $theme-colors {
|
|
11498
|
-
$bg: tint-color($value, 80%);
|
|
11499
|
-
$text-color: $value;
|
|
11500
|
-
|
|
11501
|
-
$active-background: if(
|
|
11502
|
-
$color == $color-contrast-light,
|
|
11503
|
-
shade-color($value, $btn-active-bg-shade-amount),
|
|
11504
|
-
tint-color($value, $btn-active-bg-tint-amount)
|
|
11505
|
-
);
|
|
11506
|
-
|
|
11507
|
-
.blue-btn-plain-#{$color} {
|
|
11508
|
-
&:not(:hover) {
|
|
11509
|
-
box-shadow: none;
|
|
11510
|
-
background-image: none;
|
|
11511
|
-
}
|
|
11512
|
-
|
|
11513
|
-
@if $color == "light" {
|
|
11514
|
-
$text-color: color-contrast($value);
|
|
11515
|
-
}
|
|
11516
|
-
|
|
11517
|
-
// More contrast for secondary plain button
|
|
11518
|
-
@if $color == "secondary" {
|
|
11519
|
-
$text-color: shade-color($value, 60%);
|
|
11520
|
-
}
|
|
11521
|
-
|
|
11522
|
-
@include button-variant(
|
|
11523
|
-
transparent,
|
|
11524
|
-
transparent,
|
|
11525
|
-
$text-color,
|
|
11526
|
-
$hover-background: tint-color($value, 80%),
|
|
11527
|
-
$hover-border: tint-color($value, 80%),
|
|
11528
|
-
$hover-color: if($color == "light", color-contrast($value), shade-color($value, 60%)),
|
|
11529
|
-
$active-background: shade-color($bg, $btn-hover-bg-shade-amount),
|
|
11530
|
-
$active-border: shade-color($bg, $btn-hover-border-shade-amount),
|
|
11531
|
-
$disabled-background: transparent,
|
|
11532
|
-
$disabled-border: transparent,
|
|
11533
|
-
$disabled-color: $text-color
|
|
11534
|
-
);
|
|
11535
|
-
}
|
|
11536
|
-
}
|
|
11537
|
-
|
|
11538
|
-
@include color-mode(dark) {
|
|
11539
|
-
@each $color, $value in $theme-colors {
|
|
11540
|
-
$bg: shade-color($value, 80%);
|
|
11541
|
-
$text-color: tint-color($value, 40%);
|
|
11542
|
-
|
|
11543
|
-
.blue-btn-plain-#{$color} {
|
|
11544
|
-
@if $color == "dark" {
|
|
11545
|
-
$text-color: color-contrast($value);
|
|
11546
|
-
}
|
|
11547
|
-
|
|
11548
|
-
// More contrast for secondary plain button
|
|
11549
|
-
@if $color == "secondary" {
|
|
11550
|
-
$text-color: tint-color($value, 60%);
|
|
11551
|
-
}
|
|
11552
|
-
|
|
11553
|
-
@include button-variant(
|
|
11554
|
-
transparent,
|
|
11555
|
-
transparent,
|
|
11556
|
-
$text-color,
|
|
11557
|
-
$hover-background: tint-color($bg, $btn-hover-bg-tint-amount),
|
|
11558
|
-
$hover-border: tint-color($bg, $btn-hover-border-tint-amount),
|
|
11559
|
-
$active-background: tint-color($bg, $btn-active-bg-tint-amount),
|
|
11560
|
-
$active-border: tint-color($bg, $btn-active-border-tint-amount)
|
|
11561
|
-
);
|
|
11562
|
-
}
|
|
11563
|
-
}
|
|
11564
|
-
}
|
|
11565
|
-
|
|
11566
|
-
|
|
11567
|
-
|
|
11568
|
-
|
|
11569
|
-
|
|
11570
|
-
|
|
11571
|
-
|
|
11572
|
-
|
|
11573
|
-
|
|
11574
|
-
@mixin make-grid-columns-cq($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {
|
|
11575
|
-
.col {
|
|
11576
|
-
flex: initial;
|
|
11577
|
-
max-width: initial;
|
|
11578
|
-
width: 100%;
|
|
11579
|
-
}
|
|
11580
|
-
|
|
11581
|
-
@each $breakpoint in map-keys($breakpoints) {
|
|
11582
|
-
$infix: breakpoint-infix($breakpoint, $breakpoints);
|
|
11583
|
-
|
|
11584
|
-
@for $i from 1 through $columns {
|
|
11585
|
-
.col#{$infix}-#{$i} {
|
|
11586
|
-
@extend .col;
|
|
11587
|
-
}
|
|
11588
|
-
}
|
|
11589
|
-
}
|
|
11590
|
-
|
|
11591
|
-
@each $breakpoint in map-keys($breakpoints) {
|
|
11592
|
-
$infix: breakpoint-infix($breakpoint, $breakpoints);
|
|
11593
|
-
|
|
11594
|
-
// @for $i from 1 through $columns {
|
|
11595
|
-
// .col#{$infix}-#{$i} {
|
|
11596
|
-
// flex: initial;
|
|
11597
|
-
// max-width: initial;
|
|
11598
|
-
// width: 100%;
|
|
11599
|
-
// }
|
|
11600
|
-
// }
|
|
11601
|
-
|
|
11602
|
-
@if breakpoint-min($breakpoint, $breakpoints) {
|
|
11603
|
-
@container (min-width: #{breakpoint-min($breakpoint, $breakpoints)}) {
|
|
11604
|
-
@for $i from 1 through $columns {
|
|
11605
|
-
.col#{$infix}-#{$i} {
|
|
11606
|
-
@include make-col($i, $columns);
|
|
11607
|
-
}
|
|
11608
|
-
}
|
|
11609
|
-
}
|
|
11610
|
-
}
|
|
11611
|
-
}
|
|
11612
|
-
}
|
|
11613
|
-
|
|
11614
|
-
.blue-container-grid {
|
|
11615
|
-
container-type: inline-size;
|
|
11616
|
-
@include make-grid-columns-cq();
|
|
11617
|
-
}
|
|
11618
|
-
|
|
11618
|
+
|
|
11619
11619
|
// Customize style of Bootstrap's nav-underline
|
|
11620
11620
|
.nav-underline {
|
|
11621
11621
|
.nav-link {
|
|
@@ -11704,687 +11704,687 @@ input.blue-tab:checked + .blue-tab-content {
|
|
|
11704
11704
|
.blue-tabs.nav-underline {
|
|
11705
11705
|
row-gap: 0;
|
|
11706
11706
|
}
|
|
11707
|
-
|
|
11708
|
-
/**
|
|
11709
|
-
* Allows to use Bootstrap Modals but with the native dialog element
|
|
11710
|
-
* without the need of Bootstrap's JavaScript.
|
|
11711
|
-
* Even works with Bootstrap's Offcanvas classes.
|
|
11712
|
-
*/
|
|
11713
|
-
|
|
11714
|
-
@keyframes blue-modal-open {
|
|
11715
|
-
from {
|
|
11716
|
-
opacity: 0;
|
|
11717
|
-
scale: var(--ani-scale-from, 95%);
|
|
11718
|
-
translate: var(--ani-translate-from, 0 0);
|
|
11719
|
-
}
|
|
11720
|
-
to {
|
|
11721
|
-
opacity: 1;
|
|
11722
|
-
scale: var(--ani-scale-to, 100%);
|
|
11723
|
-
translate: var(--ani-translate-to, 0 0);
|
|
11724
|
-
}
|
|
11725
|
-
}
|
|
11726
|
-
|
|
11727
|
-
@keyframes blue-modal-close {
|
|
11728
|
-
from {
|
|
11729
|
-
opacity: 1;
|
|
11730
|
-
scale: var(--ani-scale-to, 100%);
|
|
11731
|
-
translate: var(--ani-translate-to, 0 0);
|
|
11732
|
-
}
|
|
11733
|
-
to {
|
|
11734
|
-
opacity: 0;
|
|
11735
|
-
scale: var(--ani-scale-from, 95%);
|
|
11736
|
-
translate: var(--ani-translate-from, 0 0);
|
|
11737
|
-
}
|
|
11738
|
-
}
|
|
11739
|
-
|
|
11740
|
-
dialog.blue-modal {
|
|
11741
|
-
--ani-scale-from: 95%;
|
|
11742
|
-
--ani-scale-to: 100%;
|
|
11743
|
-
--ani-translate-from: 0 0;
|
|
11744
|
-
--ani-translate-to: 0 0;
|
|
11745
|
-
|
|
11746
|
-
border: none;
|
|
11747
|
-
background: none;
|
|
11748
|
-
padding: 0;
|
|
11749
|
-
margin: 0;
|
|
11750
|
-
max-width: none;
|
|
11751
|
-
max-height: none;
|
|
11752
|
-
transition:
|
|
11753
|
-
display 0.2s allow-discrete,
|
|
11754
|
-
overlay 0.2s allow-discrete;
|
|
11755
|
-
animation: blue-modal-close 0.2s forwards;
|
|
11756
|
-
|
|
11757
|
-
.offcanvas-backdrop {
|
|
11758
|
-
display: none;
|
|
11759
|
-
}
|
|
11760
|
-
}
|
|
11761
|
-
|
|
11762
|
-
dialog.blue-modal[open] {
|
|
11763
|
-
display: block;
|
|
11764
|
-
animation: blue-modal-open 0.2s forwards;
|
|
11765
|
-
}
|
|
11766
|
-
|
|
11767
|
-
dialog.blue-modal::backdrop {
|
|
11768
|
-
--bs-backdrop-bg: #000;
|
|
11769
|
-
--bs-backdrop-opacity: 0.5;
|
|
11770
|
-
background-color: var(--bs-backdrop-bg);
|
|
11771
|
-
transition: opacity 0.2s;
|
|
11772
|
-
opacity: 0;
|
|
11773
|
-
}
|
|
11774
|
-
|
|
11775
|
-
dialog.blue-modal[open]::backdrop {
|
|
11776
|
-
opacity: var(--bs-backdrop-opacity);
|
|
11777
|
-
}
|
|
11778
|
-
|
|
11779
|
-
.blue-modal-backdrop {
|
|
11780
|
-
color: #0000;
|
|
11781
|
-
z-index: -1;
|
|
11782
|
-
grid-row-start: 1;
|
|
11783
|
-
grid-column-start: 1;
|
|
11784
|
-
place-self: stretch stretch;
|
|
11785
|
-
display: grid;
|
|
11786
|
-
position: fixed;
|
|
11787
|
-
top: 0;
|
|
11788
|
-
left: 0;
|
|
11789
|
-
right: 0;
|
|
11790
|
-
bottom: 0;
|
|
11791
|
-
}
|
|
11792
|
-
|
|
11793
|
-
.blue-modal-backdrop > button {
|
|
11794
|
-
opacity: 0;
|
|
11795
|
-
cursor: default;
|
|
11796
|
-
}
|
|
11797
|
-
|
|
11798
|
-
@media (prefers-reduced-motion: reduce) {
|
|
11799
|
-
dialog.blue-modal,
|
|
11800
|
-
dialog.blue-modal[open],
|
|
11801
|
-
dialog.blue-modal::backdrop {
|
|
11802
|
-
transition: none;
|
|
11803
|
-
animation: none;
|
|
11804
|
-
}
|
|
11805
|
-
}
|
|
11806
|
-
|
|
11807
|
-
dialog.blue-modal:has(.offcanvas) {
|
|
11808
|
-
--ani-scale-from: 100%;
|
|
11809
|
-
}
|
|
11810
|
-
|
|
11811
|
-
dialog.blue-modal:has(.offcanvas-top) {
|
|
11812
|
-
--ani-translate-from: 0 -100%;
|
|
11813
|
-
}
|
|
11814
|
-
|
|
11815
|
-
dialog.blue-modal:has(.offcanvas-end) {
|
|
11816
|
-
--ani-translate-from: 100% 0;
|
|
11817
|
-
}
|
|
11818
|
-
|
|
11819
|
-
dialog.blue-modal:has(.offcanvas-bottom) {
|
|
11820
|
-
--ani-translate-from: 0 100%;
|
|
11821
|
-
}
|
|
11822
|
-
|
|
11823
|
-
dialog.blue-modal:has(.offcanvas-start) {
|
|
11824
|
-
--ani-translate-from: -100% 0;
|
|
11825
|
-
}
|
|
11826
|
-
|
|
11827
|
-
/**
|
|
11828
|
-
* The new approach for a global layout with a sidebar, header and main content.
|
|
11829
|
-
* Checkboxes are used for states for expanded or drawer.
|
|
11830
|
-
*/
|
|
11831
|
-
|
|
11832
|
-
.blue-layout {
|
|
11833
|
-
--spacing: 0.25rem;
|
|
11834
|
-
--drawer-side-shadow:
|
|
11835
|
-
rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px,
|
|
11836
|
-
rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
|
|
11837
|
-
--side-width: 18rem;
|
|
11838
|
-
--base-z-index: 0;
|
|
11839
|
-
|
|
11840
|
-
--base-z-index: 500;
|
|
11841
|
-
--side-width: var(--blue-sidebar-width);
|
|
11842
|
-
--toggler-width: 2.714rem;
|
|
11843
|
-
--toggler-height: var(--blue-header-height);
|
|
11844
|
-
|
|
11845
|
-
--blue-menu-item-indicator-bg: #{color-contrast($sidebar-bg, $sidebar-indicator-color)};
|
|
11846
|
-
--bs-link-hover-color: #{color-contrast($sidebar-bg, $link-hover-color)};
|
|
11847
|
-
|
|
11848
|
-
height: 100dvh;
|
|
11849
|
-
position: relative;
|
|
11850
|
-
display: grid;
|
|
11851
|
-
|
|
11852
|
-
grid-template-rows: var(--toggler-height) auto;
|
|
11853
|
-
grid-template-areas: "header" "main";
|
|
11854
|
-
|
|
11855
|
-
color: var(--blue-sidebar-color);
|
|
11856
|
-
background-color: var(--blue-sidebar-bg);
|
|
11857
|
-
|
|
11858
|
-
&:has(> .blue-layout-toggle) {
|
|
11859
|
-
grid-template-columns: 0 0 var(--toggler-width) calc(var(--side-width) - var(--toggler-width)) 1fr;
|
|
11860
|
-
grid-template-rows: var(--toggler-height) auto;
|
|
11861
|
-
grid-template-areas:
|
|
11862
|
-
"state . toggle header header"
|
|
11863
|
-
". side main main main";
|
|
11864
|
-
}
|
|
11865
|
-
}
|
|
11866
|
-
|
|
11867
|
-
@include color-mode(dark, false) {
|
|
11868
|
-
.blue-layout {
|
|
11869
|
-
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
11870
|
-
--bs-link-hover-color: #{color-contrast($sidebar-bg, $link-hover-color-dark)};
|
|
11871
|
-
}
|
|
11872
|
-
}
|
|
11873
|
-
|
|
11874
|
-
@media (width >= 64rem) {
|
|
11875
|
-
.blue-layout {
|
|
11876
|
-
&:has(> .blue-layout-state-expand:checked) {
|
|
11877
|
-
grid-template-areas:
|
|
11878
|
-
"state . toggle header header"
|
|
11879
|
-
". side side side main";
|
|
11880
|
-
}
|
|
11881
|
-
}
|
|
11882
|
-
}
|
|
11883
|
-
|
|
11884
|
-
.blue-layout-state {
|
|
11885
|
-
grid-area: state;
|
|
11886
|
-
position: absolute;
|
|
11887
|
-
--size: 0;
|
|
11888
|
-
height: var(--size);
|
|
11889
|
-
width: var(--size);
|
|
11890
|
-
appearance: none;
|
|
11891
|
-
opacity: 0;
|
|
11892
|
-
}
|
|
11893
|
-
|
|
11894
|
-
.blue-layout-toggle {
|
|
11895
|
-
grid-area: toggle;
|
|
11896
|
-
color: var(--blue-sidebar-color);
|
|
11897
|
-
background-color: var(--blue-sidebar-bg);
|
|
11898
|
-
}
|
|
11899
|
-
|
|
11900
|
-
.blue-layout-state:focus-visible + .blue-layout-toggle {
|
|
11901
|
-
--trigger-box-shadow: var(--trigger-focus-box-shadow, inset 0 0 0.25rem);
|
|
11902
|
-
box-shadow: var(--trigger-box-shadow);
|
|
11903
|
-
}
|
|
11904
|
-
|
|
11905
|
-
@media (width < 64rem) {
|
|
11906
|
-
.blue-layout-toggle-expand,
|
|
11907
|
-
#layout-expand {
|
|
11908
|
-
display: none !important;
|
|
11909
|
-
}
|
|
11910
|
-
}
|
|
11911
|
-
|
|
11912
|
-
@media (width >= 64rem) {
|
|
11913
|
-
.blue-layout-toggle-drawer,
|
|
11914
|
-
#layout-drawer {
|
|
11915
|
-
display: none !important;
|
|
11916
|
-
}
|
|
11917
|
-
}
|
|
11918
|
-
|
|
11919
|
-
.blue-layout-header {
|
|
11920
|
-
grid-area: header;
|
|
11921
|
-
|
|
11922
|
-
display: flex;
|
|
11923
|
-
justify-content: space-between;
|
|
11924
|
-
align-items: center;
|
|
11925
|
-
position: relative;
|
|
11926
|
-
z-index: var(--blue-layout-header-z-index, 4);
|
|
11927
|
-
--blue-menu-item-dropdown-bg: var(--blue-sidebar-bg);
|
|
11928
|
-
}
|
|
11929
|
-
|
|
11930
|
-
.blue-layout-side {
|
|
11931
|
-
grid-area: side;
|
|
11932
|
-
overflow: auto;
|
|
11933
|
-
background: inherit;
|
|
11934
|
-
scrollbar-color: transparent transparent;
|
|
11935
|
-
|
|
11936
|
-
&:hover,
|
|
11937
|
-
&:focus-within {
|
|
11938
|
-
scrollbar-color: color-mix(in srgb, currentColor 50%, transparent) transparent;
|
|
11939
|
-
}
|
|
11940
|
-
}
|
|
11941
|
-
|
|
11942
|
-
@media (width < 64rem) {
|
|
11943
|
-
.blue-layout-side {
|
|
11944
|
-
translate: -100% 0;
|
|
11945
|
-
height: 100%;
|
|
11946
|
-
transition: translate 0.2s ease;
|
|
11947
|
-
}
|
|
11948
|
-
|
|
11949
|
-
.blue-layout-state-drawer:checked ~ .blue-layout-side {
|
|
11950
|
-
position: fixed;
|
|
11951
|
-
top: 0;
|
|
11952
|
-
left: 0;
|
|
11953
|
-
z-index: calc(var(--base-z-index) + 1);
|
|
11954
|
-
translate: 0;
|
|
11955
|
-
width: calc(var(--spacing) * 80);
|
|
11956
|
-
box-shadow: var(--drawer-side-shadow);
|
|
11957
|
-
}
|
|
11958
|
-
}
|
|
11959
|
-
|
|
11960
|
-
.blue-layout-main {
|
|
11961
|
-
overflow: auto;
|
|
11962
|
-
grid-area: main;
|
|
11963
|
-
}
|
|
11964
|
-
|
|
11965
|
-
.blue-layout-body {
|
|
11966
|
-
--spacing: 0.25rem;
|
|
11967
|
-
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
|
|
11968
|
-
--bs-link-hover-color: #{$link-hover-color};
|
|
11969
|
-
|
|
11970
|
-
width: calc(100% - var(--spacing) * 2);
|
|
11971
|
-
height: calc(100% - var(--spacing));
|
|
11972
|
-
margin-left: auto;
|
|
11973
|
-
margin-right: auto;
|
|
11974
|
-
overflow: auto;
|
|
11975
|
-
scrollbar-color: color-mix(in srgb, currentColor 50%, transparent) transparent;
|
|
11976
|
-
background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity, 1));
|
|
11977
|
-
color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity, 1));
|
|
11978
|
-
box-shadow: var(--bs-box-shadow-sm);
|
|
11979
|
-
border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
|
|
11980
|
-
border-radius: var(--bs-border-radius-lg);
|
|
11981
|
-
}
|
|
11982
|
-
|
|
11983
|
-
@include color-mode(dark, false) {
|
|
11984
|
-
.blue-layout-body {
|
|
11985
|
-
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
11986
|
-
--bs-link-hover-color: #{$link-hover-color-dark};
|
|
11987
|
-
}
|
|
11988
|
-
}
|
|
11989
|
-
|
|
11990
|
-
.blue-layout-overlay {
|
|
11991
|
-
position: fixed;
|
|
11992
|
-
z-index: var(--base-z-index);
|
|
11993
|
-
inset: 0;
|
|
11994
|
-
display: none;
|
|
11995
|
-
}
|
|
11996
|
-
|
|
11997
|
-
@media (width < 64rem) {
|
|
11998
|
-
.blue-layout-state-drawer:checked ~ .blue-layout-overlay {
|
|
11999
|
-
display: block;
|
|
12000
|
-
}
|
|
12001
|
-
}
|
|
12002
|
-
|
|
12003
|
-
// Collapse with details and animated
|
|
12004
|
-
.blue-collapse {
|
|
12005
|
-
interpolate-size: allow-keywords;
|
|
12006
|
-
|
|
12007
|
-
summary {
|
|
12008
|
-
list-style: none;
|
|
12009
|
-
}
|
|
12010
|
-
|
|
12011
|
-
summary::-webkit-details-marker {
|
|
12012
|
-
display: none;
|
|
12013
|
-
}
|
|
12014
|
-
|
|
12015
|
-
.blue-collapse-chevron {
|
|
12016
|
-
transition: transform 0.2s;
|
|
12017
|
-
}
|
|
12018
|
-
|
|
12019
|
-
&[open] > summary .blue-collapse-chevron {
|
|
12020
|
-
--blue-collapse-chevron-rotate: 90deg;
|
|
12021
|
-
transform: rotate(var(--blue-collapse-chevron-rotate));
|
|
12022
|
-
}
|
|
12023
|
-
|
|
12024
|
-
&::details-content {
|
|
12025
|
-
block-size: 0;
|
|
12026
|
-
opacity: 0;
|
|
12027
|
-
translate: 0 -4rem;
|
|
12028
|
-
transition:
|
|
12029
|
-
block-size 0.2s,
|
|
12030
|
-
content-visibility 0.2s,
|
|
12031
|
-
opacity 0.2s,
|
|
12032
|
-
translate 0.2s;
|
|
12033
|
-
transition-behavior: allow-discrete;
|
|
12034
|
-
}
|
|
12035
|
-
|
|
12036
|
-
&[open]::details-content {
|
|
12037
|
-
block-size: auto;
|
|
12038
|
-
opacity: 1;
|
|
12039
|
-
translate: 0;
|
|
12040
|
-
}
|
|
12041
|
-
}
|
|
12042
|
-
|
|
12043
|
-
@media (prefers-reduced-motion) {
|
|
12044
|
-
.blue-collapse .blue-collapse-chevron,
|
|
12045
|
-
.blue-collapse::details-content {
|
|
12046
|
-
transition: none;
|
|
12047
|
-
}
|
|
12048
|
-
}
|
|
12049
|
-
|
|
12050
|
-
.blue-collapse-indent {
|
|
12051
|
-
// 0.5em is half of icon width
|
|
12052
|
-
--margin-inline-start: calc(#{$input-btn-padding-x} + 0.5em + #{$input-btn-border-width});
|
|
12053
|
-
margin-inline-start: var(--margin-inline-start);
|
|
12054
|
-
}
|
|
12055
|
-
|
|
12056
|
-
// Let's you group a collapse together with another UI element like a button that should come before the collapse summary.
|
|
12057
|
-
.blue-collapse-group {
|
|
12058
|
-
display: grid;
|
|
12059
|
-
grid-template-rows: auto;
|
|
12060
|
-
grid-template-columns: minmax(0, 1fr);
|
|
12061
|
-
max-width: 100%;
|
|
12062
|
-
|
|
12063
|
-
& > details {
|
|
12064
|
-
display: contents;
|
|
12065
|
-
|
|
12066
|
-
& > summary {
|
|
12067
|
-
grid-column: 2;
|
|
12068
|
-
|
|
12069
|
-
& + * {
|
|
12070
|
-
width: calc(100% + var(--margin-inline-start) - 3px);
|
|
12071
|
-
}
|
|
12072
|
-
}
|
|
12073
|
-
}
|
|
12074
|
-
}
|
|
12075
|
-
|
|
12076
|
-
.BLUE-actions {
|
|
12077
|
-
display: flex;
|
|
12078
|
-
white-space: nowrap;
|
|
12079
|
-
// overflow-x: auto;
|
|
12080
|
-
// overflow-y: visible;
|
|
12081
|
-
}
|
|
12082
|
-
|
|
12083
|
-
.BLUE-actions-menu {
|
|
12084
|
-
display: flex;
|
|
12085
|
-
max-width: 100%;
|
|
12086
|
-
}
|
|
12087
|
-
|
|
12088
|
-
.BLUE-actions-collapse {
|
|
12089
|
-
position: relative;
|
|
12090
|
-
}
|
|
12091
|
-
|
|
12092
|
-
.BLUE-actions-collapse:not(:has(.BLUE-actions-collapse-visible)) {
|
|
12093
|
-
display: none;
|
|
12094
|
-
}
|
|
12095
|
-
|
|
12096
|
-
.BLUE-actions-collapse-menu {
|
|
12097
|
-
position: absolute;
|
|
12098
|
-
}
|
|
12099
|
-
|
|
12100
|
-
.BLUE-actions-collapse-menu:popover-open {
|
|
12101
|
-
display: var(--display);
|
|
12102
|
-
}
|
|
12103
|
-
|
|
12104
|
-
// Compatibility with MenuItems having dropdowns
|
|
12105
|
-
.BLUE-actions-menu > .blue-menu-item-wrapper:has(> .blue-menu-item-dropdown) {
|
|
12106
|
-
display: block;
|
|
12107
|
-
position: relative;
|
|
12108
|
-
}
|
|
12109
|
-
|
|
12110
|
-
.BLUE-actions-menu > .blue-menu-item-wrapper > .blue-menu-item-dropdown {
|
|
12111
|
-
position: absolute;
|
|
12112
|
-
}
|
|
12113
|
-
|
|
12114
|
-
.blue-anchored {
|
|
12115
|
-
position-try: flip-inline;
|
|
12116
|
-
position-area: bottom span-right;
|
|
12117
|
-
position: fixed;
|
|
12118
|
-
|
|
12119
|
-
// Normalize popover
|
|
12120
|
-
&[popover] {
|
|
12121
|
-
margin: 0;
|
|
12122
|
-
padding: 0;
|
|
12123
|
-
border: 0;
|
|
12124
|
-
}
|
|
12125
|
-
}
|
|
12126
|
-
|
|
12127
|
-
.blue-anchored-start {
|
|
12128
|
-
position-area: bottom span-right;
|
|
12129
|
-
}
|
|
12130
|
-
|
|
12131
|
-
.blue-anchored-end {
|
|
12132
|
-
position-area: bottom span-left;
|
|
12133
|
-
}
|
|
12134
|
-
|
|
12135
|
-
@supports not (anchor-name: --anchor-1) {
|
|
12136
|
-
.blue-anchored-fallback {
|
|
12137
|
-
left: 50%;
|
|
12138
|
-
top: 50%;
|
|
12139
|
-
translate: -50% -50%;
|
|
12140
|
-
|
|
12141
|
-
&::backdrop {
|
|
12142
|
-
--bs-backdrop-bg: #000;
|
|
12143
|
-
--bs-backdrop-opacity: 0.5;
|
|
12144
|
-
background-color: var(--bs-backdrop-bg);
|
|
12145
|
-
transition: opacity 0.2s;
|
|
12146
|
-
opacity: var(--bs-backdrop-opacity);
|
|
12147
|
-
}
|
|
12148
|
-
}
|
|
12149
|
-
}
|
|
12150
|
-
|
|
12151
|
-
.btn:has(+ :popover-open):not(:focus-visible):not(.blue-menu-item) {
|
|
12152
|
-
--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), 0.25);
|
|
12153
|
-
box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0)
|
|
12154
|
-
var(--bs-focus-ring-width) var(--bs-focus-ring-color);
|
|
12155
|
-
}
|
|
12156
|
-
|
|
12157
|
-
.blue-scrollspy {
|
|
12158
|
-
--#{$prefix}nav-link-padding-x: #{$nav-link-padding-x * 0.5};
|
|
12159
|
-
--#{$prefix}nav-link-padding-y: #{$nav-link-padding-y * 0.5};
|
|
12160
|
-
@include rfs(0.875rem, --#{$prefix}nav-link-font-size);
|
|
12161
|
-
--#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
|
|
12162
|
-
--#{$prefix}nav-link-color: #{$nav-link-color};
|
|
12163
|
-
--#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};
|
|
12164
|
-
--#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};
|
|
12165
|
-
|
|
12166
|
-
--#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
|
|
12167
|
-
--#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
|
|
12168
|
-
--#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
|
|
12169
|
-
--#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
|
|
12170
|
-
--#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
|
|
12171
|
-
--#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
|
|
12172
|
-
--#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
|
|
12173
|
-
|
|
12174
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
12175
|
-
scroll-behavior: smooth;
|
|
12176
|
-
}
|
|
12177
|
-
|
|
12178
|
-
overflow-y: auto;
|
|
12179
|
-
overscroll-behavior-y: contain;
|
|
12180
|
-
scroll-snap-type: y mandatory;
|
|
12181
|
-
|
|
12182
|
-
scroll-marker-group: before;
|
|
12183
|
-
|
|
12184
|
-
&::scroll-marker-group {
|
|
12185
|
-
display: flex;
|
|
12186
|
-
overflow-x: auto;
|
|
12187
|
-
overflow-y: hidden;
|
|
12188
|
-
-ms-overflow-style: none;
|
|
12189
|
-
scrollbar-width: none;
|
|
12190
|
-
min-height: calc(
|
|
12191
|
-
(var(--#{$prefix}nav-link-padding-y) + var(--#{$prefix}nav-tabs-border-width)) * 2 +
|
|
12192
|
-
(var(--#{$prefix}nav-link-font-size) * var(--#{$prefix}body-line-height))
|
|
12193
|
-
);
|
|
12194
|
-
margin-bottom: 0.25rem;
|
|
12195
|
-
padding-inline: var(--blue-scrollspy-marker-group-padding-inline);
|
|
12196
|
-
gap: var(--blue-scrollspy-marker-group-gap);
|
|
12197
|
-
}
|
|
12198
|
-
|
|
12199
|
-
& > :is(section, .blue-scrollspy-group) {
|
|
12200
|
-
&::scroll-marker {
|
|
12201
|
-
content: attr(aria-label);
|
|
12202
|
-
white-space: nowrap;
|
|
12203
|
-
|
|
12204
|
-
font-size: var(--#{$prefix}nav-link-font-size);
|
|
12205
|
-
box-sizing: border-box;
|
|
12206
|
-
text-decoration: none;
|
|
12207
|
-
|
|
12208
|
-
padding: var(--#{$prefix}nav-link-padding-y) var(--#{$prefix}nav-link-padding-x);
|
|
12209
|
-
border: var(--#{$prefix}nav-tabs-border-width) solid transparent;
|
|
12210
|
-
|
|
12211
|
-
border-radius: var(--#{$prefix}nav-tabs-border-radius);
|
|
12212
|
-
|
|
12213
|
-
&:is(:hover, :focus) {
|
|
12214
|
-
border-color: var(--#{$prefix}nav-tabs-link-hover-border-color);
|
|
12215
|
-
}
|
|
12216
|
-
|
|
12217
|
-
&:target-current,
|
|
12218
|
-
&:is(:active) {
|
|
12219
|
-
color: var(--#{$prefix}nav-tabs-link-active-color);
|
|
12220
|
-
background-color: var(--#{$prefix}nav-tabs-link-active-bg);
|
|
12221
|
-
border-color: var(--#{$prefix}border-color);
|
|
12222
|
-
}
|
|
12223
|
-
}
|
|
12224
|
-
}
|
|
12225
|
-
}
|
|
12226
|
-
|
|
12227
|
-
.blue-scrollspy-after {
|
|
12228
|
-
scroll-marker-group: after;
|
|
12229
|
-
|
|
12230
|
-
&::scroll-marker-group {
|
|
12231
|
-
margin-bottom: 0;
|
|
12232
|
-
margin-top: 0.25rem;
|
|
12233
|
-
}
|
|
12234
|
-
}
|
|
12235
|
-
|
|
12236
|
-
.sign-in-screen {
|
|
12237
|
-
padding-top: var(--blue-header-height);
|
|
12238
|
-
|
|
12239
|
-
&:last-child {
|
|
12240
|
-
padding-bottom: var(--blue-header-height);
|
|
12241
|
-
}
|
|
12242
|
-
|
|
12243
|
-
.sign-in-container {
|
|
12244
|
-
animation: enabledBlueAppPage 0.5s;
|
|
12245
|
-
|
|
12246
|
-
@media (prefers-reduced-motion) {
|
|
12247
|
-
animation-duration: 0s;
|
|
12248
|
-
}
|
|
12249
|
-
}
|
|
12250
|
-
|
|
12251
|
-
@media screen and (min-width: 768px) {
|
|
12252
|
-
.sign-in-container {
|
|
12253
|
-
padding: var(--blue-sign-in-container-md-padding, 0 calc(50% - 18rem));
|
|
12254
|
-
width: var(--blue-sign-in-container-md-width, auto);
|
|
12255
|
-
}
|
|
12256
|
-
}
|
|
12257
|
-
}
|
|
12258
|
-
|
|
12259
|
-
|
|
12260
|
-
/* Make DevExpress components look more like Bootstrap/Blue */
|
|
12261
|
-
[class^="dxbl-"] {
|
|
12262
|
-
--dxbl-text-edit-border-radius: var(--bs-border-radius) !important;
|
|
12263
|
-
--dxbl-text-edit-padding-x: 0.75rem !important;
|
|
12264
|
-
--dxbl-text-edit-padding-y: 0.375rem !important;
|
|
12265
|
-
--dxbl-text-edit-line-height: 1.5 !important;
|
|
12266
|
-
--dxbl-text-edit-focus-shadow-spread: #{$focus-ring-width} !important;
|
|
12267
|
-
--dxbl-listbox-border-radius: var(--bs-border-radius) !important;
|
|
12268
|
-
--dxbl-toolbar-font-size: var(--bs-body-font-size) !important;
|
|
12269
|
-
--dxbl-toolbar-btn-border-radius: var(--bs-border-radius) !important;
|
|
12270
|
-
--dxbl-dropdown-border-radius: var(--bs-border-radius) !important;
|
|
12271
|
-
--dxbl-btn-border-radius: var(--bs-border-radius) !important;
|
|
12272
|
-
--dxbl-context-menu-border-radius: var(--bs-border-radius) !important;
|
|
12273
|
-
--dxbl-btn-padding-x: 0.75rem !important;
|
|
12274
|
-
--dxbl-btn-padding-y: 0.375rem !important;
|
|
12275
|
-
|
|
12276
|
-
--dxbl-btn-font-size: 1rem;
|
|
12277
|
-
--dxbl-checkbox-font-size: 1rem;
|
|
12278
|
-
--dxbl-calendar-font-size: 1rem;
|
|
12279
|
-
--dxbl-listbox-font-size: 1rem;
|
|
12280
|
-
--dxbl-list-box-font-size: 1rem;
|
|
12281
|
-
--dxbl-list-box-item-drag-hint-font-size: 1rem;
|
|
12282
|
-
--dxbl-color-palette-font-size: 1rem;
|
|
12283
|
-
--dxbl-text-edit-font-size: 1rem;
|
|
12284
|
-
--dxbl-edit-dropdown-font-size: 1rem;
|
|
12285
|
-
--dxbl-pager-font-size: 1rem;
|
|
12286
|
-
--dxbl-grid-font-size: 1rem;
|
|
12287
|
-
--dxbl-grid-draggable-header-font-size: 1rem;
|
|
12288
|
-
--dxbl-grid-row-drag-hint-font-size: 1rem;
|
|
12289
|
-
--dxbl-flyout-font-size: 1rem;
|
|
12290
|
-
--dxbl-popup-font-size: 1rem;
|
|
12291
|
-
--dxbl-dropdown-font-size: 1rem;
|
|
12292
|
-
--dxbl-window-font-size: 1rem;
|
|
12293
|
-
--dxbl-group-font-size: 1rem;
|
|
12294
|
-
--dxbl-fl-font-size: 1rem;
|
|
12295
|
-
--dxbl-fl-group-font-size: 1rem;
|
|
12296
|
-
--dxbl-fl-tab-group-font-size: 1rem;
|
|
12297
|
-
--dxbl-fl-tab-group-content-font-size: 1rem;
|
|
12298
|
-
--dxbl-toolbar-font-size: 1rem;
|
|
12299
|
-
--dxbl-tabs-font-size: 1rem;
|
|
12300
|
-
--dxbl-tabs-content-font-size: 1rem;
|
|
12301
|
-
--dxbl-accordion-group-font-size: 1rem;
|
|
12302
|
-
--dxbl-accordion-group-item-font-size: 1rem;
|
|
12303
|
-
--dxbl-accordion-group-header-font-size: 1rem;
|
|
12304
|
-
--dxbl-treeview-font-size: 1rem;
|
|
12305
|
-
--dxbl-navigation-badge-font-size: 1rem;
|
|
12306
|
-
--dxbl-radio-group-font-size: 1rem;
|
|
12307
|
-
--dxbl-context-menu-font-size: 1rem;
|
|
12308
|
-
--dxbl-menu-item-font-size: 1rem;
|
|
12309
|
-
--dxbl-scheduler-font-size: 1rem;
|
|
12310
|
-
--dxbl-toast-text-font-size: 1rem;
|
|
12311
|
-
--dxbl-toast-header-font-size: 1rem;
|
|
12312
|
-
--dxbl-drawer-panel-font-size: 1rem;
|
|
12313
|
-
--dxbl-progress-bar-label-font-size: 1rem;
|
|
12314
|
-
--dxbl-pivot-font-size: 1rem;
|
|
12315
|
-
--dxbl-pivot-field-font-size: 1rem;
|
|
12316
|
-
--dxbl-pivot-header-font-size: 1rem;
|
|
12317
|
-
--dxbl-pivot-total-font-size: 1rem;
|
|
12318
|
-
--dxbl-pivot-table-font-size: 1rem;
|
|
12319
|
-
--dxbl-pivot-table-header-field-font-size: 1rem;
|
|
12320
|
-
--dxbl-pivot-table-row-field-font-size: 1rem;
|
|
12321
|
-
--dxbl-pivot-table-total-font-size: 1rem;
|
|
12322
|
-
--dx-chatui-message-font-size: 1rem;
|
|
12323
|
-
--dx-chatui-suggestion-item-title-font-size: 1rem;
|
|
12324
|
-
--dx-chatui-attachment-list-item-font-size: 1rem;
|
|
12325
|
-
--dx-chatui-suggestion-item-text-font-size: 1rem;
|
|
12326
|
-
--dxbl-message-box-body-text-font-size: 1rem;
|
|
12327
|
-
--dxbl-message-box-header-font-size: 1rem;
|
|
12328
|
-
--dxbl-splitter-font-size: 1rem;
|
|
12329
|
-
--dxbl-filter-builder-font-size: 1rem;
|
|
12330
|
-
}
|
|
12331
|
-
|
|
12332
|
-
.dxbl-grid {
|
|
12333
|
-
--dxbl-grid-font-size: 1rem;
|
|
12334
|
-
border: none;
|
|
12335
|
-
}
|
|
12336
|
-
|
|
12337
|
-
.dxbl-pager-page-edit {
|
|
12338
|
-
min-width: 2.5em;
|
|
12339
|
-
}
|
|
12340
|
-
|
|
12341
|
-
.dxbl-toolbar {
|
|
12342
|
-
--dxbl-toolbar-font-size: var(--bs-body-font-size) !important;
|
|
12343
|
-
font-size: var(--dxbl-toolbar-font-size);
|
|
12344
|
-
}
|
|
12345
|
-
|
|
12346
|
-
body.modal-open .dxbl-popup-cell[style="z-index: 1050;"] {
|
|
12347
|
-
z-index: 1056 !important;
|
|
12348
|
-
}
|
|
12349
|
-
|
|
12350
|
-
@if ($enable-button-pointers: false) {
|
|
12351
|
-
.dxbl-context-menu.dxbl-context-menu-dropdown
|
|
12352
|
-
> .dxbl-dropdown-body
|
|
12353
|
-
ul
|
|
12354
|
-
li:not(.dxbl-context-menu-separator)
|
|
12355
|
-
> .dxbl-context-menu-item,
|
|
12356
|
-
.dxbl-context-menu-submenu.dxbl-context-menu-dropdown
|
|
12357
|
-
> .dxbl-dropdown-body
|
|
12358
|
-
ul
|
|
12359
|
-
li:not(.dxbl-context-menu-separator)
|
|
12360
|
-
> .dxbl-context-menu-item {
|
|
12361
|
-
cursor: default;
|
|
12362
|
-
}
|
|
12363
|
-
}
|
|
12364
|
-
|
|
12365
|
-
:root {
|
|
12366
|
-
--bs-font-sans-serif: Inter, #{$font-family-sans-serif};
|
|
12367
|
-
--blue-font-feature-settings: "liga" 1, "calt" 1, "cv05" 1, "cv07" 1, "tnum" 1, "zero" 1;
|
|
12368
|
-
font-feature-settings: var(--blue-font-feature-settings);
|
|
12369
|
-
font-size: 14px;
|
|
12370
|
-
}
|
|
12371
|
-
@supports (font-variation-settings: normal) {
|
|
12372
|
-
:root {
|
|
12373
|
-
--bs-font-sans-serif: InterVariable, #{$font-family-sans-serif};
|
|
12374
|
-
}
|
|
12375
|
-
}
|
|
12376
|
-
|
|
12377
|
-
input,
|
|
12378
|
-
button,
|
|
12379
|
-
select,
|
|
12380
|
-
optgroup,
|
|
12381
|
-
textarea {
|
|
12382
|
-
font-feature-settings: inherit;
|
|
12383
|
-
}
|
|
12384
|
-
|
|
12385
|
-
|
|
12386
|
-
*,
|
|
12387
|
-
*:before,
|
|
12388
|
-
*:after {
|
|
12389
|
-
corner-shape: var(--blue-corner-shape);
|
|
12390
|
-
}
|
|
11707
|
+
|
|
11708
|
+
/**
|
|
11709
|
+
* Allows to use Bootstrap Modals but with the native dialog element
|
|
11710
|
+
* without the need of Bootstrap's JavaScript.
|
|
11711
|
+
* Even works with Bootstrap's Offcanvas classes.
|
|
11712
|
+
*/
|
|
11713
|
+
|
|
11714
|
+
@keyframes blue-modal-open {
|
|
11715
|
+
from {
|
|
11716
|
+
opacity: 0;
|
|
11717
|
+
scale: var(--ani-scale-from, 95%);
|
|
11718
|
+
translate: var(--ani-translate-from, 0 0);
|
|
11719
|
+
}
|
|
11720
|
+
to {
|
|
11721
|
+
opacity: 1;
|
|
11722
|
+
scale: var(--ani-scale-to, 100%);
|
|
11723
|
+
translate: var(--ani-translate-to, 0 0);
|
|
11724
|
+
}
|
|
11725
|
+
}
|
|
11726
|
+
|
|
11727
|
+
@keyframes blue-modal-close {
|
|
11728
|
+
from {
|
|
11729
|
+
opacity: 1;
|
|
11730
|
+
scale: var(--ani-scale-to, 100%);
|
|
11731
|
+
translate: var(--ani-translate-to, 0 0);
|
|
11732
|
+
}
|
|
11733
|
+
to {
|
|
11734
|
+
opacity: 0;
|
|
11735
|
+
scale: var(--ani-scale-from, 95%);
|
|
11736
|
+
translate: var(--ani-translate-from, 0 0);
|
|
11737
|
+
}
|
|
11738
|
+
}
|
|
11739
|
+
|
|
11740
|
+
dialog.blue-modal {
|
|
11741
|
+
--ani-scale-from: 95%;
|
|
11742
|
+
--ani-scale-to: 100%;
|
|
11743
|
+
--ani-translate-from: 0 0;
|
|
11744
|
+
--ani-translate-to: 0 0;
|
|
11745
|
+
|
|
11746
|
+
border: none;
|
|
11747
|
+
background: none;
|
|
11748
|
+
padding: 0;
|
|
11749
|
+
margin: 0;
|
|
11750
|
+
max-width: none;
|
|
11751
|
+
max-height: none;
|
|
11752
|
+
transition:
|
|
11753
|
+
display 0.2s allow-discrete,
|
|
11754
|
+
overlay 0.2s allow-discrete;
|
|
11755
|
+
animation: blue-modal-close 0.2s forwards;
|
|
11756
|
+
|
|
11757
|
+
.offcanvas-backdrop {
|
|
11758
|
+
display: none;
|
|
11759
|
+
}
|
|
11760
|
+
}
|
|
11761
|
+
|
|
11762
|
+
dialog.blue-modal[open] {
|
|
11763
|
+
display: block;
|
|
11764
|
+
animation: blue-modal-open 0.2s forwards;
|
|
11765
|
+
}
|
|
11766
|
+
|
|
11767
|
+
dialog.blue-modal::backdrop {
|
|
11768
|
+
--bs-backdrop-bg: #000;
|
|
11769
|
+
--bs-backdrop-opacity: 0.5;
|
|
11770
|
+
background-color: var(--bs-backdrop-bg);
|
|
11771
|
+
transition: opacity 0.2s;
|
|
11772
|
+
opacity: 0;
|
|
11773
|
+
}
|
|
11774
|
+
|
|
11775
|
+
dialog.blue-modal[open]::backdrop {
|
|
11776
|
+
opacity: var(--bs-backdrop-opacity);
|
|
11777
|
+
}
|
|
11778
|
+
|
|
11779
|
+
.blue-modal-backdrop {
|
|
11780
|
+
color: #0000;
|
|
11781
|
+
z-index: -1;
|
|
11782
|
+
grid-row-start: 1;
|
|
11783
|
+
grid-column-start: 1;
|
|
11784
|
+
place-self: stretch stretch;
|
|
11785
|
+
display: grid;
|
|
11786
|
+
position: fixed;
|
|
11787
|
+
top: 0;
|
|
11788
|
+
left: 0;
|
|
11789
|
+
right: 0;
|
|
11790
|
+
bottom: 0;
|
|
11791
|
+
}
|
|
11792
|
+
|
|
11793
|
+
.blue-modal-backdrop > button {
|
|
11794
|
+
opacity: 0;
|
|
11795
|
+
cursor: default;
|
|
11796
|
+
}
|
|
11797
|
+
|
|
11798
|
+
@media (prefers-reduced-motion: reduce) {
|
|
11799
|
+
dialog.blue-modal,
|
|
11800
|
+
dialog.blue-modal[open],
|
|
11801
|
+
dialog.blue-modal::backdrop {
|
|
11802
|
+
transition: none;
|
|
11803
|
+
animation: none;
|
|
11804
|
+
}
|
|
11805
|
+
}
|
|
11806
|
+
|
|
11807
|
+
dialog.blue-modal:has(.offcanvas) {
|
|
11808
|
+
--ani-scale-from: 100%;
|
|
11809
|
+
}
|
|
11810
|
+
|
|
11811
|
+
dialog.blue-modal:has(.offcanvas-top) {
|
|
11812
|
+
--ani-translate-from: 0 -100%;
|
|
11813
|
+
}
|
|
11814
|
+
|
|
11815
|
+
dialog.blue-modal:has(.offcanvas-end) {
|
|
11816
|
+
--ani-translate-from: 100% 0;
|
|
11817
|
+
}
|
|
11818
|
+
|
|
11819
|
+
dialog.blue-modal:has(.offcanvas-bottom) {
|
|
11820
|
+
--ani-translate-from: 0 100%;
|
|
11821
|
+
}
|
|
11822
|
+
|
|
11823
|
+
dialog.blue-modal:has(.offcanvas-start) {
|
|
11824
|
+
--ani-translate-from: -100% 0;
|
|
11825
|
+
}
|
|
11826
|
+
|
|
11827
|
+
/**
|
|
11828
|
+
* The new approach for a global layout with a sidebar, header and main content.
|
|
11829
|
+
* Checkboxes are used for states for expanded or drawer.
|
|
11830
|
+
*/
|
|
11831
|
+
|
|
11832
|
+
.blue-layout {
|
|
11833
|
+
--spacing: 0.25rem;
|
|
11834
|
+
--drawer-side-shadow:
|
|
11835
|
+
rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px,
|
|
11836
|
+
rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
|
|
11837
|
+
--side-width: 18rem;
|
|
11838
|
+
--base-z-index: 0;
|
|
11839
|
+
|
|
11840
|
+
--base-z-index: 500;
|
|
11841
|
+
--side-width: var(--blue-sidebar-width);
|
|
11842
|
+
--toggler-width: 2.714rem;
|
|
11843
|
+
--toggler-height: var(--blue-header-height);
|
|
11844
|
+
|
|
11845
|
+
--blue-menu-item-indicator-bg: #{color-contrast($sidebar-bg, $sidebar-indicator-color)};
|
|
11846
|
+
--bs-link-hover-color: #{color-contrast($sidebar-bg, $link-hover-color)};
|
|
11847
|
+
|
|
11848
|
+
height: 100dvh;
|
|
11849
|
+
position: relative;
|
|
11850
|
+
display: grid;
|
|
11851
|
+
|
|
11852
|
+
grid-template-rows: var(--toggler-height) auto;
|
|
11853
|
+
grid-template-areas: "header" "main";
|
|
11854
|
+
|
|
11855
|
+
color: var(--blue-sidebar-color);
|
|
11856
|
+
background-color: var(--blue-sidebar-bg);
|
|
11857
|
+
|
|
11858
|
+
&:has(> .blue-layout-toggle) {
|
|
11859
|
+
grid-template-columns: 0 0 var(--toggler-width) calc(var(--side-width) - var(--toggler-width)) 1fr;
|
|
11860
|
+
grid-template-rows: var(--toggler-height) auto;
|
|
11861
|
+
grid-template-areas:
|
|
11862
|
+
"state . toggle header header"
|
|
11863
|
+
". side main main main";
|
|
11864
|
+
}
|
|
11865
|
+
}
|
|
11866
|
+
|
|
11867
|
+
@include color-mode(dark, false) {
|
|
11868
|
+
.blue-layout {
|
|
11869
|
+
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
11870
|
+
--bs-link-hover-color: #{color-contrast($sidebar-bg, $link-hover-color-dark)};
|
|
11871
|
+
}
|
|
11872
|
+
}
|
|
11873
|
+
|
|
11874
|
+
@media (width >= 64rem) {
|
|
11875
|
+
.blue-layout {
|
|
11876
|
+
&:has(> .blue-layout-state-expand:checked) {
|
|
11877
|
+
grid-template-areas:
|
|
11878
|
+
"state . toggle header header"
|
|
11879
|
+
". side side side main";
|
|
11880
|
+
}
|
|
11881
|
+
}
|
|
11882
|
+
}
|
|
11883
|
+
|
|
11884
|
+
.blue-layout-state {
|
|
11885
|
+
grid-area: state;
|
|
11886
|
+
position: absolute;
|
|
11887
|
+
--size: 0;
|
|
11888
|
+
height: var(--size);
|
|
11889
|
+
width: var(--size);
|
|
11890
|
+
appearance: none;
|
|
11891
|
+
opacity: 0;
|
|
11892
|
+
}
|
|
11893
|
+
|
|
11894
|
+
.blue-layout-toggle {
|
|
11895
|
+
grid-area: toggle;
|
|
11896
|
+
color: var(--blue-sidebar-color);
|
|
11897
|
+
background-color: var(--blue-sidebar-bg);
|
|
11898
|
+
}
|
|
11899
|
+
|
|
11900
|
+
.blue-layout-state:focus-visible + .blue-layout-toggle {
|
|
11901
|
+
--trigger-box-shadow: var(--trigger-focus-box-shadow, inset 0 0 0.25rem);
|
|
11902
|
+
box-shadow: var(--trigger-box-shadow);
|
|
11903
|
+
}
|
|
11904
|
+
|
|
11905
|
+
@media (width < 64rem) {
|
|
11906
|
+
.blue-layout-toggle-expand,
|
|
11907
|
+
#layout-expand {
|
|
11908
|
+
display: none !important;
|
|
11909
|
+
}
|
|
11910
|
+
}
|
|
11911
|
+
|
|
11912
|
+
@media (width >= 64rem) {
|
|
11913
|
+
.blue-layout-toggle-drawer,
|
|
11914
|
+
#layout-drawer {
|
|
11915
|
+
display: none !important;
|
|
11916
|
+
}
|
|
11917
|
+
}
|
|
11918
|
+
|
|
11919
|
+
.blue-layout-header {
|
|
11920
|
+
grid-area: header;
|
|
11921
|
+
|
|
11922
|
+
display: flex;
|
|
11923
|
+
justify-content: space-between;
|
|
11924
|
+
align-items: center;
|
|
11925
|
+
position: relative;
|
|
11926
|
+
z-index: var(--blue-layout-header-z-index, 4);
|
|
11927
|
+
--blue-menu-item-dropdown-bg: var(--blue-sidebar-bg);
|
|
11928
|
+
}
|
|
11929
|
+
|
|
11930
|
+
.blue-layout-side {
|
|
11931
|
+
grid-area: side;
|
|
11932
|
+
overflow: auto;
|
|
11933
|
+
background: inherit;
|
|
11934
|
+
scrollbar-color: transparent transparent;
|
|
11935
|
+
|
|
11936
|
+
&:hover,
|
|
11937
|
+
&:focus-within {
|
|
11938
|
+
scrollbar-color: color-mix(in srgb, currentColor 50%, transparent) transparent;
|
|
11939
|
+
}
|
|
11940
|
+
}
|
|
11941
|
+
|
|
11942
|
+
@media (width < 64rem) {
|
|
11943
|
+
.blue-layout-side {
|
|
11944
|
+
translate: -100% 0;
|
|
11945
|
+
height: 100%;
|
|
11946
|
+
transition: translate 0.2s ease;
|
|
11947
|
+
}
|
|
11948
|
+
|
|
11949
|
+
.blue-layout-state-drawer:checked ~ .blue-layout-side {
|
|
11950
|
+
position: fixed;
|
|
11951
|
+
top: 0;
|
|
11952
|
+
left: 0;
|
|
11953
|
+
z-index: calc(var(--base-z-index) + 1);
|
|
11954
|
+
translate: 0;
|
|
11955
|
+
width: calc(var(--spacing) * 80);
|
|
11956
|
+
box-shadow: var(--drawer-side-shadow);
|
|
11957
|
+
}
|
|
11958
|
+
}
|
|
11959
|
+
|
|
11960
|
+
.blue-layout-main {
|
|
11961
|
+
overflow: auto;
|
|
11962
|
+
grid-area: main;
|
|
11963
|
+
}
|
|
11964
|
+
|
|
11965
|
+
.blue-layout-body {
|
|
11966
|
+
--spacing: 0.25rem;
|
|
11967
|
+
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
|
|
11968
|
+
--bs-link-hover-color: #{$link-hover-color};
|
|
11969
|
+
|
|
11970
|
+
width: calc(100% - var(--spacing) * 2);
|
|
11971
|
+
height: calc(100% - var(--spacing));
|
|
11972
|
+
margin-left: auto;
|
|
11973
|
+
margin-right: auto;
|
|
11974
|
+
overflow: auto;
|
|
11975
|
+
scrollbar-color: color-mix(in srgb, currentColor 50%, transparent) transparent;
|
|
11976
|
+
background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity, 1));
|
|
11977
|
+
color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity, 1));
|
|
11978
|
+
box-shadow: var(--bs-box-shadow-sm);
|
|
11979
|
+
border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
|
|
11980
|
+
border-radius: var(--bs-border-radius-lg);
|
|
11981
|
+
}
|
|
11982
|
+
|
|
11983
|
+
@include color-mode(dark, false) {
|
|
11984
|
+
.blue-layout-body {
|
|
11985
|
+
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color-dark};
|
|
11986
|
+
--bs-link-hover-color: #{$link-hover-color-dark};
|
|
11987
|
+
}
|
|
11988
|
+
}
|
|
11989
|
+
|
|
11990
|
+
.blue-layout-overlay {
|
|
11991
|
+
position: fixed;
|
|
11992
|
+
z-index: var(--base-z-index);
|
|
11993
|
+
inset: 0;
|
|
11994
|
+
display: none;
|
|
11995
|
+
}
|
|
11996
|
+
|
|
11997
|
+
@media (width < 64rem) {
|
|
11998
|
+
.blue-layout-state-drawer:checked ~ .blue-layout-overlay {
|
|
11999
|
+
display: block;
|
|
12000
|
+
}
|
|
12001
|
+
}
|
|
12002
|
+
|
|
12003
|
+
// Collapse with details and animated
|
|
12004
|
+
.blue-collapse {
|
|
12005
|
+
interpolate-size: allow-keywords;
|
|
12006
|
+
|
|
12007
|
+
summary {
|
|
12008
|
+
list-style: none;
|
|
12009
|
+
}
|
|
12010
|
+
|
|
12011
|
+
summary::-webkit-details-marker {
|
|
12012
|
+
display: none;
|
|
12013
|
+
}
|
|
12014
|
+
|
|
12015
|
+
.blue-collapse-chevron {
|
|
12016
|
+
transition: transform 0.2s;
|
|
12017
|
+
}
|
|
12018
|
+
|
|
12019
|
+
&[open] > summary .blue-collapse-chevron {
|
|
12020
|
+
--blue-collapse-chevron-rotate: 90deg;
|
|
12021
|
+
transform: rotate(var(--blue-collapse-chevron-rotate));
|
|
12022
|
+
}
|
|
12023
|
+
|
|
12024
|
+
&::details-content {
|
|
12025
|
+
block-size: 0;
|
|
12026
|
+
opacity: 0;
|
|
12027
|
+
translate: 0 -4rem;
|
|
12028
|
+
transition:
|
|
12029
|
+
block-size 0.2s,
|
|
12030
|
+
content-visibility 0.2s,
|
|
12031
|
+
opacity 0.2s,
|
|
12032
|
+
translate 0.2s;
|
|
12033
|
+
transition-behavior: allow-discrete;
|
|
12034
|
+
}
|
|
12035
|
+
|
|
12036
|
+
&[open]::details-content {
|
|
12037
|
+
block-size: auto;
|
|
12038
|
+
opacity: 1;
|
|
12039
|
+
translate: 0;
|
|
12040
|
+
}
|
|
12041
|
+
}
|
|
12042
|
+
|
|
12043
|
+
@media (prefers-reduced-motion) {
|
|
12044
|
+
.blue-collapse .blue-collapse-chevron,
|
|
12045
|
+
.blue-collapse::details-content {
|
|
12046
|
+
transition: none;
|
|
12047
|
+
}
|
|
12048
|
+
}
|
|
12049
|
+
|
|
12050
|
+
.blue-collapse-indent {
|
|
12051
|
+
// 0.5em is half of icon width
|
|
12052
|
+
--margin-inline-start: calc(#{$input-btn-padding-x} + 0.5em + #{$input-btn-border-width});
|
|
12053
|
+
margin-inline-start: var(--margin-inline-start);
|
|
12054
|
+
}
|
|
12055
|
+
|
|
12056
|
+
// Let's you group a collapse together with another UI element like a button that should come before the collapse summary.
|
|
12057
|
+
.blue-collapse-group {
|
|
12058
|
+
display: grid;
|
|
12059
|
+
grid-template-rows: auto;
|
|
12060
|
+
grid-template-columns: minmax(0, 1fr);
|
|
12061
|
+
max-width: 100%;
|
|
12062
|
+
|
|
12063
|
+
& > details {
|
|
12064
|
+
display: contents;
|
|
12065
|
+
|
|
12066
|
+
& > summary {
|
|
12067
|
+
grid-column: 2;
|
|
12068
|
+
|
|
12069
|
+
& + * {
|
|
12070
|
+
width: calc(100% + var(--margin-inline-start) - 3px);
|
|
12071
|
+
}
|
|
12072
|
+
}
|
|
12073
|
+
}
|
|
12074
|
+
}
|
|
12075
|
+
|
|
12076
|
+
.BLUE-actions {
|
|
12077
|
+
display: flex;
|
|
12078
|
+
white-space: nowrap;
|
|
12079
|
+
// overflow-x: auto;
|
|
12080
|
+
// overflow-y: visible;
|
|
12081
|
+
}
|
|
12082
|
+
|
|
12083
|
+
.BLUE-actions-menu {
|
|
12084
|
+
display: flex;
|
|
12085
|
+
max-width: 100%;
|
|
12086
|
+
}
|
|
12087
|
+
|
|
12088
|
+
.BLUE-actions-collapse {
|
|
12089
|
+
position: relative;
|
|
12090
|
+
}
|
|
12091
|
+
|
|
12092
|
+
.BLUE-actions-collapse:not(:has(.BLUE-actions-collapse-visible)) {
|
|
12093
|
+
display: none;
|
|
12094
|
+
}
|
|
12095
|
+
|
|
12096
|
+
.BLUE-actions-collapse-menu {
|
|
12097
|
+
position: absolute;
|
|
12098
|
+
}
|
|
12099
|
+
|
|
12100
|
+
.BLUE-actions-collapse-menu:popover-open {
|
|
12101
|
+
display: var(--display);
|
|
12102
|
+
}
|
|
12103
|
+
|
|
12104
|
+
// Compatibility with MenuItems having dropdowns
|
|
12105
|
+
.BLUE-actions-menu > .blue-menu-item-wrapper:has(> .blue-menu-item-dropdown) {
|
|
12106
|
+
display: block;
|
|
12107
|
+
position: relative;
|
|
12108
|
+
}
|
|
12109
|
+
|
|
12110
|
+
.BLUE-actions-menu > .blue-menu-item-wrapper > .blue-menu-item-dropdown {
|
|
12111
|
+
position: absolute;
|
|
12112
|
+
}
|
|
12113
|
+
|
|
12114
|
+
.blue-anchored {
|
|
12115
|
+
position-try: flip-inline;
|
|
12116
|
+
position-area: bottom span-right;
|
|
12117
|
+
position: fixed;
|
|
12118
|
+
|
|
12119
|
+
// Normalize popover
|
|
12120
|
+
&[popover] {
|
|
12121
|
+
margin: 0;
|
|
12122
|
+
padding: 0;
|
|
12123
|
+
border: 0;
|
|
12124
|
+
}
|
|
12125
|
+
}
|
|
12126
|
+
|
|
12127
|
+
.blue-anchored-start {
|
|
12128
|
+
position-area: bottom span-right;
|
|
12129
|
+
}
|
|
12130
|
+
|
|
12131
|
+
.blue-anchored-end {
|
|
12132
|
+
position-area: bottom span-left;
|
|
12133
|
+
}
|
|
12134
|
+
|
|
12135
|
+
@supports not (anchor-name: --anchor-1) {
|
|
12136
|
+
.blue-anchored-fallback {
|
|
12137
|
+
left: 50%;
|
|
12138
|
+
top: 50%;
|
|
12139
|
+
translate: -50% -50%;
|
|
12140
|
+
|
|
12141
|
+
&::backdrop {
|
|
12142
|
+
--bs-backdrop-bg: #000;
|
|
12143
|
+
--bs-backdrop-opacity: 0.5;
|
|
12144
|
+
background-color: var(--bs-backdrop-bg);
|
|
12145
|
+
transition: opacity 0.2s;
|
|
12146
|
+
opacity: var(--bs-backdrop-opacity);
|
|
12147
|
+
}
|
|
12148
|
+
}
|
|
12149
|
+
}
|
|
12150
|
+
|
|
12151
|
+
.btn:has(+ :popover-open):not(:focus-visible):not(.blue-menu-item) {
|
|
12152
|
+
--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), 0.25);
|
|
12153
|
+
box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0)
|
|
12154
|
+
var(--bs-focus-ring-width) var(--bs-focus-ring-color);
|
|
12155
|
+
}
|
|
12156
|
+
|
|
12157
|
+
.blue-scrollspy {
|
|
12158
|
+
--#{$prefix}nav-link-padding-x: #{$nav-link-padding-x * 0.5};
|
|
12159
|
+
--#{$prefix}nav-link-padding-y: #{$nav-link-padding-y * 0.5};
|
|
12160
|
+
@include rfs(0.875rem, --#{$prefix}nav-link-font-size);
|
|
12161
|
+
--#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
|
|
12162
|
+
--#{$prefix}nav-link-color: #{$nav-link-color};
|
|
12163
|
+
--#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};
|
|
12164
|
+
--#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};
|
|
12165
|
+
|
|
12166
|
+
--#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
|
|
12167
|
+
--#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
|
|
12168
|
+
--#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
|
|
12169
|
+
--#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
|
|
12170
|
+
--#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
|
|
12171
|
+
--#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
|
|
12172
|
+
--#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
|
|
12173
|
+
|
|
12174
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
12175
|
+
scroll-behavior: smooth;
|
|
12176
|
+
}
|
|
12177
|
+
|
|
12178
|
+
overflow-y: auto;
|
|
12179
|
+
overscroll-behavior-y: contain;
|
|
12180
|
+
scroll-snap-type: y mandatory;
|
|
12181
|
+
|
|
12182
|
+
scroll-marker-group: before;
|
|
12183
|
+
|
|
12184
|
+
&::scroll-marker-group {
|
|
12185
|
+
display: flex;
|
|
12186
|
+
overflow-x: auto;
|
|
12187
|
+
overflow-y: hidden;
|
|
12188
|
+
-ms-overflow-style: none;
|
|
12189
|
+
scrollbar-width: none;
|
|
12190
|
+
min-height: calc(
|
|
12191
|
+
(var(--#{$prefix}nav-link-padding-y) + var(--#{$prefix}nav-tabs-border-width)) * 2 +
|
|
12192
|
+
(var(--#{$prefix}nav-link-font-size) * var(--#{$prefix}body-line-height))
|
|
12193
|
+
);
|
|
12194
|
+
margin-bottom: 0.25rem;
|
|
12195
|
+
padding-inline: var(--blue-scrollspy-marker-group-padding-inline);
|
|
12196
|
+
gap: var(--blue-scrollspy-marker-group-gap);
|
|
12197
|
+
}
|
|
12198
|
+
|
|
12199
|
+
& > :is(section, .blue-scrollspy-group) {
|
|
12200
|
+
&::scroll-marker {
|
|
12201
|
+
content: attr(aria-label);
|
|
12202
|
+
white-space: nowrap;
|
|
12203
|
+
|
|
12204
|
+
font-size: var(--#{$prefix}nav-link-font-size);
|
|
12205
|
+
box-sizing: border-box;
|
|
12206
|
+
text-decoration: none;
|
|
12207
|
+
|
|
12208
|
+
padding: var(--#{$prefix}nav-link-padding-y) var(--#{$prefix}nav-link-padding-x);
|
|
12209
|
+
border: var(--#{$prefix}nav-tabs-border-width) solid transparent;
|
|
12210
|
+
|
|
12211
|
+
border-radius: var(--#{$prefix}nav-tabs-border-radius);
|
|
12212
|
+
|
|
12213
|
+
&:is(:hover, :focus) {
|
|
12214
|
+
border-color: var(--#{$prefix}nav-tabs-link-hover-border-color);
|
|
12215
|
+
}
|
|
12216
|
+
|
|
12217
|
+
&:target-current,
|
|
12218
|
+
&:is(:active) {
|
|
12219
|
+
color: var(--#{$prefix}nav-tabs-link-active-color);
|
|
12220
|
+
background-color: var(--#{$prefix}nav-tabs-link-active-bg);
|
|
12221
|
+
border-color: var(--#{$prefix}border-color);
|
|
12222
|
+
}
|
|
12223
|
+
}
|
|
12224
|
+
}
|
|
12225
|
+
}
|
|
12226
|
+
|
|
12227
|
+
.blue-scrollspy-after {
|
|
12228
|
+
scroll-marker-group: after;
|
|
12229
|
+
|
|
12230
|
+
&::scroll-marker-group {
|
|
12231
|
+
margin-bottom: 0;
|
|
12232
|
+
margin-top: 0.25rem;
|
|
12233
|
+
}
|
|
12234
|
+
}
|
|
12235
|
+
|
|
12236
|
+
.sign-in-screen {
|
|
12237
|
+
padding-top: var(--blue-header-height);
|
|
12238
|
+
|
|
12239
|
+
&:last-child {
|
|
12240
|
+
padding-bottom: var(--blue-header-height);
|
|
12241
|
+
}
|
|
12242
|
+
|
|
12243
|
+
.sign-in-container {
|
|
12244
|
+
animation: enabledBlueAppPage 0.5s;
|
|
12245
|
+
|
|
12246
|
+
@media (prefers-reduced-motion) {
|
|
12247
|
+
animation-duration: 0s;
|
|
12248
|
+
}
|
|
12249
|
+
}
|
|
12250
|
+
|
|
12251
|
+
@media screen and (min-width: 768px) {
|
|
12252
|
+
.sign-in-container {
|
|
12253
|
+
padding: var(--blue-sign-in-container-md-padding, 0 calc(50% - 18rem));
|
|
12254
|
+
width: var(--blue-sign-in-container-md-width, auto);
|
|
12255
|
+
}
|
|
12256
|
+
}
|
|
12257
|
+
}
|
|
12258
|
+
|
|
12259
|
+
|
|
12260
|
+
/* Make DevExpress components look more like Bootstrap/Blue */
|
|
12261
|
+
[class^="dxbl-"] {
|
|
12262
|
+
--dxbl-text-edit-border-radius: var(--bs-border-radius) !important;
|
|
12263
|
+
--dxbl-text-edit-padding-x: 0.75rem !important;
|
|
12264
|
+
--dxbl-text-edit-padding-y: 0.375rem !important;
|
|
12265
|
+
--dxbl-text-edit-line-height: 1.5 !important;
|
|
12266
|
+
--dxbl-text-edit-focus-shadow-spread: #{$focus-ring-width} !important;
|
|
12267
|
+
--dxbl-listbox-border-radius: var(--bs-border-radius) !important;
|
|
12268
|
+
--dxbl-toolbar-font-size: var(--bs-body-font-size) !important;
|
|
12269
|
+
--dxbl-toolbar-btn-border-radius: var(--bs-border-radius) !important;
|
|
12270
|
+
--dxbl-dropdown-border-radius: var(--bs-border-radius) !important;
|
|
12271
|
+
--dxbl-btn-border-radius: var(--bs-border-radius) !important;
|
|
12272
|
+
--dxbl-context-menu-border-radius: var(--bs-border-radius) !important;
|
|
12273
|
+
--dxbl-btn-padding-x: 0.75rem !important;
|
|
12274
|
+
--dxbl-btn-padding-y: 0.375rem !important;
|
|
12275
|
+
|
|
12276
|
+
--dxbl-btn-font-size: 1rem;
|
|
12277
|
+
--dxbl-checkbox-font-size: 1rem;
|
|
12278
|
+
--dxbl-calendar-font-size: 1rem;
|
|
12279
|
+
--dxbl-listbox-font-size: 1rem;
|
|
12280
|
+
--dxbl-list-box-font-size: 1rem;
|
|
12281
|
+
--dxbl-list-box-item-drag-hint-font-size: 1rem;
|
|
12282
|
+
--dxbl-color-palette-font-size: 1rem;
|
|
12283
|
+
--dxbl-text-edit-font-size: 1rem;
|
|
12284
|
+
--dxbl-edit-dropdown-font-size: 1rem;
|
|
12285
|
+
--dxbl-pager-font-size: 1rem;
|
|
12286
|
+
--dxbl-grid-font-size: 1rem;
|
|
12287
|
+
--dxbl-grid-draggable-header-font-size: 1rem;
|
|
12288
|
+
--dxbl-grid-row-drag-hint-font-size: 1rem;
|
|
12289
|
+
--dxbl-flyout-font-size: 1rem;
|
|
12290
|
+
--dxbl-popup-font-size: 1rem;
|
|
12291
|
+
--dxbl-dropdown-font-size: 1rem;
|
|
12292
|
+
--dxbl-window-font-size: 1rem;
|
|
12293
|
+
--dxbl-group-font-size: 1rem;
|
|
12294
|
+
--dxbl-fl-font-size: 1rem;
|
|
12295
|
+
--dxbl-fl-group-font-size: 1rem;
|
|
12296
|
+
--dxbl-fl-tab-group-font-size: 1rem;
|
|
12297
|
+
--dxbl-fl-tab-group-content-font-size: 1rem;
|
|
12298
|
+
--dxbl-toolbar-font-size: 1rem;
|
|
12299
|
+
--dxbl-tabs-font-size: 1rem;
|
|
12300
|
+
--dxbl-tabs-content-font-size: 1rem;
|
|
12301
|
+
--dxbl-accordion-group-font-size: 1rem;
|
|
12302
|
+
--dxbl-accordion-group-item-font-size: 1rem;
|
|
12303
|
+
--dxbl-accordion-group-header-font-size: 1rem;
|
|
12304
|
+
--dxbl-treeview-font-size: 1rem;
|
|
12305
|
+
--dxbl-navigation-badge-font-size: 1rem;
|
|
12306
|
+
--dxbl-radio-group-font-size: 1rem;
|
|
12307
|
+
--dxbl-context-menu-font-size: 1rem;
|
|
12308
|
+
--dxbl-menu-item-font-size: 1rem;
|
|
12309
|
+
--dxbl-scheduler-font-size: 1rem;
|
|
12310
|
+
--dxbl-toast-text-font-size: 1rem;
|
|
12311
|
+
--dxbl-toast-header-font-size: 1rem;
|
|
12312
|
+
--dxbl-drawer-panel-font-size: 1rem;
|
|
12313
|
+
--dxbl-progress-bar-label-font-size: 1rem;
|
|
12314
|
+
--dxbl-pivot-font-size: 1rem;
|
|
12315
|
+
--dxbl-pivot-field-font-size: 1rem;
|
|
12316
|
+
--dxbl-pivot-header-font-size: 1rem;
|
|
12317
|
+
--dxbl-pivot-total-font-size: 1rem;
|
|
12318
|
+
--dxbl-pivot-table-font-size: 1rem;
|
|
12319
|
+
--dxbl-pivot-table-header-field-font-size: 1rem;
|
|
12320
|
+
--dxbl-pivot-table-row-field-font-size: 1rem;
|
|
12321
|
+
--dxbl-pivot-table-total-font-size: 1rem;
|
|
12322
|
+
--dx-chatui-message-font-size: 1rem;
|
|
12323
|
+
--dx-chatui-suggestion-item-title-font-size: 1rem;
|
|
12324
|
+
--dx-chatui-attachment-list-item-font-size: 1rem;
|
|
12325
|
+
--dx-chatui-suggestion-item-text-font-size: 1rem;
|
|
12326
|
+
--dxbl-message-box-body-text-font-size: 1rem;
|
|
12327
|
+
--dxbl-message-box-header-font-size: 1rem;
|
|
12328
|
+
--dxbl-splitter-font-size: 1rem;
|
|
12329
|
+
--dxbl-filter-builder-font-size: 1rem;
|
|
12330
|
+
}
|
|
12331
|
+
|
|
12332
|
+
.dxbl-grid {
|
|
12333
|
+
--dxbl-grid-font-size: 1rem;
|
|
12334
|
+
border: none;
|
|
12335
|
+
}
|
|
12336
|
+
|
|
12337
|
+
.dxbl-pager-page-edit {
|
|
12338
|
+
min-width: 2.5em;
|
|
12339
|
+
}
|
|
12340
|
+
|
|
12341
|
+
.dxbl-toolbar {
|
|
12342
|
+
--dxbl-toolbar-font-size: var(--bs-body-font-size) !important;
|
|
12343
|
+
font-size: var(--dxbl-toolbar-font-size);
|
|
12344
|
+
}
|
|
12345
|
+
|
|
12346
|
+
body.modal-open .dxbl-popup-cell[style="z-index: 1050;"] {
|
|
12347
|
+
z-index: 1056 !important;
|
|
12348
|
+
}
|
|
12349
|
+
|
|
12350
|
+
@if ($enable-button-pointers: false) {
|
|
12351
|
+
.dxbl-context-menu.dxbl-context-menu-dropdown
|
|
12352
|
+
> .dxbl-dropdown-body
|
|
12353
|
+
ul
|
|
12354
|
+
li:not(.dxbl-context-menu-separator)
|
|
12355
|
+
> .dxbl-context-menu-item,
|
|
12356
|
+
.dxbl-context-menu-submenu.dxbl-context-menu-dropdown
|
|
12357
|
+
> .dxbl-dropdown-body
|
|
12358
|
+
ul
|
|
12359
|
+
li:not(.dxbl-context-menu-separator)
|
|
12360
|
+
> .dxbl-context-menu-item {
|
|
12361
|
+
cursor: default;
|
|
12362
|
+
}
|
|
12363
|
+
}
|
|
12364
|
+
|
|
12365
|
+
:root {
|
|
12366
|
+
--bs-font-sans-serif: Inter, #{$font-family-sans-serif};
|
|
12367
|
+
--blue-font-feature-settings: "liga" 1, "calt" 1, "cv05" 1, "cv07" 1, "tnum" 1, "zero" 1;
|
|
12368
|
+
font-feature-settings: var(--blue-font-feature-settings);
|
|
12369
|
+
font-size: 14px;
|
|
12370
|
+
}
|
|
12371
|
+
@supports (font-variation-settings: normal) {
|
|
12372
|
+
:root {
|
|
12373
|
+
--bs-font-sans-serif: InterVariable, #{$font-family-sans-serif};
|
|
12374
|
+
}
|
|
12375
|
+
}
|
|
12376
|
+
|
|
12377
|
+
input,
|
|
12378
|
+
button,
|
|
12379
|
+
select,
|
|
12380
|
+
optgroup,
|
|
12381
|
+
textarea {
|
|
12382
|
+
font-feature-settings: inherit;
|
|
12383
|
+
}
|
|
12384
|
+
|
|
12385
|
+
|
|
12386
|
+
*,
|
|
12387
|
+
*:before,
|
|
12388
|
+
*:after {
|
|
12389
|
+
corner-shape: var(--blue-corner-shape);
|
|
12390
|
+
}
|