/*
=========================================================
* Volt - Free Bootstrap 5 Dashboard
=========================================================
* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard
* Copyright 2021 Themesberg (https://www.themesberg.com)
* Designed and coded by https://themesberg.com
=========================================================
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal. Contact us if you want to remove it.
*/
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");
// update variables here
@import "custom/variables";
@import "bootstrap/scss/_functions";
@import "volt/variables";
// Third party
@import "vanillajs-datepicker/sass/datepicker.scss";
// @import "simplebar/dist/simplebar";
// Bootstrap
@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/variables-dark";
@import "bootstrap/scss/maps";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/utilities";
// Modify utilities here
@import "volt/utilities";
// Bootstrap Layout & components
@import "bootstrap/scss/root";
@import "bootstrap/scss/reboot";
@import "bootstrap/scss/type";
@import "bootstrap/scss/images";
@import "bootstrap/scss/containers";
@import "bootstrap/scss/grid";
@import "bootstrap/scss/tables";
@import "bootstrap/scss/forms";
@import "bootstrap/scss/buttons";
@import "bootstrap/scss/transitions";
@import "bootstrap/scss/dropdown";
@import "bootstrap/scss/button-group";
@import "bootstrap/scss/nav";
@import "bootstrap/scss/navbar";
@import "bootstrap/scss/card";
@import "bootstrap/scss/accordion";
@import "bootstrap/scss/breadcrumb";
@import "bootstrap/scss/pagination";
@import "bootstrap/scss/badge";
@import "bootstrap/scss/alert";
@import "bootstrap/scss/progress";
@import "bootstrap/scss/list-group";
@import "bootstrap/scss/close";
@import "bootstrap/scss/toasts";
@import "bootstrap/scss/modal";
@import "bootstrap/scss/tooltip";
@import "bootstrap/scss/popover";
@import "bootstrap/scss/carousel";
@import "bootstrap/scss/spinners";
@import "bootstrap/scss/offcanvas";
@import "bootstrap/scss/placeholders";
// Utilities
@import "bootstrap/scss/utilities/api";
// Helpers
@import "bootstrap/scss/helpers";
// scss-docs-end import-stack
// volt mixins & functions
@import "volt/mixins";
@import "volt/functions";
// Layout
@import "volt/layout";
// Components
@import "volt/components";
// Forms
@import "volt/forms";
// write your custom styles here!
@import "components/body";
@import "components/accordions";
@import "components/animations";
@import "components/alerts";
@import "components/avatars";
@import "components/badge";
@import "components/buttons";
@import "components/breadcrumb";
@import "components/card";
@import "components/carousel";
@import "components/close";
@import "components/custom-forms";
@import "components/charts";
@import "components/dropdown";
@import "components/icons";
@import "components/images";
@import "components/list-group";
@import "components/modal";
@import "components/nav";
@import "components/pagination";
@import "components/popover";
@import "components/progress";
@import "components/shapes";
@import "components/datepicker";
@import "components/steps";
@import "components/tables";
@import "components/type";
@import "components/timelines";
@import "components/tooltip";
@import "components/scrollbar";
@import "forms/form-control";
@import "forms/form-check";
@import "forms/input-group";
@import "forms/form-select";
// Retrieve color Sass maps
@function section-color($key: "primary") {
@return map-get($section-colors, $key);
}
// Lines colors
@function shapes-primary-color($key: "step-1-gradient-bg") {
@return map-get($shapes-primary-colors, $key);
}
@function shapes-default-color($key: "step-1-gradient-bg") {
@return map-get($shapes-default-colors, $key);
}
@function lines-light-color($key: "step-1-gradient-bg") {
@return map-get($shapes-light-colors, $key);
}
@function shapes-dark-color($key: "step-1-gradient-bg") {
@return map-get($shapes-dark-colors, $key);
}
@import "layout/navbar";
@import "layout/section";
@import "layout/footer";
@import "layout/sidebar";
@import "layout/sidenav";
@import "mixins/animations";
@import "mixins/background-variant";
@import "mixins/icon";
@import "mixins/modals";
@import "mixins/popover";
@import "mixins/transform";
@import "mixins/utilities";
// TODO(volt): Some of these are currently failing to compile. Do we still need them?
// @import "utilities/backgrounds";
@import "utilities/helper";
@import "utilities/position";
@import "utilities/sizing";
@import "utilities/shadows";
@import "utilities/text";
@import "utilities/transform";
// @import "utilities/animations";
// check docs https://v5.getbootstrap.com/docs/5.0/utilities/api/
$utilities: map-merge(
$utilities,
(
"blur": (
property: backdrop-filter,
class: blur,
values: (
0: blur(0),
1: blur(1px),
2: blur(2px),
3: blur(3px),
4: blur(4px),
5: blur(5px),
6: blur(6px),
7: blur(7px),
8: blur(8px),
9: blur(91px),
10: blur(10px),
11: blur(11px),
12: blur(12px),
13: blur(13px),
14: blur(14px),
),
),
"opacity": (
property: opacity,
class: o,
values: (
0: 0,
25: 0.25,
50: 0.5,
75: 0.75,
100: 1,
),
),
"z-index": (
property: z-index,
class: z,
values: (
0: 0,
1: 1,
2: 2,
3: 3,
999: 999,
),
),
"viewport-height": (
property: height,
class: vh,
responsive: true,
values: (
100: 100vh,
),
),
"font-weight": (
property: font-weight,
class: fw,
values: (
light: $font-weight-light,
lighter: $font-weight-lighter,
normal: $font-weight-normal,
bold: $font-weight-bold,
bolder: $font-weight-bolder,
extrabold: $font-weight-extrabold,
black: $font-weight-black,
),
),
"max-width": (
property: max-width,
class: fmxw,
values: (
100: 100px,
200: 200px,
300: 300px,
400: 400px,
500: 500px,
999: 999px,
),
),
"min-height": (
property: min-height,
class: fmxh,
values: (
100: 100px,
200: 200px,
300: 300px,
400: 400px,
500: 500px,
999: 999px,
),
),
)
);
// Variables
//
// Variables should follow the `$component-state-property-size` formula for
// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
// Color system
// Shades of grey
$white: #ffffff !default;
$gray-50: #f9fafb !default;
$gray-100: #f2f4f6 !default;
$gray-200: #e5e7eb !default;
$gray-300: #d1d5db !default;
$gray-400: #9ca3af !default;
$gray-500: #6b7280 !default;
$gray-600: #4b5563 !default;
$gray-700: #374151 !default;
$gray-800: #1f2937 !default;
$gray-900: #111827 !default;
$dark: $gray-800 !default;
$black: $gray-900 !default;
// fusv-disable
$grays: (
"100": $gray-100,
"200": $gray-200,
"300": $gray-300,
"400": $gray-400,
"500": $gray-500,
"600": $gray-600,
"700": $gray-700,
"800": $gray-800,
"900": $gray-900,
) !default;
// fusv-enable
// Generic colors
$blue: #2361ce !default;
$indigo: #4f46e5 !default;
$purple: #7c3aed !default;
$pink: #ef4683 !default;
$red: #e11d48 !default;
$orange: #fba918 !default;
$brown: #b9a084 !default;
$yellow: #f3c78e !default;
$yellow-100: #ffeed6 !default;
$yellow-200: #f5dbb8 !default;
$green: #10b981 !default;
$teal: #1e90ff !default;
$cyan: #63b1bd !default;
$soft-indigo: #f5e8ff !default;
$soft-green: #2ca58d !default;
// scss-docs-start colors-map
$colors: (
"blue": $blue,
"indigo": $indigo,
"purple": $purple,
"pink": $pink,
"red": $red,
"orange": $orange,
"yellow": $yellow,
"green": $green,
"teal": $teal,
"cyan": $cyan,
"white": $white,
"gray": $gray-600,
"gray-dark": $gray-800,
) !default;
// scss-docs-end colors-map
// Color scheme
$primary: #1f2937 !default;
$secondary: #f0bc74 !default;
$tertiary: #31316a !default;
// Series names and colors. This can be extended or customized as desired. Just add more series and colors.
$ct-series-names: (a, b, c, d, e, f, g) !default;
$ct-series-colors: (#262b40, #f8bd7a, #2ca58d, #31316a, #c96480, #ffffff, #f8bd7a) !default;
$success: $green !default;
$info: $blue !default;
$warning: $yellow !default;
$danger: $red !default;
$gray: $gray-900 !default;
$light: $gray-400 !default;
$lighten: $gray-300 !default;
$soft: $gray-200 !default;
$dark: $dark !default;
// Brands colors
$facebook: #3b5999 !default;
$twitter: #1da1f2 !default;
$google: #db4337 !default;
$instagram: #e4405f !default;
$pinterest: #bd081c !default;
$youtube: #cd201f !default;
$slack: #3aaf85 !default;
$dribbble: #ea4c89 !default;
$github: #222222 !default;
$dropbox: #1e90ff !default;
$twitch: #4b367c !default;
$paypal: #ecb32c !default;
$behance: #0057ff !default;
$reddit: #e84422 !default;
// Brand colors
$brand-colors: (
"facebook": $facebook,
"twitter": $twitter,
"google": $google,
"instagram": $instagram,
"pinterest": $pinterest,
"youtube": $youtube,
"slack": $slack,
"dribbble": $dribbble,
"dropbox": $dropbox,
"twitch": $twitch,
"paypal": $paypal,
"behance": $behance,
"reddit": $reddit,
"github": $github,
) !default;
// Theme colors
$theme-colors: (
"primary": $primary,
"secondary": $secondary,
"tertiary": $tertiary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"white": $white,
"indigo": $indigo,
"purple": $purple,
"yellow-100": $yellow-100,
"yellow-200": $yellow-200,
"gray-50": $gray-50,
"gray-100": $gray-100,
"gray-200": $gray-200,
"gray-300": $gray-300,
"gray-400": $gray-400,
"gray-500": $gray-500,
"gray-600": $gray-600,
"gray-700": $gray-700,
"gray-800": $gray-800,
"gray-900": $gray-900,
) !default;
// Navbar colors
$navbar-colors: (
"primary": $primary,
) !default;
// Set a specific jump point for requesting color jumps
$theme-color-interval: 8% !default;
// The contrast ratio to reach against white, to determine if color changes from "light" to "dark". Acceptable values for WCAG 2.0 are 3, 4.5 and 7.
// See https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast
$min-contrast-ratio: 3 !default;
// Customize the light and dark text colors for use in our color contrast function.
$color-contrast-dark: $dark !default;
$color-contrast-light: $white !default;
// fusv-disable
$blue-100: tint-color($blue, 8 * 1%) !default;
$blue-200: tint-color($blue, 6 * 1%) !default;
$blue-300: tint-color($blue, 4 * 1%) !default;
$blue-400: tint-color($blue, 2 * 1%) !default;
$blue-500: $blue !default;
$blue-600: shade-color($blue, 2 * 1%) !default;
$blue-700: shade-color($blue, 4 * 1%) !default;
$blue-800: shade-color($blue, 6 * 1%) !default;
$blue-900: shade-color($blue, 8 * 1%) !default;
$indigo-100: tint-color($indigo, 8 * 1%) !default;
$indigo-200: tint-color($indigo, 6 * 1%) !default;
$indigo-300: tint-color($indigo, 4 * 1%) !default;
$indigo-400: tint-color($indigo, 2 * 1%) !default;
$indigo-500: $indigo !default;
$indigo-600: shade-color($indigo, 2 * 1%) !default;
$indigo-700: shade-color($indigo, 4 * 1%) !default;
$indigo-800: shade-color($indigo, 6 * 1%) !default;
$indigo-900: shade-color($indigo, 8 * 1%) !default;
$purple-100: tint-color($purple, 8 * 1%) !default;
$purple-200: tint-color($purple, 6 * 1%) !default;
$purple-300: tint-color($purple, 4 * 1%) !default;
$purple-400: tint-color($purple, 2 * 1%) !default;
$purple-500: $purple !default;
$purple-600: shade-color($purple, 2 * 1%) !default;
$purple-700: shade-color($purple, 4 * 1%) !default;
$purple-800: shade-color($purple, 6 * 1%) !default;
$purple-900: shade-color($purple, 8 * 1%) !default;
$pink-100: tint-color($pink, 8 * 1%) !default;
$pink-200: tint-color($pink, 6 * 1%) !default;
$pink-300: tint-color($pink, 4 * 1%) !default;
$pink-400: tint-color($pink, 2 * 1%) !default;
$pink-500: $pink !default;
$pink-600: shade-color($pink, 2 * 1%) !default;
$pink-700: shade-color($pink, 4 * 1%) !default;
$pink-800: shade-color($pink, 6 * 1%) !default;
$pink-900: shade-color($pink, 8 * 1%) !default;
$red-100: tint-color($red, 8 * 1%) !default;
$red-200: tint-color($red, 6 * 1%) !default;
$red-300: tint-color($red, 4 * 1%) !default;
$red-400: tint-color($red, 2 * 1%) !default;
$red-500: $red !default;
$red-600: shade-color($red, 2 * 1%) !default;
$red-700: shade-color($red, 4 * 1%) !default;
$red-800: shade-color($red, 6 * 1%) !default;
$red-900: shade-color($red, 8 * 1%) !default;
$orange-100: tint-color($orange, 8 * 1%) !default;
$orange-200: tint-color($orange, 6 * 1%) !default;
$orange-300: tint-color($orange, 4 * 1%) !default;
$orange-400: tint-color($orange, 2 * 1%) !default;
$orange-500: $orange !default;
$orange-600: shade-color($orange, 2 * 1%) !default;
$orange-700: shade-color($orange, 4 * 1%) !default;
$orange-800: shade-color($orange, 6 * 1%) !default;
$orange-900: shade-color($orange, 8 * 1%) !default;
$yellow-100: tint-color($yellow, 8 * 1%) !default;
$yellow-200: tint-color($yellow, 6 * 1%) !default;
$yellow-300: tint-color($yellow, 4 * 1%) !default;
$yellow-400: tint-color($yellow, 2 * 1%) !default;
$yellow-500: $yellow !default;
$yellow-600: shade-color($yellow, 2 * 1%) !default;
$yellow-700: shade-color($yellow, 4 * 1%) !default;
$yellow-800: shade-color($yellow, 6 * 1%) !default;
$yellow-900: shade-color($yellow, 8 * 1%) !default;
$green-100: tint-color($green, 8 * 1%) !default;
$green-200: tint-color($green, 6 * 1%) !default;
$green-300: tint-color($green, 4 * 1%) !default;
$green-400: tint-color($green, 2 * 1%) !default;
$green-500: $green !default;
$green-600: shade-color($green, 2 * 1%) !default;
$green-700: shade-color($green, 4 * 1%) !default;
$green-800: shade-color($green, 6 * 1%) !default;
$green-900: shade-color($green, 8 * 1%) !default;
$teal-100: tint-color($teal, 8 * 1%) !default;
$teal-200: tint-color($teal, 6 * 1%) !default;
$teal-300: tint-color($teal, 4 * 1%) !default;
$teal-400: tint-color($teal, 2 * 1%) !default;
$teal-500: $teal !default;
$teal-600: shade-color($teal, 2 * 1%) !default;
$teal-700: shade-color($teal, 4 * 1%) !default;
$teal-800: shade-color($teal, 6 * 1%) !default;
$teal-900: shade-color($teal, 8 * 1%) !default;
$cyan-100: tint-color($cyan, 8 * 1%) !default;
$cyan-200: tint-color($cyan, 6 * 1%) !default;
$cyan-300: tint-color($cyan, 4 * 1%) !default;
$cyan-400: tint-color($cyan, 2 * 1%) !default;
$cyan-500: $cyan !default;
$cyan-600: shade-color($cyan, 2 * 1%) !default;
$cyan-700: shade-color($cyan, 4 * 1%) !default;
$cyan-800: shade-color($cyan, 6 * 1%) !default;
$cyan-900: shade-color($cyan, 8 * 1%) !default;
// fusv-enable
// Characters which are escaped by the escape-svg function
$escaped-characters: (
("<", "%3c"),
(">", "%3e"),
("#", "%23"),
("(", "%28"),
(")", "%29")
) !default;
// Options
//
// Quickly modify global styling by enabling or disabling optional features.
$enable-caret: true !default;
$enable-rounded: true !default;
$enable-shadows: true !default;
$enable-gradients: false !default;
$enable-transitions: true !default;
$enable-reduced-motion: true !default;
$enable-grid-classes: true !default;
$enable-button-pointers: true !default;
$enable-rfs: true !default;
$enable-validation-icons: true !default;
$enable-negative-margins: true !default;
$enable-deprecation-messages: true !default;
$enable-important-utilities: true !default;
// Gradient
//
// The gradient which is added to components if `$enable-gradients` is `true`
// This gradient is also added to elements with `.bg-gradient`
$gradient: linear-gradient(180deg, rgba($white, 0.15), rgba($white, 0)) !default;
// Spacing
//
// Control the default styling of most Bootstrap elements by modifying these
// variables. Mostly focused on spacing.
// You can add more entries to the $spacers map, should you need more variation.
$spacer: 1rem !default;
$spacers: (
0: 0,
1: $spacer * 0.25,
2: $spacer * 0.5,
3: $spacer,
4: $spacer * 1.5,
5: $spacer * 3,
6: (
$spacer * 5,
),
7: (
$spacer * 8,
),
8: (
$spacer * 10,
),
9: (
$spacer * 11,
),
10: (
$spacer * 14,
),
11: (
$spacer * 16,
),
12: (
$spacer * 20,
),
"xs": (
$spacer * 0.18,
),
"sm": (
$spacer * 1,
),
"md": (
$spacer * 2,
),
"lg": (
$spacer * 4,
),
"xl": (
$spacer * 8,
),
) !default;
$negative-spacers: if($enable-negative-margins, negativify-map($spacers), null) !default;
// Body
//
// Settings for the `<body>` element.
$body-bg: $gray-100 !default;
$body-color: $gray-700 !default;
$body-text-align: null !default;
// Links
//
// Style anchor elements.
$link-color: $primary !default;
$link-decoration: none !default;
$link-hover-color: darken($link-color, 50%) !default;
$link-hover-decoration: none !default;
// Darken percentage for links with `.text-*` class (e.g. `.text-success`)
$emphasized-link-hover-darken-percentage: 10% !default;
$stretched-link-pseudo-element: after !default;
$stretched-link-z-index: 1 !default;
// Paragraphs
//
// Style p element.
$paragraph-margin-bottom: 1rem !default;
// Grid breakpoints
//
// Define the minimum dimensions at which your layout will change,
// adapting to different screen sizes, for use in media queries.
// scss-docs-start grid-breakpoints
$grid-breakpoints: (
xs: 0,
sm: 576px,
md: 768px,
lg: 992px,
xl: 1200px,
xxl: 1400px,
) !default;
// scss-docs-end grid-breakpoints
// Grid containers
//
// Define the maximum width of `.container` for different screen sizes.
// scss-docs-start container-max-widths
$container-max-widths: (
sm: 540px,
md: 720px,
lg: 960px,
xl: 1140px,
) !default;
// scss-docs-end container-max-widths
// Grid columns
//
// Set the number of columns and specify the width of the gutters.
$grid-columns: 12 !default;
$grid-gutter-width: 1.5rem !default;
$grid-row-columns: 6 !default;
$gutters: $spacers !default;
// Container padding
$container-padding-x: 1rem !default;
// Components
//
// Define common padding and border radius sizes and more.
$border-width: 0.0625rem !default;
$border-width-md: 0.125rem !default;
$border-width-lg: 0.25rem !default;
$border-width-xl: 0.375rem !default;
$border-color-white: $white !default;
$border-color: $gray-200 !default;
$border-radius: 0.5rem !default;
$border-radius-sm: 0.35rem !default;
$border-radius-lg: 1rem !default;
$border-radius-xl: 3rem !default;
$border-radius-pill: 50rem !default;
$circle-radius: 50% !default;
$component-active-color: $white !default;
$component-active-bg: $primary !default;
$component-active-border-color: $primary !default;
$component-hover-color: $gray-300 !default;
$component-hover-bg: $gray-300 !default;
$component-hover-border-color: $gray-300 !default;
$rounded-pill: 50rem !default;
$box-shadow:
0 1px 3px 0 rgba(0, 0, 0, 0.1),
0 1px 2px 0 rgba(0, 0, 0, 0.06) !default;
$box-shadow-sm: 0 2px 5px rgba(140, 152, 164, 0.2) !default;
$box-shadow-lg: 0 1rem 3rem rgba($black, 0.175) !default;
$box-shadow-inset: inset 0 1px 2px rgba($black, 0.0125) !default;
$component-active-color: $white !default;
$component-active-bg: $primary !default;
$caret-width: 0.3em !default;
$caret-vertical-align: $caret-width * 0.85 !default;
$caret-spacing: $caret-width * 0.85 !default;
$transition-base: all 0.2s ease !default;
$transition-transform: transform 0.2s ease !default;
$transition-fade: opacity 0.15s linear !default;
$transition-collapse: height 0.35s ease !default;
$transition-tabs: all 0.2s !default;
// scss-docs-start embed-responsive-aspect-ratios
$embed-responsive-aspect-ratios: (
"21by9": (
x: 21,
y: 9,
),
"16by9": (
x: 16,
y: 9,
),
"4by3": (
x: 4,
y: 3,
),
"1by1": (
x: 1,
y: 1,
),
) !default;
// scss-docs-end embed-responsive-aspect-ratios
// Typography
//
// Font, line-height, and color for body text, headings, and more.
// font awesome
$fontawesome-webfonts-path: "../vendor/font-awesome/webfonts" !default;
$font-awesome-5: "Font Awesome 5 Free" !default;
// stylelint-disable value-keyword-case
$font-family-sans-serif: "Inter", sans-serif !default;
// stylelint-enable value-keyword-case
$font-family-base: var(--bs-font-sans-serif) !default;
$font-family-code: var(--bs-font-monospace) !default;
// $font-size-root effects the value of `rem`, which is used for as well font sizes, paddings and margins
// $font-size-base effects the font size of the body text
$font-size-root: null !default;
$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`
$font-size-xs: ($font-size-base * 0.75) !default;
$font-size-sm: ($font-size-base * 0.875) !default;
$font-size-md: ($font-size-base * 1) !default;
$font-size-lg: ($font-size-base * 1.25) !default;
$font-size-xl: ($font-size-base * 1.5) !default;
$font-size-xxl: ($font-size-base * 2) !default;
$font-weight-lighter: lighter !default;
$font-weight-light: 300 !default;
$font-weight-normal: 400 !default;
$font-weight-bold: 500 !default;
$font-weight-bolder: 600 !default;
$font-weight-extrabold: 700 !default;
$font-weight-black: 800 !default;
$font-weight-base: $font-weight-normal !default;
$line-height-base: 1.5 !default;
$line-height-sm: 1.25 !default;
$line-height-lg: 2 !default;
$h1-font-size: $font-size-base * 2.5 !default;
$h2-font-size: $font-size-base * 2 !default;
$h3-font-size: $font-size-base * 1.75 !default;
$h4-font-size: $font-size-base * 1.5 !default;
$h5-font-size: $font-size-base * 1.25 !default;
$h6-font-size: $font-size-base !default;
$headings-margin-bottom: $spacer * 0.5 !default;
$headings-font-family: null !default;
$headings-font-style: null !default;
$headings-font-weight: $font-weight-bold !default;
$headings-line-height: 1.3 !default;
$headings-color: $dark !default;
// Display headings
$display1-size: 5rem !default;
$display2-size: 3.5rem !default;
$display3-size: 2.5rem !default;
$display4-size: 1.875rem !default;
// scss-docs-start display-headings
$display-font-sizes: (
1: 5rem,
2: 3.5rem,
3: 2.5rem,
4: 1.875rem,
5: 1.2rem,
6: 1rem,
) !default;
$display-font-weight: $font-weight-bold !default;
$display-line-height: $headings-line-height !default;
// scss-docs-end display-headings
$paragraph-font-size: 1rem !default;
$paragraph-font-weight: 300 !default;
$paragraph-line-height: 1.6 !default;
$lead-font-size: $font-size-base * 1.25 !default;
$lead-font-weight: 300 !default;
$small-font-size: 0.875em !default;
$sub-sup-font-size: 0.75em !default;
$text-muted: #58677d !default;
$initialism-font-size: $small-font-size !default;
$blockquote-margin-y: $spacer !default;
$blockquote-font-size: $font-size-base * 1.25 !default;
$blockquote-footer-color: $gray-600 !default;
$blockquote-footer-font-size: $small-font-size !default;
$hr-margin-y: $spacer !default;
$hr-color: inherit !default;
$hr-height: $border-width !default;
$hr-opacity: 0.25 !default;
$legend-margin-bottom: 0.5rem !default;
$legend-font-size: 1.5rem !default;
$legend-font-weight: null !default;
$mark-padding: 0.2em !default;
$dt-font-weight: $font-weight-bold !default;
$nested-kbd-font-weight: $font-weight-bold !default;
$list-inline-padding: 0.5rem !default;
$mark-bg: #fcf8e3 !default;
// Tables
//
// Customizes the `.table` component with basic values, each used across all table variations.
// scss-docs-start table-variables
$table-cell-padding-y: 0.75rem !default;
$table-cell-padding-x: 0.5rem !default;
$table-cell-padding-y-sm: 0.25rem !default;
$table-cell-padding-x-sm: 0.25rem !default;
$table-cell-vertical-align: top !default;
$table-color: $body-color !default;
$table-bg: transparent !default;
$table-striped-color: $table-color !default;
$table-striped-bg-factor: 0.05 !default;
$table-striped-bg: rgba($black, $table-striped-bg-factor) !default;
$table-active-color: $table-color !default;
$table-active-bg-factor: 0.1 !default;
$table-active-bg: rgba($black, $table-active-bg-factor) !default;
$table-hover-color: $table-color !default;
$table-hover-bg-factor: 0.075 !default;
$table-hover-bg: rgba($black, $table-hover-bg-factor) !default;
$table-border-factor: 0.1 !default;
$table-border-width: $border-width !default;
$table-border-color: $border-color !default;
$table-striped-order: odd !default;
$table-group-seperator-color: $light !default;
$table-caption-color: $text-muted !default;
$table-bg-scale: -80% !default;
$table-head-spacer-y: 0.75rem !default;
$table-head-spacer-x: 1rem !default;
$table-head-font-size: 0.75rem !default;
$table-head-text-transform: uppercase !default;
$table-body-font-size: $font-size-sm !default;
$table-variants: (
"primary": shift-color($primary, $table-bg-scale),
"secondary": shift-color($secondary, $table-bg-scale),
"success": shift-color($success, $table-bg-scale),
"info": shift-color($info, $table-bg-scale),
"warning": shift-color($warning, $table-bg-scale),
"danger": shift-color($danger, $table-bg-scale),
"light": $light,
"dark": $dark,
) !default;
// Accordion
$accordion-padding-y: 1rem !default;
$accordion-padding-x: 1.25rem !default;
$accordion-color: $body-color !default;
$accordion-bg: transparent !default;
$accordion-border-width: $border-width !default;
$accordion-border-color: $gray-400 !default;
$accordion-border-radius: $border-radius !default;
$accordion-body-padding-y: $accordion-padding-y !default;
$accordion-body-padding-x: $accordion-padding-x !default;
$accordion-button-padding-y: $accordion-padding-y !default;
$accordion-button-padding-x: $accordion-padding-x !default;
$accordion-button-color: $accordion-color !default;
$accordion-button-bg: $accordion-bg !default;
$accordion-button-active-bg: $light !default;
$accordion-button-active-color: shade-color($primary, 10%) !default;
$accordion-icon-width: 1.25rem !default;
$accordion-icon-color: $accordion-color !default;
$accordion-icon-active-color: $accordion-button-active-color !default;
$accordion-icon-transition: transform 0.2s ease-in-out !default;
$accordion-icon-transform: rotate(180deg) !default;
$accordion-button-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
$accordion-button-active-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
// Buttons + Forms
//
// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.
$input-btn-padding-y: 0.5rem !default;
$input-btn-padding-x: 1rem !default;
$input-btn-font-family: null !default;
$input-btn-font-size: $font-size-sm !default;
$input-btn-line-height: $line-height-base !default;
$input-btn-focus-width: 0.18rem !default;
$input-btn-focus-color-opacity: 0.25 !default;
$input-btn-focus-color: rgba($component-active-bg, $input-btn-focus-color-opacity) !default;
$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;
$input-btn-padding-y-sm: 0.375rem !default;
$input-btn-padding-x-sm: 0.625rem !default;
$input-btn-font-size-sm: $font-size-sm !default;
$input-btn-padding-y-lg: 0.5rem !default;
$input-btn-padding-x-lg: 1rem !default;
$input-btn-font-size-lg: $font-size-lg !default;
$input-btn-border-width: $border-width !default;
$shadow-input: $box-shadow !default;
$shadow-input-focus: 0.1rem 0.1rem 0 rgba($gray-200, 0.5) !default;
// Buttons
//
// For each of Bootstrap's buttons, define text, background, and border color.
$btn-padding-y: $input-btn-padding-y !default;
$btn-padding-x: $input-btn-padding-x !default;
$btn-font-family: $input-btn-font-family !default;
$btn-font-size: $input-btn-font-size !default;
$btn-line-height: $input-btn-line-height !default;
$btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping
$btn-padding-y-sm: $input-btn-padding-y-sm !default;
$btn-padding-x-sm: $input-btn-padding-x-sm !default;
$btn-font-size-sm: $input-btn-font-size-sm !default;
$btn-padding-y-lg: $input-btn-padding-y-lg !default;
$btn-padding-x-lg: $input-btn-padding-x-lg !default;
$btn-font-size-lg: $input-btn-font-size-lg !default;
$btn-border-width: $input-btn-border-width !default;
$btn-font-weight: $font-weight-bold !default;
$btn-box-shadow:
inset 0 1px 0 rgba($white, 0.15),
0 1px 1px rgba($black, 0.075) !default;
$btn-focus-width: $input-btn-focus-width !default;
$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;
$btn-disabled-opacity: 0.65 !default;
$btn-active-box-shadow: inset 0 3px 5px rgba($black, 0.125) !default;
$btn-link-color: $link-color !default;
$btn-link-hover-color: $link-hover-color !default;
$btn-link-disabled-color: $gray-600 !default;
$btn-block-spacing-y: 0.5rem !default;
// Allows for customizing button radius independently from global border radius
$btn-border-radius: $border-radius !default;
$btn-border-radius-sm: $border-radius !default;
$btn-border-radius-lg: $border-radius !default;
$btn-transition:
color 0.15s ease-in-out,
background-color 0.15s ease-in-out,
border-color 0.15s ease-in-out,
box-shadow 0.15s ease-in-out !default;
$btn-close-width: 1em !default;
$btn-close-height: $btn-close-width !default;
$btn-close-padding-x: 0.25em !default;
$btn-close-padding-y: $btn-close-padding-x !default;
$btn-close-color: $black !default;
$btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/></svg>") !default;
$btn-close-color-white: $white !default;
$btn-close-bg-white: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color-white}'><path d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/></svg>") !default;
$btn-close-focus-shadow: $input-btn-focus-box-shadow !default;
$btn-close-opacity: 0.5 !default;
$btn-close-hover-opacity: 0.75 !default;
$btn-close-focus-opacity: 1 !default;
$btn-close-disabled-opacity: 0.25 !default;
$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default;
// Forms
$form-text-margin-top: 0.25rem !default;
$form-text-font-size: $small-font-size !default;
$form-text-font-style: null !default;
$form-text-font-weight: null !default;
$form-text-color: $text-muted !default;
$form-label-margin-bottom: 0.5rem !default;
$form-label-font-size: null !default;
$form-label-font-style: null !default;
$form-label-font-weight: null !default;
$form-label-color: null !default;
$input-padding-y: $input-btn-padding-y !default;
$input-padding-x: $input-btn-padding-x !default;
$inpu-lg-padding-y: 1rem !default;
$input-font-family: $input-btn-font-family !default;
$input-font-size: $input-btn-font-size !default;
$input-font-weight: $font-weight-base !default;
$input-line-height: $input-btn-line-height !default;
$input-padding-y-sm: $input-btn-padding-y-sm !default;
$input-padding-x-sm: $input-btn-padding-x-sm !default;
$input-font-size-sm: $input-btn-font-size-sm !default;
$input-padding-y-lg: $input-btn-padding-y-lg !default;
$input-padding-x-lg: $input-btn-padding-x-lg !default;
$input-font-size-lg: $input-btn-font-size-lg !default;
$input-bg: $white !default;
$input-disabled-bg: $gray-200 !default;
$input-disabled-border-color: null !default;
$input-color: $gray-500 !default;
$input-border-color: $gray-300 !default;
$input-border-width: $input-btn-border-width !default;
$input-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07) !default;
$input-border-radius: $border-radius !default;
$input-border-radius-sm: $border-radius !default;
$input-border-radius-lg: $border-radius !default;
$input-focus-bg: $input-bg !default;
$input-focus-border-color: lighten($component-active-bg, 25%) !default;
$input-focus-color: $input-color !default;
$input-focus-width: $input-btn-focus-width !default;
$input-focus-box-shadow: $input-btn-focus-box-shadow !default;
$input-placeholder-color: $gray-600 !default;
$input-plaintext-color: $body-color !default;
$input-height-border: $input-border-width * 2 !default;
$input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
$input-height-inner-half: add($input-line-height * 0.5em, $input-padding-y) !default;
$input-height-inner-quarter: add($input-line-height * 0.25em, $input-padding-y * 0.5) !default;
$input-height: add(
$input-line-height * 1em,
add($input-padding-y * 2, $input-height-border, false)
) !default;
$input-height-sm: add(
$input-line-height * 1em,
add($input-padding-y-sm * 2, $input-height-border, false)
) !default;
$input-height-lg: add(
$input-line-height * 1em,
add($input-padding-y-lg * 2, $input-height-border, false)
) !default;
$input-height-xl: calc(
#{$input-line-height * 1.5em} + #{$input-btn-padding-y-lg * 2} + #{$input-height-border}
) !default;
$input-transition:
border-color 0.15s ease-in-out,
box-shadow 0.15s ease-in-out !default;
// Custom forms
$custom-control-gutter: 1.75rem !default;
$custom-control-spacer-x: 1rem !default;
$custom-control-line-height: 1 !default;
$custom-control-indicator-size: 1.25rem !default;
$custom-control-bg: $gray-400 !default;
$custom-control-indicator-bg: $white !default;
$custom-control-border-width: $border-width !default;
$custom-control-border-color: $input-border-color !default;
$custom-control-box-shadow: none !default;
$custom-control-indicator-hover-color: $component-hover-color !default;
$custom-control-indicator-hover-bg: $primary !default;
$custom-control-indicator-hover-border-color: $component-hover-border-color !default;
$custom-control-indicator-active-color: $component-active-color !default;
$custom-control-indicator-active-border-color: $component-active-border-color !default;
$custom-control-indicator-checked-color: $component-active-color !default;
$custom-control-indicator-checked-bg: $primary !default;
$custom-control-indicator-checked-border-color: $primary !default;
$custom-control-indicator-checked-disabled-bg: rgba($primary, 0.7) !default;
$custom-control-indicator-border-width: 1px !default;
$custom-control-indicator-disabled-bg: $gray-200 !default;
$custom-control-label-disabled-color: $gray-800 !default;
$custom-checkbox-bg: $gray-400 !default;
$custom-checkbox-checked-bg: $primary !default;
$custom-checkbox-disabled-checked-bg: rgba($primary, 0.7) !default;
$custom-checkbox-indicator-border-radius: $border-radius-xl !default;
$custom-checkbox-indicator-border-width: $border-width-md !default;
$custom-checkbox-indicator-icon-checked: $font-awesome-5 !default;
$square-checkbox-indicator-border-radius: 3px !default;
$custom-toggle-slider-bg: $gray-400 !default;
$custom-toggle-slider-indicator-bg: $white !default;
$custom-toggle-checked-bg: $primary !default;
$custom-toggle-disabled-bg: $gray-200 !default;
$custom-toggle-disabled-checked-bg: rgba($primary, 0.7) !default;
$custom-toggle-border-radius: 0.8rem !default;
$custom-switch-indicator-size: calc(
#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}
) !default;
$custom-checkbox-disabled-checked-color: $gray-800 !default;
$form-check-input-width: 1.125em !default;
$form-check-min-height: $font-size-base * $line-height-base !default;
$form-check-padding-left: $form-check-input-width + 0.5em !default;
$form-check-margin-bottom: 0.125rem !default;
$form-check-label-color: null !default;
$form-check-label-cursor: null !default;
$form-check-transition:
background-color 0.2s ease-in-out,
background-position 0.2s ease-in-out,
border-color 0.2s ease-in-out,
box-shadow 0.2s ease-in-out !default;
$form-check-input-active-filter: brightness(90%) !default;
$form-check-input-bg: $body-bg !default;
$form-check-input-border: 1px solid $input-border-color !default;
$form-check-input-border-radius: 0.25em !default;
$form-check-radio-border-radius: 50% !default;
$form-check-input-focus-border: $input-focus-border-color !default;
$form-check-input-focus-box-shadow: $input-btn-focus-box-shadow !default;
$form-check-input-checked-color: $component-active-color !default;
$form-check-input-checked-bg-color: $component-active-bg !default;
$form-check-input-checked-border-color: $form-check-input-checked-bg-color !default;
$form-check-input-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-checked-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/></svg>") !default;
$form-check-radio-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='#{$form-check-input-checked-color}'/></svg>") !default;
$form-check-input-indeterminate-color: $component-active-color !default;
$form-check-input-indeterminate-bg-color: $component-active-bg !default;
$form-check-input-indeterminate-border-color: $form-check-input-indeterminate-bg-color !default;
$form-check-input-indeterminate-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-indeterminate-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/></svg>") !default;
$form-switch-color: $gray-600 !default;
$form-switch-width: 2.25em !default;
$form-switch-padding-left: $form-switch-width + 0.5em !default;
$form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>") !default;
$form-switch-border-radius: $form-switch-width !default;
$form-switch-focus-color: $input-focus-border-color !default;
$form-switch-focus-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-focus-color}'/></svg>") !default;
$form-switch-checked-color: $component-active-color !default;
$form-switch-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-checked-color}'/></svg>") !default;
$form-switch-checked-bg-position: right center !default;
$form-check-inline-margin-right: 1rem !default;
$input-group-addon-color: $input-color !default;
$input-group-addon-border-color: $input-border-color !default;
// Input groups
// scss-docs-start input-group-variables
$input-group-addon-padding-y: 0.5rem !default;
$input-group-addon-padding-x: 0.625rem !default;
$input-group-addon-font-weight: $input-font-weight !default;
$input-group-addon-color: $gray-400 !default;
$input-group-addon-bg: $white !default;
$input-group-addon-border-color: $input-border-color !default;
// scss-docs-end input-group-variables
$form-select-padding-y: $input-padding-y !default;
$form-select-padding-x: $input-padding-x !default;
$form-select-font-family: $input-font-family !default;
$form-select-font-size: $input-font-size !default;
$form-select-height: $input-height !default;
$form-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator
$form-select-font-weight: $input-font-weight !default;
$form-select-line-height: $input-line-height !default;
$form-select-color: $input-color !default;
$form-select-disabled-color: $gray-600 !default;
$form-select-bg: $input-bg !default;
$form-select-disabled-bg: $gray-200 !default;
$form-select-disabled-border-color: $input-disabled-border-color !default;
$form-select-bg-position: right $form-select-padding-x center !default;
$form-select-bg-size: 16px 12px !default; // In pixels because image dimensions
$form-select-indicator-color: $gray-800 !default;
$form-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#{$form-select-indicator-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/></svg>") !default;
$form-select-feedback-icon-padding-right: add(
1em * 0.75,
(2 * $form-select-padding-y * 0.75) + $form-select-padding-x + $form-select-indicator-padding
) !default;
$form-select-feedback-icon-position: center right
($form-select-padding-x + $form-select-indicator-padding) !default;
$form-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;
$form-select-border-width: $input-border-width !default;
$form-select-border-color: $input-border-color !default;
$form-select-border-radius: $border-radius !default;
$form-select-box-shadow: $box-shadow-inset !default;
$form-select-focus-border-color: $input-focus-border-color !default;
$form-select-focus-width: $input-focus-width !default;
$form-select-focus-box-shadow: 0 0 0 $form-select-focus-width $input-btn-focus-color !default;
$form-select-padding-y-sm: $input-padding-y-sm !default;
$form-select-padding-x-sm: $input-padding-x-sm !default;
$form-select-font-size-sm: $input-font-size-sm !default;
$form-select-height-sm: $input-height-sm !default;
$form-select-padding-y-lg: $input-padding-y-lg !default;
$form-select-padding-x-lg: $input-padding-x-lg !default;
$form-select-font-size-lg: $input-font-size-lg !default;
$form-select-height-lg: $input-height-lg !default;
$form-range-track-width: 100% !default;
$form-range-track-height: 0.5rem !default;
$form-range-track-cursor: pointer !default;
$form-range-track-bg: $gray-300 !default;
$form-range-track-border-radius: 1rem !default;
$form-range-track-box-shadow: $box-shadow-inset !default;
$form-range-thumb-width: 1rem !default;
$form-range-thumb-height: $form-range-thumb-width !default;
$form-range-thumb-bg: $component-active-bg !default;
$form-range-thumb-border: 0 !default;
$form-range-thumb-border-radius: 1rem !default;
$form-range-thumb-box-shadow: 0 0.1rem 0.25rem rgba($black, 0.1) !default;
$form-range-thumb-focus-box-shadow:
0 0 0 1px $body-bg,
$input-focus-box-shadow !default;
$form-range-thumb-focus-box-shadow-width: $input-focus-width !default; // For focus box shadow issue in Edge
$form-range-thumb-active-bg: lighten($component-active-bg, 35%) !default;
$form-range-thumb-disabled-bg: $gray-500 !default;
$form-range-thumb-transition:
background-color 0.15s ease-in-out,
border-color 0.15s ease-in-out,
box-shadow 0.15s ease-in-out !default;
$form-file-height: $input-height !default;
$form-file-focus-border-color: $input-focus-border-color !default;
$form-file-focus-box-shadow: $input-focus-box-shadow !default;
$form-file-disabled-bg: $input-disabled-bg !default;
$form-file-disabled-border-color: $input-disabled-border-color !default;
$form-file-padding-y: $input-padding-y !default;
$form-file-padding-x: $input-padding-x !default;
$form-file-line-height: $input-line-height !default;
$form-file-font-family: $input-font-family !default;
$form-file-font-weight: $input-font-weight !default;
$form-file-color: $input-color !default;
$form-file-bg: $input-bg !default;
$form-file-border-width: $input-border-width !default;
$form-file-border-color: $input-border-color !default;
$form-file-border-radius: $input-border-radius !default;
$form-file-box-shadow: $input-box-shadow !default;
$form-file-button-color: $form-file-color !default;
$form-file-button-bg: $input-group-addon-bg !default;
$form-file-padding-y-sm: $input-padding-y-sm !default;
$form-file-padding-x-sm: $input-padding-x-sm !default;
$form-file-font-size-sm: $input-font-size-sm !default;
$form-file-height-sm: $input-height-sm !default;
$form-file-padding-y-lg: $input-padding-y-lg !default;
$form-file-padding-x-lg: $input-padding-x-lg !default;
$form-file-font-size-lg: $input-font-size-lg !default;
$form-file-height-lg: $input-height-lg !default;
$input-muted-bg: $gray-100 !default;
$input-placeholder-color: $gray-800 !default;
$input-focus-placeholder-color: $gray-800 !default;
// Form validation
$form-feedback-margin-top: $form-text-margin-top !default;
$form-feedback-font-size: $form-text-font-size !default;
$form-feedback-font-style: $form-text-font-style !default;
$form-feedback-valid-color: $success !default;
$form-feedback-invalid-color: $danger !default;
$form-feedback-icon-valid-color: $form-feedback-valid-color !default;
$form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/></svg>") !default;
$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
$form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}' viewBox='0 0 12 12'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>") !default;
// scss-docs-start form-validation-states
$form-validation-states: (
"valid": (
"color": $form-feedback-valid-color,
"icon": $form-feedback-icon-valid,
),
"invalid": (
"color": $form-feedback-invalid-color,
"icon": $form-feedback-icon-invalid,
),
) !default;
// scss-docs-end form-validation-states
// Z-index master list
//
// Warning: Avoid customizing these values. They're used for a bird's eye view
// of components dependent on the z-axis and are designed to all work together.
// scss-docs-start zindex-stack
$zindex-dropdown: 1000 !default;
$zindex-sticky: 1020 !default;
$zindex-fixed: 1030 !default;
$zindex-modal-backdrop: 1040 !default;
$zindex-modal: 1050 !default;
$zindex-popover: 1060 !default;
$zindex-tooltip: 1070 !default;
// scss-docs-end zindex-stack
// No UI Slider
$noui-target-bg: $gray-400 !default;
$noui-target-thickness: 5px !default;
$noui-target-border-radius: 5px !default;
$noui-target-border-color: 0 !default;
$noui-target-box-shadow: inset $box-shadow-sm !default;
$noui-box-shadow: $box-shadow-sm !default;
$noui-slider-connect-bg: $primary !default;
$noui-slider-connect-disabled-bg: $gray-200 !default;
$noui-handle-active-shadow: 0 0 0 0.2rem rgba(69, 77, 103, 0.5) !default;
$noui-handle-width: 15px !default;
$noui-handle-bg: $primary !default;
$noui-handle-border: 0 !default;
$noui-handle-border-radius: $border-radius !default;
$noui-origin-border-radius: $circle-radius !default;
// Navs
$nav-link-padding-y: 0.5rem !default;
$nav-link-padding-x: 1rem !default;
$nav-link-color: $gray-800 !default;
$nav-link-hover-color: $dark !default;
$nav-link-active-color: $gray-800 !default;
$nav-link-shadow: none !default;
$nav-link-transition:
color 0.15s ease-in-out,
background-color 0.15s ease-in-out,
border-color 0.15s ease-in-out !default;
$nav-link-disabled-color: $gray-600 !default;
$nav-tabs-border-color: $light !default;
$nav-tabs-border-width: $border-width !default;
$nav-tabs-border-radius: $border-radius !default;
$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;
$nav-tabs-link-active-color: $gray-700 !default;
$nav-tabs-link-active-bg: $light !default;
$nav-tabs-link-active-border-color: $light !default;
$nav-pills-padding-y: 0.75rem !default;
$nav-pills-padding-x: 0.85rem !default;
$nav-pills-space-x: 1rem !default;
$nav-pills-border-circle: 50% !default;
$nav-pills-bg: $white !default;
$nav-pills-border-width: 1px !default;
$nav-pills-border-color: $light !default;
$nav-pills-border-radius: $border-radius !default;
$nav-pills-link-hover-color: $primary !default;
$nav-pills-link-active-color: $primary !default;
$nav-pills-active-border-color: $gray-300 !default;
$nav-pills-link-active-bg: #f8f8f8 !default;
// Owl navs
$owl-nav-color: $gray-600 !default;
$owl-nav-color-hover: $gray-900 !default;
$owl-nav-font-size: $font-size-xxl !default;
$owl-nav-rounded: 3px !default;
$owl-nav-margin: 5px !default;
$owl-nav-padding: 4px 7px !default;
$owl-nav-background: $gray-400 !default;
$owl-nav-background-hover: $gray-800 !default;
$owl-nav-disabled-opacity: 0.5 !default;
// Owl dots
$owl-dot-width: 10px !default;
$owl-dot-height: 10px !default;
$owl-dot-rounded: $circle-radius !default;
$owl-dot-margin: 5px 5px !default;
$owl-dot-border-width: 2px !default;
$owl-dot-background: $gray-400 !default;
$owl-dot-background-active: $gray-800 !default;
// Navbar
$navbar-padding-y: 1rem !default;
$navbar-padding-x: null !default;
$navbar-nav-link-padding-x: 0.8rem !default;
$navbar-brand-font-size: $font-size-lg !default;
// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
$nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 4 !default;
$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
$navbar-brand-padding-y: 0 !default;
$navbar-brand-margin-right: 1rem !default;
$navbar-toggler-padding-y: 0.4rem !default;
$navbar-toggler-padding-x: 0.6rem !default;
$navbar-toggler-font-size: $font-size-lg !default;
$navbar-toggler-border-radius: $btn-border-radius !default;
$navbar-toggler-focus-width: $btn-focus-width !default;
$navbar-toggler-transition: box-shadow 0.15s ease-in-out !default;
$navbar-dark-color: rgba($white, 0.9) !default;
$navbar-dark-hover-color: rgba($white, 1) !default;
$navbar-dark-active-color: $white !default;
$navbar-dark-disabled-color: rgba($white, 0.9) !default;
$navbar-dark-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
$navbar-dark-toggler-border-color: rgba($white, 0.1) !default;
$navbar-light-color: rgba($black, 0.9) !default;
$navbar-light-hover-color: rgba($black, 1) !default;
$navbar-light-active-color: rgba($black, 1) !default;
$navbar-light-disabled-color: rgba($black, 0.9) !default;
$navbar-light-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
$navbar-light-toggler-border-color: rgba($black, 0.1) !default;
$navbar-light-brand-color: $navbar-light-active-color !default;
$navbar-light-brand-hover-color: $navbar-light-active-color !default;
$navbar-dark-brand-color: $navbar-dark-active-color !default;
$navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
// Dropdowns
//
// Dropdown menu container and contents.
$dropdown-min-width: 12rem !default;
$dropdown-padding-y: 0.5rem !default;
$dropdown-spacer: 0.125rem !default;
$dropdown-font-size: 0.875rem !default;
$dropdown-item-font-weight: $font-weight-normal !default;
$dropdown-item-hover-color: $gray-900 !default;
$dropdown-color: $body-color !default;
$dropdown-bg: $white !default;
$dropdown-border-color: $border-color !default;
$dropdown-border-radius: $border-radius-sm !default;
$dropdown-border-width: $border-width !default;
$dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;
$dropdown-divider-bg: $gray-200 !default;
$dropdown-divider-margin-y: $spacer * 0.5 !default;
$dropdown-box-shadow:
0 10px 15px -3px rgba(0, 0, 0, 0.1),
0 4px 6px -2px rgba(0, 0, 0, 0.05) !default;
$dropdown-link-color: $gray-900 !default;
$dropdown-link-hover-color: darken($gray-900, 5%) !default;
$dropdown-link-hover-bg: $gray-100 !default;
$dropdown-link-active-color: $gray-900 !default;
$dropdown-link-active-bg: $gray-200 !default;
$dropdown-link-disabled-color: $gray-600 !default;
$dropdown-item-padding-y: $spacer * 0.25 !default;
$dropdown-item-padding-x: $spacer !default;
$dropdown-header-color: $gray-900 !default;
$dropdown-header-font-weight: $font-weight-bold !default;
$dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x !default;
// Pagination
$pagination-padding-y: 0.375rem !default;
$pagination-padding-x: 0.75rem !default;
$pagination-padding-y-sm: 0.25rem !default;
$pagination-padding-x-sm: 0.5rem !default;
$pagination-padding-y-lg: 0.75rem !default;
$pagination-padding-x-lg: 1.5rem !default;
$pagination-color: $link-color !default;
$pagination-bg: $white !default;
$pagination-border-width: $border-width !default;
$pagination-border-radius: $border-radius !default;
$pagination-margin-left: -$pagination-border-width !default;
$pagination-border-color: $light !default;
$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;
$pagination-focus-outline: 0 !default;
$pagination-hover-color: $link-hover-color !default;
$pagination-hover-bg: $gray-200 !default;
$pagination-hover-border-color: $gray-300 !default;
$pagination-active-color: $component-active-color !default;
$pagination-active-bg: $component-active-bg !default;
$pagination-active-border-color: $pagination-active-bg !default;
$pagination-disabled-color: $gray-600 !default;
$pagination-disabled-bg: $white !default;
$pagination-disabled-border-color: $gray-300 !default;
// Cards
$card-spacer-y: 1.25rem !default;
$card-spacer-x: 1.5rem !default;
$card-social-padding: 0.25rem 0.375rem !default;
$card-title-spacer-y: 0.875rem !default;
$card-border-width: $border-width !default;
$card-border-radius: $border-radius !default;
$card-border-color: rgba($black, 0.125) !default;
$card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;
$card-cap-padding-y: 1.25rem !default;
$card-cap-padding-x: $card-spacer-x !default;
$card-cap-bg: rgba($black, 0.03) !default;
$card-cap-color: null !default;
$card-height: null !default;
$card-color: null !default;
$card-bg: $white !default;
$card-img-overlay-padding: $spacer !default;
$card-group-margin: $grid-gutter-width * 0.5 !default;
$transition-bezier-card: cubic-bezier(0.34, 1.45, 0.7, 1) !default;
//Timelines
$timeline-font-size: $font-size-xxl !default;
$timeline-font-color: $body-color !default;
$timeline-border-color: $light !default;
$timeline-border-color-dark: $gray-500 !default;
$timeline-background-color: $white !default;
$timeline-line-height: 3 !default;
$timeline-border-width: $border-width !default;
$timeline-circle-radius: 50% !default;
$timeline-spacer-y: 1.25rem !default;
$timeline-spacer-x: 2.75rem !default;
// Icons & Shapes sizes
$icon-size-xxs: 1rem !default;
$icon-size-xs: 1.25rem !default;
$icon-size-sm: 1.5rem !default;
$icon-size: 2rem !default;
$icon-size-lg: 3.5rem !default;
$icon-size-xl: 4.5rem !default;
$icon-size-xxl: 6rem !default;
$icon-shape-xxs: 1.5rem !default;
$icon-shape-xs: 2.5rem !default;
$icon-shape-sm: 3.275rem !default;
$icon-shape: 4rem !default;
$icon-shape-lg: 5rem !default;
$icon-shape-xl: 6rem !default;
$icon-shape-xxl: 7.5rem !default;
// Steps
$step-number-size: 12rem !default;
$step-shape-size: 7rem !default;
$step-border-width: $border-width-md !default;
$step-icon-size: $icon-size-xl !default;
// Tooltips
$tooltip-font-size: $font-size-sm !default;
$tooltip-max-width: 200px !default;
$tooltip-color: $white !default;
$tooltip-bg: $dark !default;
$tooltip-border-radius: $border-radius !default;
$tooltip-opacity: 0.99 !default;
$tooltip-padding-y: 0.5rem !default;
$tooltip-padding-x: 0.55rem !default;
$tooltip-margin: 2rem !default;
$tooltip-arrow-width: 0.8rem !default;
$tooltip-arrow-height: 0.4rem !default;
$tooltip-arrow-color: $tooltip-bg !default;
// Form tooltips must come after regular tooltips
$form-feedback-tooltip-padding-y: $tooltip-padding-y !default;
$form-feedback-tooltip-padding-x: $tooltip-padding-x !default;
$form-feedback-tooltip-font-size: $tooltip-font-size !default;
$form-feedback-tooltip-line-height: null !default;
$form-feedback-tooltip-opacity: $tooltip-opacity !default;
$form-feedback-tooltip-border-radius: $tooltip-border-radius !default;
// Popovers
$popover-font-size: $font-size-sm !default;
$popover-bg: $dark !default;
$popover-max-width: 276px !default;
$popover-border-width: $border-width !default;
$popover-border-color: rgba($black, 0.2) !default;
$popover-border-radius: $border-radius-lg !default;
$popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;
$popover-box-shadow: $box-shadow !default;
$popover-header-bg: darken($popover-bg, 3%) !default;
$popover-header-color: $headings-color !default;
$popover-header-padding-y: 0.5rem !default;
$popover-header-padding-x: $spacer !default;
$popover-body-color: $white !default;
$popover-body-padding-y: $spacer !default;
$popover-body-padding-x: $spacer !default;
$popover-arrow-width: 1rem !default;
$popover-arrow-height: 0.5rem !default;
$popover-arrow-color: $popover-bg !default;
$popover-arrow-outer-color: fade-in($popover-border-color, 0.05) !default;
// Toasts
$toast-max-width: 350px !default;
$toast-padding-x: 0.75rem !default;
$toast-padding-y: 0.25rem !default;
$toast-font-size: 0.875rem !default;
$toast-color: null !default;
$toast-background-color: rgba($white, 0.85) !default;
$toast-border-width: 1px !default;
$toast-border-color: rgba(0, 0, 0, 0.1) !default;
$toast-border-radius: $border-radius !default;
$toast-box-shadow: $box-shadow !default;
$toast-header-color: $gray-600 !default;
$toast-header-background-color: rgba($white, 0.85) !default;
$toast-header-border-color: rgba(0, 0, 0, 0.05) !default;
// Badges
$badge-font-size: 0.75em !default;
$badge-font-weight: $font-weight-bolder !default;
$badge-padding-y: 0.2rem !default;
$badge-padding-x: 0.4rem !default;
$badge-color: $white !default;
$badge-border-radius: $border-radius !default;
$badge-pill-padding-x: 0.875em !default;
$badge-pill-border-radius: 10rem !default;
$badge-circle-size: 2rem !default;
// Modals
// Padding applied to the modal body
$modal-inner-padding: $spacer !default;
// Margin between elements in footer, must be lower than or equal to 2 * $modal-inner-padding
$modal-footer-margin-between: 0.5rem !default;
$modal-dialog-margin: 0.5rem !default;
$modal-dialog-margin-y-sm-up: 1.75rem !default;
$modal-title-line-height: $line-height-base !default;
$modal-content-color: null !default;
$modal-content-bg: $white !default;
$modal-content-border-color: rgba($black, 0.2) !default;
$modal-content-border-width: $border-width !default;
$modal-content-border-radius: $border-radius !default;
$modal-content-inner-border-radius: subtract(
$modal-content-border-radius,
$modal-content-border-width
) !default;
$modal-content-box-shadow-xs: $box-shadow-sm !default;
$modal-content-box-shadow-sm-up: $box-shadow !default;
$modal-backdrop-bg: $black !default;
$modal-backdrop-opacity: 0.5 !default;
$modal-header-border-color: $border-color !default;
$modal-footer-border-color: $modal-header-border-color !default;
$modal-header-border-width: $modal-content-border-width !default;
$modal-footer-border-width: $modal-header-border-width !default;
$modal-header-padding-y: $modal-inner-padding !default;
$modal-header-padding-x: $modal-inner-padding !default;
$modal-header-padding: $modal-header-padding-y $modal-header-padding-x !default; // Keep this for backwards compatibility
$modal-sm: 300px !default;
$modal-md: 500px !default;
$modal-lg: 800px !default;
$modal-xl: 1140px !default;
$modal-fade-transform: translate(0, -50px) !default;
$modal-show-transform: none !default;
$modal-transition: transform 0.3s ease-out !default;
$modal-scale-transform: scale(1.02) !default;
// Alerts
//
// Define alert colors, border radius, and padding.
$alert-padding-y: $spacer !default;
$alert-padding-x: $spacer !default;
$alert-margin-bottom: 1rem !default;
$alert-border-radius: $border-radius !default;
$alert-link-font-weight: $font-weight-bold !default;
$alert-border-width: $border-width !default;
$alert-icon-font-size: 2rem !default;
$alert-link-color: $white !default;
$alert-bg-level: -10 !default;
$alert-border-level: -9 !default;
$alert-color-level: 10 !default;
// Progress bars
$progress-height: 1rem !default;
$progress-font-size: $font-size-base * 0.75 !default;
$progress-bg: $gray-200 !default;
$progress-border-radius: $border-radius !default;
$progress-box-shadow: $box-shadow-inset !default;
$progress-bar-color: $white !default;
$progress-bar-bg: $dark !default;
$progress-bar-animation-timing: 1s linear infinite !default;
$progress-bar-transition: width 0.6s ease !default;
$progress-xl-size: 0.8rem !default;
$progress-lg-size: 0.6rem !default;
$progress-sm-size: 0.2rem !default;
// List group
$list-group-color: null !default;
$list-group-bg: $white !default;
$list-group-border-color: rgba($black, 0.125) !default;
$list-group-border-width: $border-width !default;
$list-group-border-radius: $border-radius !default;
$list-group-sm-item-padding-y: 0.625rem !default;
$list-group-sm-item-padding-x: 0.875rem !default;
$list-group-item-padding-y: $spacer * 0.5 !default;
$list-group-item-padding-x: $spacer !default;
$list-group-item-bg-level: -9 !default;
$list-group-item-color-level: 6 !default;
$list-group-item-border-radius: $border-radius !default;
$list-group-hover-bg: $gray-100 !default;
$list-group-active-color: $component-active-color !default;
$list-group-active-bg: $component-active-bg !default;
$list-group-active-border-color: $list-group-active-bg !default;
$list-group-disabled-color: $gray-600 !default;
$list-group-disabled-bg: $list-group-bg !default;
$list-group-action-color: $gray-700 !default;
$list-group-action-hover-color: $list-group-action-color !default;
$list-group-action-active-color: $body-color !default;
$list-group-action-active-bg: $gray-200 !default;
// Image thumbnails
$thumbnail-padding: 0.25rem !default;
$thumbnail-bg: $body-bg !default;
$thumbnail-border-width: $border-width !default;
$thumbnail-border-color: $gray-300 !default;
$thumbnail-border-radius: $border-radius !default;
$thumbnail-box-shadow: $box-shadow-sm !default;
// Figures
$figure-caption-font-size: $small-font-size !default;
$figure-caption-color: $gray-600 !default;
// Breadcrumbs
$breadcrumb-font-size: null !default;
$breadcrumb-padding-y: $spacer * 0.5 !default;
$breadcrumb-padding-x: $spacer !default;
$breadcrumb-item-padding-x: 0.5rem !default;
$breadcrumb-margin-bottom: 1rem !default;
$breadcrumb-bg: $gray-200 !default;
$breadcrumb-divider-color: $gray-600 !default;
$breadcrumb-active-color: $gray-600 !default;
$breadcrumb-divider: quote("/") !default;
$breadcrumb-border-radius: $border-radius !default;
$breadcrumb-active-color: $white !default;
$breadcrumb-divider-color: $gray-700 !default;
$breadcrumb-item-color: $gray-700 !default;
$breadcrumb-font-weight: $font-weight-normal !default;
$breadcrumb-active-font-weight: $font-weight-normal !default;
$breadcrumb-item-light-color: $white !default;
$breadcrumb-divider-light-color: $white !default;
// Carousel
$carousel-control-color: $white !default;
$carousel-control-width: 15% !default;
$carousel-control-opacity: 0.5 !default;
$carousel-control-hover-opacity: 0.9 !default;
$carousel-control-transition: opacity 0.15s ease !default;
$carousel-indicator-width: 30px !default;
$carousel-indicator-height: 3px !default;
$carousel-indicator-hit-area-height: 10px !default;
$carousel-indicator-spacer: 3px !default;
$carousel-indicator-opacity: 0.5 !default;
$carousel-indicator-active-bg: $white !default;
$carousel-indicator-active-opacity: 1 !default;
$carousel-indicator-transition: opacity 0.6s ease !default;
$carousel-caption-width: 70% !default;
$carousel-caption-color: $white !default;
$carousel-caption-padding-y: 1.25rem !default;
$carousel-caption-spacer: 1.25rem !default;
$carousel-control-icon-width: 20px !default;
$carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'><path d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/></svg>") !default;
$carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'><path d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/></svg>") !default;
$carousel-transition-duration: 0.6s !default;
$carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)
// Spinners
$spinner-width: 2rem !default;
$spinner-height: $spinner-width !default;
$spinner-border-width: 0.25em !default;
$spinner-animation-speed: 0.75s !default;
$spinner-width-sm: 1.2rem !default;
$spinner-height-sm: $spinner-width-sm !default;
$spinner-border-width-sm: 0.2em !default;
// Datepicker
$datepicker-border-radius: $border-radius-sm !default;
$datepicker-dropdown-padding: 20px 22px !default;
$datepicker-cell-transition: $transition-base !default;
$datepicker-cell-hover-background: lighten($gray-400, 55%) !default;
$datepicker-cell-border-radius: 50% !default;
$datepicker-cell-width: 36px !default;
$datepicker-cell-height: 36px !default;
$datepicker-disabled-cell-color: $gray-300 !default;
$datepicker-disabled-old-new-color: $gray-500 !default;
$datepicker-header-cell-border-radius: $border-radius-sm !default;
$datepicker-active-color: $white !default;
$datepicker-active-background: $secondary !default;
$datepicker-active-box-shadow: none !default;
$datepicker-range-background: $secondary !default;
$datepicker-range-cell-focused-background: darken($datepicker-range-background, 5%) !default;
$datepicker-range-color: $white !default;
$datepicker-range-highlighted-bg: $gray-200 !default;
$datepicker-dropdown-border: lighten($gray-400, 40%) !default;
$datepicker-dropdown-bg: $white !default;
$datepicker-highlighted-bg: $datepicker-active-background !default;
// Close
$close-bg: transparent !default;
$close-hover-bg: transparent !default;
$close-color: rgba(0, 0, 0, 0.6) !default;
$close-hover-color: rgba(0, 0, 0, 0.9) !default;
$close-font-size: $font-size-base * 1.5 !default;
$close-font-weight: $font-weight-bold !default;
$close-color: $black !default;
$close-text-shadow: 0 1px 0 $white !default;
// Code
$code-font-size: $small-font-size !default;
$code-color: $pink !default;
$kbd-padding-y: 0.2rem !default;
$kbd-padding-x: 0.4rem !default;
$kbd-font-size: $code-font-size !default;
$kbd-color: $white !default;
$kbd-bg: $gray-900 !default;
$pre-color: null !default;
// Avatars
$avatar-sm-y: 1.5rem !default;
$avatar-sm-x: 1.5rem !default;
$avatar-y: 2rem !default;
$avatar-x: 2rem !default;
$avatar-md-y: 3rem !default;
$avatar-md-x: 3rem !default;
$avatar-lg-y: 4.5rem !default;
$avatar-lg-x: 4.5rem !default;
$avatar-xl-y: 8rem !default;
$avatar-xl-x: 8rem !default;
// Footer
$footer-link-font-size: 0.85rem !default;
$footer-bg: theme-color("secondary") !default;
$footer-color: $gray-600 !default;
$footer-link-color: $gray-600 !default;
$footer-link-hover-color: $gray-700 !default;
$footer-heading-color: $gray-600 !default;
$footer-heading-font-size: $font-size-sm !default;
$padding-footer-sm: 0.125rem !default;
$padding-footer: 0.375rem !default;
$padding-footer-md: 0.625rem !default;
$padding-footer-general: 0.9375rem !default;
$padding-footer-big: 1.5rem !default;
// TODO(volt): Check if we still need to make use of this
// Vendor
// @import "vendor/headroom";
// @import "vendor/nouislider";
// @import "vendor/prism";
// @import "vendor/datepicker";
/**
* = Accordions
*/
.accordion-button {
text-align: left;
&:not(.collapsed) {
&::after {
background-image: none;
@include transform(rotateZ(45deg));
}
}
// Accordion icon
&::after {
background-image: none;
content: "\f067";
font-family: $font-awesome-5;
font-size: $font-size-base;
font-weight: 900;
}
&:hover {
background-color: $gray-200;
}
}
// Flush accordion items
//
// Remove borders and border-radius to keep accordion items edge-to-edge.
.accordion-flush {
.accordion-button {
background-color: transparent;
&:not(.collapsed) {
color: $tertiary;
}
&:focus {
border-color: $gray-300;
box-shadow: none;
}
}
.accordion-collapse {
border: 0;
}
}
.alert-heading {
font-weight: $font-weight-bold;
}
.alert-icon {
margin-bottom: 0.5rem;
span {
font-size: $alert-icon-font-size;
}
}
/**
* = Animations
*/
@for $size from 1 to 10 {
.animate-up-#{$size},
.animate-right-#{$size},
.animate-down-#{$size},
.animate-left-#{$size},
.scale-up-#{$size},
.scale-down-#{$size} {
transition: $transition-base;
}
.scale-up-#{$size} {
&:hover {
transform: scale($size * 0.5555555556);
}
}
.scale-up-hover-#{$size} {
&:hover {
& .scale {
transform: scale($size * 0.5555555556);
}
}
}
.scale-down-#{$size} {
&:hover {
transform: scale($size * 0.4);
}
}
.animate-up-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(0, -#{$size}px);
}
}
.animate-right-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(#{$size}px, 0);
}
}
.animate-down-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(0, #{$size}px);
}
}
.animate-left-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(-#{$size}px, 0);
}
}
}
// Keyframes
@keyframes show-navbar-collapse {
0% {
opacity: 0;
transform: scale(0.95);
transform-origin: 100% 0;
}
100% {
opacity: 1;
transform: scale(1);
}
}
@keyframes hide-navbar-collapse {
from {
opacity: 1;
transform: scale(1);
transform-origin: 100% 0;
}
to {
opacity: 0;
transform: scale(0.95);
}
}
@keyframes show-navbar-dropdown {
0% {
opacity: 0;
transform: translate(0, 10px) perspective(200px) rotateX(-2deg);
transition:
visibility 0.45s,
opacity 0.45s,
transform 0.45s;
}
100% {
transform: translate(0, 0);
opacity: 1;
}
}
@keyframes hide-navbar-dropdown {
from {
opacity: 1;
}
to {
opacity: 0;
transform: translate(0, 10px);
}
}
@keyframes show-dropdown {
0% {
opacity: 0;
transform-origin: perspective(200px) rotateX(-2deg);
transition:
visibility 0.45s,
opacity 0.5s;
}
100% {
opacity: 1;
}
}
@keyframes hide-dropdown {
from {
opacity: 1;
}
to {
opacity: 0;
transform: translate(0, 10px);
}
}
.bell-shake {
&.shaking {
animation: bellshake 0.5s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
backface-visibility: hidden;
transform-origin: top right;
}
}
:root {
--animate-duration: 1s;
--animate-delay: 1s;
--animate-repeat: 1;
}
.animate__animated {
-webkit-animation-duration: 1s;
animation-duration: 1s;
-webkit-animation-duration: var(--animate-duration);
animation-duration: var(--animate-duration);
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.animate__jackInTheBox {
-webkit-animation-name: jackInTheBox;
animation-name: jackInTheBox;
}
@keyframes bellshake {
0% {
transform: rotate(0);
}
15% {
transform: rotate(5deg);
}
30% {
transform: rotate(-5deg);
}
45% {
transform: rotate(4deg);
}
60% {
transform: rotate(-4deg);
}
75% {
transform: rotate(2deg);
}
85% {
transform: rotate(-2deg);
}
92% {
transform: rotate(1deg);
}
100% {
transform: rotate(0);
}
}
@-webkit-keyframes jackInTheBox {
from {
opacity: 0;
-webkit-transform: scale(0.1) rotate(30deg);
transform: scale(0.1) rotate(30deg);
-webkit-transform-origin: center bottom;
transform-origin: center bottom;
}
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
70% {
-webkit-transform: rotate(3deg);
transform: rotate(3deg);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
@keyframes jackInTheBox {
from {
opacity: 0;
-webkit-transform: scale(0.1) rotate(30deg);
transform: scale(0.1) rotate(30deg);
-webkit-transform-origin: center bottom;
transform-origin: center bottom;
}
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
70% {
-webkit-transform: rotate(3deg);
transform: rotate(3deg);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
.animate__jackInTheBox {
-webkit-animation-name: jackInTheBox;
animation-name: jackInTheBox;
}
[class*="shadow"] {
transition: all 0.2s ease;
}
_avatars.scss
/**
* = Avatars
*/
.avatar + .avatar-content {
display: inline-block;
margin-left: 0.75rem;
}
.avatar-sm {
width: $avatar-sm-y;
height: $avatar-sm-x;
img {
width: $avatar-sm-y;
height: $avatar-sm-x;
}
}
.avatar {
width: $avatar-y;
height: $avatar-x;
img {
width: $avatar-y;
height: $avatar-x;
}
}
.avatar-md {
width: $avatar-md-y;
height: $avatar-md-x;
img {
width: $avatar-md-y;
height: $avatar-md-x;
}
}
.avatar-lg {
width: $avatar-lg-y;
height: $avatar-lg-x;
img {
width: $avatar-lg-y;
height: $avatar-lg-x;
}
}
.avatar-xl {
width: $avatar-xl-y;
height: $avatar-xl-x;
@include media-breakpoint-down(lg) {
width: $avatar-lg-y;
height: $avatar-lg-x;
}
}
.avatar-offline,
.avatar-online {
&::before {
position: absolute;
border: 2px solid $white;
background-color: $success;
display: block;
top: 2px;
left: 39px;
content: "";
border-radius: 50%;
height: 10px;
width: 10px;
}
}
.avatar-offline {
&::before {
background-color: $danger;
}
}
// Overlapped avatars
.avatar-group {
.avatar {
position: relative;
z-index: 0;
img {
border: 2px solid $white;
}
&:hover {
z-index: 3;
}
}
.avatar + .avatar {
margin-left: -1rem;
}
}
/**
* = Badges
*/
.badge {
font-size: $badge-font-size;
font-weight: $badge-font-weight;
a {
color: $white;
}
&.super-badge {
vertical-align: super;
}
}
// Variations
.badge-pill {
padding-right: $badge-pill-padding-x;
padding-left: $badge-pill-padding-x;
}
// Multiple inline badges
.badge-inline {
margin-right: 0.625rem;
& + span {
top: 2px;
position: relative;
& > a {
text-decoration: underline;
}
}
}
// Sizes
.badge-sm {
padding: 0.2rem 0.6rem;
}
.badge-lg {
font-size: $font-size-lg;
padding: 0.35rem 0.85rem;
}
//button badges
.btn {
.badge-corner {
position: absolute;
top: -50%;
right: 0.5rem;
transform: translate(50%, 50%);
margin: 0;
border: 3px solid;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
}
//Tags
.wi-tags {
a {
display: inline-block;
padding: 0.125rem 0.875rem;
margin: 0.25rem;
line-height: 2;
font-size: $font-size-sm;
box-shadow: $box-shadow-sm;
background-color: $white;
}
}
.pixel-pro-badge {
position: relative;
font-size: $font-size-sm;
text-transform: uppercase;
font-weight: $font-weight-bold;
right: -11px;
padding: 4px 12px;
top: -30px;
background: $white;
@include border-radius($border-radius-sm);
@include box-shadow($box-shadow-sm);
@include media-breakpoint-down(sm) {
font-size: $font-size-base;
right: -13px;
padding: 5px 10px;
top: -23px;
}
}
.subscription-badge {
top: -19px;
right: -12px;
font-size: 0.75rem;
}
iframe {
border: 0;
}
figcaption,
figure,
main {
display: block;
margin: 0;
}
main {
overflow: hidden;
}
img {
max-width: 100%;
}
strong {
font-weight: $font-weight-bold;
}
button:focus {
outline: 0;
}
label {
font-weight: $font-weight-bold;
margin-bottom: 0.5rem;
}
/**
* = Breadcrumbs
*/
.breadcrumb-item {
font-size: $font-size-xs;
&,
a {
color: $breadcrumb-item-color;
font-weight: $breadcrumb-font-weight;
font-size: $font-size-xs;
@include media-breakpoint-up(sm) {
font-size: $font-size-sm;
}
}
&.active {
font-weight: $breadcrumb-active-font-weight;
}
}
.breadcrumb-transparent {
background: transparent;
padding: 0;
}
@each $color, $value in $theme-colors {
.breadcrumb-#{$color} {
background: $value;
.breadcrumb-item {
&.active {
color: $white;
}
}
&.breadcrumb-transparent {
background: transparent;
.breadcrumb-item {
&.active {
color: $value;
}
}
}
}
}
.breadcrumb-text-light {
.breadcrumb-item {
&,
a {
color: $breadcrumb-item-light-color;
}
&:before {
color: $breadcrumb-divider-light-color;
}
}
}
/*
* = Buttons
*/
.btn {
&.btn-circle {
border-radius: $circle-radius;
}
&.btn-md {
padding: 0.65rem 1.25rem;
}
&.btn-xs {
padding: 0.2rem 0.35rem;
font-size: 0.55rem;
box-shadow: none;
}
&.large-form-btn {
padding: 1.2rem 1rem;
}
&.dashed-outline {
border-style: dashed;
}
}
.btn-icon-only {
width: 2.575rem;
height: 2.575rem;
padding: 0;
@include display-flex();
@include justify-content(center);
@include align-items(center);
&.btn-xs {
width: 1.7rem;
height: 1.7rem;
}
&.btn-sm {
width: 2rem;
height: 2rem;
}
}
.btn-upgrade-pro {
position: fixed;
bottom: 15px;
right: 15px;
width: 190px;
@include media-breakpoint-up(md) {
left: 35px;
}
}
// Fix for darken background color
@each $color, $value in $theme-colors {
.btn-#{$color} {
&:hover {
background-color: darken($value, 5%);
border-color: darken($value, 5%);
}
}
}
// Brand (social) buttons
@each $color, $value in $brand-colors {
.btn-#{$color} {
@include button-variant($value, $value);
&.btn-link {
color: $value;
background: transparent;
box-shadow: none;
border: 0;
border-style: none;
&:hover,
&:focus,
&.active {
background-color: transparent !important;
box-shadow: none;
border: 0;
color: $value;
}
}
}
}
/**
* = Cards
*/
.card {
position: relative;
.card-header {
background: transparent;
}
&.hover-state {
&:hover {
background-color: $soft;
}
}
.profile-cover {
@include background-image(no-repeat, cover);
height: 200px;
}
}
.message-wrapper,
.task-wrapper {
.card {
border: 0;
}
}
.customer-testimonial {
.content-wrapper {
&:before {
content: "";
position: absolute;
top: 25px;
left: -1px;
margin-left: 0.75rem;
border: 8px solid $black;
border-color: transparent #e0e6ec #e0e6ec transparent;
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-transform-origin: 0 0;
transform-origin: 0 0;
@include transform(rotate(135deg));
@include box-shadow($box-shadow);
}
}
}
.card-footer {
background-color: transparent;
}
.card-stats {
padding-left: 1.9rem;
}
// Card with blockquotes
.card {
.card-blockquote {
position: relative;
padding: 2rem;
.svg-bg {
display: block;
position: absolute;
width: 100%;
height: 95px;
top: -94px;
left: 0;
}
}
}
// Animated cards
.page-preview {
display: block;
position: relative;
.show-on-hover {
position: absolute;
bottom: -0;
background: rgba($dark, 0.85);
padding: 10px 0;
width: 100%;
left: 0;
opacity: 0;
@include transition(0.2s);
}
&:hover {
z-index: 1;
.show-on-hover {
opacity: 1;
}
}
}
.theme-settings {
z-index: 99;
position: fixed;
right: 15px;
bottom: 0;
&,
.card-body {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
}
.theme-settings-close {
position: absolute;
top: 8px;
right: 8px;
font-size: 0.65rem;
}
.btn-close {
&.theme-settings-close {
background: transparent escape-svg($btn-close-bg-white) center / $btn-close-width auto no-repeat; // include transparent for button elements
border: 0; // for button elements
@include border-radius();
opacity: $btn-close-opacity;
}
}
.theme-settings-expand {
right: 15px;
bottom: 0;
height: 0;
@include transition(0.3s height);
&.show {
height: 40px;
}
&:hover {
background: $gray-600;
cursor: pointer;
}
}
/**
* = Bootstrap carousels
*/
.carousel-caption {
&,
h5 {
color: $white;
}
}
//Indicators
.carousel-indicators {
li {
height: 10px;
width: 10px;
border-radius: $circle-radius;
background: transparent;
border: 2px solid $white;
}
.active {
opacity: 1;
background: $white;
}
}
//Carousel Controls
.carousel-control-prev-icon,
.carousel-control-next-icon {
width: auto;
height: auto;
font-weight: 900;
}
.carousel-control-prev-icon {
background-image: none;
&::before {
content: "\f060";
font-family: $font-awesome-5;
font-size: $font-size-xxl;
}
}
.carousel-control-next-icon {
background-image: none;
&:before {
font-family: $font-awesome-5;
content: "\f061";
font-size: $font-size-xxl;
}
}
.ct-bar {
stroke-linecap: round;
stroke-width: 10px;
}
.ct-label {
fill: $body-color;
color: $body-color;
font-size: 0.75rem;
margin-top: 6px;
font-weight: $font-weight-bold;
}
.ct-slice-pie {
stroke: $white;
stroke-width: 3px;
}
.ct-chart-donut .ct-series {
stroke: $white;
stroke-width: 3px;
}
.ct-chart-pie .ct-label,
.ct-chart-donut .ct-label {
font-size: 0.75rem;
font-weight: $font-weight-bold;
}
.small-chart {
margin-left: -1rem;
}
//Label color Fix for pie chart
.ct-chart-pie .ct-label,
.ct-chart-donut .ct-label {
color: #ffffff;
fill: #ffffff;
font-size: $font-size-base;
font-weight: $font-weight-bold;
}
.ct-series-g {
.ct-grid {
stroke: #f8bd7a;
stroke-width: 2px;
stroke-dasharray: 2px;
}
.ct-label.ct-horizontal.ct-end {
margin-left: -9px;
margin-top: 10px;
color: $primary;
}
}
/**
* = Close
*/
.close {
@if $enable-transitions {
transition: $transition-base;
}
& > span:not(.sr-only) {
display: block;
height: 1.25rem;
width: 1.25rem;
background-color: $close-bg;
color: $close-color;
line-height: 17px;
border-radius: 50%;
font-size: 1.25rem;
@if $enable-transitions {
transition: $transition-base;
}
}
&:hover,
&:focus {
background-color: $close-hover-bg;
color: $close-hover-color;
outline: none;
span:not(.sr-only) {
background-color: $close-hover-bg;
}
}
}
/**
* = Custom forms
*/
.custom-control-label {
// Background-color and (when enabled) gradient
&:before {
box-shadow: $custom-control-box-shadow;
@if $enable-transitions {
transition: $input-transition;
}
}
span {
position: relative;
top: 2px;
}
}
.custom-control-label {
margin-bottom: 0;
}
.custom-control-input {
&:active ~ .custom-control-label::before {
border-color: $custom-control-indicator-active-border-color;
}
}
// Custom File Input
.custom-file-label {
background-color: #f3f3f5;
&::after {
background-color: #f3f3f5;
}
}
//Select
.custom-select {
font-size: $input-btn-font-size;
box-shadow: none;
&.custom-select-shadow {
box-shadow: $input-box-shadow;
transition: box-shadow 0.15s ease;
&:focus {
box-shadow: $shadow-input-focus;
}
}
&:hover {
cursor: pointer;
}
}
// Inbox star
.rating-star {
&.star-lg {
label {
margin-bottom: 0.5rem;
&::before {
font-size: $font-size-xl;
}
}
}
label {
position: relative;
margin-bottom: 0;
cursor: pointer;
color: $light;
&:before {
content: "\f005";
font-family: "Font Awesome 5 Free";
font-weight: 900;
transition: all 0.2s ease;
font-size: 1.0625rem;
}
}
input {
position: absolute;
z-index: -1;
opacity: 0;
}
> input:checked ~ label {
color: $warning;
}
> label {
&:hover {
color: $warning;
}
&:hover ~ label {
color: $warning;
}
}
}
/**
* = Datepickers
*/
.datepicker {
.datepicker-cell.selected,
.datepicker-cell.selected:hover {
background: $primary;
}
}
.dropdown-menu {
.dropdown-header,
.dropdown-item {
padding: 0.5rem 1rem;
font-size: $dropdown-font-size;
.dropdown-icon {
height: 1.25rem;
width: 1.25rem;
}
}
.dropdown-header {
color: $dropdown-header-color;
font-weight: $dropdown-header-font-weight;
}
.dropdown-item {
transition: $transition-base;
font-weight: $dropdown-item-font-weight;
}
.show & {
animation: show-dropdown 0.2s ease forwards;
}
&.dropdown-menu-xs {
min-width: 120px;
max-width: 120px;
@include box-shadow($box-shadow-sm);
}
}
// Dropown sizes
.dropdown-menu-sm {
min-width: 100px;
border: $border-radius-lg;
}
.dropdown-menu-md {
min-width: 180px;
border: $border-radius-lg;
}
.dropdown-menu-lg {
min-width: 350px;
border-radius: $border-radius-lg;
@include media-breakpoint-down(sm) {
min-width: 300px;
}
}
// this helps when not only the button should toggle a dropdown
[data-toggle]:hover {
cursor: pointer;
}
// remove the caret from Bootstrap by default
.dropdown-toggle {
&:after,
.dropend &:after,
.dropstart &:before,
.dropup &:after {
display: none;
}
}
/**
* = Icon boxes
*/
.icon {
height: $icon-size;
&.icon-xxs {
height: $icon-size-xxs;
}
&.icon-xs {
height: $icon-size-xs;
}
&.icon-sm {
height: $icon-size-sm;
}
&.icon-lg {
height: $icon-size-lg;
}
&.icon-xl {
height: $icon-size-xl;
}
&.icon-xxl {
height: $icon-size-xxl;
}
&.active-dot {
svg {
height: 0.7rem;
}
}
}
// Icons included in shapes
.icon-shape {
width: $icon-shape;
height: $icon-shape;
display: inline-flex;
align-items: center;
justify-content: center;
svg {
height: $icon-size;
}
&.icon-xxs {
width: $icon-shape-xxs;
height: $icon-shape-xxs;
svg {
height: $icon-size-xxs;
}
}
&.icon-xs {
width: $icon-shape-xs;
height: $icon-shape-xs;
svg {
height: $icon-size-xs;
}
}
&.icon-sm {
width: $icon-shape-sm;
height: $icon-shape-sm;
svg {
height: $icon-size-sm;
}
}
&.icon-lg {
width: $icon-shape-lg;
height: $icon-shape-lg;
svg {
height: $icon-size-lg;
}
}
&.icon-xl {
width: $icon-shape-xl;
height: $icon-shape-xl;
svg {
height: $icon-size-xl;
}
}
&.icon-xxl {
width: $icon-shape-xxl;
height: $icon-shape-xxl;
svg {
height: $icon-size-xxl;
}
}
}
// Inbox star Icons
.rating-star {
&:hover {
cursor: pointer;
color: $warning;
}
}
.toggle-icon {
height: 1.875rem;
}
//Icons inside table fixed width
.w--20 {
width: 20px;
}
//Calendar Icon
.calendar {
width: 3.125rem;
line-height: 1;
flex-direction: column;
text-align: center;
border-radius: $border-radius;
.calendar-month {
background-color: $danger;
color: $white;
border-radius: $border-radius $border-radius 0 0;
padding: 0.275rem;
font-weight: $font-weight-bold;
}
.calendar-day {
font-size: $font-size-xl;
padding: 0.25rem;
background-color: $gray-100;
border-top: 0;
border-radius: 0 0 $border-radius $border-radius;
color: $dark;
font-weight: $font-weight-bold;
}
}
//Legend dot
.dot {
width: 12px;
height: 12px;
}
//Bell notification dot
.bell-dot {
display: inline-block;
position: absolute;
top: -11px;
right: 6px;
height: 10px;
width: 10px;
border: 2px solid $gray-100;
}
.notification-bell.unread {
&::before {
position: absolute;
content: "";
background-color: $danger;
right: 12px;
top: 7px;
height: 0.75rem;
width: 0.75rem;
border-radius: 50%;
border: 2px solid $gray-100;
}
}
//Index Big Icon
.bootstrap-big-icon {
position: absolute;
opacity: 0.05;
transform: rotate(17deg);
@include media-breakpoint-up(lg) {
right: -20%;
bottom: 6%;
}
@include media-breakpoint-up(xl) {
right: -10%;
bottom: 6%;
}
}
.github-big-icon {
position: absolute;
right: 80px;
svg {
color: $gray-400;
height: 800px;
opacity: 0.2;
}
}
//Colors for icons, shapes and svg's
@each $color, $value in $theme-colors {
.icon-shape-#{$color} {
@include icon-shape-variant($value);
}
}
/**
* = Images
*/
.image-xl {
height: 20rem;
img {
height: 20rem;
}
}
.image-lg {
height: 12rem;
img {
height: 12rem;
}
}
.image-md {
height: 5.5rem;
img {
height: 5.5rem;
}
}
.image-sm {
height: 3rem;
img {
height: 3rem;
}
}
.image-xs {
height: 1.5rem;
img {
height: 1.5rem;
}
}
.image-small {
height: 1rem;
img {
height: 1rem;
}
}
.full-image {
height: 100%;
}
.language-flag {
width: auto;
height: 1rem;
margin-right: 0.4rem;
position: relative;
top: -2px;
}
.home-pattern {
fill: $gray-100;
}
.form-bg-image {
background-repeat: no-repeat !important;
background-position: top center !important;
}
/**
* = List groups
*/
// Space list items
.list-group-space {
.list-group-item {
margin-bottom: 1.5rem;
@include border-radius($list-group-border-radius);
}
}
// List group components
.list-group-item {
border: 0;
&.active {
z-index: 2; // Place active items above their siblings for proper border styling
color: $list-group-active-color;
background-color: $list-group-active-bg;
border-color: $list-group-active-border-color;
}
i {
width: 1rem;
}
}
.list-group-img {
width: 3rem;
height: 3rem;
border-radius: 50%;
vertical-align: top;
margin: -0.1rem 1.2rem 0 -0.2rem;
}
.list-group-content {
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
min-width: 0;
> p {
color: $gray-500;
line-height: 1.5;
margin: 0.2rem 0 0;
}
}
.list-group-heading {
font-size: $font-size-base;
color: $gray-800;
> small {
float: right;
color: $gray-500;
font-weight: 500;
}
}
.list-group {
&.simple-list {
.list-group-item {
background: transparent;
border: none;
padding: 0.375rem 0.125rem;
i {
vertical-align: middle;
width: 35px;
display: inline-block;
}
}
}
}
//News list for widgets
.news-list {
.row {
> [class*="col"] {
padding: 0 calc($spacer/4);
}
}
> li {
&:not(:last-child) {
margin-bottom: 0.75rem;
}
}
img {
min-height: 100%;
object-fit: cover;
}
}
/**
* = Modals
*/
.modal {
&.static-example {
position: relative;
display: block;
}
}
.modal-content {
border: 0;
@if $enable-rounded {
border-radius: $modal-content-border-radius;
} @else {
border-radius: 0;
}
}
.modal-fluid {
.modal-dialog {
margin-top: 0;
margin-bottom: 0;
}
.modal-content {
border-radius: 0;
}
}
@each $color, $value in $theme-colors {
.modal-#{$color} {
@include modal-variant($value);
}
}
/**
* = Navs
*/
.nav-link {
color: $nav-link-color;
&:hover,
&.active {
color: $nav-link-hover-color;
img {
opacity: inherit;
transition: $transition-base;
}
}
span {
position: relative;
}
}
//Tabs
.nav-tabs {
.nav-item {
margin-bottom: 0;
}
.nav-link {
border: 0;
padding: 1rem 1rem;
background-color: $white;
&.active {
color: $white;
background-color: $primary;
}
}
&.nav-dark {
.nav-link {
&.active {
color: $white;
background-color: #12358a;
}
}
}
&.nav-light {
.nav-link {
&.active {
color: $black;
background-color: $light;
}
&:hover {
color: $black;
}
}
}
}
// Pills
.nav-pills {
.nav-item:not(:last-child) {
padding-right: $nav-pills-space-x;
}
.nav-link {
padding: $nav-pills-padding-y $nav-pills-padding-x;
transition: $transition-base;
box-shadow: $nav-link-shadow;
border: $nav-pills-border-width solid $nav-pills-border-color;
&.avatar-link {
border: 0;
}
&:hover {
color: $nav-pills-link-hover-color;
}
}
.nav-link.active,
.show > .nav-link {
color: $nav-pills-link-active-color;
background-color: $nav-pills-link-active-bg;
border-color: $nav-pills-link-active-color;
}
&.rounded {
.nav-link {
border-radius: 30px;
}
&.vertical-tab {
.nav-link {
margin-bottom: 0.625rem;
min-width: 100px;
}
.nav-item:not(:last-child) {
padding-right: 0;
}
}
}
&.bordered-pill-md {
.nav-link {
border: $border-width-md solid $gray-200;
font-weight: $font-weight-bold;
}
}
&.vertical-tab {
.nav-link {
margin-bottom: 0.625rem;
}
.nav-item:not(:last-child) {
padding-right: 0;
}
}
@include media-breakpoint-down(xs) {
.nav-item {
margin-bottom: $spacer;
}
}
}
@include media-breakpoint-down(sm) {
.nav-pills:not(.nav-pills-circle) {
.nav-item {
padding-right: 0;
}
}
}
// Navs circle
.nav-pill-circle {
.nav-link {
@include display-flex();
text-align: center;
height: 80px;
width: 80px;
padding: 0;
box-shadow: $nav-link-shadow;
border-radius: $nav-pills-border-circle;
align-items: center;
justify-content: center;
&.avatar-link {
box-shadow: none;
}
}
&.vertical-tab {
.nav-link-icon {
i,
svg {
font-size: 1.5rem;
}
}
.nav-item:not(:last-child) {
padding-right: 0;
}
}
.nav-link-icon {
i,
svg {
font-size: 1.25rem;
margin: 0;
display: block;
}
}
}
// Navs square
.nav-pill-square {
.nav-link {
text-align: center;
min-width: 80px;
box-shadow: $nav-link-shadow;
@include display-flex();
align-items: center;
justify-content: center;
}
&.vertical-tab {
.nav-link {
margin-bottom: 0.625rem;
min-width: 100px;
}
.nav-item:not(:last-child) {
padding-right: 0;
}
}
.nav-link-icon {
i,
svg {
font-size: 1.25rem;
margin: 0;
display: block;
line-height: 50px;
}
}
}
// Nav wrapper
.nav-wrapper {
padding: 1rem 0;
@include border-top-radius($card-border-radius);
+ .card {
@include border-top-radius(0);
@include border-bottom-radius($card-border-radius);
}
}
// Tabbable tabs
//
// Hide tabbable panes to start, show them when `.active`
.tab-content {
> .tab-pane {
display: none;
pre {
padding: 0;
margin: 0;
}
}
> .active {
display: block;
}
}
.nav-pills .nav-item {
@include media-breakpoint-up(lg) {
margin-bottom: 0;
}
}
_pagination.scss
/**
* = Paginations
*/
.circle-pagination {
.page-link,
span {
@include display-flex();
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
padding: 0;
@include border-radius($circle-radius);
}
}
/**
* = Popovers
*/
.popover {
border: 0;
}
.popover-header {
font-weight: $font-weight-bold;
}
// Alternative colors
@each $color, $value in $theme-colors {
.popover-#{$color} {
@include popover-variant($value);
}
}
/**
* = Progress bars
*/
.progress-wrapper {
position: relative;
}
.progress-bar {
box-shadow: none;
border-radius: 0;
height: auto;
}
.progress {
height: 6px;
margin-bottom: $spacer;
overflow: hidden;
background-color: $progress-bg;
font-size: $font-size-xs;
font-weight: $font-weight-bold;
@include box-shadow(inset 0 1px 2px rgba(0, 0, 0, 0.1));
}
.progress-xl {
height: $progress-xl-size;
}
.progress-lg {
height: $progress-lg-size;
}
.progress-sm {
height: $progress-sm-size;
}
.progress-info {
@include display-flex();
@include align-items(center);
@include justify-content(space-between);
margin-bottom: 0.5rem;
.progress-label {
span {
display: inline-block;
color: $primary;
font-size: $font-size-sm;
font-weight: $font-weight-bold;
}
}
.progress-percentage {
text-align: right;
span {
display: inline-block;
color: $gray-500;
font-size: $font-size-xs;
font-weight: $font-weight-bold;
}
}
}
.info-xl {
.progress-label,
.progress-percentage {
span {
font-size: $font-size-sm;
}
}
.progress-percentage {
text-align: right;
}
}
.progress-tooltip {
background: $primary;
color: $white;
font-weight: $font-weight-bold;
padding: 0.25rem 0.375rem;
line-height: 1;
font-size: $font-size-xs;
position: relative;
border-radius: $border-radius-sm;
&:after {
content: " ";
position: absolute;
top: 100%;
left: 10px;
border: solid transparent;
height: 0;
width: 0;
pointer-events: none;
border-top-color: $gray;
border-width: 6px;
}
}
@-webkit-keyframes animate-positive {
0% {
width: 0%;
}
}
@keyframes animate-positive {
0% {
width: 0%;
}
}
//Tooltip arrow color
@each $color, $value in $theme-colors {
.progress-info {
.bg-#{$color} {
&::after {
border-top-color: $value;
}
}
}
}
[data-simplebar] {
position: fixed;
flex-direction: column;
flex-wrap: wrap;
justify-content: flex-start;
align-content: flex-start;
align-items: flex-start;
}
.simplebar-wrapper {
overflow: hidden;
width: inherit;
height: inherit;
max-width: inherit;
max-height: inherit;
}
.simplebar-mask {
direction: inherit;
position: absolute;
overflow: hidden;
padding: 0;
margin: 0;
left: 0;
top: 0;
bottom: 0;
right: 0;
width: auto !important;
height: auto !important;
z-index: 0;
}
.simplebar-offset {
direction: inherit !important;
box-sizing: inherit !important;
resize: none !important;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
padding: 0;
margin: 0;
-webkit-overflow-scrolling: touch;
}
.simplebar-content-wrapper {
direction: inherit;
box-sizing: border-box !important;
position: relative;
display: block;
height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
width: auto;
max-width: 100%; /* Not required for horizontal scroll to trigger */
max-height: 100%; /* Needed for vertical scroll to trigger */
scrollbar-width: none;
-ms-overflow-style: none;
}
.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
width: 0;
height: 0;
}
.simplebar-content:before,
.simplebar-content:after {
content: " ";
display: table;
}
.simplebar-placeholder {
max-height: 100%;
max-width: 100%;
width: 100%;
pointer-events: none;
}
.simplebar-height-auto-observer-wrapper {
box-sizing: inherit !important;
height: 100%;
width: 100%;
max-width: 1px;
position: relative;
float: left;
max-height: 1px;
overflow: hidden;
z-index: -1;
padding: 0;
margin: 0;
pointer-events: none;
flex-grow: inherit;
flex-shrink: 0;
flex-basis: 0;
}
.simplebar-height-auto-observer {
box-sizing: inherit;
display: block;
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 1000%;
width: 1000%;
min-height: 1px;
min-width: 1px;
overflow: hidden;
pointer-events: none;
z-index: -1;
}
.simplebar-track {
z-index: 1;
position: absolute;
right: 0;
bottom: 0;
pointer-events: none;
overflow: hidden;
}
[data-simplebar].simplebar-dragging .simplebar-content {
pointer-events: none;
user-select: none;
-webkit-user-select: none;
}
[data-simplebar].simplebar-dragging .simplebar-track {
pointer-events: all;
}
.simplebar-scrollbar {
position: absolute;
left: 0;
right: 0;
min-height: 10px;
}
.simplebar-scrollbar:before {
position: absolute;
content: "";
background: black;
border-radius: 7px;
left: 2px;
right: 2px;
opacity: 0;
transition: opacity 0.2s 0.5s linear;
}
.simplebar-scrolling .simplebar-scrollbar:before,
.simplebar-hover .simplebar-scrollbar:before,
.simplebar-mouse-entered .simplebar-scrollbar:before {
opacity: 0.5;
transition-delay: 0s;
transition-duration: 0s;
}
.simplebar-scrollbar.simplebar-visible:before {
/* When hovered, remove all transitions from drag handle */
opacity: 0.5;
transition-delay: 0s;
transition-duration: 0s;
}
.simplebar-track.simplebar-vertical {
top: 0;
width: 11px;
}
.simplebar-scrollbar:before {
top: 2px;
bottom: 2px;
left: 2px;
right: 2px;
}
.simplebar-track.simplebar-horizontal {
left: 0;
height: 11px;
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
right: auto;
left: 0;
top: 0;
bottom: 0;
min-height: 0;
min-width: 10px;
width: auto;
}
/* Rtl support */
[data-simplebar-direction="rtl"] .simplebar-track.simplebar-vertical {
right: auto;
left: 0;
}
.simplebar-dummy-scrollbar-size {
direction: rtl;
position: fixed;
opacity: 0;
visibility: hidden;
height: 500px;
width: 500px;
overflow-y: hidden;
overflow-x: scroll;
-ms-overflow-style: scrollbar !important;
}
.simplebar-dummy-scrollbar-size > div {
width: 200%;
height: 200%;
margin: 10px 0;
}
.simplebar-hide-scrollbar {
position: fixed;
left: 0;
visibility: hidden;
overflow-y: scroll;
scrollbar-width: none;
-ms-overflow-style: none;
}
.simplebar-scrollbar::before {
background-color: darken($dark, 10%);
}
/**
* = Shapes
*/
.avatar-sm {
width: $avatar-sm-y;
height: $avatar-sm-x;
}
.avatar-md {
width: $avatar-md-y;
height: $avatar-md-x;
}
.avatar-lg {
width: $avatar-lg-y;
height: $avatar-lg-x;
}
/**steps
* = Accordions
*/
.step {
position: relative;
margin-bottom: 4rem;
border-radius: 6px;
.step-shape {
display: inline-flex;
width: $step-shape-size;
height: $step-shape-size;
text-align: center;
@include align-items(center);
@include justify-content(center);
i,
svg {
font-size: $icon-size;
}
.step-number {
position: absolute;
font-weight: $font-weight-bold;
top: -10px;
width: 32px;
height: 32px;
border-width: $step-border-width;
border-style: solid;
line-height: 1.7;
}
&.bordered {
border-width: $step-border-width;
border-style: solid;
.step-number {
background-color: $white;
top: -12px;
}
}
&.rounded-circle {
.step-number {
margin-right: 1.275rem;
}
}
}
.icon-lg {
font-size: $step-icon-size;
}
.back-layer {
@include display-flex();
position: absolute;
font-size: $step-number-size;
z-index: 0;
top: 0;
}
}
// General styles
.table {
thead th {
padding-top: $table-head-spacer-y;
padding-bottom: $table-head-spacer-y;
font-size: $table-head-font-size;
text-transform: $table-head-text-transform;
font-weight: $font-weight-bolder;
border-top: 0;
}
th {
font-weight: $font-weight-bold;
padding: 1rem;
}
td {
.progress {
height: 3px;
width: 120px;
margin: 0;
}
}
td,
th {
font-size: $table-body-font-size;
}
// User Table
&.user-table {
thead th {
border-top: 0;
}
}
// Vetical align table content
&.align-items-center {
td,
th {
vertical-align: middle;
}
}
// Styles for dark table
.thead-dark {
th {
background-color: $gray-800;
color: $white;
a {
color: $dark;
}
}
}
// Styles for light table
.thead-light {
th {
background-color: $gray-100;
color: $dark;
a {
color: $dark;
}
}
}
}
table.table:not(.text-wrap) {
thead:not(.text-wrap) {
tr:not(.text-wrap) th {
white-space: nowrap;
}
}
}
// Add transition for hover state
.table-hover {
tr {
@include transition($transition-base);
}
}
// Flush tables
.table-flush {
td,
th {
border-left: 0;
border-right: 0;
}
tbody {
tr {
&:first-child {
td,
th {
border-top: 0;
}
}
&:last-child {
td,
th {
border-bottom: 0;
}
}
}
}
}
// Tables inside cards
.card {
.table {
margin-bottom: 0;
td,
th {
padding-left: $card-spacer-x;
padding-right: $card-spacer-x;
}
}
}
.table {
[data-sort] {
cursor: pointer;
}
.custom-toggle {
display: block;
}
.thead-dark {
[data-sort] {
&::after {
content: str-replace(
url("data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='#{$dark}'/></svg>"),
"#",
"%23"
);
margin-left: 0.25rem;
}
}
}
.thead-light {
[data-sort] {
&::after {
content: str-replace(
url("data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='#{$dark}'/></svg>"),
"#",
"%23"
);
margin-left: 0.25rem;
}
}
}
}
.dataTables_wrapper {
.dataTables_info {
padding-left: 1.5rem;
}
.dataTables_paginate {
padding-right: 1.5rem;
}
.dataTables_length {
label {
padding-left: 1.5rem;
}
}
.dataTables_filter {
padding-right: 1.5rem;
}
}
.dataTable-top,
.dataTable-bottom {
display: flex;
width: 100%;
justify-content: space-between;
@include media-breakpoint-down(md) {
flex-direction: column;
.dataTable-info {
margin-bottom: 1rem;
}
}
}
.dataTable-top {
padding: 0 0 1rem 0;
}
.dataTable-bottom {
padding: 1.5rem 0 0 0;
}
.dataTable-pagination {
display: flex;
@include list-unstyled();
a {
padding: $pagination-padding-y $pagination-padding-x;
@include font-size(null);
}
li {
@if $pagination-margin-left == (-$pagination-border-width) {
&:first-child {
a {
@include border-start-radius($pagination-border-radius);
}
}
&:last-child {
a {
@include border-end-radius($pagination-border-radius);
}
}
} @else {
//Add border-radius to all pageLinks in case they have left margin
a {
@include border-radius($pagination-border-radius);
}
}
}
> li {
&:not(:first-child) a {
margin-left: $pagination-margin-left;
}
&.active a {
z-index: 3;
color: $pagination-active-color;
@include gradient-bg($pagination-active-bg);
border-color: $pagination-active-border-color;
}
&.disabled a {
color: $pagination-disabled-color;
pointer-events: none;
background-color: $pagination-disabled-bg;
border-color: $pagination-disabled-border-color;
}
a {
position: relative;
display: block;
color: $pagination-color;
text-decoration: if($link-decoration == none, null, none);
background-color: $pagination-bg;
border: $pagination-border-width solid $pagination-border-color;
&:hover {
z-index: 2;
color: $pagination-hover-color;
text-decoration: if($link-hover-decoration == underline, none, null);
background-color: $pagination-hover-bg;
border-color: $pagination-hover-border-color;
}
&:focus {
z-index: 3;
outline: $pagination-focus-outline;
box-shadow: $pagination-focus-box-shadow;
}
}
}
}
.dataTable-selector {
display: inline-block;
width: auto;
height: $form-select-height;
padding: $form-select-padding-y ($form-select-padding-x + $form-select-indicator-padding)
$form-select-padding-y $form-select-padding-x;
font-family: $form-select-font-family;
@include font-size($form-select-font-size);
font-weight: $form-select-font-weight;
line-height: $form-select-line-height;
color: $form-select-color;
vertical-align: middle;
background-color: $form-select-bg;
background-image: escape-svg($form-select-indicator);
background-repeat: no-repeat;
background-position: $form-select-bg-position;
background-size: $form-select-bg-size;
border: $form-select-border-width solid $form-select-border-color;
@include border-radius($form-select-border-radius, 0);
@include box-shadow($form-select-box-shadow);
appearance: none;
&:focus {
border-color: $form-select-focus-border-color;
outline: 0;
@if $enable-shadows {
@include box-shadow($form-select-box-shadow, $form-select-focus-box-shadow);
} @else {
// Avoid using mixin so we can pass custom focus shadow properly
box-shadow: $form-select-focus-box-shadow;
}
&::-ms-value {
// For visual consistency with other platforms/browsers,
// suppress the default white text on blue background highlight given to
// the selected option text when the (still closed) <select> receives focus
// in Edge.
// See https://github.com/twbs/bootstrap/issues/19398.
color: $input-color;
background-color: $input-bg;
}
}
&[multiple],
&[size]:not([size="1"]) {
height: auto;
padding-right: $form-select-padding-x;
background-image: none;
}
&:disabled {
color: $form-select-disabled-color;
background-color: $form-select-disabled-bg;
border-color: $form-select-disabled-border-color;
}
// Remove outline from select box in FF
&:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 $form-select-color;
}
}
.dataTable-input {
display: block;
width: 100%;
min-height: $input-height;
padding: $input-padding-y $input-padding-x;
font-family: $input-font-family;
@include font-size($input-font-size);
font-weight: $input-font-weight;
line-height: $input-line-height;
color: $input-color;
background-color: $input-bg;
background-clip: padding-box;
border: $input-border-width solid $input-border-color;
appearance: none; // Fix appearance for date inputs in Safari
// Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
@include border-radius($input-border-radius, 0);
@include box-shadow($input-box-shadow);
@include transition($input-transition);
// Customize the `:focus` state to imitate native WebKit styles.
&:focus {
color: $input-focus-color;
background-color: $input-focus-bg;
border-color: $input-focus-border-color;
outline: 0;
@if $enable-shadows {
@include box-shadow($input-box-shadow, $input-focus-box-shadow);
} @else {
// Avoid using mixin so we can pass custom focus shadow properly
box-shadow: $input-focus-box-shadow;
}
}
// Placeholder
&::placeholder {
color: $input-placeholder-color;
// Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.
opacity: 1;
}
// Disabled and read-only inputs
//
// HTML5 says that controls under a fieldset > legend:first-child won't be
// disabled if the fieldset is disabled. Due to implementation difficulty, we
// don't honor that edge case; we style them as disabled anyway.
&:disabled,
&[readonly] {
background-color: $input-disabled-bg;
border-color: $input-disabled-border-color;
// iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.
opacity: 1;
}
}
/**
* = Timelines
*/
.list-group-timeline {
.list-group-item {
position: relative;
.col-auto {
z-index: 999;
}
&:not(:last-child) {
&::before {
content: "";
position: absolute;
top: 1rem;
left: 2.5rem;
height: 100%;
border-left: 1px solid $light;
}
}
}
}
// Wrapper for the tooltip content
.tooltip-inner {
@include box-shadow($box-shadow);
}
.ct-area,
.ct-line {
pointer-events: none;
}
/**
* = Typography
*/
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
font-family: $font-family-sans-serif;
font-weight: $headings-font-weight;
}
p,
ol li,
ul li,
.p {
font-family: $font-family-base;
font-size: $paragraph-font-size;
font-weight: $font-weight-normal;
line-height: $paragraph-line-height;
}
a,
.text-action {
color: $link-color;
transition: $transition-base;
&:hover {
color: $link-hover-color;
cursor: pointer;
}
}
.lead {
+ .btn-wrapper {
margin-top: 3rem;
}
@include media-breakpoint-down(md) {
font-size: $font-size-base;
}
}
.line-through {
-webkit-text-decoration: line-through;
text-decoration: line-through;
}
.text-italic {
font-style: italic !important;
}
.description {
font-size: $font-size-sm;
}
// underline on hover
.hover\:underline {
&:hover {
text-decoration: underline;
}
}
// Headings
.heading {
font-size: $h2-font-size;
font-weight: $font-weight-bold;
}
@include media-breakpoint-down(md) {
.display-2 {
font-size: $display4-size;
}
}
@include media-breakpoint-down(lg) {
.display-3 {
font-size: $display4-size;
}
}
@include media-breakpoint-down(sm) {
.display-4 {
font-size: $h4-font-size;
}
}
// Blockquotes
.blockquote {
font-style: italic;
&.blockquote-large {
@include media-breakpoint-down(md) {
font-size: $font-size-lg;
}
}
.blockquote-footer {
font-size: $font-size-sm;
font-weight: $font-weight-bolder;
@include media-breakpoint-down(md) {
font-size: $font-size-lg;
}
}
}
// Font Sizes
.font-small {
@include font-size($font-size-sm);
font-weight: $font-weight-light;
}
.font-base {
@include font-size($font-size-base);
font-weight: $font-weight-light;
}
.font-medium {
@include font-size($font-size-lg);
font-weight: $font-weight-light;
}
//PrismJs text
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
font-family: $font-family-base;
font-weight: $font-weight-bold;
}
// Set color of theme buttons
@each $color, $value in $theme-colors {
.text-#{$color} {
&,
&:hover {
color: $value !important;
}
a:not(.btn),
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.display-1,
.display-2,
.display-3,
.display-4 {
color: $value;
}
.text-muted {
color: rgba($value, 0.7) !important;
}
}
}
article {
img {
margin: 40px 0;
}
p,
ul,
ol,
blockquote {
margin-bottom: 20px;
}
p,
ul li,
ol li {
font-size: 1.2rem;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
margin-bottom: 30px;
}
}
.folder-structure li {
font-size: 1.2rem;
}
.truncate-text {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
/**
* = Animations
*/
@for $size from 1 to 10 {
.animate-up-#{$size},
.animate-right-#{$size},
.animate-down-#{$size},
.animate-left-#{$size},
.scale-up-#{$size},
.scale-down-#{$size} {
transition: $transition-base;
}
.scale-up-#{$size} {
&:hover {
transform: scale($size / 1.8);
}
}
.scale-up-hover-#{$size} {
&:hover {
& .scale {
transform: scale($size / 1.8);
}
}
}
.scale-down-#{$size} {
&:hover {
transform: scale($size / 2.5);
}
}
.animate-up-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(0, -#{$size}px);
}
}
.animate-right-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(#{$size}px, 0);
}
}
.animate-down-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(0, #{$size}px);
}
}
.animate-left-#{$size} {
&:hover,
.animate-hover:hover & {
@include translate(-#{$size}px, 0);
}
}
}
// Keyframes
@keyframes show-navbar-collapse {
0% {
opacity: 0;
transform: scale(0.95);
transform-origin: 100% 0;
}
100% {
opacity: 1;
transform: scale(1);
}
}
@keyframes hide-navbar-collapse {
from {
opacity: 1;
transform: scale(1);
transform-origin: 100% 0;
}
to {
opacity: 0;
transform: scale(0.95);
}
}
@keyframes show-navbar-dropdown {
0% {
opacity: 0;
transform: translate(0, 10px) perspective(200px) rotateX(-2deg);
transition:
visibility 0.45s,
opacity 0.45s,
transform 0.45s;
}
100% {
transform: translate(0, 0);
opacity: 1;
}
}
@keyframes hide-navbar-dropdown {
from {
opacity: 1;
}
to {
opacity: 0;
transform: translate(0, 10px);
}
}
@keyframes show-dropdown {
0% {
opacity: 0;
transform-origin: perspective(200px) rotateX(-2deg);
transition:
visibility 0.45s,
opacity 0.5s;
}
100% {
opacity: 1;
}
}
@keyframes hide-dropdown {
from {
opacity: 1;
}
to {
opacity: 0;
transform: translate(0, 10px);
}
}
.bell-shake {
&.shaking {
animation: bellshake 0.5s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
backface-visibility: hidden;
transform-origin: top right;
}
}
:root {
--animate-duration: 1s;
--animate-delay: 1s;
--animate-repeat: 1;
}
.animate__animated {
-webkit-animation-duration: 1s;
animation-duration: 1s;
-webkit-animation-duration: var(--animate-duration);
animation-duration: var(--animate-duration);
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.animate__jackInTheBox {
-webkit-animation-name: jackInTheBox;
animation-name: jackInTheBox;
}
@keyframes bellshake {
0% {
transform: rotate(0);
}
15% {
transform: rotate(5deg);
}
30% {
transform: rotate(-5deg);
}
45% {
transform: rotate(4deg);
}
60% {
transform: rotate(-4deg);
}
75% {
transform: rotate(2deg);
}
85% {
transform: rotate(-2deg);
}
92% {
transform: rotate(1deg);
}
100% {
transform: rotate(0);
}
}
@-webkit-keyframes jackInTheBox {
from {
opacity: 0;
-webkit-transform: scale(0.1) rotate(30deg);
transform: scale(0.1) rotate(30deg);
-webkit-transform-origin: center bottom;
transform-origin: center bottom;
}
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
70% {
-webkit-transform: rotate(3deg);
transform: rotate(3deg);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
@keyframes jackInTheBox {
from {
opacity: 0;
-webkit-transform: scale(0.1) rotate(30deg);
transform: scale(0.1) rotate(30deg);
-webkit-transform-origin: center bottom;
transform-origin: center bottom;
}
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
70% {
-webkit-transform: rotate(3deg);
transform: rotate(3deg);
}
to {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
}
.animate__jackInTheBox {
-webkit-animation-name: jackInTheBox;
animation-name: jackInTheBox;
}
/**
* = Backgrounds
*/
@each $color, $value in $theme-colors {
@include bg-gradient-variant(".bg-gradient-#{$color}", $value);
}
// Backgrounds Overlay
@each $color, $value in $theme-colors {
.overlay-#{$color} {
&:before {
position: absolute;
content: "";
background: $value;
width: 100%;
height: 100%;
top: 0;
left: 0;
opacity: 0.8;
z-index: 0;
}
}
}
.section-image {
@include background-image(no-repeat, cover);
}
.bg-secondary-alt {
background-color: lighten($secondary, 15%);
}
.form-bg-image {
background-repeat: no-repeat !important;
background-position: top center !important;
}
/**
* = Helper classes
*/
// Overflows
.overflow-visible {
overflow: visible !important;
}
// Opacity classes
@for $nr from 0 to 10 {
.opacity-#{$nr} {
opacity: #{calc($nr/10)} !important;
}
}
// Fill opacity classes
@for $nr from 0 to 10 {
.fill-opacity-#{$nr} {
fill-opacity: #{calc($nr/10)} !important;
}
}
// Z indexes
@for $nr from 0 to 10 {
.z-#{$nr} {
position: relative;
z-index: #{$nr} !important;
}
}
.w-auto {
width: auto !important;
}
// Border widths
.bw-md {
border-width: $border-width-md !important;
}
.bw-lg {
border-width: $border-width-lg !important;
}
.bw-xl {
border-width: $border-width-xl !important;
}
.border-top-left-radius-0 {
border-top-left-radius: 0 !important;
}
.border-top-right-radius-0 {
border-top-right-radius: 0 !important;
}
.border-bottom-left-radius-0 {
border-bottom-left-radius: 0 !important;
}
.border-bottom-right-radius-0 {
border-bottom-right-radius: 0 !important;
}
.rounded-xl {
border-radius: $border-radius-xl !important;
}
/**
* = Spacing
*/
@each $size, $value in $spacers {
.top-#{$size} {
top: $value;
}
.end-#{$size} {
right: $value;
}
.bottom-#{$size} {
bottom: $value;
}
.start-#{$size} {
left: $value;
}
}
.center-vertical-absolute,
.center-horizontal-absolute {
position: absolute;
}
.center-vertical-absolute {
top: 50%;
transform: translateY(-50%);
}
.center-horizontal-absolute {
left: 50%;
transform: translateX(-50%);
}
/**
* = Shadows
*/
[class*="shadow"] {
@if $enable-transitions {
transition: $transition-base;
}
}
// stylelint-disable declaration-no-important
.shadow-soft {
box-shadow: $box-shadow-sm !important;
}
.shadow-hover:hover {
box-shadow: $box-shadow !important;
}
.shadow-sm-hover:hover {
box-shadow: $box-shadow-sm !important;
}
.shadow-lg-hover:hover {
box-shadow: $box-shadow-lg !important;
}
.shadow-none-hover:hover {
box-shadow: none !important;
}
/**
* = Sizing
*/
// Height values in vh
.h-100vh {
height: 100vh !important;
}
@include media-breakpoint-up(lg) {
.vh-lg-100 {
height: 100vh !important;
}
}
@for $nr from 1 to 40 {
.fh-#{$nr*50} {
height: #{$nr * 50}px !important;
}
}
@for $nr from 1 to 40 {
.font-weight-#{$nr*50} {
width: #{$nr * 50}px !important;
}
}
@for $nr from 1 to 40 {
.fmh-#{$nr*50} {
min-height: #{$nr * 50}px !important;
}
}
@for $nr from 1 to 40 {
.fmw-#{$nr*50} {
min-width: #{$nr * 50}px !important;
}
}
@for $nr from 1 to 40 {
.fmxh-#{$nr*50} {
max-height: #{$nr * 50}px !important;
}
}
@for $nr from 1 to 40 {
.fmxw-#{$nr*50} {
max-width: #{$nr * 50}px !important;
}
}
/**
* = Text utility classes
*/
.text-underline {
text-decoration: underline !important;
}
.text-through {
text-decoration: line-through !important;
}
// Display responsive styles
@each $breakpoint in map-keys($grid-breakpoints) {
@include media-breakpoint-up($breakpoint) {
.display-1-#{$breakpoint} {
font-size: $display1-size;
}
.display-2-#{$breakpoint} {
font-size: $display2-size;
}
.display-3-#{$breakpoint} {
font-size: $display3-size;
}
.display-4-#{$breakpoint} {
font-size: $display4-size;
}
}
}
// Line heights
// from lh-100 to lh-300
@for $nr from 0 to 21 {
.lh-#{100 + $nr*10} {
line-height: #{1 + calc($nr/10)};
}
}
// Letter spacings
.ls-1 {
letter-spacing: 0.0625rem;
}
.ls-2 {
letter-spacing: 0.09375rem;
}
.ls-3 {
letter-spacing: 0.125rem;
}
// Responsive alignment
@each $breakpoint in map-keys($grid-breakpoints) {
@include media-breakpoint-up($breakpoint) {
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
.text#{$infix}-left {
text-align: left !important;
}
.text#{$infix}-right {
text-align: right !important;
}
.text#{$infix}-center {
text-align: center !important;
}
}
}
// Transformation
.text-body {
color: $body-color !important;
}
.text-black-50 {
color: rgba($black, 0.5) !important;
}
.text-white-50 {
color: rgba($white, 0.5) !important;
}
.list-style-none {
margin: 0px;
padding: 0px;
list-style: none;
}
/**
* = Transform
*/
@include media-breakpoint-up(lg) {
.transform-perspective-right {
transform: scale(1) perspective(1040px) rotateY(-11deg) rotateX(2deg) rotate(2deg);
}
.transform-perspective-left {
transform: scale(1) perspective(900px) rotateY(27deg) rotateX(2deg) rotate(-2deg);
}
}
.t-none {
transform: none !important;
}
_footer.scss
/**
* = Footers
*/
.footer {
ul {
margin-bottom: 0;
padding: 0;
list-style: none;
li {
display: inline-block;
a {
text-decoration: none;
position: relative;
display: block;
color: $gray-700;
&:hover {
color: $primary;
}
}
.btn {
margin: 0;
}
}
&.links-horizontal {
&:first-child a {
padding-left: 0;
}
&:last-child a {
padding-right: 0;
}
}
&.links-vertical {
li {
display: block;
margin-left: -5px;
margin-right: -5px;
a {
padding: 5px;
&:hover {
color: inherit !important;
}
}
}
}
&.icon-box {
i {
line-height: 1.7;
}
}
}
.social-buttons {
a,
.btn {
margin-top: 5px;
margin-bottom: 5px;
padding: $padding-footer-sm $padding-footer;
}
}
.footer-brand {
font-size: $font-size-lg;
font-weight: $font-weight-bold;
img.common {
height: 40px;
}
img {
height: 40px;
width: 40px;
}
&:hover,
&:focus {
color: $black;
}
}
.footer-language-link {
font-size: $font-size-sm;
i {
font-size: 0.75rem;
}
}
.copyright {
font-size: $font-size-sm;
}
.pull-center {
display: inline-block;
float: none;
}
}
/**
* = Navigation bars
*/
.navbar-main {
position: absolute;
top: 0;
width: 100%;
z-index: 100;
.navbar-toggler-icon {
background-image: $navbar-dark-toggler-icon-bg;
}
}
.navbar .navbar-nav {
.nav-link {
@include transitions(0.8s, $transition-base);
@include media-breakpoint-down(md) {
font-size: 1.2rem;
@include display-flex();
@include justify-content(space-between);
@include align-items(center);
}
}
.nav-item {
.media:not(:last-child) {
margin-bottom: 1.5rem;
}
&:focus,
.nav-link:focus {
outline: none !important;
}
}
.dropdown {
.dropdown-menu {
top: 100%;
span {
width: 30px;
}
}
.dropdown-item {
font-size: 0.875rem;
}
}
.dropdown-megamenu,
.dropdown-megamenu-sm,
.dropdown-megamenu-md {
@include media-breakpoint-up(lg) {
min-width: 580px;
}
.megamenu-link {
color: $gray;
font-weight: 400;
font-size: $font-size-sm;
}
.megamenu-item {
position: relative;
&:hover {
.megamenu-link {
color: $primary;
}
}
}
}
.dropdown-megamenu-sm {
@include media-breakpoint-up(lg) {
min-width: 320px;
}
}
.dropdown-megamenu-md {
@include media-breakpoint-up(lg) {
min-width: 960px;
}
}
@include media-breakpoint-up(lg) {
.dropdown-menu {
.dropdown-toggle .nav-link-arrow {
@include transform(rotate(-90deg));
}
}
.dropdown.show > .dropdown-toggle .nav-link-arrow {
@include transform(rotate(180deg));
}
.dropdown-toggle:hover .nav-link-arrow {
@include transform(rotate(0deg));
}
}
.dropdown-submenu {
position: relative;
.dropdown-menu {
top: 0;
left: calc(100% - 2px);
margin-left: 0.1rem;
margin-right: 0.1rem;
opacity: 0;
display: none;
&.show {
opacity: 1;
pointer-events: all;
display: block;
}
}
}
.nav-link-arrow {
transition: $transition-transform;
}
}
.navbar-brand {
font-size: $font-size-sm;
font-weight: $font-weight-bold;
text-transform: uppercase;
img {
height: 40px;
}
}
// Navbar text and logo dark & light
.navbar-dark {
.navbar-brand-light {
display: none;
}
.navbar-brand {
color: $white;
}
& > .nav-item:hover > .nav-link {
color: $primary;
}
}
.navbar-light {
&:not(.headroom--not-top) {
.btn-outline-soft {
border-color: $dark;
color: $dark;
&:hover {
background: $dark;
color: $white;
}
}
}
.navbar-toggler-icon {
background-image: $navbar-light-toggler-icon-bg;
}
.navbar-brand-dark {
display: none;
}
.navbar-brand {
color: $gray-800;
}
}
.dropdown-menu {
top: 100%;
span {
width: 30px;
}
}
.navbar-transparent {
background-color: transparent;
border: 0;
box-shadow: none;
}
@include media-breakpoint-up(lg) {
.navbar-nav {
.nav-item {
[data-toggle="dropdown"]::after {
transition: $transition-base;
}
&.show {
[data-toggle="dropdown"]::after {
@include transform(rotate(180deg));
}
}
}
.nav-link {
i {
margin-right: 0.3rem;
font-size: $font-size-xs;
}
}
.nav-link-icon {
padding-left: 0.5rem;
padding-right: 0.5rem;
font-size: 1rem;
i {
margin-right: 0;
}
}
.dropdown-menu {
opacity: 0;
pointer-events: none;
margin: 0;
border-radius: $dropdown-border-radius;
}
.dropdown-menu-end {
&:before {
right: 20px;
left: auto;
}
}
.dropdown-menu-center {
left: 50%;
transform: translateX(-50%);
}
.dropdown-menu,
.dropdown-megamenu,
.dropdown-megamenu-md {
&.show {
opacity: 1;
pointer-events: auto;
}
&.close {
display: block;
}
}
.dropdown-submenu .dropdown-menu {
transform: none;
}
.dropdown-menu {
position: relative;
display: block;
opacity: 0;
pointer-events: none;
transition: $transition-base;
}
.dropdown.show,
.dropdown-submenu.show {
& > .dropdown-menu {
display: block;
opacity: 1;
pointer-events: auto;
}
}
.dropdown-menu-inner {
position: relative;
padding: 1rem;
}
}
.navbar-transparent {
.navbar-nav {
.nav-link {
&.disabled {
color: $navbar-dark-disabled-color;
}
}
}
.navbar-brand {
color: $navbar-dark-color;
}
}
}
// Collapse
.navbar-collapse-header {
display: none;
}
.navbar-collapse {
width: auto;
}
@include media-breakpoint-down(lg) {
.navbar-nav {
.nav-link {
padding: 0.625rem 0;
}
.dropdown-menu {
box-shadow: none;
width: 100%;
.media svg {
width: 30px;
}
}
}
.dropdown-menu-center {
right: 0;
left: auto;
transform: translate(0, 0);
@include media-breakpoint-down(lg) {
transform: translateX(-75%);
}
}
.navbar-collapse {
width: calc(100% - 30px);
position: absolute;
top: 0;
right: 15px;
z-index: 1050;
overflow-y: auto;
// using !important to overwrite Bootstrap's inline styles
height: calc(100vh - 30px) !important;
opacity: 0;
.navbar-toggler {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
padding: 0;
span {
display: block;
position: absolute;
width: 100%;
height: 2px;
border-radius: 2px;
opacity: 1;
background: #283448;
}
}
.navbar-collapse-header {
display: block;
padding-bottom: 1rem;
margin-bottom: 1rem;
}
.collapse-brand img {
height: 35px;
}
.collapse-close {
text-align: right;
}
}
.navbar-collapse.collapsing,
.navbar-collapse.show {
padding: 1.5rem;
border-radius: $dropdown-border-radius;
background: $white;
animation: show-navbar-collapse 0.2s ease forwards;
@include box-shadow(0 0 20px rgba(0, 0, 0, 0.1));
}
.navbar-collapse.collapsing-out {
animation: hide-navbar-collapse 0.2s ease forwards;
}
}
.navbar-dashboard {
border-radius: $border-radius;
}
// Theme color variants
// eg. navbar-theme-primary, navbar-theme-secondary
@each $color, $value in $navbar-colors {
.navbar-theme-#{$color}:not(.headroom) {
background-color: $value;
}
}
/**
* = Sections
*/
.section {
position: relative;
padding-top: $spacer * 3;
padding-bottom: $spacer * 3;
}
.section-header {
position: relative;
padding-top: $spacer * 9;
padding-bottom: $spacer * 3;
}
@include media-breakpoint-up(sm) {
.section {
position: relative;
padding-top: $spacer * 5;
padding-bottom: $spacer * 5;
}
.section-header {
position: relative;
padding-top: $spacer * 8;
padding-bottom: $spacer * 8;
&.section-sm {
padding-top: $spacer * 4;
padding-bottom: $spacer * 3;
}
}
.section-xl {
padding-top: $spacer * 8;
padding-bottom: $spacer * 8;
}
.section-lg {
padding-top: $spacer * 6;
padding-bottom: $spacer * 6;
}
.section-sm {
padding-top: $spacer * 3;
padding-bottom: $spacer * 3;
}
}
@include media-breakpoint-up(lg) {
.section {
position: relative;
padding-top: $spacer * 6;
padding-bottom: $spacer * 6;
}
.section-header {
position: relative;
padding-top: $spacer * 10;
padding-bottom: $spacer * 10;
&.section-sm {
padding-top: $spacer * 4;
padding-bottom: $spacer * 3;
}
}
.section-xl {
padding-top: $spacer * 10;
padding-bottom: $spacer * 10;
}
.section-lg {
padding-top: $spacer * 8;
padding-bottom: $spacer * 8;
}
.section-sm {
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
}
}
// Hero sections
.section-hero {
@include media-breakpoint-up(md) {
height: 100vh;
}
}
//Section delimiter
.line-bottom {
&::after {
content: "";
display: block;
width: 80%;
position: absolute;
bottom: 0;
left: 50%;
margin-left: -40%;
height: 1px;
background: radial-gradient(ellipse at center, $light 0, rgba(255, 255, 255, 0) 80%);
}
}
// Profile cover
.section-profile-cover {
height: 580px;
background-size: cover;
background-position: center center;
@include media-breakpoint-down(md) {
height: 400px;
}
}
// Components section
.components-section {
> .form-control {
+ .form-control {
margin-top: 0.5rem;
}
}
> .nav + .nav,
> .alert + .alert,
> .navbar + .navbar,
> .progress + .progress,
> .progress + .btn,
.badge,
.btn {
margin-top: 0.5rem;
margin-bottom: 0.5rem;
}
.btn-group {
margin-top: 0.5rem;
margin-bottom: 0.5rem;
.btn {
margin: 0;
}
}
.alert {
margin: 0;
+ .alert {
margin-top: 1.25rem;
}
}
.badge {
margin-right: 0.5rem;
}
.modal-footer {
.btn {
margin: 0;
}
}
}
.copy-docs {
position: absolute;
top: 5px;
right: 5px;
transition: $transition-base;
&.copied {
background: $success;
}
&:hover {
cursor: pointer;
}
}
.kanban-container {
overflow-x: scroll;
-webkit-overflow-scrolling: touch;
}
_sidebar.scss
/**
* = Sidebars
*/
#doc-index:not(.collapse.show),
.doc-sidebar {
display: none;
}
@include media-breakpoint-up(lg) {
#doc-index {
display: block;
}
.doc-sidebar {
display: block;
height: calc(100vh - 2rem);
overflow-y: scroll;
position: -webkit-sticky;
position: sticky;
top: 2rem;
.nav-link[data-toggle="collapse"] > .icon {
transform: rotateZ(-90deg);
position: relative;
right: 0.25rem;
}
.nav {
.nav-item {
font-size: $font-size-sm;
}
}
}
}
/*
* Sidebar
*/
.sidebar {
display: block;
position: fixed;
top: 0;
bottom: 0;
left: 0;
z-index: 100;
max-height: 100%;
overflow-y: auto;
width: 100%;
@include transition(max-width 0.1s);
@include media-breakpoint-up(md) {
width: 100%;
max-width: 260px;
}
.nav {
white-space: nowrap;
}
.nav-item {
&.active {
& > .nav-link {
color: $gray-100;
background-color: $gray-700;
}
}
.nav-link {
color: $white;
cursor: pointer;
&:hover {
color: $gray-100;
background-color: $gray-700;
}
}
margin-bottom: 0.2rem;
}
.nav-link + .multi-level {
margin-top: 0.2rem;
}
.nav-link {
font-size: $font-size-base;
vertical-align: middle;
padding: 0.55rem 0.75rem;
@include border-radius($border-radius);
.sidebar-icon {
margin-right: 0.5rem;
color: $gray-400;
}
.link-arrow {
font-size: $font-size-sm;
}
&[data-bs-toggle="collapse"][aria-expanded="true"] .link-arrow {
@include transform(rotate(90deg));
transition: $transition-base;
}
}
.nav-link.active {
color: $gray-100;
}
.multi-level {
.nav-link {
padding-left: 53px;
}
}
.sidebar-text,
.link-arrow,
.badge,
.notification-count {
opacity: 1;
}
.sidebar-text-contracted {
display: none;
}
&.contracted {
.sidebar-text,
.link-arrow,
.badge {
opacity: 0;
}
.notification-count {
opacity: 1;
position: absolute;
top: 0;
left: 40px;
width: 18px;
height: 18px;
border-radius: 50%;
font-size: 0.7rem;
padding: 0.2rem;
}
.nav-item {
position: relative;
&.active {
& > .nav-link {
background-color: #363c54;
width: 44px;
}
}
.nav-link {
&:hover {
background-color: $primary;
}
}
}
.sidebar-text-contracted {
display: inline;
}
.multi-level .nav-link {
padding-left: 17px;
}
.nav-item {
white-space: nowrap;
}
.sidebar-icon {
text-align: center;
}
@include media-breakpoint-up(md) {
& + .content {
margin-left: 95px;
}
}
max-width: 95px;
}
}
.sidebar-inner {
position: relative;
overflow-y: hidden;
}
.sidebar-heading {
font-size: 0.75rem;
text-transform: uppercase;
}
.user-card {
border-bottom: 0.0625rem solid #2e3650;
}
@include media-breakpoint-down(sm) {
.sidebar {
width: 100%;
}
}
.content {
overflow: hidden;
padding: 0 $spacer 0 $spacer;
@include transition(all 0.3s);
@include media-breakpoint-up(lg) {
margin-left: 260px;
}
}
.sidebar-toggle {
font-size: 1.3rem;
&:hover,
&:focus {
outline: none;
box-shadow: none;
background: $gray-300;
}
}
.form-check-input {
&.round-check {
&[type="checkbox"] {
@include border-radius($form-check-radio-border-radius);
}
}
}
.form-switch {
padding-left: $form-switch-padding-left;
.form-check-input {
height: 1.275em;
}
}
.form-control {
@include media-breakpoint-up(lg) {
&.form-control-lg {
padding: $inpu-lg-padding-y $input-padding-x;
}
}
}
.search-bar {
.form-control {
width: 280px;
transition: width 0.2s ease-in-out;
@include media-breakpoint-down(sm) {
width: 120px;
&:focus {
width: 150px;
}
}
}
}
.form-select {
.form-select-lg {
padding: $form-select-padding-y ($form-select-padding-x + $form-select-indicator-padding)
$form-select-padding-y $form-select-padding-x;
}
}
//Add File Alternative Style
.file-field input[type="file"] {
max-width: 230px;
position: absolute;
cursor: pointer;
filter: alpha(opacity=0);
opacity: 0;
padding-bottom: 30px;
}
.file-field svg {
cursor: pointer;
}
.datepicker-dropdown {
z-index: 9999;
}
.input-group {
.form-control:focus {
border-color: $input-border-color;
& + .input-group-text {
border-color: $input-border-color;
}
}
}
.input-group-text {
@include box-shadow($input-box-shadow);
}
@mixin perspective($value) {
-webkit-perspective: $value;
-moz-perspective: $value;
-o-perspective: $value;
-ms-perspective: $value;
perspective: $value;
}
@mixin transitions($time, $type) {
-webkit-transition: all $time $type;
-moz-transition: all $time $type;
-o-transition: all $time $type;
-ms-transition: all $time $type;
transition: all $time $type;
}
@mixin transitions-property($property, $time, $type) {
-webkit-transition: $property $time $type;
-moz-transition: $property $time $type;
-o-transition: $property $time $type;
-ms-transition: $property $time $type;
transition: $property $time $type;
}
@mixin transform-style($type) {
-webkit-transform-style: $type;
-moz-transform-style: $type;
-o-transform-style: $type;
-ms-transform-style: $type;
transform-style: $type;
}
@mixin backface-visibility($type) {
-webkit-backface-visibility: $type;
-moz-backface-visibility: $type;
-o-backface-visibility: $type;
-ms-backface-visibility: $type;
backface-visibility: $type;
}
@mixin rotateY-180() {
-webkit-transform: rotateY(180deg);
-moz-transform: rotateY(180deg);
-o-transform: rotateY(180deg);
-ms-transform: rotateY(180deg);
transform: rotateY(180deg);
}
// Contextual backgrounds
@mixin bg-variant($parent, $color) {
#{$parent} {
background-color: $color !important;
}
a#{$parent},
button#{$parent} {
@include hover-focus {
background-color: darken($color, 10%) !important;
}
}
}
@mixin bg-gradient-variant($parent, $color) {
#{$parent} {
background: linear-gradient(87deg, $color 0, saturate($color, 10%) 100%) !important;
}
}
@mixin background-image($background-repeat, $background-size) {
background-repeat: $background-repeat;
background-position: top center;
background-size: $background-size;
}
@mixin icon-shape-variant($color) {
color: $color;
background-color: rgba($color, 0.3);
}
@mixin icon-parallax-background(
$background-position,
$background-size,
$background-attachment,
$background-repeat
) {
background-position: $background-position;
background-size: $background-size;
background-attachment: $background-attachment;
background-repeat: $background-repeat;
}
@mixin icon-image-background($background-position, $background-size, $background-repeat) {
background-position: $background-position;
background-size: $background-size;
background-repeat: $background-repeat;
}
@mixin modal-variant($background) {
.modal-title {
color: color-yiq($background);
}
.modal-header,
.modal-footer {
border-color: rgba($background, 0.075);
}
.modal-content {
background-color: $background;
color: color-yiq($background);
.heading {
color: color-yiq($background);
}
}
.close {
& > span:not(.sr-only) {
color: $white;
}
}
}
@mixin popover-variant($background) {
background-color: $background;
.popover-header {
background-color: $background;
color: color-yiq($background);
}
.popover-body {
color: color-yiq($background);
}
.popover-header {
border-color: rgba($background, 0.2);
}
&.bs-popover-top {
.arrow::after {
border-top-color: $background;
}
}
&.bs-popover-end {
.arrow::after {
border-right-color: $background;
}
}
&.bs-popover-bottom {
.arrow::after {
border-bottom-color: $background;
}
}
&.bs-popover-start {
.arrow::after {
border-left-color: $background;
}
}
}
@mixin transform($transforms) {
-moz-transform: $transforms;
-o-transform: $transforms;
-ms-transform: $transforms;
-webkit-transform: $transforms;
transform: $transforms;
}
// translate
@mixin translate($x, $y) {
@include transform(translate($x, $y));
}
// rotate
@mixin rotate($deg) {
@include transform(rotate(#{$deg}deg));
}
@mixin filter($filter) {
-webkit-filter: #{$filter};
-moz-filter: #{$filter};
-ms-filter: #{$filter};
-o-filter: #{$filter};
filter: #{$filter};
}
@mixin backface-visibility($value) {
-webkit-backface-visibility: $value;
-moz-backface-visibility: $value;
-o-backface-visibility: $value;
backface-visibility: $value;
}
@mixin transform-style($value) {
-webkit-transform-style: $value;
-moz-transform-style: $value;
-o-transform-style: $value;
transform-style: $value;
}
@mixin perspective($value) {
-webkit-perspective: $value;
-moz-perspective: $value;
-o-perspective: $value;
perspective: $value;
}
@mixin display-flex() {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
}
@mixin flex($values) {
-webkit-box-flex: $values;
-moz-box-flex: $values;
-webkit-flex: $values;
-ms-flex: $values;
flex: $values;
}
@mixin flex-direction($direction) {
-webkit-flex-direction: $direction;
-moz-flex-direction: $direction;
-ms-flex-direction: $direction;
flex-direction: $direction;
}
@mixin flex-wrap($wrap) {
-webkit-flex-wrap: $wrap;
-moz-flex-wrap: $wrap;
-ms-flex-wrap: $wrap;
flex-wrap: $wrap;
}
@mixin flex-flow($flow) {
-webkit-flex-flow: $flow;
-moz-flex-flow: $flow;
-ms-flex-flow: $flow;
flex-flow: $flow;
}
@mixin order($val) {
-webkit-box-ordinal-group: $val;
-moz-box-ordinal-group: $val;
-ms-flex-order: $val;
-webkit-order: $val;
order: $val;
}
@mixin flex-grow($grow) {
-webkit-flex-grow: $grow;
-moz-flex-grow: $grow;
-ms-flex-grow: $grow;
flex-grow: $grow;
}
@mixin flex-shrink($shrink) {
-webkit-flex-shrink: $shrink;
-moz-flex-shrink: $shrink;
-ms-flex-shrink: $shrink;
flex-shrink: $shrink;
}
@mixin flex-basis($width) {
-webkit-flex-basis: $width;
-moz-flex-basis: $width;
-ms-flex-basis: $width;
flex-basis: $width;
}
@mixin justify-content($justify) {
-webkit-justify-content: $justify;
-moz-justify-content: $justify;
-ms-justify-content: $justify;
justify-content: $justify;
-ms-flex-pack: $justify;
}
@mixin align-content($align) {
-webkit-align-content: $align;
-moz-align-content: $align;
-ms-align-content: $align;
align-content: $align;
}
@mixin align-items($align) {
-webkit-align-items: $align;
-moz-align-items: $align;
-ms-align-items: $align;
align-items: $align;
}
@mixin align-self($align) {
-webkit-align-self: $align;
-moz-align-self: $align;
-ms-align-self: $align;
align-self: $align;
}