aboutsummaryrefslogtreecommitdiffstats
path: root/alphabetlearning/static/scss
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--alphabetlearning/static/scss/_accordion.scss (renamed from pyblackbird_cc/static/scss/_accordion.scss)0
-rw-r--r--alphabetlearning/static/scss/_alert.scss (renamed from pyblackbird_cc/static/scss/_alert.scss)0
-rw-r--r--alphabetlearning/static/scss/_badge.scss (renamed from pyblackbird_cc/static/scss/_badge.scss)0
-rw-r--r--alphabetlearning/static/scss/_breadcrumb.scss (renamed from pyblackbird_cc/static/scss/_breadcrumb.scss)0
-rw-r--r--alphabetlearning/static/scss/_button-group.scss (renamed from pyblackbird_cc/static/scss/_button-group.scss)0
-rw-r--r--alphabetlearning/static/scss/_buttons.scss (renamed from pyblackbird_cc/static/scss/_buttons.scss)0
-rw-r--r--alphabetlearning/static/scss/_card.scss (renamed from pyblackbird_cc/static/scss/_card.scss)0
-rw-r--r--alphabetlearning/static/scss/_carousel.scss (renamed from pyblackbird_cc/static/scss/_carousel.scss)0
-rw-r--r--alphabetlearning/static/scss/_close.scss (renamed from pyblackbird_cc/static/scss/_close.scss)0
-rw-r--r--alphabetlearning/static/scss/_containers.scss (renamed from pyblackbird_cc/static/scss/_containers.scss)0
-rw-r--r--alphabetlearning/static/scss/_dropdown.scss (renamed from pyblackbird_cc/static/scss/_dropdown.scss)0
-rw-r--r--alphabetlearning/static/scss/_forms.scss9
-rw-r--r--alphabetlearning/static/scss/_functions.scss (renamed from pyblackbird_cc/static/scss/_functions.scss)0
-rw-r--r--alphabetlearning/static/scss/_grid.scss (renamed from pyblackbird_cc/static/scss/_grid.scss)0
-rw-r--r--alphabetlearning/static/scss/_helpers.scss (renamed from pyblackbird_cc/static/scss/_helpers.scss)0
-rw-r--r--alphabetlearning/static/scss/_images.scss42
-rw-r--r--alphabetlearning/static/scss/_list-group.scss (renamed from pyblackbird_cc/static/scss/_list-group.scss)0
-rw-r--r--alphabetlearning/static/scss/_maps.scss (renamed from pyblackbird_cc/static/scss/_maps.scss)0
-rw-r--r--alphabetlearning/static/scss/_mixins.scss (renamed from pyblackbird_cc/static/scss/_mixins.scss)0
-rw-r--r--alphabetlearning/static/scss/_modal.scss (renamed from pyblackbird_cc/static/scss/_modal.scss)0
-rw-r--r--alphabetlearning/static/scss/_nav.scss (renamed from pyblackbird_cc/static/scss/_nav.scss)0
-rw-r--r--alphabetlearning/static/scss/_navbar.scss (renamed from pyblackbird_cc/static/scss/_navbar.scss)0
-rw-r--r--alphabetlearning/static/scss/_offcanvas.scss (renamed from pyblackbird_cc/static/scss/_offcanvas.scss)0
-rw-r--r--alphabetlearning/static/scss/_pagination.scss (renamed from pyblackbird_cc/static/scss/_pagination.scss)0
-rw-r--r--alphabetlearning/static/scss/_placeholders.scss (renamed from pyblackbird_cc/static/scss/_placeholders.scss)0
-rw-r--r--alphabetlearning/static/scss/_popover.scss (renamed from pyblackbird_cc/static/scss/_popover.scss)0
-rw-r--r--alphabetlearning/static/scss/_progress.scss (renamed from pyblackbird_cc/static/scss/_progress.scss)0
-rw-r--r--alphabetlearning/static/scss/_reboot.scss (renamed from pyblackbird_cc/static/scss/_reboot.scss)0
-rw-r--r--alphabetlearning/static/scss/_root.scss (renamed from pyblackbird_cc/static/scss/_root.scss)0
-rw-r--r--alphabetlearning/static/scss/_spinners.scss (renamed from pyblackbird_cc/static/scss/_spinners.scss)0
-rw-r--r--alphabetlearning/static/scss/_tables.scss (renamed from pyblackbird_cc/static/scss/_tables.scss)0
-rw-r--r--alphabetlearning/static/scss/_toasts.scss (renamed from pyblackbird_cc/static/scss/_toasts.scss)0
-rw-r--r--alphabetlearning/static/scss/_tooltip.scss (renamed from pyblackbird_cc/static/scss/_tooltip.scss)0
-rw-r--r--alphabetlearning/static/scss/_transitions.scss (renamed from pyblackbird_cc/static/scss/_transitions.scss)0
-rw-r--r--alphabetlearning/static/scss/_type.scss (renamed from pyblackbird_cc/static/scss/_type.scss)0
-rw-r--r--alphabetlearning/static/scss/_utilities.scss (renamed from pyblackbird_cc/static/scss/_utilities.scss)0
-rw-r--r--alphabetlearning/static/scss/_variables-dark.scss (renamed from pyblackbird_cc/static/scss/_variables-dark.scss)0
-rw-r--r--alphabetlearning/static/scss/_variables.scss (renamed from pyblackbird_cc/static/scss/_variables.scss)0
-rw-r--r--alphabetlearning/static/scss/bootstrap-grid.scss (renamed from pyblackbird_cc/static/scss/bootstrap-grid.scss)0
-rw-r--r--alphabetlearning/static/scss/bootstrap-reboot.scss (renamed from pyblackbird_cc/static/scss/bootstrap-reboot.scss)0
-rw-r--r--alphabetlearning/static/scss/bootstrap-utilities.scss (renamed from pyblackbird_cc/static/scss/bootstrap-utilities.scss)0
-rw-r--r--alphabetlearning/static/scss/bootstrap.scss (renamed from pyblackbird_cc/static/scss/bootstrap.scss)0
-rw-r--r--alphabetlearning/static/scss/custom.css2206
-rw-r--r--alphabetlearning/static/scss/custom.css.map1
-rw-r--r--alphabetlearning/static/scss/custom.scss (renamed from pyblackbird_cc/static/scss/custom.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_floating-labels.scss (renamed from pyblackbird_cc/static/scss/forms/_floating-labels.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_form-check.scss (renamed from pyblackbird_cc/static/scss/forms/_form-check.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_form-control.scss (renamed from pyblackbird_cc/static/scss/forms/_form-control.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_form-range.scss (renamed from pyblackbird_cc/static/scss/forms/_form-range.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_form-select.scss (renamed from pyblackbird_cc/static/scss/forms/_form-select.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_form-text.scss11
-rw-r--r--alphabetlearning/static/scss/forms/_input-group.scss (renamed from pyblackbird_cc/static/scss/forms/_input-group.scss)0
-rw-r--r--alphabetlearning/static/scss/forms/_labels.scss36
-rw-r--r--alphabetlearning/static/scss/forms/_validation.scss12
-rw-r--r--alphabetlearning/static/scss/helpers/_clearfix.scss3
-rw-r--r--alphabetlearning/static/scss/helpers/_color-bg.scss (renamed from pyblackbird_cc/static/scss/helpers/_color-bg.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_colored-links.scss (renamed from pyblackbird_cc/static/scss/helpers/_colored-links.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_focus-ring.scss (renamed from pyblackbird_cc/static/scss/helpers/_focus-ring.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_icon-link.scss (renamed from pyblackbird_cc/static/scss/helpers/_icon-link.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_position.scss (renamed from pyblackbird_cc/static/scss/helpers/_position.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_ratio.scss (renamed from pyblackbird_cc/static/scss/helpers/_ratio.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_stacks.scss (renamed from pyblackbird_cc/static/scss/helpers/_stacks.scss)0
-rw-r--r--alphabetlearning/static/scss/helpers/_stretched-link.scss15
-rw-r--r--alphabetlearning/static/scss/helpers/_text-truncation.scss7
-rw-r--r--alphabetlearning/static/scss/helpers/_visually-hidden.scss8
-rw-r--r--alphabetlearning/static/scss/helpers/_vr.scss (renamed from pyblackbird_cc/static/scss/helpers/_vr.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_alert.scss (renamed from pyblackbird_cc/static/scss/mixins/_alert.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_backdrop.scss (renamed from pyblackbird_cc/static/scss/mixins/_backdrop.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_banner.scss (renamed from pyblackbird_cc/static/scss/mixins/_banner.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_border-radius.scss78
-rw-r--r--alphabetlearning/static/scss/mixins/_box-shadow.scss18
-rw-r--r--alphabetlearning/static/scss/mixins/_breakpoints.scss (renamed from pyblackbird_cc/static/scss/mixins/_breakpoints.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_buttons.scss (renamed from pyblackbird_cc/static/scss/mixins/_buttons.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_caret.scss (renamed from pyblackbird_cc/static/scss/mixins/_caret.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_clearfix.scss9
-rw-r--r--alphabetlearning/static/scss/mixins/_color-mode.scss (renamed from pyblackbird_cc/static/scss/mixins/_color-mode.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_color-scheme.scss7
-rw-r--r--alphabetlearning/static/scss/mixins/_container.scss (renamed from pyblackbird_cc/static/scss/mixins/_container.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_deprecate.scss10
-rw-r--r--alphabetlearning/static/scss/mixins/_forms.scss (renamed from pyblackbird_cc/static/scss/mixins/_forms.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_gradients.scss (renamed from pyblackbird_cc/static/scss/mixins/_gradients.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_grid.scss (renamed from pyblackbird_cc/static/scss/mixins/_grid.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_image.scss16
-rw-r--r--alphabetlearning/static/scss/mixins/_list-group.scss (renamed from pyblackbird_cc/static/scss/mixins/_list-group.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_lists.scss7
-rw-r--r--alphabetlearning/static/scss/mixins/_pagination.scss (renamed from pyblackbird_cc/static/scss/mixins/_pagination.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_reset-text.scss (renamed from pyblackbird_cc/static/scss/mixins/_reset-text.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_resize.scss6
-rw-r--r--alphabetlearning/static/scss/mixins/_table-variants.scss (renamed from pyblackbird_cc/static/scss/mixins/_table-variants.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_text-truncate.scss8
-rw-r--r--alphabetlearning/static/scss/mixins/_transition.scss26
-rw-r--r--alphabetlearning/static/scss/mixins/_utilities.scss (renamed from pyblackbird_cc/static/scss/mixins/_utilities.scss)0
-rw-r--r--alphabetlearning/static/scss/mixins/_visually-hidden.scss (renamed from pyblackbird_cc/static/scss/mixins/_visually-hidden.scss)0
-rw-r--r--alphabetlearning/static/scss/tests/jasmine.js (renamed from pyblackbird_cc/static/scss/tests/jasmine.js)0
-rw-r--r--alphabetlearning/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss (renamed from pyblackbird_cc/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss)0
-rw-r--r--alphabetlearning/static/scss/tests/mixins/_color-modes.test.scss (renamed from pyblackbird_cc/static/scss/tests/mixins/_color-modes.test.scss)0
-rw-r--r--alphabetlearning/static/scss/tests/mixins/_media-query-color-mode-full.test.scss (renamed from pyblackbird_cc/static/scss/tests/mixins/_media-query-color-mode-full.test.scss)0
-rw-r--r--alphabetlearning/static/scss/tests/mixins/_utilities.test.scss (renamed from pyblackbird_cc/static/scss/tests/mixins/_utilities.test.scss)0
-rw-r--r--alphabetlearning/static/scss/tests/sass-true/register.js (renamed from pyblackbird_cc/static/scss/tests/sass-true/register.js)0
-rw-r--r--alphabetlearning/static/scss/tests/sass-true/runner.js (renamed from pyblackbird_cc/static/scss/tests/sass-true/runner.js)0
-rw-r--r--alphabetlearning/static/scss/tests/utilities/_api.test.scss (renamed from pyblackbird_cc/static/scss/tests/utilities/_api.test.scss)0
-rw-r--r--alphabetlearning/static/scss/utilities/_api.scss47
-rw-r--r--alphabetlearning/static/scss/vendor/_rfs.scss (renamed from pyblackbird_cc/static/scss/vendor/_rfs.scss)0
103 files changed, 2582 insertions, 0 deletions
diff --git a/pyblackbird_cc/static/scss/_accordion.scss b/alphabetlearning/static/scss/_accordion.scss
index 17e5436..17e5436 100644
--- a/pyblackbird_cc/static/scss/_accordion.scss
+++ b/alphabetlearning/static/scss/_accordion.scss
diff --git a/pyblackbird_cc/static/scss/_alert.scss b/alphabetlearning/static/scss/_alert.scss
index b8cff9b..b8cff9b 100644
--- a/pyblackbird_cc/static/scss/_alert.scss
+++ b/alphabetlearning/static/scss/_alert.scss
diff --git a/pyblackbird_cc/static/scss/_badge.scss b/alphabetlearning/static/scss/_badge.scss
index cc3d269..cc3d269 100644
--- a/pyblackbird_cc/static/scss/_badge.scss
+++ b/alphabetlearning/static/scss/_badge.scss
diff --git a/pyblackbird_cc/static/scss/_breadcrumb.scss b/alphabetlearning/static/scss/_breadcrumb.scss
index b8252ff..b8252ff 100644
--- a/pyblackbird_cc/static/scss/_breadcrumb.scss
+++ b/alphabetlearning/static/scss/_breadcrumb.scss
diff --git a/pyblackbird_cc/static/scss/_button-group.scss b/alphabetlearning/static/scss/_button-group.scss
index 55ae3f6..55ae3f6 100644
--- a/pyblackbird_cc/static/scss/_button-group.scss
+++ b/alphabetlearning/static/scss/_button-group.scss
diff --git a/pyblackbird_cc/static/scss/_buttons.scss b/alphabetlearning/static/scss/_buttons.scss
index caa4518..caa4518 100644
--- a/pyblackbird_cc/static/scss/_buttons.scss
+++ b/alphabetlearning/static/scss/_buttons.scss
diff --git a/pyblackbird_cc/static/scss/_card.scss b/alphabetlearning/static/scss/_card.scss
index d3535a9..d3535a9 100644
--- a/pyblackbird_cc/static/scss/_card.scss
+++ b/alphabetlearning/static/scss/_card.scss
diff --git a/pyblackbird_cc/static/scss/_carousel.scss b/alphabetlearning/static/scss/_carousel.scss
index 3a13522..3a13522 100644
--- a/pyblackbird_cc/static/scss/_carousel.scss
+++ b/alphabetlearning/static/scss/_carousel.scss
diff --git a/pyblackbird_cc/static/scss/_close.scss b/alphabetlearning/static/scss/_close.scss
index 4d6e73c..4d6e73c 100644
--- a/pyblackbird_cc/static/scss/_close.scss
+++ b/alphabetlearning/static/scss/_close.scss
diff --git a/pyblackbird_cc/static/scss/_containers.scss b/alphabetlearning/static/scss/_containers.scss
index 83b3138..83b3138 100644
--- a/pyblackbird_cc/static/scss/_containers.scss
+++ b/alphabetlearning/static/scss/_containers.scss
diff --git a/pyblackbird_cc/static/scss/_dropdown.scss b/alphabetlearning/static/scss/_dropdown.scss
index 587ebb4..587ebb4 100644
--- a/pyblackbird_cc/static/scss/_dropdown.scss
+++ b/alphabetlearning/static/scss/_dropdown.scss
diff --git a/alphabetlearning/static/scss/_forms.scss b/alphabetlearning/static/scss/_forms.scss
new file mode 100644
index 0000000..7b17d84
--- /dev/null
+++ b/alphabetlearning/static/scss/_forms.scss
@@ -0,0 +1,9 @@
+@import "forms/labels";
+@import "forms/form-text";
+@import "forms/form-control";
+@import "forms/form-select";
+@import "forms/form-check";
+@import "forms/form-range";
+@import "forms/floating-labels";
+@import "forms/input-group";
+@import "forms/validation";
diff --git a/pyblackbird_cc/static/scss/_functions.scss b/alphabetlearning/static/scss/_functions.scss
index 9029658..9029658 100644
--- a/pyblackbird_cc/static/scss/_functions.scss
+++ b/alphabetlearning/static/scss/_functions.scss
diff --git a/pyblackbird_cc/static/scss/_grid.scss b/alphabetlearning/static/scss/_grid.scss
index 048f800..048f800 100644
--- a/pyblackbird_cc/static/scss/_grid.scss
+++ b/alphabetlearning/static/scss/_grid.scss
diff --git a/pyblackbird_cc/static/scss/_helpers.scss b/alphabetlearning/static/scss/_helpers.scss
index 13f2752..13f2752 100644
--- a/pyblackbird_cc/static/scss/_helpers.scss
+++ b/alphabetlearning/static/scss/_helpers.scss
diff --git a/alphabetlearning/static/scss/_images.scss b/alphabetlearning/static/scss/_images.scss
new file mode 100644
index 0000000..3d6a101
--- /dev/null
+++ b/alphabetlearning/static/scss/_images.scss
@@ -0,0 +1,42 @@
+// Responsive images (ensure images don't scale beyond their parents)
+//
+// This is purposefully opt-in via an explicit class rather than being the default for all `<img>`s.
+// We previously tried the "images are responsive by default" approach in Bootstrap v2,
+// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)
+// which weren't expecting the images within themselves to be involuntarily resized.
+// See also https://github.com/twbs/bootstrap/issues/18178
+.img-fluid {
+ @include img-fluid();
+}
+
+
+// Image thumbnails
+.img-thumbnail {
+ padding: $thumbnail-padding;
+ background-color: $thumbnail-bg;
+ border: $thumbnail-border-width solid $thumbnail-border-color;
+ @include border-radius($thumbnail-border-radius);
+ @include box-shadow($thumbnail-box-shadow);
+
+ // Keep them at most 100% wide
+ @include img-fluid();
+}
+
+//
+// Figures
+//
+
+.figure {
+ // Ensures the caption's text aligns with the image.
+ display: inline-block;
+}
+
+.figure-img {
+ margin-bottom: $spacer * .5;
+ line-height: 1;
+}
+
+.figure-caption {
+ @include font-size($figure-caption-font-size);
+ color: $figure-caption-color;
+}
diff --git a/pyblackbird_cc/static/scss/_list-group.scss b/alphabetlearning/static/scss/_list-group.scss
index 455531e..455531e 100644
--- a/pyblackbird_cc/static/scss/_list-group.scss
+++ b/alphabetlearning/static/scss/_list-group.scss
diff --git a/pyblackbird_cc/static/scss/_maps.scss b/alphabetlearning/static/scss/_maps.scss
index 68ee421..68ee421 100644
--- a/pyblackbird_cc/static/scss/_maps.scss
+++ b/alphabetlearning/static/scss/_maps.scss
diff --git a/pyblackbird_cc/static/scss/_mixins.scss b/alphabetlearning/static/scss/_mixins.scss
index e1e130b..e1e130b 100644
--- a/pyblackbird_cc/static/scss/_mixins.scss
+++ b/alphabetlearning/static/scss/_mixins.scss
diff --git a/pyblackbird_cc/static/scss/_modal.scss b/alphabetlearning/static/scss/_modal.scss
index 494db94..494db94 100644
--- a/pyblackbird_cc/static/scss/_modal.scss
+++ b/alphabetlearning/static/scss/_modal.scss
diff --git a/pyblackbird_cc/static/scss/_nav.scss b/alphabetlearning/static/scss/_nav.scss
index ff073d3..ff073d3 100644
--- a/pyblackbird_cc/static/scss/_nav.scss
+++ b/alphabetlearning/static/scss/_nav.scss
diff --git a/pyblackbird_cc/static/scss/_navbar.scss b/alphabetlearning/static/scss/_navbar.scss
index 7161938..7161938 100644
--- a/pyblackbird_cc/static/scss/_navbar.scss
+++ b/alphabetlearning/static/scss/_navbar.scss
diff --git a/pyblackbird_cc/static/scss/_offcanvas.scss b/alphabetlearning/static/scss/_offcanvas.scss
index eb2c97a..eb2c97a 100644
--- a/pyblackbird_cc/static/scss/_offcanvas.scss
+++ b/alphabetlearning/static/scss/_offcanvas.scss
diff --git a/pyblackbird_cc/static/scss/_pagination.scss b/alphabetlearning/static/scss/_pagination.scss
index f275a62..f275a62 100644
--- a/pyblackbird_cc/static/scss/_pagination.scss
+++ b/alphabetlearning/static/scss/_pagination.scss
diff --git a/pyblackbird_cc/static/scss/_placeholders.scss b/alphabetlearning/static/scss/_placeholders.scss
index 6e32e1c..6e32e1c 100644
--- a/pyblackbird_cc/static/scss/_placeholders.scss
+++ b/alphabetlearning/static/scss/_placeholders.scss
diff --git a/pyblackbird_cc/static/scss/_popover.scss b/alphabetlearning/static/scss/_popover.scss
index 7b69f62..7b69f62 100644
--- a/pyblackbird_cc/static/scss/_popover.scss
+++ b/alphabetlearning/static/scss/_popover.scss
diff --git a/pyblackbird_cc/static/scss/_progress.scss b/alphabetlearning/static/scss/_progress.scss
index 148c381..148c381 100644
--- a/pyblackbird_cc/static/scss/_progress.scss
+++ b/alphabetlearning/static/scss/_progress.scss
diff --git a/pyblackbird_cc/static/scss/_reboot.scss b/alphabetlearning/static/scss/_reboot.scss
index 1879175..1879175 100644
--- a/pyblackbird_cc/static/scss/_reboot.scss
+++ b/alphabetlearning/static/scss/_reboot.scss
diff --git a/pyblackbird_cc/static/scss/_root.scss b/alphabetlearning/static/scss/_root.scss
index becddf1..becddf1 100644
--- a/pyblackbird_cc/static/scss/_root.scss
+++ b/alphabetlearning/static/scss/_root.scss
diff --git a/pyblackbird_cc/static/scss/_spinners.scss b/alphabetlearning/static/scss/_spinners.scss
index ec84732..ec84732 100644
--- a/pyblackbird_cc/static/scss/_spinners.scss
+++ b/alphabetlearning/static/scss/_spinners.scss
diff --git a/pyblackbird_cc/static/scss/_tables.scss b/alphabetlearning/static/scss/_tables.scss
index 276521a..276521a 100644
--- a/pyblackbird_cc/static/scss/_tables.scss
+++ b/alphabetlearning/static/scss/_tables.scss
diff --git a/pyblackbird_cc/static/scss/_toasts.scss b/alphabetlearning/static/scss/_toasts.scss
index 2ce378d..2ce378d 100644
--- a/pyblackbird_cc/static/scss/_toasts.scss
+++ b/alphabetlearning/static/scss/_toasts.scss
diff --git a/pyblackbird_cc/static/scss/_tooltip.scss b/alphabetlearning/static/scss/_tooltip.scss
index 85de90f..85de90f 100644
--- a/pyblackbird_cc/static/scss/_tooltip.scss
+++ b/alphabetlearning/static/scss/_tooltip.scss
diff --git a/pyblackbird_cc/static/scss/_transitions.scss b/alphabetlearning/static/scss/_transitions.scss
index bfb26aa..bfb26aa 100644
--- a/pyblackbird_cc/static/scss/_transitions.scss
+++ b/alphabetlearning/static/scss/_transitions.scss
diff --git a/pyblackbird_cc/static/scss/_type.scss b/alphabetlearning/static/scss/_type.scss
index 37d64bf..37d64bf 100644
--- a/pyblackbird_cc/static/scss/_type.scss
+++ b/alphabetlearning/static/scss/_type.scss
diff --git a/pyblackbird_cc/static/scss/_utilities.scss b/alphabetlearning/static/scss/_utilities.scss
index 696f906..696f906 100644
--- a/pyblackbird_cc/static/scss/_utilities.scss
+++ b/alphabetlearning/static/scss/_utilities.scss
diff --git a/pyblackbird_cc/static/scss/_variables-dark.scss b/alphabetlearning/static/scss/_variables-dark.scss
index 6422b38..6422b38 100644
--- a/pyblackbird_cc/static/scss/_variables-dark.scss
+++ b/alphabetlearning/static/scss/_variables-dark.scss
diff --git a/pyblackbird_cc/static/scss/_variables.scss b/alphabetlearning/static/scss/_variables.scss
index 0653139..0653139 100644
--- a/pyblackbird_cc/static/scss/_variables.scss
+++ b/alphabetlearning/static/scss/_variables.scss
diff --git a/pyblackbird_cc/static/scss/bootstrap-grid.scss b/alphabetlearning/static/scss/bootstrap-grid.scss
index 52bd577..52bd577 100644
--- a/pyblackbird_cc/static/scss/bootstrap-grid.scss
+++ b/alphabetlearning/static/scss/bootstrap-grid.scss
diff --git a/pyblackbird_cc/static/scss/bootstrap-reboot.scss b/alphabetlearning/static/scss/bootstrap-reboot.scss
index 5b69b95..5b69b95 100644
--- a/pyblackbird_cc/static/scss/bootstrap-reboot.scss
+++ b/alphabetlearning/static/scss/bootstrap-reboot.scss
diff --git a/pyblackbird_cc/static/scss/bootstrap-utilities.scss b/alphabetlearning/static/scss/bootstrap-utilities.scss
index 99c4a35..99c4a35 100644
--- a/pyblackbird_cc/static/scss/bootstrap-utilities.scss
+++ b/alphabetlearning/static/scss/bootstrap-utilities.scss
diff --git a/pyblackbird_cc/static/scss/bootstrap.scss b/alphabetlearning/static/scss/bootstrap.scss
index 449d704..449d704 100644
--- a/pyblackbird_cc/static/scss/bootstrap.scss
+++ b/alphabetlearning/static/scss/bootstrap.scss
diff --git a/alphabetlearning/static/scss/custom.css b/alphabetlearning/static/scss/custom.css
new file mode 100644
index 0000000..adca627
--- /dev/null
+++ b/alphabetlearning/static/scss/custom.css
@@ -0,0 +1,2206 @@
+@charset "UTF-8";
+:root {
+ --bs-blue: #0d6efd;
+ --bs-indigo: #6610f2;
+ --bs-purple: #6f42c1;
+ --bs-pink: #d63384;
+ --bs-red: #dc3545;
+ --bs-orange: #fd7e14;
+ --bs-yellow: #ffc107;
+ --bs-green: #198754;
+ --bs-teal: #20c997;
+ --bs-cyan: #0dcaf0;
+ --bs-white: #fff;
+ --bs-gray: #6c757d;
+ --bs-gray-dark: #343a40;
+ --bs-primary: #51635e;
+ --bs-secondary: #6c757d;
+ --bs-success: #198754;
+ --bs-info: #0dcaf0;
+ --bs-warning: #ffc107;
+ --bs-danger: #dc3545;
+ --bs-light: #f8f9fa;
+ --bs-dark: #212529;
+ --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+ --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+}
+
+@media (prefers-reduced-motion: no-preference) {
+ :root {
+ scroll-behavior: smooth;
+ }
+}
+
+body {
+ margin: 0;
+ font-family: var(--bs-font-sans-serif);
+ font-size: 1rem;
+ font-weight: 400;
+ line-height: 1.5;
+ color: #212529;
+ background-color: #fff;
+ -webkit-text-size-adjust: 100%;
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
+}
+
+.carousel-control-next-icon {
+ font-size: 200px;
+}
+
+hr {
+ margin: 1rem 0;
+ color: inherit;
+ background-color: currentColor;
+ border: 0;
+ opacity: 0.25;
+}
+
+hr:not([size]) {
+ height: 1px;
+}
+
+h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
+ margin-top: 0;
+ margin-bottom: 0.5rem;
+ font-weight: 500;
+ line-height: 1.2;
+}
+
+h1, .h1 {
+ font-size: calc(1.375rem + 1.5vw);
+}
+@media (min-width: 1200px) {
+ h1, .h1 {
+ font-size: 2.5rem;
+ }
+}
+
+h2, .h2 {
+ font-size: calc(1.325rem + 0.9vw);
+}
+@media (min-width: 1200px) {
+ h2, .h2 {
+ font-size: 2rem;
+ }
+}
+
+h3, .h3 {
+ font-size: calc(1.3rem + 0.6vw);
+}
+@media (min-width: 1200px) {
+ h3, .h3 {
+ font-size: 1.75rem;
+ }
+}
+
+h4, .h4 {
+ font-size: calc(1.275rem + 0.3vw);
+}
+@media (min-width: 1200px) {
+ h4, .h4 {
+ font-size: 1.5rem;
+ }
+}
+
+h5, .h5 {
+ font-size: 1.25rem;
+}
+
+h6, .h6 {
+ font-size: 1rem;
+}
+
+p {
+ margin-top: 0;
+ margin-bottom: 1rem;
+}
+
+abbr[title],
+abbr[data-bs-original-title] {
+ text-decoration: underline dotted;
+ cursor: help;
+ text-decoration-skip-ink: none;
+}
+
+address {
+ margin-bottom: 1rem;
+ font-style: normal;
+ line-height: inherit;
+}
+
+ol,
+ul {
+ padding-left: 2rem;
+}
+
+ol,
+ul,
+dl {
+ margin-top: 0;
+ margin-bottom: 1rem;
+}
+
+ol ol,
+ul ul,
+ol ul,
+ul ol {
+ margin-bottom: 0;
+}
+
+dt {
+ font-weight: 700;
+}
+
+dd {
+ margin-bottom: 0.5rem;
+ margin-left: 0;
+}
+
+blockquote {
+ margin: 0 0 1rem;
+}
+
+b,
+strong {
+ font-weight: bolder;
+}
+
+small, .small {
+ font-size: 0.875em;
+}
+
+mark, .mark {
+ padding: 0.2em;
+ background-color: #fcf8e3;
+}
+
+sub,
+sup {
+ position: relative;
+ font-size: 0.75em;
+ line-height: 0;
+ vertical-align: baseline;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+sup {
+ top: -0.5em;
+}
+
+a {
+ color: #51635e;
+ text-decoration: underline;
+}
+a:hover {
+ color: #414f4b;
+}
+
+a:not([href]):not([class]), a:not([href]):not([class]):hover {
+ color: inherit;
+ text-decoration: none;
+}
+
+pre,
+code,
+kbd,
+samp {
+ font-family: var(--bs-font-monospace);
+ font-size: 1em;
+ direction: ltr /* rtl:ignore */;
+ unicode-bidi: bidi-override;
+}
+
+pre {
+ display: block;
+ margin-top: 0;
+ margin-bottom: 1rem;
+ overflow: auto;
+ font-size: 0.875em;
+}
+pre code {
+ font-size: inherit;
+ color: inherit;
+ word-break: normal;
+}
+
+code {
+ font-size: 0.875em;
+ color: #d63384;
+ word-wrap: break-word;
+}
+a > code {
+ color: inherit;
+}
+
+kbd {
+ padding: 0.2rem 0.4rem;
+ font-size: 0.875em;
+ color: #fff;
+ background-color: #212529;
+ border-radius: 0.2rem;
+}
+kbd kbd {
+ padding: 0;
+ font-size: 1em;
+ font-weight: 700;
+}
+
+figure {
+ margin: 0 0 1rem;
+}
+
+img,
+svg {
+ vertical-align: middle;
+}
+
+table {
+ caption-side: bottom;
+ border-collapse: collapse;
+}
+
+caption {
+ padding-top: 0.5rem;
+ padding-bottom: 0.5rem;
+ color: #6c757d;
+ text-align: left;
+}
+
+th {
+ text-align: inherit;
+ text-align: -webkit-match-parent;
+}
+
+thead,
+tbody,
+tfoot,
+tr,
+td,
+th {
+ border-color: inherit;
+ border-style: solid;
+ border-width: 0;
+}
+
+label {
+ display: inline-block;
+}
+
+button {
+ border-radius: 0;
+}
+
+button:focus:not(:focus-visible) {
+ outline: 0;
+}
+
+input,
+button,
+select,
+optgroup,
+textarea {
+ margin: 0;
+ font-family: inherit;
+ font-size: inherit;
+ line-height: inherit;
+}
+
+button,
+select {
+ text-transform: none;
+}
+
+[role=button] {
+ cursor: pointer;
+}
+
+select {
+ word-wrap: normal;
+}
+select:disabled {
+ opacity: 1;
+}
+
+[list]::-webkit-calendar-picker-indicator {
+ display: none;
+}
+
+button,
+[type=button],
+[type=reset],
+[type=submit] {
+ -webkit-appearance: button;
+}
+button:not(:disabled),
+[type=button]:not(:disabled),
+[type=reset]:not(:disabled),
+[type=submit]:not(:disabled) {
+ cursor: pointer;
+}
+
+::-moz-focus-inner {
+ padding: 0;
+ border-style: none;
+}
+
+textarea {
+ resize: vertical;
+}
+
+fieldset {
+ min-width: 0;
+ padding: 0;
+ margin: 0;
+ border: 0;
+}
+
+legend {
+ float: left;
+ width: 100%;
+ padding: 0;
+ margin-bottom: 0.5rem;
+ font-size: calc(1.275rem + 0.3vw);
+ line-height: inherit;
+}
+@media (min-width: 1200px) {
+ legend {
+ font-size: 1.5rem;
+ }
+}
+legend + * {
+ clear: left;
+}
+
+::-webkit-datetime-edit-fields-wrapper,
+::-webkit-datetime-edit-text,
+::-webkit-datetime-edit-minute,
+::-webkit-datetime-edit-hour-field,
+::-webkit-datetime-edit-day-field,
+::-webkit-datetime-edit-month-field,
+::-webkit-datetime-edit-year-field {
+ padding: 0;
+}
+
+::-webkit-inner-spin-button {
+ height: auto;
+}
+
+[type=search] {
+ outline-offset: -2px;
+ -webkit-appearance: textfield;
+}
+
+/* rtl:raw:
+[type="tel"],
+[type="url"],
+[type="email"],
+[type="number"] {
+ direction: ltr;
+}
+*/
+::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+::-webkit-color-swatch-wrapper {
+ padding: 0;
+}
+
+::file-selector-button {
+ font: inherit;
+}
+
+::-webkit-file-upload-button {
+ font: inherit;
+ -webkit-appearance: button;
+}
+
+output {
+ display: inline-block;
+}
+
+iframe {
+ border: 0;
+}
+
+summary {
+ display: list-item;
+ cursor: pointer;
+}
+
+progress {
+ vertical-align: baseline;
+}
+
+[hidden] {
+ display: none !important;
+}
+
+.lead {
+ font-size: 1.25rem;
+ font-weight: 300;
+}
+
+.display-1 {
+ font-size: calc(1.625rem + 4.5vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-1 {
+ font-size: 5rem;
+ }
+}
+
+.display-2 {
+ font-size: calc(1.575rem + 3.9vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-2 {
+ font-size: 4.5rem;
+ }
+}
+
+.display-3 {
+ font-size: calc(1.525rem + 3.3vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-3 {
+ font-size: 4rem;
+ }
+}
+
+.display-4 {
+ font-size: calc(1.475rem + 2.7vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-4 {
+ font-size: 3.5rem;
+ }
+}
+
+.display-5 {
+ font-size: calc(1.425rem + 2.1vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-5 {
+ font-size: 3rem;
+ }
+}
+
+.display-6 {
+ font-size: calc(1.375rem + 1.5vw);
+ font-weight: 300;
+ line-height: 1.2;
+}
+@media (min-width: 1200px) {
+ .display-6 {
+ font-size: 2.5rem;
+ }
+}
+
+.list-unstyled {
+ padding-left: 0;
+ list-style: none;
+}
+
+.list-inline {
+ padding-left: 0;
+ list-style: none;
+}
+
+.list-inline-item {
+ display: inline-block;
+}
+.list-inline-item:not(:last-child) {
+ margin-right: 0.5rem;
+}
+
+.initialism {
+ font-size: 0.875em;
+ text-transform: uppercase;
+}
+
+.blockquote {
+ margin-bottom: 1rem;
+ font-size: 1.25rem;
+}
+.blockquote > :last-child {
+ margin-bottom: 0;
+}
+
+.blockquote-footer {
+ margin-top: -1rem;
+ margin-bottom: 1rem;
+ font-size: 0.875em;
+ color: #6c757d;
+}
+.blockquote-footer::before {
+ content: "— ";
+}
+
+.img-fluid {
+ max-width: 100%;
+ height: auto;
+}
+
+.img-thumbnail {
+ padding: 0.25rem;
+ background-color: #fff;
+ border: 1px solid #dee2e6;
+ border-radius: 0.25rem;
+ max-width: 100%;
+ height: auto;
+}
+
+.figure {
+ display: inline-block;
+}
+
+.figure-img {
+ margin-bottom: 0.5rem;
+ line-height: 1;
+}
+
+.figure-caption {
+ font-size: 0.875em;
+ color: #6c757d;
+}
+
+.container,
+.container-fluid,
+.container-xxl,
+.container-xl,
+.container-lg,
+.container-md,
+.container-sm {
+ width: 100%;
+ padding-right: var(--bs-gutter-x, 0.75rem);
+ padding-left: var(--bs-gutter-x, 0.75rem);
+ margin-right: auto;
+ margin-left: auto;
+}
+
+@media (min-width: 576px) {
+ .container-sm, .container {
+ max-width: 540px;
+ }
+}
+@media (min-width: 768px) {
+ .container-md, .container-sm, .container {
+ max-width: 720px;
+ }
+}
+@media (min-width: 992px) {
+ .container-lg, .container-md, .container-sm, .container {
+ max-width: 960px;
+ }
+}
+@media (min-width: 1200px) {
+ .container-xl, .container-lg, .container-md, .container-sm, .container {
+ max-width: 1140px;
+ }
+}
+@media (min-width: 1400px) {
+ .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
+ max-width: 1320px;
+ }
+}
+.row {
+ --bs-gutter-x: 1.5rem;
+ --bs-gutter-y: 0;
+ display: flex;
+ flex-wrap: wrap;
+ margin-top: calc(var(--bs-gutter-y) * -1);
+ margin-right: calc(var(--bs-gutter-x) * -0.5);
+ margin-left: calc(var(--bs-gutter-x) * -0.5);
+}
+.row > * {
+ flex-shrink: 0;
+ width: 100%;
+ max-width: 100%;
+ padding-right: calc(var(--bs-gutter-x) * 0.5);
+ padding-left: calc(var(--bs-gutter-x) * 0.5);
+ margin-top: var(--bs-gutter-y);
+}
+
+.col {
+ flex: 1 0 0%;
+}
+
+.row-cols-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+}
+
+.row-cols-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+}
+
+.row-cols-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+}
+
+.row-cols-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+}
+
+.row-cols-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+}
+
+.row-cols-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+}
+
+.row-cols-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+}
+
+@media (min-width: 576px) {
+ .col-sm {
+ flex: 1 0 0%;
+ }
+ .row-cols-sm-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .row-cols-sm-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .row-cols-sm-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .row-cols-sm-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+ }
+ .row-cols-sm-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .row-cols-sm-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+ }
+ .row-cols-sm-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+ }
+}
+@media (min-width: 768px) {
+ .col-md {
+ flex: 1 0 0%;
+ }
+ .row-cols-md-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .row-cols-md-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .row-cols-md-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .row-cols-md-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+ }
+ .row-cols-md-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .row-cols-md-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+ }
+ .row-cols-md-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+ }
+}
+@media (min-width: 992px) {
+ .col-lg {
+ flex: 1 0 0%;
+ }
+ .row-cols-lg-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .row-cols-lg-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .row-cols-lg-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .row-cols-lg-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+ }
+ .row-cols-lg-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .row-cols-lg-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+ }
+ .row-cols-lg-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+ }
+}
+@media (min-width: 1200px) {
+ .col-xl {
+ flex: 1 0 0%;
+ }
+ .row-cols-xl-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .row-cols-xl-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .row-cols-xl-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .row-cols-xl-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+ }
+ .row-cols-xl-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .row-cols-xl-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+ }
+ .row-cols-xl-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+ }
+}
+@media (min-width: 1400px) {
+ .col-xxl {
+ flex: 1 0 0%;
+ }
+ .row-cols-xxl-auto > * {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .row-cols-xxl-1 > * {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .row-cols-xxl-2 > * {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .row-cols-xxl-3 > * {
+ flex: 0 0 auto;
+ width: 33.3333333333%;
+ }
+ .row-cols-xxl-4 > * {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .row-cols-xxl-5 > * {
+ flex: 0 0 auto;
+ width: 20%;
+ }
+ .row-cols-xxl-6 > * {
+ flex: 0 0 auto;
+ width: 16.6666666667%;
+ }
+}
+.col-auto {
+ flex: 0 0 auto;
+ width: auto;
+}
+
+.col-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+}
+
+.col-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+}
+
+.col-3 {
+ flex: 0 0 auto;
+ width: 25%;
+}
+
+.col-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+}
+
+.col-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+}
+
+.col-6 {
+ flex: 0 0 auto;
+ width: 50%;
+}
+
+.col-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+}
+
+.col-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+}
+
+.col-9 {
+ flex: 0 0 auto;
+ width: 75%;
+}
+
+.col-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+}
+
+.col-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+}
+
+.col-12 {
+ flex: 0 0 auto;
+ width: 100%;
+}
+
+.offset-1 {
+ margin-left: 8.33333333%;
+}
+
+.offset-2 {
+ margin-left: 16.66666667%;
+}
+
+.offset-3 {
+ margin-left: 25%;
+}
+
+.offset-4 {
+ margin-left: 33.33333333%;
+}
+
+.offset-5 {
+ margin-left: 41.66666667%;
+}
+
+.offset-6 {
+ margin-left: 50%;
+}
+
+.offset-7 {
+ margin-left: 58.33333333%;
+}
+
+.offset-8 {
+ margin-left: 66.66666667%;
+}
+
+.offset-9 {
+ margin-left: 75%;
+}
+
+.offset-10 {
+ margin-left: 83.33333333%;
+}
+
+.offset-11 {
+ margin-left: 91.66666667%;
+}
+
+.g-0,
+.gx-0 {
+ --bs-gutter-x: 0;
+}
+
+.g-0,
+.gy-0 {
+ --bs-gutter-y: 0;
+}
+
+.g-1,
+.gx-1 {
+ --bs-gutter-x: 0.25rem;
+}
+
+.g-1,
+.gy-1 {
+ --bs-gutter-y: 0.25rem;
+}
+
+.g-2,
+.gx-2 {
+ --bs-gutter-x: 0.5rem;
+}
+
+.g-2,
+.gy-2 {
+ --bs-gutter-y: 0.5rem;
+}
+
+.g-3,
+.gx-3 {
+ --bs-gutter-x: 1rem;
+}
+
+.g-3,
+.gy-3 {
+ --bs-gutter-y: 1rem;
+}
+
+.g-4,
+.gx-4 {
+ --bs-gutter-x: 1.5rem;
+}
+
+.g-4,
+.gy-4 {
+ --bs-gutter-y: 1.5rem;
+}
+
+.g-5,
+.gx-5 {
+ --bs-gutter-x: 3rem;
+}
+
+.g-5,
+.gy-5 {
+ --bs-gutter-y: 3rem;
+}
+
+@media (min-width: 576px) {
+ .col-sm-auto {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .col-sm-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+ }
+ .col-sm-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+ }
+ .col-sm-3 {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .col-sm-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+ }
+ .col-sm-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+ }
+ .col-sm-6 {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .col-sm-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+ }
+ .col-sm-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+ }
+ .col-sm-9 {
+ flex: 0 0 auto;
+ width: 75%;
+ }
+ .col-sm-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+ }
+ .col-sm-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+ }
+ .col-sm-12 {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .offset-sm-0 {
+ margin-left: 0;
+ }
+ .offset-sm-1 {
+ margin-left: 8.33333333%;
+ }
+ .offset-sm-2 {
+ margin-left: 16.66666667%;
+ }
+ .offset-sm-3 {
+ margin-left: 25%;
+ }
+ .offset-sm-4 {
+ margin-left: 33.33333333%;
+ }
+ .offset-sm-5 {
+ margin-left: 41.66666667%;
+ }
+ .offset-sm-6 {
+ margin-left: 50%;
+ }
+ .offset-sm-7 {
+ margin-left: 58.33333333%;
+ }
+ .offset-sm-8 {
+ margin-left: 66.66666667%;
+ }
+ .offset-sm-9 {
+ margin-left: 75%;
+ }
+ .offset-sm-10 {
+ margin-left: 83.33333333%;
+ }
+ .offset-sm-11 {
+ margin-left: 91.66666667%;
+ }
+ .g-sm-0,
+ .gx-sm-0 {
+ --bs-gutter-x: 0;
+ }
+ .g-sm-0,
+ .gy-sm-0 {
+ --bs-gutter-y: 0;
+ }
+ .g-sm-1,
+ .gx-sm-1 {
+ --bs-gutter-x: 0.25rem;
+ }
+ .g-sm-1,
+ .gy-sm-1 {
+ --bs-gutter-y: 0.25rem;
+ }
+ .g-sm-2,
+ .gx-sm-2 {
+ --bs-gutter-x: 0.5rem;
+ }
+ .g-sm-2,
+ .gy-sm-2 {
+ --bs-gutter-y: 0.5rem;
+ }
+ .g-sm-3,
+ .gx-sm-3 {
+ --bs-gutter-x: 1rem;
+ }
+ .g-sm-3,
+ .gy-sm-3 {
+ --bs-gutter-y: 1rem;
+ }
+ .g-sm-4,
+ .gx-sm-4 {
+ --bs-gutter-x: 1.5rem;
+ }
+ .g-sm-4,
+ .gy-sm-4 {
+ --bs-gutter-y: 1.5rem;
+ }
+ .g-sm-5,
+ .gx-sm-5 {
+ --bs-gutter-x: 3rem;
+ }
+ .g-sm-5,
+ .gy-sm-5 {
+ --bs-gutter-y: 3rem;
+ }
+}
+@media (min-width: 768px) {
+ .col-md-auto {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .col-md-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+ }
+ .col-md-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+ }
+ .col-md-3 {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .col-md-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+ }
+ .col-md-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+ }
+ .col-md-6 {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .col-md-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+ }
+ .col-md-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+ }
+ .col-md-9 {
+ flex: 0 0 auto;
+ width: 75%;
+ }
+ .col-md-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+ }
+ .col-md-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+ }
+ .col-md-12 {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .offset-md-0 {
+ margin-left: 0;
+ }
+ .offset-md-1 {
+ margin-left: 8.33333333%;
+ }
+ .offset-md-2 {
+ margin-left: 16.66666667%;
+ }
+ .offset-md-3 {
+ margin-left: 25%;
+ }
+ .offset-md-4 {
+ margin-left: 33.33333333%;
+ }
+ .offset-md-5 {
+ margin-left: 41.66666667%;
+ }
+ .offset-md-6 {
+ margin-left: 50%;
+ }
+ .offset-md-7 {
+ margin-left: 58.33333333%;
+ }
+ .offset-md-8 {
+ margin-left: 66.66666667%;
+ }
+ .offset-md-9 {
+ margin-left: 75%;
+ }
+ .offset-md-10 {
+ margin-left: 83.33333333%;
+ }
+ .offset-md-11 {
+ margin-left: 91.66666667%;
+ }
+ .g-md-0,
+ .gx-md-0 {
+ --bs-gutter-x: 0;
+ }
+ .g-md-0,
+ .gy-md-0 {
+ --bs-gutter-y: 0;
+ }
+ .g-md-1,
+ .gx-md-1 {
+ --bs-gutter-x: 0.25rem;
+ }
+ .g-md-1,
+ .gy-md-1 {
+ --bs-gutter-y: 0.25rem;
+ }
+ .g-md-2,
+ .gx-md-2 {
+ --bs-gutter-x: 0.5rem;
+ }
+ .g-md-2,
+ .gy-md-2 {
+ --bs-gutter-y: 0.5rem;
+ }
+ .g-md-3,
+ .gx-md-3 {
+ --bs-gutter-x: 1rem;
+ }
+ .g-md-3,
+ .gy-md-3 {
+ --bs-gutter-y: 1rem;
+ }
+ .g-md-4,
+ .gx-md-4 {
+ --bs-gutter-x: 1.5rem;
+ }
+ .g-md-4,
+ .gy-md-4 {
+ --bs-gutter-y: 1.5rem;
+ }
+ .g-md-5,
+ .gx-md-5 {
+ --bs-gutter-x: 3rem;
+ }
+ .g-md-5,
+ .gy-md-5 {
+ --bs-gutter-y: 3rem;
+ }
+}
+@media (min-width: 992px) {
+ .col-lg-auto {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .col-lg-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+ }
+ .col-lg-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+ }
+ .col-lg-3 {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .col-lg-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+ }
+ .col-lg-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+ }
+ .col-lg-6 {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .col-lg-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+ }
+ .col-lg-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+ }
+ .col-lg-9 {
+ flex: 0 0 auto;
+ width: 75%;
+ }
+ .col-lg-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+ }
+ .col-lg-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+ }
+ .col-lg-12 {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .offset-lg-0 {
+ margin-left: 0;
+ }
+ .offset-lg-1 {
+ margin-left: 8.33333333%;
+ }
+ .offset-lg-2 {
+ margin-left: 16.66666667%;
+ }
+ .offset-lg-3 {
+ margin-left: 25%;
+ }
+ .offset-lg-4 {
+ margin-left: 33.33333333%;
+ }
+ .offset-lg-5 {
+ margin-left: 41.66666667%;
+ }
+ .offset-lg-6 {
+ margin-left: 50%;
+ }
+ .offset-lg-7 {
+ margin-left: 58.33333333%;
+ }
+ .offset-lg-8 {
+ margin-left: 66.66666667%;
+ }
+ .offset-lg-9 {
+ margin-left: 75%;
+ }
+ .offset-lg-10 {
+ margin-left: 83.33333333%;
+ }
+ .offset-lg-11 {
+ margin-left: 91.66666667%;
+ }
+ .g-lg-0,
+ .gx-lg-0 {
+ --bs-gutter-x: 0;
+ }
+ .g-lg-0,
+ .gy-lg-0 {
+ --bs-gutter-y: 0;
+ }
+ .g-lg-1,
+ .gx-lg-1 {
+ --bs-gutter-x: 0.25rem;
+ }
+ .g-lg-1,
+ .gy-lg-1 {
+ --bs-gutter-y: 0.25rem;
+ }
+ .g-lg-2,
+ .gx-lg-2 {
+ --bs-gutter-x: 0.5rem;
+ }
+ .g-lg-2,
+ .gy-lg-2 {
+ --bs-gutter-y: 0.5rem;
+ }
+ .g-lg-3,
+ .gx-lg-3 {
+ --bs-gutter-x: 1rem;
+ }
+ .g-lg-3,
+ .gy-lg-3 {
+ --bs-gutter-y: 1rem;
+ }
+ .g-lg-4,
+ .gx-lg-4 {
+ --bs-gutter-x: 1.5rem;
+ }
+ .g-lg-4,
+ .gy-lg-4 {
+ --bs-gutter-y: 1.5rem;
+ }
+ .g-lg-5,
+ .gx-lg-5 {
+ --bs-gutter-x: 3rem;
+ }
+ .g-lg-5,
+ .gy-lg-5 {
+ --bs-gutter-y: 3rem;
+ }
+}
+@media (min-width: 1200px) {
+ .col-xl-auto {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .col-xl-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+ }
+ .col-xl-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+ }
+ .col-xl-3 {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .col-xl-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+ }
+ .col-xl-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+ }
+ .col-xl-6 {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .col-xl-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+ }
+ .col-xl-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+ }
+ .col-xl-9 {
+ flex: 0 0 auto;
+ width: 75%;
+ }
+ .col-xl-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+ }
+ .col-xl-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+ }
+ .col-xl-12 {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .offset-xl-0 {
+ margin-left: 0;
+ }
+ .offset-xl-1 {
+ margin-left: 8.33333333%;
+ }
+ .offset-xl-2 {
+ margin-left: 16.66666667%;
+ }
+ .offset-xl-3 {
+ margin-left: 25%;
+ }
+ .offset-xl-4 {
+ margin-left: 33.33333333%;
+ }
+ .offset-xl-5 {
+ margin-left: 41.66666667%;
+ }
+ .offset-xl-6 {
+ margin-left: 50%;
+ }
+ .offset-xl-7 {
+ margin-left: 58.33333333%;
+ }
+ .offset-xl-8 {
+ margin-left: 66.66666667%;
+ }
+ .offset-xl-9 {
+ margin-left: 75%;
+ }
+ .offset-xl-10 {
+ margin-left: 83.33333333%;
+ }
+ .offset-xl-11 {
+ margin-left: 91.66666667%;
+ }
+ .g-xl-0,
+ .gx-xl-0 {
+ --bs-gutter-x: 0;
+ }
+ .g-xl-0,
+ .gy-xl-0 {
+ --bs-gutter-y: 0;
+ }
+ .g-xl-1,
+ .gx-xl-1 {
+ --bs-gutter-x: 0.25rem;
+ }
+ .g-xl-1,
+ .gy-xl-1 {
+ --bs-gutter-y: 0.25rem;
+ }
+ .g-xl-2,
+ .gx-xl-2 {
+ --bs-gutter-x: 0.5rem;
+ }
+ .g-xl-2,
+ .gy-xl-2 {
+ --bs-gutter-y: 0.5rem;
+ }
+ .g-xl-3,
+ .gx-xl-3 {
+ --bs-gutter-x: 1rem;
+ }
+ .g-xl-3,
+ .gy-xl-3 {
+ --bs-gutter-y: 1rem;
+ }
+ .g-xl-4,
+ .gx-xl-4 {
+ --bs-gutter-x: 1.5rem;
+ }
+ .g-xl-4,
+ .gy-xl-4 {
+ --bs-gutter-y: 1.5rem;
+ }
+ .g-xl-5,
+ .gx-xl-5 {
+ --bs-gutter-x: 3rem;
+ }
+ .g-xl-5,
+ .gy-xl-5 {
+ --bs-gutter-y: 3rem;
+ }
+}
+@media (min-width: 1400px) {
+ .col-xxl-auto {
+ flex: 0 0 auto;
+ width: auto;
+ }
+ .col-xxl-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%;
+ }
+ .col-xxl-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%;
+ }
+ .col-xxl-3 {
+ flex: 0 0 auto;
+ width: 25%;
+ }
+ .col-xxl-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%;
+ }
+ .col-xxl-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%;
+ }
+ .col-xxl-6 {
+ flex: 0 0 auto;
+ width: 50%;
+ }
+ .col-xxl-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%;
+ }
+ .col-xxl-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%;
+ }
+ .col-xxl-9 {
+ flex: 0 0 auto;
+ width: 75%;
+ }
+ .col-xxl-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%;
+ }
+ .col-xxl-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%;
+ }
+ .col-xxl-12 {
+ flex: 0 0 auto;
+ width: 100%;
+ }
+ .offset-xxl-0 {
+ margin-left: 0;
+ }
+ .offset-xxl-1 {
+ margin-left: 8.33333333%;
+ }
+ .offset-xxl-2 {
+ margin-left: 16.66666667%;
+ }
+ .offset-xxl-3 {
+ margin-left: 25%;
+ }
+ .offset-xxl-4 {
+ margin-left: 33.33333333%;
+ }
+ .offset-xxl-5 {
+ margin-left: 41.66666667%;
+ }
+ .offset-xxl-6 {
+ margin-left: 50%;
+ }
+ .offset-xxl-7 {
+ margin-left: 58.33333333%;
+ }
+ .offset-xxl-8 {
+ margin-left: 66.66666667%;
+ }
+ .offset-xxl-9 {
+ margin-left: 75%;
+ }
+ .offset-xxl-10 {
+ margin-left: 83.33333333%;
+ }
+ .offset-xxl-11 {
+ margin-left: 91.66666667%;
+ }
+ .g-xxl-0,
+ .gx-xxl-0 {
+ --bs-gutter-x: 0;
+ }
+ .g-xxl-0,
+ .gy-xxl-0 {
+ --bs-gutter-y: 0;
+ }
+ .g-xxl-1,
+ .gx-xxl-1 {
+ --bs-gutter-x: 0.25rem;
+ }
+ .g-xxl-1,
+ .gy-xxl-1 {
+ --bs-gutter-y: 0.25rem;
+ }
+ .g-xxl-2,
+ .gx-xxl-2 {
+ --bs-gutter-x: 0.5rem;
+ }
+ .g-xxl-2,
+ .gy-xxl-2 {
+ --bs-gutter-y: 0.5rem;
+ }
+ .g-xxl-3,
+ .gx-xxl-3 {
+ --bs-gutter-x: 1rem;
+ }
+ .g-xxl-3,
+ .gy-xxl-3 {
+ --bs-gutter-y: 1rem;
+ }
+ .g-xxl-4,
+ .gx-xxl-4 {
+ --bs-gutter-x: 1.5rem;
+ }
+ .g-xxl-4,
+ .gy-xxl-4 {
+ --bs-gutter-y: 1.5rem;
+ }
+ .g-xxl-5,
+ .gx-xxl-5 {
+ --bs-gutter-x: 3rem;
+ }
+ .g-xxl-5,
+ .gy-xxl-5 {
+ --bs-gutter-y: 3rem;
+ }
+}
+.btn {
+ display: inline-block;
+ font-weight: 400;
+ line-height: 1.5;
+ color: #212529;
+ text-align: center;
+ text-decoration: none;
+ vertical-align: middle;
+ cursor: pointer;
+ user-select: none;
+ background-color: transparent;
+ border: 1px solid transparent;
+ padding: 0.375rem 0.75rem;
+ font-size: 1rem;
+ border-radius: 0.25rem;
+ 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;
+}
+@media (prefers-reduced-motion: reduce) {
+ .btn {
+ transition: none;
+ }
+}
+.btn:hover {
+ color: #212529;
+}
+.btn-check:focus + .btn, .btn:focus {
+ outline: 0;
+ box-shadow: 0 0 0 0.25rem rgba(81, 99, 94, 0.25);
+}
+.btn:disabled, .btn.disabled, fieldset:disabled .btn {
+ pointer-events: none;
+ opacity: 0.65;
+}
+
+.btn-primary {
+ color: #fff;
+ background-color: #51635e;
+ border-color: #51635e;
+}
+.btn-primary:hover {
+ color: #fff;
+ background-color: #455450;
+ border-color: #414f4b;
+}
+.btn-check:focus + .btn-primary, .btn-primary:focus {
+ color: #fff;
+ background-color: #455450;
+ border-color: #414f4b;
+ box-shadow: 0 0 0 0.25rem rgba(107, 122, 118, 0.5);
+}
+.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {
+ color: #fff;
+ background-color: #414f4b;
+ border-color: #3d4a47;
+}
+.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(107, 122, 118, 0.5);
+}
+.btn-primary:disabled, .btn-primary.disabled {
+ color: #fff;
+ background-color: #51635e;
+ border-color: #51635e;
+}
+
+.btn-secondary {
+ color: #fff;
+ background-color: #6c757d;
+ border-color: #6c757d;
+}
+.btn-secondary:hover {
+ color: #fff;
+ background-color: #5c636a;
+ border-color: #565e64;
+}
+.btn-check:focus + .btn-secondary, .btn-secondary:focus {
+ color: #fff;
+ background-color: #5c636a;
+ border-color: #565e64;
+ box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
+}
+.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle {
+ color: #fff;
+ background-color: #565e64;
+ border-color: #51585e;
+}
+.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
+}
+.btn-secondary:disabled, .btn-secondary.disabled {
+ color: #fff;
+ background-color: #6c757d;
+ border-color: #6c757d;
+}
+
+.btn-success {
+ color: #fff;
+ background-color: #198754;
+ border-color: #198754;
+}
+.btn-success:hover {
+ color: #fff;
+ background-color: #157347;
+ border-color: #146c43;
+}
+.btn-check:focus + .btn-success, .btn-success:focus {
+ color: #fff;
+ background-color: #157347;
+ border-color: #146c43;
+ box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
+}
+.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle {
+ color: #fff;
+ background-color: #146c43;
+ border-color: #13653f;
+}
+.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
+}
+.btn-success:disabled, .btn-success.disabled {
+ color: #fff;
+ background-color: #198754;
+ border-color: #198754;
+}
+
+.btn-info {
+ color: #000;
+ background-color: #0dcaf0;
+ border-color: #0dcaf0;
+}
+.btn-info:hover {
+ color: #000;
+ background-color: #31d2f2;
+ border-color: #25cff2;
+}
+.btn-check:focus + .btn-info, .btn-info:focus {
+ color: #000;
+ background-color: #31d2f2;
+ border-color: #25cff2;
+ box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
+}
+.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle {
+ color: #000;
+ background-color: #3dd5f3;
+ border-color: #25cff2;
+}
+.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
+}
+.btn-info:disabled, .btn-info.disabled {
+ color: #000;
+ background-color: #0dcaf0;
+ border-color: #0dcaf0;
+}
+
+.btn-warning {
+ color: #000;
+ background-color: #ffc107;
+ border-color: #ffc107;
+}
+.btn-warning:hover {
+ color: #000;
+ background-color: #ffca2c;
+ border-color: #ffc720;
+}
+.btn-check:focus + .btn-warning, .btn-warning:focus {
+ color: #000;
+ background-color: #ffca2c;
+ border-color: #ffc720;
+ box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
+}
+.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {
+ color: #000;
+ background-color: #ffcd39;
+ border-color: #ffc720;
+}
+.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
+}
+.btn-warning:disabled, .btn-warning.disabled {
+ color: #000;
+ background-color: #ffc107;
+ border-color: #ffc107;
+}
+
+.btn-danger {
+ color: #fff;
+ background-color: #dc3545;
+ border-color: #dc3545;
+}
+.btn-danger:hover {
+ color: #fff;
+ background-color: #bb2d3b;
+ border-color: #b02a37;
+}
+.btn-check:focus + .btn-danger, .btn-danger:focus {
+ color: #fff;
+ background-color: #bb2d3b;
+ border-color: #b02a37;
+ box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
+}
+.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle {
+ color: #fff;
+ background-color: #b02a37;
+ border-color: #a52834;
+}
+.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
+}
+.btn-danger:disabled, .btn-danger.disabled {
+ color: #fff;
+ background-color: #dc3545;
+ border-color: #dc3545;
+}
+
+.btn-light {
+ color: #000;
+ background-color: #f8f9fa;
+ border-color: #f8f9fa;
+}
+.btn-light:hover {
+ color: #000;
+ background-color: #f9fafb;
+ border-color: #f9fafb;
+}
+.btn-check:focus + .btn-light, .btn-light:focus {
+ color: #000;
+ background-color: #f9fafb;
+ border-color: #f9fafb;
+ box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
+}
+.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {
+ color: #000;
+ background-color: #f9fafb;
+ border-color: #f9fafb;
+}
+.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
+}
+.btn-light:disabled, .btn-light.disabled {
+ color: #000;
+ background-color: #f8f9fa;
+ border-color: #f8f9fa;
+}
+
+.btn-dark {
+ color: #fff;
+ background-color: #212529;
+ border-color: #212529;
+}
+.btn-dark:hover {
+ color: #fff;
+ background-color: #1c1f23;
+ border-color: #1a1e21;
+}
+.btn-check:focus + .btn-dark, .btn-dark:focus {
+ color: #fff;
+ background-color: #1c1f23;
+ border-color: #1a1e21;
+ box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
+}
+.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle {
+ color: #fff;
+ background-color: #1a1e21;
+ border-color: #191c1f;
+}
+.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus {
+ box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
+}
+.btn-dark:disabled, .btn-dark.disabled {
+ color: #fff;
+ background-color: #212529;
+ border-color: #212529;
+}
+
+.btn-outline-primary {
+ color: #51635e;
+ border-color: #51635e;
+}
+.btn-outline-primary:hover {
+ color: #fff;
+ background-color: #51635e;
+ border-color: #51635e;
+}
+.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
+ box-shadow: 0 0 0 0.25rem rgba(81, 99, 94, 0.5);
+}
+.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
+ color: #fff;
+ background-color: #51635e;
+ border-color: #51635e;
+}
+.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(81, 99, 94, 0.5);
+}
+.btn-outline-primary:disabled, .btn-outline-primary.disabled {
+ color: #51635e;
+ background-color: transparent;
+}
+
+.btn-outline-secondary {
+ color: #6c757d;
+ border-color: #6c757d;
+}
+.btn-outline-secondary:hover {
+ color: #fff;
+ background-color: #6c757d;
+ border-color: #6c757d;
+}
+.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
+ box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
+}
+.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {
+ color: #fff;
+ background-color: #6c757d;
+ border-color: #6c757d;
+}
+.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
+}
+.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
+ color: #6c757d;
+ background-color: transparent;
+}
+
+.btn-outline-success {
+ color: #198754;
+ border-color: #198754;
+}
+.btn-outline-success:hover {
+ color: #fff;
+ background-color: #198754;
+ border-color: #198754;
+}
+.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
+ box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
+}
+.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {
+ color: #fff;
+ background-color: #198754;
+ border-color: #198754;
+}
+.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
+}
+.btn-outline-success:disabled, .btn-outline-success.disabled {
+ color: #198754;
+ background-color: transparent;
+}
+
+.btn-outline-info {
+ color: #0dcaf0;
+ border-color: #0dcaf0;
+}
+.btn-outline-info:hover {
+ color: #000;
+ background-color: #0dcaf0;
+ border-color: #0dcaf0;
+}
+.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
+ box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
+}
+.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
+ color: #000;
+ background-color: #0dcaf0;
+ border-color: #0dcaf0;
+}
+.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
+}
+.btn-outline-info:disabled, .btn-outline-info.disabled {
+ color: #0dcaf0;
+ background-color: transparent;
+}
+
+.btn-outline-warning {
+ color: #ffc107;
+ border-color: #ffc107;
+}
+.btn-outline-warning:hover {
+ color: #000;
+ background-color: #ffc107;
+ border-color: #ffc107;
+}
+.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {
+ box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
+}
+.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
+ color: #000;
+ background-color: #ffc107;
+ border-color: #ffc107;
+}
+.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
+}
+.btn-outline-warning:disabled, .btn-outline-warning.disabled {
+ color: #ffc107;
+ background-color: transparent;
+}
+
+.btn-outline-danger {
+ color: #dc3545;
+ border-color: #dc3545;
+}
+.btn-outline-danger:hover {
+ color: #fff;
+ background-color: #dc3545;
+ border-color: #dc3545;
+}
+.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {
+ box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
+}
+.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {
+ color: #fff;
+ background-color: #dc3545;
+ border-color: #dc3545;
+}
+.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
+}
+.btn-outline-danger:disabled, .btn-outline-danger.disabled {
+ color: #dc3545;
+ background-color: transparent;
+}
+
+.btn-outline-light {
+ color: #f8f9fa;
+ border-color: #f8f9fa;
+}
+.btn-outline-light:hover {
+ color: #000;
+ background-color: #f8f9fa;
+ border-color: #f8f9fa;
+}
+.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
+ box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
+}
+.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
+ color: #000;
+ background-color: #f8f9fa;
+ border-color: #f8f9fa;
+}
+.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
+}
+.btn-outline-light:disabled, .btn-outline-light.disabled {
+ color: #f8f9fa;
+ background-color: transparent;
+}
+
+.btn-outline-dark {
+ color: #212529;
+ border-color: #212529;
+}
+.btn-outline-dark:hover {
+ color: #fff;
+ background-color: #212529;
+ border-color: #212529;
+}
+.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
+ box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
+}
+.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {
+ color: #fff;
+ background-color: #212529;
+ border-color: #212529;
+}
+.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {
+ box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
+}
+.btn-outline-dark:disabled, .btn-outline-dark.disabled {
+ color: #212529;
+ background-color: transparent;
+}
+
+.btn-link {
+ font-weight: 400;
+ color: #51635e;
+ text-decoration: underline;
+}
+.btn-link:hover {
+ color: #414f4b;
+}
+.btn-link:disabled, .btn-link.disabled {
+ color: #6c757d;
+}
+
+.btn-lg {
+ padding: 0.5rem 1rem;
+ font-size: 1.25rem;
+ border-radius: 0.3rem;
+}
+
+.btn-sm {
+ padding: 0.25rem 0.5rem;
+ font-size: 0.875rem;
+ border-radius: 0.2rem;
+}
+
+/*# sourceMappingURL=custom.css.map */
diff --git a/alphabetlearning/static/scss/custom.css.map b/alphabetlearning/static/scss/custom.css.map
new file mode 100644
index 0000000..06a4dea
--- /dev/null
+++ b/alphabetlearning/static/scss/custom.css.map
@@ -0,0 +1 @@
+{"version":3,"sourceRoot":"","sources":["../bootstrap/scss/_root.scss","../bootstrap/scss/_reboot.scss","../bootstrap/scss/_variables.scss","../bootstrap/scss/vendor/_rfs.scss","custom.scss","../bootstrap/scss/mixins/_border-radius.scss","../bootstrap/scss/_type.scss","../bootstrap/scss/mixins/_lists.scss","../bootstrap/scss/_images.scss","../bootstrap/scss/mixins/_image.scss","../bootstrap/scss/_containers.scss","../bootstrap/scss/mixins/_container.scss","../bootstrap/scss/mixins/_breakpoints.scss","../bootstrap/scss/_grid.scss","../bootstrap/scss/mixins/_grid.scss","../bootstrap/scss/_buttons.scss","../bootstrap/scss/mixins/_buttons.scss","../bootstrap/scss/mixins/_transition.scss","../bootstrap/scss/mixins/_gradients.scss"],"names":[],"mappings":"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AsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;ADvDF;ECmBA,OdJa;EcKb,cdLa;;AcOb;EACE,OATY;EAUZ,kBdTW;EcUX,cdVW;;Acab;EAEE;;AAGF;EAKE,OArBa;EAsBb,kBdxBW;EcyBX,cdzBW;;Ac2BX;EAKI;;AAKN;EAEE,OdvCW;EcwCX;;;AD3CJ;EACE,abmW4B;EalW5B,OXxEQ;EWyER,iBbgNwC;;Aa9MxC;EACE,Ob+MsC;;AavMxC;EAEE,Ob/EO;;;Aa0FX;ECuBE;EbsKI,WALI;EE7QN;;;AUyFJ;ECmBE;EbsKI,WALI;EE7QN","file":"custom.css"} \ No newline at end of file
diff --git a/pyblackbird_cc/static/scss/custom.scss b/alphabetlearning/static/scss/custom.scss
index b65db4c..b65db4c 100644
--- a/pyblackbird_cc/static/scss/custom.scss
+++ b/alphabetlearning/static/scss/custom.scss
diff --git a/pyblackbird_cc/static/scss/forms/_floating-labels.scss b/alphabetlearning/static/scss/forms/_floating-labels.scss
index 2cf0470..2cf0470 100644
--- a/pyblackbird_cc/static/scss/forms/_floating-labels.scss
+++ b/alphabetlearning/static/scss/forms/_floating-labels.scss
diff --git a/pyblackbird_cc/static/scss/forms/_form-check.scss b/alphabetlearning/static/scss/forms/_form-check.scss
index 8a1b639..8a1b639 100644
--- a/pyblackbird_cc/static/scss/forms/_form-check.scss
+++ b/alphabetlearning/static/scss/forms/_form-check.scss
diff --git a/pyblackbird_cc/static/scss/forms/_form-control.scss b/alphabetlearning/static/scss/forms/_form-control.scss
index 67ae5f4..67ae5f4 100644
--- a/pyblackbird_cc/static/scss/forms/_form-control.scss
+++ b/alphabetlearning/static/scss/forms/_form-control.scss
diff --git a/pyblackbird_cc/static/scss/forms/_form-range.scss b/alphabetlearning/static/scss/forms/_form-range.scss
index 4732213..4732213 100644
--- a/pyblackbird_cc/static/scss/forms/_form-range.scss
+++ b/alphabetlearning/static/scss/forms/_form-range.scss
diff --git a/pyblackbird_cc/static/scss/forms/_form-select.scss b/alphabetlearning/static/scss/forms/_form-select.scss
index 69ace52..69ace52 100644
--- a/pyblackbird_cc/static/scss/forms/_form-select.scss
+++ b/alphabetlearning/static/scss/forms/_form-select.scss
diff --git a/alphabetlearning/static/scss/forms/_form-text.scss b/alphabetlearning/static/scss/forms/_form-text.scss
new file mode 100644
index 0000000..f080d1a
--- /dev/null
+++ b/alphabetlearning/static/scss/forms/_form-text.scss
@@ -0,0 +1,11 @@
+//
+// Form text
+//
+
+.form-text {
+ margin-top: $form-text-margin-top;
+ @include font-size($form-text-font-size);
+ font-style: $form-text-font-style;
+ font-weight: $form-text-font-weight;
+ color: $form-text-color;
+}
diff --git a/pyblackbird_cc/static/scss/forms/_input-group.scss b/alphabetlearning/static/scss/forms/_input-group.scss
index 58e4d40..58e4d40 100644
--- a/pyblackbird_cc/static/scss/forms/_input-group.scss
+++ b/alphabetlearning/static/scss/forms/_input-group.scss
diff --git a/alphabetlearning/static/scss/forms/_labels.scss b/alphabetlearning/static/scss/forms/_labels.scss
new file mode 100644
index 0000000..39ecafc
--- /dev/null
+++ b/alphabetlearning/static/scss/forms/_labels.scss
@@ -0,0 +1,36 @@
+//
+// Labels
+//
+
+.form-label {
+ margin-bottom: $form-label-margin-bottom;
+ @include font-size($form-label-font-size);
+ font-style: $form-label-font-style;
+ font-weight: $form-label-font-weight;
+ color: $form-label-color;
+}
+
+// For use with horizontal and inline forms, when you need the label (or legend)
+// text to align with the form controls.
+.col-form-label {
+ padding-top: add($input-padding-y, $input-border-width);
+ padding-bottom: add($input-padding-y, $input-border-width);
+ margin-bottom: 0; // Override the `<legend>` default
+ @include font-size(inherit); // Override the `<legend>` default
+ font-style: $form-label-font-style;
+ font-weight: $form-label-font-weight;
+ line-height: $input-line-height;
+ color: $form-label-color;
+}
+
+.col-form-label-lg {
+ padding-top: add($input-padding-y-lg, $input-border-width);
+ padding-bottom: add($input-padding-y-lg, $input-border-width);
+ @include font-size($input-font-size-lg);
+}
+
+.col-form-label-sm {
+ padding-top: add($input-padding-y-sm, $input-border-width);
+ padding-bottom: add($input-padding-y-sm, $input-border-width);
+ @include font-size($input-font-size-sm);
+}
diff --git a/alphabetlearning/static/scss/forms/_validation.scss b/alphabetlearning/static/scss/forms/_validation.scss
new file mode 100644
index 0000000..c48123a
--- /dev/null
+++ b/alphabetlearning/static/scss/forms/_validation.scss
@@ -0,0 +1,12 @@
+// Form validation
+//
+// Provide feedback to users when form field values are valid or invalid. Works
+// primarily for client-side validation via scoped `:invalid` and `:valid`
+// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
+// server-side validation.
+
+// scss-docs-start form-validation-states-loop
+@each $state, $data in $form-validation-states {
+ @include form-validation-state($state, $data...);
+}
+// scss-docs-end form-validation-states-loop
diff --git a/alphabetlearning/static/scss/helpers/_clearfix.scss b/alphabetlearning/static/scss/helpers/_clearfix.scss
new file mode 100644
index 0000000..e92522a
--- /dev/null
+++ b/alphabetlearning/static/scss/helpers/_clearfix.scss
@@ -0,0 +1,3 @@
+.clearfix {
+ @include clearfix();
+}
diff --git a/pyblackbird_cc/static/scss/helpers/_color-bg.scss b/alphabetlearning/static/scss/helpers/_color-bg.scss
index 1a3a4cf..1a3a4cf 100644
--- a/pyblackbird_cc/static/scss/helpers/_color-bg.scss
+++ b/alphabetlearning/static/scss/helpers/_color-bg.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_colored-links.scss b/alphabetlearning/static/scss/helpers/_colored-links.scss
index 5f86857..5f86857 100644
--- a/pyblackbird_cc/static/scss/helpers/_colored-links.scss
+++ b/alphabetlearning/static/scss/helpers/_colored-links.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_focus-ring.scss b/alphabetlearning/static/scss/helpers/_focus-ring.scss
index 26508a8..26508a8 100644
--- a/pyblackbird_cc/static/scss/helpers/_focus-ring.scss
+++ b/alphabetlearning/static/scss/helpers/_focus-ring.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_icon-link.scss b/alphabetlearning/static/scss/helpers/_icon-link.scss
index 3f8bcb3..3f8bcb3 100644
--- a/pyblackbird_cc/static/scss/helpers/_icon-link.scss
+++ b/alphabetlearning/static/scss/helpers/_icon-link.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_position.scss b/alphabetlearning/static/scss/helpers/_position.scss
index 59103d9..59103d9 100644
--- a/pyblackbird_cc/static/scss/helpers/_position.scss
+++ b/alphabetlearning/static/scss/helpers/_position.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_ratio.scss b/alphabetlearning/static/scss/helpers/_ratio.scss
index b6a7654..b6a7654 100644
--- a/pyblackbird_cc/static/scss/helpers/_ratio.scss
+++ b/alphabetlearning/static/scss/helpers/_ratio.scss
diff --git a/pyblackbird_cc/static/scss/helpers/_stacks.scss b/alphabetlearning/static/scss/helpers/_stacks.scss
index 6cd237a..6cd237a 100644
--- a/pyblackbird_cc/static/scss/helpers/_stacks.scss
+++ b/alphabetlearning/static/scss/helpers/_stacks.scss
diff --git a/alphabetlearning/static/scss/helpers/_stretched-link.scss b/alphabetlearning/static/scss/helpers/_stretched-link.scss
new file mode 100644
index 0000000..71a1c75
--- /dev/null
+++ b/alphabetlearning/static/scss/helpers/_stretched-link.scss
@@ -0,0 +1,15 @@
+//
+// Stretched link
+//
+
+.stretched-link {
+ &::#{$stretched-link-pseudo-element} {
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: $stretched-link-z-index;
+ content: "";
+ }
+}
diff --git a/alphabetlearning/static/scss/helpers/_text-truncation.scss b/alphabetlearning/static/scss/helpers/_text-truncation.scss
new file mode 100644
index 0000000..6421dac
--- /dev/null
+++ b/alphabetlearning/static/scss/helpers/_text-truncation.scss
@@ -0,0 +1,7 @@
+//
+// Text truncation
+//
+
+.text-truncate {
+ @include text-truncate();
+}
diff --git a/alphabetlearning/static/scss/helpers/_visually-hidden.scss b/alphabetlearning/static/scss/helpers/_visually-hidden.scss
new file mode 100644
index 0000000..4760ff0
--- /dev/null
+++ b/alphabetlearning/static/scss/helpers/_visually-hidden.scss
@@ -0,0 +1,8 @@
+//
+// Visually hidden
+//
+
+.visually-hidden,
+.visually-hidden-focusable:not(:focus):not(:focus-within) {
+ @include visually-hidden();
+}
diff --git a/pyblackbird_cc/static/scss/helpers/_vr.scss b/alphabetlearning/static/scss/helpers/_vr.scss
index b6f9d42..b6f9d42 100644
--- a/pyblackbird_cc/static/scss/helpers/_vr.scss
+++ b/alphabetlearning/static/scss/helpers/_vr.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_alert.scss b/alphabetlearning/static/scss/mixins/_alert.scss
index fb524af..fb524af 100644
--- a/pyblackbird_cc/static/scss/mixins/_alert.scss
+++ b/alphabetlearning/static/scss/mixins/_alert.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_backdrop.scss b/alphabetlearning/static/scss/mixins/_backdrop.scss
index 9705ae9..9705ae9 100644
--- a/pyblackbird_cc/static/scss/mixins/_backdrop.scss
+++ b/alphabetlearning/static/scss/mixins/_backdrop.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_banner.scss b/alphabetlearning/static/scss/mixins/_banner.scss
index 20c2fd1..20c2fd1 100644
--- a/pyblackbird_cc/static/scss/mixins/_banner.scss
+++ b/alphabetlearning/static/scss/mixins/_banner.scss
diff --git a/alphabetlearning/static/scss/mixins/_border-radius.scss b/alphabetlearning/static/scss/mixins/_border-radius.scss
new file mode 100644
index 0000000..616decb
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_border-radius.scss
@@ -0,0 +1,78 @@
+// stylelint-disable property-disallowed-list
+// Single side border-radius
+
+// Helper function to replace negative values with 0
+@function valid-radius($radius) {
+ $return: ();
+ @each $value in $radius {
+ @if type-of($value) == number {
+ $return: append($return, max($value, 0));
+ } @else {
+ $return: append($return, $value);
+ }
+ }
+ @return $return;
+}
+
+// scss-docs-start border-radius-mixins
+@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {
+ @if $enable-rounded {
+ border-radius: valid-radius($radius);
+ }
+ @else if $fallback-border-radius != false {
+ border-radius: $fallback-border-radius;
+ }
+}
+
+@mixin border-top-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-top-left-radius: valid-radius($radius);
+ border-top-right-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-end-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-top-right-radius: valid-radius($radius);
+ border-bottom-right-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-bottom-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-bottom-right-radius: valid-radius($radius);
+ border-bottom-left-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-start-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-top-left-radius: valid-radius($radius);
+ border-bottom-left-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-top-start-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-top-left-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-top-end-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-top-right-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-bottom-end-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-bottom-right-radius: valid-radius($radius);
+ }
+}
+
+@mixin border-bottom-start-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-bottom-left-radius: valid-radius($radius);
+ }
+}
+// scss-docs-end border-radius-mixins
diff --git a/alphabetlearning/static/scss/mixins/_box-shadow.scss b/alphabetlearning/static/scss/mixins/_box-shadow.scss
new file mode 100644
index 0000000..4172541
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_box-shadow.scss
@@ -0,0 +1,18 @@
+@mixin box-shadow($shadow...) {
+ @if $enable-shadows {
+ $result: ();
+
+ @each $value in $shadow {
+ @if $value != null {
+ $result: append($result, $value, "comma");
+ }
+ @if $value == none and length($shadow) > 1 {
+ @warn "The keyword 'none' must be used as a single argument.";
+ }
+ }
+
+ @if (length($result) > 0) {
+ box-shadow: $result;
+ }
+ }
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_breakpoints.scss b/alphabetlearning/static/scss/mixins/_breakpoints.scss
index 286be89..286be89 100644
--- a/pyblackbird_cc/static/scss/mixins/_breakpoints.scss
+++ b/alphabetlearning/static/scss/mixins/_breakpoints.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_buttons.scss b/alphabetlearning/static/scss/mixins/_buttons.scss
index cf087fd..cf087fd 100644
--- a/pyblackbird_cc/static/scss/mixins/_buttons.scss
+++ b/alphabetlearning/static/scss/mixins/_buttons.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_caret.scss b/alphabetlearning/static/scss/mixins/_caret.scss
index be73116..be73116 100644
--- a/pyblackbird_cc/static/scss/mixins/_caret.scss
+++ b/alphabetlearning/static/scss/mixins/_caret.scss
diff --git a/alphabetlearning/static/scss/mixins/_clearfix.scss b/alphabetlearning/static/scss/mixins/_clearfix.scss
new file mode 100644
index 0000000..ffc62bb
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_clearfix.scss
@@ -0,0 +1,9 @@
+// scss-docs-start clearfix
+@mixin clearfix() {
+ &::after {
+ display: block;
+ clear: both;
+ content: "";
+ }
+}
+// scss-docs-end clearfix
diff --git a/pyblackbird_cc/static/scss/mixins/_color-mode.scss b/alphabetlearning/static/scss/mixins/_color-mode.scss
index 03338b0..03338b0 100644
--- a/pyblackbird_cc/static/scss/mixins/_color-mode.scss
+++ b/alphabetlearning/static/scss/mixins/_color-mode.scss
diff --git a/alphabetlearning/static/scss/mixins/_color-scheme.scss b/alphabetlearning/static/scss/mixins/_color-scheme.scss
new file mode 100644
index 0000000..90497aa
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_color-scheme.scss
@@ -0,0 +1,7 @@
+// scss-docs-start mixin-color-scheme
+@mixin color-scheme($name) {
+ @media (prefers-color-scheme: #{$name}) {
+ @content;
+ }
+}
+// scss-docs-end mixin-color-scheme
diff --git a/pyblackbird_cc/static/scss/mixins/_container.scss b/alphabetlearning/static/scss/mixins/_container.scss
index b9f3351..b9f3351 100644
--- a/pyblackbird_cc/static/scss/mixins/_container.scss
+++ b/alphabetlearning/static/scss/mixins/_container.scss
diff --git a/alphabetlearning/static/scss/mixins/_deprecate.scss b/alphabetlearning/static/scss/mixins/_deprecate.scss
new file mode 100644
index 0000000..df070bc
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_deprecate.scss
@@ -0,0 +1,10 @@
+// Deprecate mixin
+//
+// This mixin can be used to deprecate mixins or functions.
+// `$enable-deprecation-messages` is a global variable, `$ignore-warning` is a variable that can be passed to
+// some deprecated mixins to suppress the warning (for example if the mixin is still be used in the current version of Bootstrap)
+@mixin deprecate($name, $deprecate-version, $remove-version, $ignore-warning: false) {
+ @if ($enable-deprecation-messages != false and $ignore-warning != true) {
+ @warn "#{$name} has been deprecated as of #{$deprecate-version}. It will be removed entirely in #{$remove-version}.";
+ }
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_forms.scss b/alphabetlearning/static/scss/mixins/_forms.scss
index 00b4764..00b4764 100644
--- a/pyblackbird_cc/static/scss/mixins/_forms.scss
+++ b/alphabetlearning/static/scss/mixins/_forms.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_gradients.scss b/alphabetlearning/static/scss/mixins/_gradients.scss
index 608e18d..608e18d 100644
--- a/pyblackbird_cc/static/scss/mixins/_gradients.scss
+++ b/alphabetlearning/static/scss/mixins/_gradients.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_grid.scss b/alphabetlearning/static/scss/mixins/_grid.scss
index ea30739..ea30739 100644
--- a/pyblackbird_cc/static/scss/mixins/_grid.scss
+++ b/alphabetlearning/static/scss/mixins/_grid.scss
diff --git a/alphabetlearning/static/scss/mixins/_image.scss b/alphabetlearning/static/scss/mixins/_image.scss
new file mode 100644
index 0000000..e1df779
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_image.scss
@@ -0,0 +1,16 @@
+// Image Mixins
+// - Responsive image
+// - Retina image
+
+
+// Responsive image
+//
+// Keep images from scaling beyond the width of their parents.
+
+@mixin img-fluid {
+ // Part 1: Set a maximum relative to the parent
+ max-width: 100%;
+ // Part 2: Override the height to auto, otherwise images will be stretched
+ // when setting a width and height attribute on the img element.
+ height: auto;
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_list-group.scss b/alphabetlearning/static/scss/mixins/_list-group.scss
index 6274f34..6274f34 100644
--- a/pyblackbird_cc/static/scss/mixins/_list-group.scss
+++ b/alphabetlearning/static/scss/mixins/_list-group.scss
diff --git a/alphabetlearning/static/scss/mixins/_lists.scss b/alphabetlearning/static/scss/mixins/_lists.scss
new file mode 100644
index 0000000..2518562
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_lists.scss
@@ -0,0 +1,7 @@
+// Lists
+
+// Unstyled keeps list items block level, just removes default browser padding and list-style
+@mixin list-unstyled {
+ padding-left: 0;
+ list-style: none;
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_pagination.scss b/alphabetlearning/static/scss/mixins/_pagination.scss
index 0d65796..0d65796 100644
--- a/pyblackbird_cc/static/scss/mixins/_pagination.scss
+++ b/alphabetlearning/static/scss/mixins/_pagination.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_reset-text.scss b/alphabetlearning/static/scss/mixins/_reset-text.scss
index f5bd1af..f5bd1af 100644
--- a/pyblackbird_cc/static/scss/mixins/_reset-text.scss
+++ b/alphabetlearning/static/scss/mixins/_reset-text.scss
diff --git a/alphabetlearning/static/scss/mixins/_resize.scss b/alphabetlearning/static/scss/mixins/_resize.scss
new file mode 100644
index 0000000..66f233a
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_resize.scss
@@ -0,0 +1,6 @@
+// Resize anything
+
+@mixin resizable($direction) {
+ overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
+ resize: $direction; // Options: horizontal, vertical, both
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_table-variants.scss b/alphabetlearning/static/scss/mixins/_table-variants.scss
index 5fe1b9b..5fe1b9b 100644
--- a/pyblackbird_cc/static/scss/mixins/_table-variants.scss
+++ b/alphabetlearning/static/scss/mixins/_table-variants.scss
diff --git a/alphabetlearning/static/scss/mixins/_text-truncate.scss b/alphabetlearning/static/scss/mixins/_text-truncate.scss
new file mode 100644
index 0000000..3504bb1
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_text-truncate.scss
@@ -0,0 +1,8 @@
+// Text truncate
+// Requires inline-block or block for proper styling
+
+@mixin text-truncate() {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
diff --git a/alphabetlearning/static/scss/mixins/_transition.scss b/alphabetlearning/static/scss/mixins/_transition.scss
new file mode 100644
index 0000000..d437f6d
--- /dev/null
+++ b/alphabetlearning/static/scss/mixins/_transition.scss
@@ -0,0 +1,26 @@
+// stylelint-disable property-disallowed-list
+@mixin transition($transition...) {
+ @if length($transition) == 0 {
+ $transition: $transition-base;
+ }
+
+ @if length($transition) > 1 {
+ @each $value in $transition {
+ @if $value == null or $value == none {
+ @warn "The keyword 'none' or 'null' must be used as a single argument.";
+ }
+ }
+ }
+
+ @if $enable-transitions {
+ @if nth($transition, 1) != null {
+ transition: $transition;
+ }
+
+ @if $enable-reduced-motion and nth($transition, 1) != null and nth($transition, 1) != none {
+ @media (prefers-reduced-motion: reduce) {
+ transition: none;
+ }
+ }
+ }
+}
diff --git a/pyblackbird_cc/static/scss/mixins/_utilities.scss b/alphabetlearning/static/scss/mixins/_utilities.scss
index 4795e89..4795e89 100644
--- a/pyblackbird_cc/static/scss/mixins/_utilities.scss
+++ b/alphabetlearning/static/scss/mixins/_utilities.scss
diff --git a/pyblackbird_cc/static/scss/mixins/_visually-hidden.scss b/alphabetlearning/static/scss/mixins/_visually-hidden.scss
index 082aeec..082aeec 100644
--- a/pyblackbird_cc/static/scss/mixins/_visually-hidden.scss
+++ b/alphabetlearning/static/scss/mixins/_visually-hidden.scss
diff --git a/pyblackbird_cc/static/scss/tests/jasmine.js b/alphabetlearning/static/scss/tests/jasmine.js
index 25d838c..25d838c 100644
--- a/pyblackbird_cc/static/scss/tests/jasmine.js
+++ b/alphabetlearning/static/scss/tests/jasmine.js
diff --git a/pyblackbird_cc/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss b/alphabetlearning/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss
index f08ae58..f08ae58 100644
--- a/pyblackbird_cc/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss
+++ b/alphabetlearning/static/scss/tests/mixins/_auto-import-of-variables-dark.test.scss
diff --git a/pyblackbird_cc/static/scss/tests/mixins/_color-modes.test.scss b/alphabetlearning/static/scss/tests/mixins/_color-modes.test.scss
index 9ecc628..9ecc628 100644
--- a/pyblackbird_cc/static/scss/tests/mixins/_color-modes.test.scss
+++ b/alphabetlearning/static/scss/tests/mixins/_color-modes.test.scss
diff --git a/pyblackbird_cc/static/scss/tests/mixins/_media-query-color-mode-full.test.scss b/alphabetlearning/static/scss/tests/mixins/_media-query-color-mode-full.test.scss
index 00ed82d..00ed82d 100644
--- a/pyblackbird_cc/static/scss/tests/mixins/_media-query-color-mode-full.test.scss
+++ b/alphabetlearning/static/scss/tests/mixins/_media-query-color-mode-full.test.scss
diff --git a/pyblackbird_cc/static/scss/tests/mixins/_utilities.test.scss b/alphabetlearning/static/scss/tests/mixins/_utilities.test.scss
index 8140ac4..8140ac4 100644
--- a/pyblackbird_cc/static/scss/tests/mixins/_utilities.test.scss
+++ b/alphabetlearning/static/scss/tests/mixins/_utilities.test.scss
diff --git a/pyblackbird_cc/static/scss/tests/sass-true/register.js b/alphabetlearning/static/scss/tests/sass-true/register.js
index d93e414..d93e414 100644
--- a/pyblackbird_cc/static/scss/tests/sass-true/register.js
+++ b/alphabetlearning/static/scss/tests/sass-true/register.js
diff --git a/pyblackbird_cc/static/scss/tests/sass-true/runner.js b/alphabetlearning/static/scss/tests/sass-true/runner.js
index bef870a..bef870a 100644
--- a/pyblackbird_cc/static/scss/tests/sass-true/runner.js
+++ b/alphabetlearning/static/scss/tests/sass-true/runner.js
diff --git a/pyblackbird_cc/static/scss/tests/utilities/_api.test.scss b/alphabetlearning/static/scss/tests/utilities/_api.test.scss
index 304d8d1..304d8d1 100644
--- a/pyblackbird_cc/static/scss/tests/utilities/_api.test.scss
+++ b/alphabetlearning/static/scss/tests/utilities/_api.test.scss
diff --git a/alphabetlearning/static/scss/utilities/_api.scss b/alphabetlearning/static/scss/utilities/_api.scss
new file mode 100644
index 0000000..62e1d39
--- /dev/null
+++ b/alphabetlearning/static/scss/utilities/_api.scss
@@ -0,0 +1,47 @@
+// Loop over each breakpoint
+@each $breakpoint in map-keys($grid-breakpoints) {
+
+ // Generate media query if needed
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ // Loop over each utility property
+ @each $key, $utility in $utilities {
+ // The utility can be disabled with `false`, thus check if the utility is a map first
+ // Only proceed if responsive media queries are enabled or if it's the base media query
+ @if type-of($utility) == "map" and (map-get($utility, responsive) or $infix == "") {
+ @include generate-utility($utility, $infix);
+ }
+ }
+ }
+}
+
+// RFS rescaling
+@media (min-width: $rfs-mq-value) {
+ @each $breakpoint in map-keys($grid-breakpoints) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ @if (map-get($grid-breakpoints, $breakpoint) < $rfs-breakpoint) {
+ // Loop over each utility property
+ @each $key, $utility in $utilities {
+ // The utility can be disabled with `false`, thus check if the utility is a map first
+ // Only proceed if responsive media queries are enabled or if it's the base media query
+ @if type-of($utility) == "map" and map-get($utility, rfs) and (map-get($utility, responsive) or $infix == "") {
+ @include generate-utility($utility, $infix, true);
+ }
+ }
+ }
+ }
+}
+
+
+// Print utilities
+@media print {
+ @each $key, $utility in $utilities {
+ // The utility can be disabled with `false`, thus check if the utility is a map first
+ // Then check if the utility needs print styles
+ @if type-of($utility) == "map" and map-get($utility, print) == true {
+ @include generate-utility($utility, "-print");
+ }
+ }
+}
diff --git a/pyblackbird_cc/static/scss/vendor/_rfs.scss b/alphabetlearning/static/scss/vendor/_rfs.scss
index aa1f82b..aa1f82b 100644
--- a/pyblackbird_cc/static/scss/vendor/_rfs.scss
+++ b/alphabetlearning/static/scss/vendor/_rfs.scss