\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css
new file mode 100644
index 0000000..f4ae564
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css
@@ -0,0 +1,128 @@
+/*
+ You probably do not need to edit this at all.
+
+ Add some SmartMenus required styles not covered in Bootstrap 4's default CSS.
+ These are theme independent and should work with any Bootstrap 4 theme mod.
+*/
+
+
+/* Carets in collapsible mode (make them look like +/- buttons) */
+.navbar-nav.sm-collapsible .sub-arrow {
+ position: absolute;
+ top: 50%;
+ right: 0;
+ margin: -0.7em 0.5em 0 0;
+ border: 1px solid rgba(0, 0, 0, .1);
+ border-radius: .25rem;
+ padding: 0;
+ width: 2em;
+ height: 1.4em;
+ font-size: 1.25rem;
+ line-height: 1.2em;
+ text-align: center;
+}
+.navbar-nav.sm-collapsible .sub-arrow::before {
+ content: '+';
+}
+.navbar-nav.sm-collapsible .show > a > .sub-arrow::before {
+ content: '-';
+}
+.navbar-dark .navbar-nav.sm-collapsible .nav-link .sub-arrow {
+ border-color: rgba(255, 255, 255, .1);
+}
+/* make sure there's room for the carets */
+.navbar-nav.sm-collapsible .has-submenu {
+ padding-right: 3em;
+}
+/* keep the carets properly positioned */
+.navbar-nav.sm-collapsible .nav-link,
+.navbar-nav.sm-collapsible .dropdown-item {
+ position: relative;
+}
+
+
+/* Nav carets in expanded mode */
+.navbar-nav:not(.sm-collapsible) .nav-link .sub-arrow {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ margin-left: .255em;
+ vertical-align: .255em;
+ border-top: .3em solid;
+ border-right: .3em solid transparent;
+ border-left: .3em solid transparent;
+}
+/* point the arrows up for .fixed-bottom navbars */
+.fixed-bottom .navbar-nav:not(.sm-collapsible) .nav-link .sub-arrow,
+.fixed-bottom .navbar-nav:not(.sm-collapsible):not([data-sm-skip]) .dropdown-toggle::after {
+ border-top: 0;
+ border-bottom: .3em solid;
+}
+
+
+/* Dropdown carets in expanded mode */
+.navbar-nav:not(.sm-collapsible) .dropdown-item .sub-arrow,
+.navbar-nav:not(.sm-collapsible):not([data-sm-skip]) .dropdown-menu .dropdown-toggle::after {
+ position: absolute;
+ top: 50%;
+ right: 0;
+ width: 0;
+ height: 0;
+ margin-top: -.3em;
+ margin-right: 1em;
+ border-top: .3em solid transparent;
+ border-bottom: .3em solid transparent;
+ border-left: .3em solid;
+}
+/* make sure there's room for the carets */
+.navbar-nav:not(.sm-collapsible) .dropdown-item.has-submenu {
+ padding-right: 2em;
+}
+
+
+/* Scrolling arrows for tall menus */
+.navbar-nav .scroll-up,
+.navbar-nav .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ height: 20px;
+ overflow: hidden;
+ text-align: center;
+}
+.navbar-nav .scroll-up-arrow,
+.navbar-nav .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-top: 7px solid transparent;
+ border-right: 7px solid transparent;
+ border-bottom: 7px solid;
+ border-left: 7px solid transparent;
+}
+.navbar-nav .scroll-down-arrow {
+ top: 6px;
+ border-top: 7px solid;
+ border-right: 7px solid transparent;
+ border-bottom: 7px solid transparent;
+ border-left: 7px solid transparent;
+}
+
+
+/* Add some spacing for 2+ level sub menus in collapsible mode */
+.navbar-nav.sm-collapsible .dropdown-menu .dropdown-menu {
+ margin: .5em;
+}
+
+
+/* Fix SmartMenus sub menus auto width (subMenusMinWidth/subMenusMaxWidth options) */
+.navbar-nav:not([data-sm-skip]) .dropdown-item {
+ white-space: normal;
+}
+.navbar-nav:not(.sm-collapsible) .sm-nowrap > li > .dropdown-item {
+ white-space: nowrap;
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js
new file mode 100644
index 0000000..8d507bb
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js
@@ -0,0 +1,166 @@
+/*!
+ * SmartMenus jQuery Plugin Bootstrap 4 Addon - v0.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+
+(function(factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD
+ define(['jquery', 'smartmenus'], factory);
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
+ // CommonJS
+ module.exports = factory(require('jquery'));
+ } else {
+ // Global jQuery
+ factory(jQuery);
+ }
+} (function($) {
+
+ $.extend($.SmartMenus.Bootstrap = {}, {
+ keydownFix: false,
+ init: function() {
+ // init all navbars that don't have the "data-sm-skip" attribute set
+ var $navbars = $('ul.navbar-nav:not([data-sm-skip])');
+ $navbars.each(function() {
+ var $this = $(this),
+ obj = $this.data('smartmenus');
+ // if this navbar is not initialized
+ if (!obj) {
+ var skipBehavior = $this.is('[data-sm-skip-collapsible-behavior]'),
+ rightAligned = $this.hasClass('ml-auto') || $this.prevAll('.mr-auto').length > 0;
+
+ $this.smartmenus({
+ // these are some good default options that should work for all
+ subMenusSubOffsetX: 2,
+ subMenusSubOffsetY: -9,
+ subIndicators: !skipBehavior,
+ collapsibleShowFunction: null,
+ collapsibleHideFunction: null,
+ rightToLeftSubMenus: rightAligned,
+ bottomToTopSubMenus: $this.closest('.fixed-bottom').length > 0,
+ // custom option(s) for the Bootstrap 4 addon
+ bootstrapHighlightClasses: 'text-dark bg-light'
+ })
+ .on({
+ // set/unset proper Bootstrap classes for some menu elements
+ 'show.smapi': function(e, menu) {
+ var $menu = $(menu),
+ $scrollArrows = $menu.dataSM('scroll-arrows');
+ if ($scrollArrows) {
+ $scrollArrows.css('background-color', $menu.css('background-color'));
+ }
+ $menu.parent().addClass('show');
+ if (obj.opts.keepHighlighted && $menu.dataSM('level') > 2) {
+ $menu.prevAll('a').addClass(obj.opts.bootstrapHighlightClasses);
+ }
+ },
+ 'hide.smapi': function(e, menu) {
+ var $menu = $(menu);
+ $menu.parent().removeClass('show');
+ if (obj.opts.keepHighlighted && $menu.dataSM('level') > 2) {
+ $menu.prevAll('a').removeClass(obj.opts.bootstrapHighlightClasses);
+ }
+ }
+ });
+
+ obj = $this.data('smartmenus');
+
+ function onInit() {
+ // set Bootstrap's "active" class to SmartMenus "current" items (should someone decide to enable markCurrentItem: true)
+ $this.find('a.current').each(function() {
+ var $this = $(this);
+ // dropdown items require the class to be set to the A's while for nav items it should be set to the parent LI's
+ ($this.hasClass('dropdown-item') ? $this : $this.parent()).addClass('active');
+ });
+ // parent items fixes
+ $this.find('a.has-submenu').each(function() {
+ var $this = $(this);
+ // remove Bootstrap required attributes that might cause conflicting issues with the SmartMenus script
+ if ($this.is('[data-toggle="dropdown"]')) {
+ $this.dataSM('bs-data-toggle-dropdown', true).removeAttr('data-toggle');
+ }
+ // remove Bootstrap's carets generating class
+ if (!skipBehavior && $this.hasClass('dropdown-toggle')) {
+ $this.dataSM('bs-dropdown-toggle', true).removeClass('dropdown-toggle');
+ }
+ });
+ }
+
+ onInit();
+
+ function onBeforeDestroy() {
+ $this.find('a.current').each(function() {
+ var $this = $(this);
+ ($this.hasClass('active') ? $this : $this.parent()).removeClass('active');
+ });
+ $this.find('a.has-submenu').each(function() {
+ var $this = $(this);
+ if ($this.dataSM('bs-dropdown-toggle')) {
+ $this.addClass('dropdown-toggle').removeDataSM('bs-dropdown-toggle');
+ }
+ if ($this.dataSM('bs-data-toggle-dropdown')) {
+ $this.attr('data-toggle', 'dropdown').removeDataSM('bs-data-toggle-dropdown');
+ }
+ });
+ }
+
+ // custom "refresh" method for Bootstrap
+ obj.refresh = function() {
+ $.SmartMenus.prototype.refresh.call(this);
+ onInit();
+ // update collapsible detection
+ detectCollapsible(true);
+ };
+
+ // custom "destroy" method for Bootstrap
+ obj.destroy = function(refresh) {
+ onBeforeDestroy();
+ $.SmartMenus.prototype.destroy.call(this, refresh);
+ };
+
+ // keep Bootstrap's default behavior (i.e. use the whole item area just as a sub menu toggle)
+ if (skipBehavior) {
+ obj.opts.collapsibleBehavior = 'toggle';
+ }
+
+ // onresize detect when the navbar becomes collapsible and add it the "sm-collapsible" class
+ var winW;
+ function detectCollapsible(force) {
+ var newW = obj.getViewportWidth();
+ if (newW != winW || force) {
+ if (obj.isCollapsible()) {
+ $this.addClass('sm-collapsible');
+ } else {
+ $this.removeClass('sm-collapsible');
+ }
+ winW = newW;
+ }
+ }
+ detectCollapsible();
+ $(window).on('resize.smartmenus' + obj.rootId, detectCollapsible);
+ }
+ });
+ // keydown fix for Bootstrap 4 conflict
+ if ($navbars.length && !$.SmartMenus.Bootstrap.keydownFix) {
+ // unhook BS keydown handler for all dropdowns
+ $(document).off('keydown.bs.dropdown.data-api', '.dropdown-menu');
+ // restore BS keydown handler for dropdowns that are not inside SmartMenus navbars
+ // SmartMenus won't add the "show" class so it's handy here
+ if ($.fn.dropdown && $.fn.dropdown.Constructor) {
+ $(document).on('keydown.bs.dropdown.data-api', '.dropdown-menu.show', $.fn.dropdown.Constructor._dataApiKeydownHandler);
+ }
+ $.SmartMenus.Bootstrap.keydownFix = true;
+ }
+ }
+ });
+
+ // init ondomready
+ $($.SmartMenus.Bootstrap.init);
+
+ return $;
+}));
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.min.js b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.min.js
new file mode 100644
index 0000000..504940f
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap-4/jquery.smartmenus.bootstrap-4.min.js
@@ -0,0 +1,3 @@
+/*! SmartMenus jQuery Plugin Bootstrap 4 Addon - v0.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery","smartmenus"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function(t){return t.extend(t.SmartMenus.Bootstrap={},{keydownFix:!1,init:function(){var e=t("ul.navbar-nav:not([data-sm-skip])");e.each(function(){function e(){o.find("a.current").each(function(){var e=t(this);(e.hasClass("dropdown-item")?e:e.parent()).addClass("active")}),o.find("a.has-submenu").each(function(){var e=t(this);e.is('[data-toggle="dropdown"]')&&e.dataSM("bs-data-toggle-dropdown",!0).removeAttr("data-toggle"),!n&&e.hasClass("dropdown-toggle")&&e.dataSM("bs-dropdown-toggle",!0).removeClass("dropdown-toggle")})}function s(){o.find("a.current").each(function(){var e=t(this);(e.hasClass("active")?e:e.parent()).removeClass("active")}),o.find("a.has-submenu").each(function(){var e=t(this);e.dataSM("bs-dropdown-toggle")&&e.addClass("dropdown-toggle").removeDataSM("bs-dropdown-toggle"),e.dataSM("bs-data-toggle-dropdown")&&e.attr("data-toggle","dropdown").removeDataSM("bs-data-toggle-dropdown")})}function i(t){var e=a.getViewportWidth();(e!=u||t)&&(a.isCollapsible()?o.addClass("sm-collapsible"):o.removeClass("sm-collapsible"),u=e)}var o=t(this),a=o.data("smartmenus");if(!a){var n=o.is("[data-sm-skip-collapsible-behavior]"),r=o.hasClass("ml-auto")||o.prevAll(".mr-auto").length>0;o.smartmenus({subMenusSubOffsetX:2,subMenusSubOffsetY:-9,subIndicators:!n,collapsibleShowFunction:null,collapsibleHideFunction:null,rightToLeftSubMenus:r,bottomToTopSubMenus:o.closest(".fixed-bottom").length>0,bootstrapHighlightClasses:"text-dark bg-light"}).on({"show.smapi":function(e,s){var i=t(s),o=i.dataSM("scroll-arrows");o&&o.css("background-color",i.css("background-color")),i.parent().addClass("show"),a.opts.keepHighlighted&&i.dataSM("level")>2&&i.prevAll("a").addClass(a.opts.bootstrapHighlightClasses)},"hide.smapi":function(e,s){var i=t(s);i.parent().removeClass("show"),a.opts.keepHighlighted&&i.dataSM("level")>2&&i.prevAll("a").removeClass(a.opts.bootstrapHighlightClasses)}}),a=o.data("smartmenus"),e(),a.refresh=function(){t.SmartMenus.prototype.refresh.call(this),e(),i(!0)},a.destroy=function(e){s(),t.SmartMenus.prototype.destroy.call(this,e)},n&&(a.opts.collapsibleBehavior="toggle");var u;i(),t(window).on("resize.smartmenus"+a.rootId,i)}}),e.length&&!t.SmartMenus.Bootstrap.keydownFix&&(t(document).off("keydown.bs.dropdown.data-api",".dropdown-menu"),t.fn.dropdown&&t.fn.dropdown.Constructor&&t(document).on("keydown.bs.dropdown.data-api",".dropdown-menu.show",t.fn.dropdown.Constructor._dataApiKeydownHandler),t.SmartMenus.Bootstrap.keydownFix=!0)}}),t(t.SmartMenus.Bootstrap.init),t});
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.css b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.css
new file mode 100644
index 0000000..8407ce1
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.css
@@ -0,0 +1,122 @@
+/*
+ You probably do not need to edit this at all.
+
+ Add some SmartMenus required styles not covered in Bootstrap 3's default CSS.
+ These are theme independent and should work with any Bootstrap 3 theme mod.
+*/
+/* sub menus arrows on desktop */
+.navbar-nav:not(.sm-collapsible) ul .caret {
+ position: absolute;
+ right: 0;
+ margin-top: 6px;
+ margin-right: 15px;
+ border-top: 4px solid transparent;
+ border-bottom: 4px solid transparent;
+ border-left: 4px dashed;
+}
+.navbar-nav:not(.sm-collapsible) ul a.has-submenu {
+ padding-right: 30px;
+}
+/* make sub menu arrows look like +/- buttons in collapsible mode */
+.navbar-nav.sm-collapsible .caret, .navbar-nav.sm-collapsible ul .caret {
+ position: absolute;
+ right: 0;
+ margin: -3px 15px 0 0;
+ padding: 0;
+ width: 32px;
+ height: 26px;
+ line-height: 24px;
+ text-align: center;
+ border-width: 1px;
+ border-style: solid;
+}
+.navbar-nav.sm-collapsible .caret:before {
+ content: '+';
+ font-family: monospace;
+ font-weight: bold;
+}
+.navbar-nav.sm-collapsible .open > a > .caret:before {
+ content: '-';
+}
+.navbar-nav.sm-collapsible a.has-submenu {
+ padding-right: 50px;
+}
+/* revert to Bootstrap's default carets in collapsible mode when the "data-sm-skip-collapsible-behavior" attribute is set to the ul.navbar-nav */
+.navbar-nav.sm-collapsible[data-sm-skip-collapsible-behavior] .caret, .navbar-nav.sm-collapsible[data-sm-skip-collapsible-behavior] ul .caret {
+ position: static;
+ margin: 0 0 0 2px;
+ padding: 0;
+ width: 0;
+ height: 0;
+ border-top: 4px dashed;
+ border-right: 4px solid transparent;
+ border-bottom: 0;
+ border-left: 4px solid transparent;
+}
+.navbar-nav.sm-collapsible[data-sm-skip-collapsible-behavior] .caret:before {
+ content: '' !important;
+}
+.navbar-nav.sm-collapsible[data-sm-skip-collapsible-behavior] a.has-submenu {
+ padding-right: 15px;
+}
+/* scrolling arrows for tall menus */
+.navbar-nav span.scroll-up, .navbar-nav span.scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ height: 20px;
+ overflow: hidden;
+ text-align: center;
+}
+.navbar-nav span.scroll-up-arrow, .navbar-nav span.scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-top: 7px dashed transparent;
+ border-right: 7px dashed transparent;
+ border-bottom: 7px solid;
+ border-left: 7px dashed transparent;
+}
+.navbar-nav span.scroll-down-arrow {
+ top: 6px;
+ border-top: 7px solid;
+ border-right: 7px dashed transparent;
+ border-bottom: 7px dashed transparent;
+ border-left: 7px dashed transparent;
+}
+/* add more indentation for 2+ level sub in collapsible mode - Bootstrap normally supports just 1 level sub menus */
+.navbar-nav.sm-collapsible ul .dropdown-menu > li > a,
+.navbar-nav.sm-collapsible ul .dropdown-menu .dropdown-header {
+ padding-left: 35px;
+}
+.navbar-nav.sm-collapsible ul ul .dropdown-menu > li > a,
+.navbar-nav.sm-collapsible ul ul .dropdown-menu .dropdown-header {
+ padding-left: 45px;
+}
+.navbar-nav.sm-collapsible ul ul ul .dropdown-menu > li > a,
+.navbar-nav.sm-collapsible ul ul ul .dropdown-menu .dropdown-header {
+ padding-left: 55px;
+}
+.navbar-nav.sm-collapsible ul ul ul ul .dropdown-menu > li > a,
+.navbar-nav.sm-collapsible ul ul ul ul .dropdown-menu .dropdown-header {
+ padding-left: 65px;
+}
+/* fix SmartMenus sub menus auto width (subMenusMinWidth and subMenusMaxWidth options) */
+.navbar-nav .dropdown-menu > li > a {
+ white-space: normal;
+}
+.navbar-nav ul.sm-nowrap > li > a {
+ white-space: nowrap;
+}
+.navbar-nav.sm-collapsible ul.sm-nowrap > li > a {
+ white-space: normal;
+}
+/* fix .navbar-right subs alignment */
+.navbar-right ul.dropdown-menu {
+ left: 0;
+ right: auto;
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.js b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.js
new file mode 100644
index 0000000..c3381d6
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.js
@@ -0,0 +1,159 @@
+/*!
+ * SmartMenus jQuery Plugin Bootstrap Addon - v0.4.1 - September 17, 2017
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+
+(function(factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD
+ define(['jquery', 'smartmenus'], factory);
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
+ // CommonJS
+ module.exports = factory(require('jquery'));
+ } else {
+ // Global jQuery
+ factory(jQuery);
+ }
+} (function($) {
+
+ $.extend($.SmartMenus.Bootstrap = {}, {
+ keydownFix: false,
+ init: function() {
+ // init all navbars that don't have the "data-sm-skip" attribute set
+ var $navbars = $('ul.navbar-nav:not([data-sm-skip])');
+ $navbars.each(function() {
+ var $this = $(this),
+ obj = $this.data('smartmenus');
+ // if this navbar is not initialized
+ if (!obj) {
+ $this.smartmenus({
+ // these are some good default options that should work for all
+ subMenusSubOffsetX: 2,
+ subMenusSubOffsetY: -6,
+ subIndicators: false,
+ collapsibleShowFunction: null,
+ collapsibleHideFunction: null,
+ rightToLeftSubMenus: $this.hasClass('navbar-right'),
+ bottomToTopSubMenus: $this.closest('.navbar').hasClass('navbar-fixed-bottom')
+ })
+ .on({
+ // set/unset proper Bootstrap classes for some menu elements
+ 'show.smapi': function(e, menu) {
+ var $menu = $(menu),
+ $scrollArrows = $menu.dataSM('scroll-arrows');
+ if ($scrollArrows) {
+ // they inherit border-color from body, so we can use its background-color too
+ $scrollArrows.css('background-color', $(document.body).css('background-color'));
+ }
+ $menu.parent().addClass('open');
+ },
+ 'hide.smapi': function(e, menu) {
+ $(menu).parent().removeClass('open');
+ }
+ });
+
+ function onInit() {
+ // set Bootstrap's "active" class to SmartMenus "current" items (should someone decide to enable markCurrentItem: true)
+ $this.find('a.current').parent().addClass('active');
+ // remove any Bootstrap required attributes that might cause conflicting issues with the SmartMenus script
+ $this.find('a.has-submenu').each(function() {
+ var $this = $(this);
+ if ($this.is('[data-toggle="dropdown"]')) {
+ $this.dataSM('bs-data-toggle-dropdown', true).removeAttr('data-toggle');
+ }
+ if ($this.is('[role="button"]')) {
+ $this.dataSM('bs-role-button', true).removeAttr('role');
+ }
+ });
+ }
+
+ onInit();
+
+ function onBeforeDestroy() {
+ $this.find('a.current').parent().removeClass('active');
+ $this.find('a.has-submenu').each(function() {
+ var $this = $(this);
+ if ($this.dataSM('bs-data-toggle-dropdown')) {
+ $this.attr('data-toggle', 'dropdown').removeDataSM('bs-data-toggle-dropdown');
+ }
+ if ($this.dataSM('bs-role-button')) {
+ $this.attr('role', 'button').removeDataSM('bs-role-button');
+ }
+ });
+ }
+
+ obj = $this.data('smartmenus');
+
+ // custom "isCollapsible" method for Bootstrap
+ obj.isCollapsible = function() {
+ return !/^(left|right)$/.test(this.$firstLink.parent().css('float')) && this.$root.css('display') == 'block';
+ };
+
+ // custom "refresh" method for Bootstrap
+ obj.refresh = function() {
+ $.SmartMenus.prototype.refresh.call(this);
+ onInit();
+ // update collapsible detection
+ detectCollapsible(true);
+ };
+
+ // custom "destroy" method for Bootstrap
+ obj.destroy = function(refresh) {
+ onBeforeDestroy();
+ $.SmartMenus.prototype.destroy.call(this, refresh);
+ };
+
+ // keep Bootstrap's default behavior for parent items when the "data-sm-skip-collapsible-behavior" attribute is set to the ul.navbar-nav
+ // i.e. use the whole item area just as a sub menu toggle and don't customize the carets
+ if ($this.is('[data-sm-skip-collapsible-behavior]')) {
+ obj.opts.collapsibleBehavior = 'toggle';
+ }
+
+ // onresize detect when the navbar becomes collapsible and add it the "sm-collapsible" class
+ var winW;
+ function detectCollapsible(force) {
+ var newW = obj.getViewportWidth();
+ if (newW != winW || force) {
+ var $carets = $this.find('.caret');
+ if (obj.isCollapsible()) {
+ $this.addClass('sm-collapsible');
+ // set "navbar-toggle" class to carets (so they look like a button) if the "data-sm-skip-collapsible-behavior" attribute is not set to the ul.navbar-nav
+ if (!$this.is('[data-sm-skip-collapsible-behavior]')) {
+ $carets.addClass('navbar-toggle sub-arrow');
+ }
+ } else {
+ $this.removeClass('sm-collapsible');
+ if (!$this.is('[data-sm-skip-collapsible-behavior]')) {
+ $carets.removeClass('navbar-toggle sub-arrow');
+ }
+ }
+ winW = newW;
+ }
+ }
+ detectCollapsible();
+ $(window).on('resize.smartmenus' + obj.rootId, detectCollapsible);
+ }
+ });
+ // keydown fix for Bootstrap 3.3.5+ conflict
+ if ($navbars.length && !$.SmartMenus.Bootstrap.keydownFix) {
+ // unhook BS keydown handler for all dropdowns
+ $(document).off('keydown.bs.dropdown.data-api', '.dropdown-menu');
+ // restore BS keydown handler for dropdowns that are not inside SmartMenus navbars
+ if ($.fn.dropdown && $.fn.dropdown.Constructor) {
+ $(document).on('keydown.bs.dropdown.data-api', '.dropdown-menu:not([id^="sm-"])', $.fn.dropdown.Constructor.prototype.keydown);
+ }
+ $.SmartMenus.Bootstrap.keydownFix = true;
+ }
+ }
+ });
+
+ // init ondomready
+ $($.SmartMenus.Bootstrap.init);
+
+ return $;
+}));
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.min.js b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.min.js
new file mode 100644
index 0000000..3cad4e3
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/bootstrap/jquery.smartmenus.bootstrap.min.js
@@ -0,0 +1,3 @@
+/*! SmartMenus jQuery Plugin Bootstrap Addon - v0.4.1 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery","smartmenus"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function(t){return t.extend(t.SmartMenus.Bootstrap={},{keydownFix:!1,init:function(){var e=t("ul.navbar-nav:not([data-sm-skip])");e.each(function(){function e(){o.find("a.current").parent().addClass("active"),o.find("a.has-submenu").each(function(){var e=t(this);e.is('[data-toggle="dropdown"]')&&e.dataSM("bs-data-toggle-dropdown",!0).removeAttr("data-toggle"),e.is('[role="button"]')&&e.dataSM("bs-role-button",!0).removeAttr("role")})}function s(){o.find("a.current").parent().removeClass("active"),o.find("a.has-submenu").each(function(){var e=t(this);e.dataSM("bs-data-toggle-dropdown")&&e.attr("data-toggle","dropdown").removeDataSM("bs-data-toggle-dropdown"),e.dataSM("bs-role-button")&&e.attr("role","button").removeDataSM("bs-role-button")})}function i(t){var e=a.getViewportWidth();if(e!=n||t){var s=o.find(".caret");a.isCollapsible()?(o.addClass("sm-collapsible"),o.is("[data-sm-skip-collapsible-behavior]")||s.addClass("navbar-toggle sub-arrow")):(o.removeClass("sm-collapsible"),o.is("[data-sm-skip-collapsible-behavior]")||s.removeClass("navbar-toggle sub-arrow")),n=e}}var o=t(this),a=o.data("smartmenus");if(!a){o.smartmenus({subMenusSubOffsetX:2,subMenusSubOffsetY:-6,subIndicators:!1,collapsibleShowFunction:null,collapsibleHideFunction:null,rightToLeftSubMenus:o.hasClass("navbar-right"),bottomToTopSubMenus:o.closest(".navbar").hasClass("navbar-fixed-bottom")}).on({"show.smapi":function(e,s){var i=t(s),o=i.dataSM("scroll-arrows");o&&o.css("background-color",t(document.body).css("background-color")),i.parent().addClass("open")},"hide.smapi":function(e,s){t(s).parent().removeClass("open")}}),e(),a=o.data("smartmenus"),a.isCollapsible=function(){return!/^(left|right)$/.test(this.$firstLink.parent().css("float"))&&"block"==this.$root.css("display")},a.refresh=function(){t.SmartMenus.prototype.refresh.call(this),e(),i(!0)},a.destroy=function(e){s(),t.SmartMenus.prototype.destroy.call(this,e)},o.is("[data-sm-skip-collapsible-behavior]")&&(a.opts.collapsibleBehavior="toggle");var n;i(),t(window).on("resize.smartmenus"+a.rootId,i)}}),e.length&&!t.SmartMenus.Bootstrap.keydownFix&&(t(document).off("keydown.bs.dropdown.data-api",".dropdown-menu"),t.fn.dropdown&&t.fn.dropdown.Constructor&&t(document).on("keydown.bs.dropdown.data-api",'.dropdown-menu:not([id^="sm-"])',t.fn.dropdown.Constructor.prototype.keydown),t.SmartMenus.Bootstrap.keydownFix=!0)}}),t(t.SmartMenus.Bootstrap.init),t});
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.js b/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.js
new file mode 100644
index 0000000..03d7098
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.js
@@ -0,0 +1,215 @@
+/*!
+ * SmartMenus jQuery Plugin Keyboard Addon - v0.4.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+
+(function(factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD
+ define(['jquery', 'smartmenus'], factory);
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
+ // CommonJS
+ module.exports = factory(require('jquery'));
+ } else {
+ // Global jQuery
+ factory(jQuery);
+ }
+} (function($) {
+
+ function getFirstItemLink($ul) {
+ // make sure we also allow the link to be nested deeper inside the LI's (e.g. in a heading)
+ return $ul.find('> li > a:not(.disabled), > li > :not(ul) a:not(.disabled)').eq(0);
+ }
+ function getLastItemLink($ul) {
+ return $ul.find('> li > a:not(.disabled), > li > :not(ul) a:not(.disabled)').eq(-1);
+ }
+ function getNextItemLink($li, noLoop) {
+ var $a = $li.nextAll('li').find('> a:not(.disabled), > :not(ul) a:not(.disabled)').eq(0);
+ return noLoop || $a.length ? $a : getFirstItemLink($li.parent());
+ }
+ function getPreviousItemLink($li, noLoop) {
+ // bug workaround: elements are returned in reverse order just in jQuery 1.8.x
+ var $a = $li.prevAll('li').find('> a:not(.disabled), > :not(ul) a:not(.disabled)').eq(/^1\.8\./.test($.fn.jquery) ? 0 : -1);
+ return noLoop || $a.length ? $a : getLastItemLink($li.parent());
+ }
+
+ // jQuery's .focus() is unreliable in some versions, so we're going to call the links' native JS focus method
+ $.fn.focusSM = function() {
+ if (this.length && this[0].focus) {
+ this[0].focus();
+ }
+ return this;
+ };
+
+ $.extend($.SmartMenus.Keyboard = {}, {
+ docKeydown: function(e) {
+ var keyCode = e.keyCode;
+ if (!/^(37|38|39|40)$/.test(keyCode)) {
+ return;
+ }
+ var $root = $(this),
+ obj = $root.data('smartmenus'),
+ $target = $(e.target);
+ // exit if this is an A inside a mega drop-down
+ if (!obj || !$target.is('a') || !obj.handleItemEvents($target)) {
+ return;
+ }
+ var $li = $target.closest('li'),
+ $ul = $li.parent(),
+ level = $ul.dataSM('level');
+ // swap left & right keys
+ if ($root.hasClass('sm-rtl')) {
+ if (keyCode == 37) {
+ keyCode = 39;
+ } else if (keyCode == 39) {
+ keyCode = 37;
+ }
+ }
+ switch (keyCode) {
+ case 37: // Left
+ if (obj.isCollapsible()) {
+ break;
+ }
+ if (level > 2 || level == 2 && $root.hasClass('sm-vertical')) {
+ obj.activatedItems[level - 2].focusSM();
+ // move to previous non-disabled parent item (make sure we cycle so it might be the last item)
+ } else if (!$root.hasClass('sm-vertical')) {
+ getPreviousItemLink((obj.activatedItems[0] || $target).closest('li')).focusSM();
+ }
+ break;
+ case 38: // Up
+ if (obj.isCollapsible()) {
+ var $firstItem;
+ // if this is the first item of a sub menu, move to the parent item
+ if (level > 1 && ($firstItem = getFirstItemLink($ul)).length && $target[0] == $firstItem[0]) {
+ obj.activatedItems[level - 2].focusSM();
+ } else {
+ getPreviousItemLink($li).focusSM();
+ }
+ } else {
+ if (level == 1 && !$root.hasClass('sm-vertical') && obj.opts.bottomToTopSubMenus) {
+ if (!obj.activatedItems[0] && $target.dataSM('sub')) {
+ if (obj.opts.showOnClick) {
+ obj.clickActivated = true;
+ }
+ obj.itemActivate($target);
+ if ($target.dataSM('sub').is(':visible')) {
+ obj.focusActivated = true;
+ }
+ }
+ if (obj.activatedItems[0] && obj.activatedItems[0].dataSM('sub') && obj.activatedItems[0].dataSM('sub').is(':visible') && !obj.activatedItems[0].dataSM('sub').hasClass('mega-menu')) {
+ getLastItemLink(obj.activatedItems[0].dataSM('sub')).focusSM();
+ }
+ } else if (level > 1 || $root.hasClass('sm-vertical')) {
+ getPreviousItemLink($li).focusSM();
+ }
+ }
+ break;
+ case 39: // Right
+ if (obj.isCollapsible()) {
+ break;
+ }
+ if (level == 1 && $root.hasClass('sm-vertical')) {
+ if (!obj.activatedItems[0] && $target.dataSM('sub')) {
+ if (obj.opts.showOnClick) {
+ obj.clickActivated = true;
+ }
+ obj.itemActivate($target);
+ if ($target.dataSM('sub').is(':visible')) {
+ obj.focusActivated = true;
+ }
+ }
+ if (obj.activatedItems[0] && obj.activatedItems[0].dataSM('sub') && obj.activatedItems[0].dataSM('sub').is(':visible') && !obj.activatedItems[0].dataSM('sub').hasClass('mega-menu')) {
+ getFirstItemLink(obj.activatedItems[0].dataSM('sub')).focusSM();
+ }
+ // move to next non-disabled parent item (make sure we cycle so it might be the last item)
+ } else if ((level == 1 || obj.activatedItems[level - 1] && (!obj.activatedItems[level - 1].dataSM('sub') || !obj.activatedItems[level - 1].dataSM('sub').is(':visible') || obj.activatedItems[level - 1].dataSM('sub').hasClass('mega-menu'))) && !$root.hasClass('sm-vertical')) {
+ getNextItemLink((obj.activatedItems[0] || $target).closest('li')).focusSM();
+ } else if (obj.activatedItems[level - 1] && obj.activatedItems[level - 1].dataSM('sub') && obj.activatedItems[level - 1].dataSM('sub').is(':visible') && !obj.activatedItems[level - 1].dataSM('sub').hasClass('mega-menu')) {
+ getFirstItemLink(obj.activatedItems[level - 1].dataSM('sub')).focusSM();
+ }
+ break;
+ case 40: // Down
+ if (obj.isCollapsible()) {
+ var $firstSubItem,
+ $lastItem;
+ // move to sub menu if appropriate
+ if (obj.activatedItems[level - 1] && obj.activatedItems[level - 1].dataSM('sub') && obj.activatedItems[level - 1].dataSM('sub').is(':visible') && !obj.activatedItems[level - 1].dataSM('sub').hasClass('mega-menu') && ($firstSubItem = getFirstItemLink(obj.activatedItems[level - 1].dataSM('sub'))).length) {
+ $firstSubItem.focusSM();
+ // if this is the last item of a sub menu, move to the next parent item
+ } else if (level > 1 && ($lastItem = getLastItemLink($ul)).length && $target[0] == $lastItem[0]) {
+ var $parentItem = obj.activatedItems[level - 2].closest('li'),
+ $nextParentItem = null;
+ while ($parentItem.is('li') && !($nextParentItem = getNextItemLink($parentItem, true)).length) {
+ $parentItem = $parentItem.parent().parent();
+ }
+ if ($nextParentItem.length) {
+ $nextParentItem.focusSM();
+ } else {
+ getFirstItemLink($root).focusSM();
+ }
+ } else {
+ getNextItemLink($li).focusSM();
+ }
+ } else {
+ if (level == 1 && !$root.hasClass('sm-vertical') && !obj.opts.bottomToTopSubMenus) {
+ if (!obj.activatedItems[0] && $target.dataSM('sub')) {
+ if (obj.opts.showOnClick) {
+ obj.clickActivated = true;
+ }
+ obj.itemActivate($target);
+ if ($target.dataSM('sub').is(':visible')) {
+ obj.focusActivated = true;
+ }
+ }
+ if (obj.activatedItems[0] && obj.activatedItems[0].dataSM('sub') && obj.activatedItems[0].dataSM('sub').is(':visible') && !obj.activatedItems[0].dataSM('sub').hasClass('mega-menu')) {
+ getFirstItemLink(obj.activatedItems[0].dataSM('sub')).focusSM();
+ }
+ } else if (level > 1 || $root.hasClass('sm-vertical')) {
+ getNextItemLink($li).focusSM();
+ }
+ }
+ break;
+ }
+ e.stopPropagation();
+ e.preventDefault();
+ }
+ });
+
+ // hook it
+ $(document).on('keydown.smartmenus', 'ul.sm, ul.navbar-nav:not([data-sm-skip])', $.SmartMenus.Keyboard.docKeydown);
+
+ $.extend($.SmartMenus.prototype, {
+ keyboardSetHotkey: function(keyCode, modifiers) {
+ var self = this;
+ $(document).on('keydown.smartmenus' + this.rootId, function(e) {
+ if (keyCode == e.keyCode) {
+ var procede = true;
+ if (modifiers) {
+ if (typeof modifiers == 'string') {
+ modifiers = [modifiers];
+ }
+ $.each(['ctrlKey', 'shiftKey', 'altKey', 'metaKey'], function(index, value) {
+ if ($.inArray(value, modifiers) >= 0 && !e[value] || $.inArray(value, modifiers) < 0 && e[value]) {
+ procede = false;
+ return false;
+ }
+ });
+ }
+ if (procede) {
+ getFirstItemLink(self.$root).focusSM();
+ e.stopPropagation();
+ e.preventDefault();
+ }
+ }
+ });
+ }
+ });
+
+ return $;
+}));
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.min.js b/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.min.js
new file mode 100644
index 0000000..70edbf1
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/addons/keyboard/jquery.smartmenus.keyboard.min.js
@@ -0,0 +1,3 @@
+/*! SmartMenus jQuery Plugin Keyboard Addon - v0.4.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery","smartmenus"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function(t){function e(t){return t.find("> li > a:not(.disabled), > li > :not(ul) a:not(.disabled)").eq(0)}function s(t){return t.find("> li > a:not(.disabled), > li > :not(ul) a:not(.disabled)").eq(-1)}function i(t,s){var i=t.nextAll("li").find("> a:not(.disabled), > :not(ul) a:not(.disabled)").eq(0);return s||i.length?i:e(t.parent())}function o(e,i){var o=e.prevAll("li").find("> a:not(.disabled), > :not(ul) a:not(.disabled)").eq(/^1\.8\./.test(t.fn.jquery)?0:-1);return i||o.length?o:s(e.parent())}return t.fn.focusSM=function(){return this.length&&this[0].focus&&this[0].focus(),this},t.extend(t.SmartMenus.Keyboard={},{docKeydown:function(a){var n=a.keyCode;if(/^(37|38|39|40)$/.test(n)){var r=t(this),u=r.data("smartmenus"),h=t(a.target);if(u&&h.is("a")&&u.handleItemEvents(h)){var l=h.closest("li"),c=l.parent(),d=c.dataSM("level");switch(r.hasClass("sm-rtl")&&(37==n?n=39:39==n&&(n=37)),n){case 37:if(u.isCollapsible())break;d>2||2==d&&r.hasClass("sm-vertical")?u.activatedItems[d-2].focusSM():r.hasClass("sm-vertical")||o((u.activatedItems[0]||h).closest("li")).focusSM();break;case 38:if(u.isCollapsible()){var m;d>1&&(m=e(c)).length&&h[0]==m[0]?u.activatedItems[d-2].focusSM():o(l).focusSM()}else 1==d&&!r.hasClass("sm-vertical")&&u.opts.bottomToTopSubMenus?(!u.activatedItems[0]&&h.dataSM("sub")&&(u.opts.showOnClick&&(u.clickActivated=!0),u.itemActivate(h),h.dataSM("sub").is(":visible")&&(u.focusActivated=!0)),u.activatedItems[0]&&u.activatedItems[0].dataSM("sub")&&u.activatedItems[0].dataSM("sub").is(":visible")&&!u.activatedItems[0].dataSM("sub").hasClass("mega-menu")&&s(u.activatedItems[0].dataSM("sub")).focusSM()):(d>1||r.hasClass("sm-vertical"))&&o(l).focusSM();break;case 39:if(u.isCollapsible())break;1==d&&r.hasClass("sm-vertical")?(!u.activatedItems[0]&&h.dataSM("sub")&&(u.opts.showOnClick&&(u.clickActivated=!0),u.itemActivate(h),h.dataSM("sub").is(":visible")&&(u.focusActivated=!0)),u.activatedItems[0]&&u.activatedItems[0].dataSM("sub")&&u.activatedItems[0].dataSM("sub").is(":visible")&&!u.activatedItems[0].dataSM("sub").hasClass("mega-menu")&&e(u.activatedItems[0].dataSM("sub")).focusSM()):1!=d&&(!u.activatedItems[d-1]||u.activatedItems[d-1].dataSM("sub")&&u.activatedItems[d-1].dataSM("sub").is(":visible")&&!u.activatedItems[d-1].dataSM("sub").hasClass("mega-menu"))||r.hasClass("sm-vertical")?u.activatedItems[d-1]&&u.activatedItems[d-1].dataSM("sub")&&u.activatedItems[d-1].dataSM("sub").is(":visible")&&!u.activatedItems[d-1].dataSM("sub").hasClass("mega-menu")&&e(u.activatedItems[d-1].dataSM("sub")).focusSM():i((u.activatedItems[0]||h).closest("li")).focusSM();break;case 40:if(u.isCollapsible()){var p,f;if(u.activatedItems[d-1]&&u.activatedItems[d-1].dataSM("sub")&&u.activatedItems[d-1].dataSM("sub").is(":visible")&&!u.activatedItems[d-1].dataSM("sub").hasClass("mega-menu")&&(p=e(u.activatedItems[d-1].dataSM("sub"))).length)p.focusSM();else if(d>1&&(f=s(c)).length&&h[0]==f[0]){for(var v=u.activatedItems[d-2].closest("li"),b=null;v.is("li")&&!(b=i(v,!0)).length;)v=v.parent().parent();b.length?b.focusSM():e(r).focusSM()}else i(l).focusSM()}else 1!=d||r.hasClass("sm-vertical")||u.opts.bottomToTopSubMenus?(d>1||r.hasClass("sm-vertical"))&&i(l).focusSM():(!u.activatedItems[0]&&h.dataSM("sub")&&(u.opts.showOnClick&&(u.clickActivated=!0),u.itemActivate(h),h.dataSM("sub").is(":visible")&&(u.focusActivated=!0)),u.activatedItems[0]&&u.activatedItems[0].dataSM("sub")&&u.activatedItems[0].dataSM("sub").is(":visible")&&!u.activatedItems[0].dataSM("sub").hasClass("mega-menu")&&e(u.activatedItems[0].dataSM("sub")).focusSM())}a.stopPropagation(),a.preventDefault()}}}}),t(document).on("keydown.smartmenus","ul.sm, ul.navbar-nav:not([data-sm-skip])",t.SmartMenus.Keyboard.docKeydown),t.extend(t.SmartMenus.prototype,{keyboardSetHotkey:function(s,i){var o=this;t(document).on("keydown.smartmenus"+this.rootId,function(a){if(s==a.keyCode){var n=!0;i&&("string"==typeof i&&(i=[i]),t.each(["ctrlKey","shiftKey","altKey","metaKey"],function(e,s){return t.inArray(s,i)>=0&&!a[s]||0>t.inArray(s,i)&&a[s]?(n=!1,!1):void 0})),n&&(e(o.$root).focusSM(),a.stopPropagation(),a.preventDefault())}})}}),t});
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css
new file mode 100644
index 0000000..d21a3ca
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css
@@ -0,0 +1,268 @@
+@import url(https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700);
+.sm-blue {
+ background: transparent;
+ border-radius: 8px;
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); }
+ .sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active {
+ padding: 10px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff;
+ font-family: "PT Sans Narrow", "Arial Narrow", Arial, Helvetica, sans-serif;
+ font-size: 18px;
+ font-weight: bold;
+ line-height: 23px;
+ text-decoration: none;
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2); }
+ .sm-blue a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff; }
+ .sm-blue a.disabled {
+ color: #a1d1e8; }
+ .sm-blue a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 16px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(0, 0, 0, 0.1);
+ border-radius: 4px; }
+ .sm-blue a .sub-arrow::before {
+ content: '+'; }
+ .sm-blue a.highlighted .sub-arrow::before {
+ content: '-'; }
+ .sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {
+ border-radius: 8px 8px 0 0; }
+ .sm-blue > li:last-child > a, .sm-blue > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
+ border-radius: 0 0 8px 8px; }
+ .sm-blue > li:last-child > a.highlighted, .sm-blue > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
+ border-radius: 0; }
+ .sm-blue ul {
+ background: #fff; }
+ .sm-blue ul ul {
+ background: rgba(102, 102, 102, 0.1); }
+ .sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active {
+ background: transparent;
+ color: #2b82ac;
+ font-size: 16px;
+ text-shadow: none;
+ border-left: 8px solid transparent; }
+ .sm-blue ul a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff; }
+ .sm-blue ul a.disabled {
+ color: #b3b3b3; }
+ .sm-blue ul ul a,
+ .sm-blue ul ul a:hover,
+ .sm-blue ul ul a:focus,
+ .sm-blue ul ul a:active {
+ border-left: 16px solid transparent; }
+ .sm-blue ul ul ul a,
+ .sm-blue ul ul ul a:hover,
+ .sm-blue ul ul ul a:focus,
+ .sm-blue ul ul ul a:active {
+ border-left: 24px solid transparent; }
+ .sm-blue ul ul ul ul a,
+ .sm-blue ul ul ul ul a:hover,
+ .sm-blue ul ul ul ul a:focus,
+ .sm-blue ul ul ul ul a:active {
+ border-left: 32px solid transparent; }
+ .sm-blue ul ul ul ul ul a,
+ .sm-blue ul ul ul ul ul a:hover,
+ .sm-blue ul ul ul ul ul a:focus,
+ .sm-blue ul ul ul ul ul a:active {
+ border-left: 40px solid transparent; }
+ .sm-blue ul li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05); }
+ .sm-blue ul li:first-child {
+ border-top: 0; }
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-blue ul {
+ position: absolute;
+ width: 12em; }
+
+ .sm-blue li {
+ float: left; }
+
+ .sm-blue.sm-rtl li {
+ float: right; }
+
+ .sm-blue ul li, .sm-blue.sm-rtl ul li, .sm-blue.sm-vertical li {
+ float: none; }
+
+ .sm-blue a {
+ white-space: nowrap; }
+
+ .sm-blue ul a, .sm-blue.sm-vertical a {
+ white-space: normal; }
+
+ .sm-blue .sm-nowrap > li > a, .sm-blue .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap; }
+
+ /* ...end */
+ .sm-blue {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ border-radius: 8px;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); }
+ .sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {
+ padding: 13px 24px;
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff; }
+ .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {
+ background: #2b82ac;
+ background-image: linear-gradient(to bottom, #2d89b4, #297ca3); }
+ .sm-blue a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff; }
+ .sm-blue a.disabled {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #a1d1e8; }
+ .sm-blue a .sub-arrow {
+ top: auto;
+ margin-top: 0;
+ bottom: 2px;
+ left: 50%;
+ margin-left: -5px;
+ right: auto;
+ width: 0;
+ height: 0;
+ border-width: 5px;
+ border-style: solid dashed dashed dashed;
+ border-color: #a1d1e8 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0; }
+ .sm-blue a .sub-arrow::before {
+ display: none; }
+ .sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {
+ border-radius: 8px 0 0 8px; }
+ .sm-blue > li:last-child > a, .sm-blue > li:last-child > :not(ul) a {
+ border-radius: 0 8px 8px 0 !important; }
+ .sm-blue > li {
+ border-left: 1px solid #2b82ac; }
+ .sm-blue > li:first-child {
+ border-left: 0; }
+ .sm-blue ul {
+ border: 1px solid #a8a8a8;
+ padding: 7px 0;
+ background: #fff;
+ border-radius: 0 0 4px 4px !important;
+ box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2); }
+ .sm-blue ul ul {
+ border-radius: 4px !important;
+ background: #fff; }
+ .sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {
+ border: 0 !important;
+ padding: 9px 23px;
+ background: transparent;
+ color: #2b82ac;
+ border-radius: 0 !important; }
+ .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff; }
+ .sm-blue ul a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff; }
+ .sm-blue ul a.disabled {
+ background: #fff;
+ color: #b3b3b3; }
+ .sm-blue ul a .sub-arrow {
+ top: 50%;
+ margin-top: -5px;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #a1d1e8; }
+ .sm-blue ul li {
+ border: 0; }
+ .sm-blue .scroll-up,
+ .sm-blue .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px; }
+ .sm-blue .scroll-up-arrow,
+ .sm-blue .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #2b82ac transparent; }
+ .sm-blue .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #2b82ac transparent transparent transparent; }
+ .sm-blue.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #a1d1e8 transparent transparent; }
+ .sm-blue.sm-rtl > li:first-child > a, .sm-blue.sm-rtl > li:first-child > :not(ul) a {
+ border-radius: 0 8px 8px 0; }
+ .sm-blue.sm-rtl > li:last-child > a, .sm-blue.sm-rtl > li:last-child > :not(ul) a {
+ border-radius: 8px 0 0 8px !important; }
+ .sm-blue.sm-rtl > li:first-child {
+ border-left: 1px solid #2b82ac; }
+ .sm-blue.sm-rtl > li:last-child {
+ border-left: 0; }
+ .sm-blue.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #a1d1e8 transparent transparent; }
+ .sm-blue.sm-vertical {
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); }
+ .sm-blue.sm-vertical a {
+ padding: 9px 23px; }
+ .sm-blue.sm-vertical a .sub-arrow {
+ top: 50%;
+ margin-top: -5px;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #a1d1e8; }
+ .sm-blue.sm-vertical > li:first-child > a, .sm-blue.sm-vertical > li:first-child > :not(ul) a {
+ border-radius: 8px 8px 0 0; }
+ .sm-blue.sm-vertical > li:last-child > a, .sm-blue.sm-vertical > li:last-child > :not(ul) a {
+ border-radius: 0 0 8px 8px !important; }
+ .sm-blue.sm-vertical > li {
+ border-left: 0 !important; }
+ .sm-blue.sm-vertical ul {
+ border-radius: 4px !important; }
+ .sm-blue.sm-vertical ul a {
+ padding: 9px 23px; } }
+
+/*# sourceMappingURL=sm-blue.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css.map
new file mode 100644
index 0000000..c415d3f
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-blue.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["../sm-blue/_sm-blue-theme.scss","../sm-blue/mixins/_round-corners-last-item.scss","../sm-blue/mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-blue.css"
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css
new file mode 100644
index 0000000..ec8164c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css
@@ -0,0 +1,260 @@
+.sm-clean {
+ background: #eeeeee;
+ border-radius: 5px; }
+ .sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #555555;
+ font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif;
+ font-size: 18px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none; }
+ .sm-clean a.current {
+ color: #D23600; }
+ .sm-clean a.disabled {
+ color: #bbbbbb; }
+ .sm-clean a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 16px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(255, 255, 255, 0.5);
+ border-radius: 5px; }
+ .sm-clean a .sub-arrow::before {
+ content: '+'; }
+ .sm-clean a.highlighted .sub-arrow::before {
+ content: '-'; }
+ .sm-clean > li:first-child > a, .sm-clean > li:first-child > :not(ul) a {
+ border-radius: 5px 5px 0 0; }
+ .sm-clean > li:last-child > a, .sm-clean > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
+ border-radius: 0 0 5px 5px; }
+ .sm-clean > li:last-child > a.highlighted, .sm-clean > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
+ border-radius: 0; }
+ .sm-clean li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05); }
+ .sm-clean > li:first-child {
+ border-top: 0; }
+ .sm-clean ul {
+ background: rgba(162, 162, 162, 0.1); }
+ .sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
+ font-size: 16px;
+ border-left: 8px solid transparent; }
+ .sm-clean ul ul a,
+ .sm-clean ul ul a:hover,
+ .sm-clean ul ul a:focus,
+ .sm-clean ul ul a:active {
+ border-left: 16px solid transparent; }
+ .sm-clean ul ul ul a,
+ .sm-clean ul ul ul a:hover,
+ .sm-clean ul ul ul a:focus,
+ .sm-clean ul ul ul a:active {
+ border-left: 24px solid transparent; }
+ .sm-clean ul ul ul ul a,
+ .sm-clean ul ul ul ul a:hover,
+ .sm-clean ul ul ul ul a:focus,
+ .sm-clean ul ul ul ul a:active {
+ border-left: 32px solid transparent; }
+ .sm-clean ul ul ul ul ul a,
+ .sm-clean ul ul ul ul ul a:hover,
+ .sm-clean ul ul ul ul ul a:focus,
+ .sm-clean ul ul ul ul ul a:active {
+ border-left: 40px solid transparent; }
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-clean ul {
+ position: absolute;
+ width: 12em; }
+
+ .sm-clean li {
+ float: left; }
+
+ .sm-clean.sm-rtl li {
+ float: right; }
+
+ .sm-clean ul li, .sm-clean.sm-rtl ul li, .sm-clean.sm-vertical li {
+ float: none; }
+
+ .sm-clean a {
+ white-space: nowrap; }
+
+ .sm-clean ul a, .sm-clean.sm-vertical a {
+ white-space: normal; }
+
+ .sm-clean .sm-nowrap > li > a, .sm-clean .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap; }
+
+ /* ...end */
+ .sm-clean {
+ padding: 0 10px;
+ background: #eeeeee;
+ border-radius: 100px; }
+ .sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
+ padding: 12px 12px;
+ color: #555555;
+ border-radius: 0 !important; }
+ .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
+ color: #D23600; }
+ .sm-clean a.current {
+ color: #D23600; }
+ .sm-clean a.disabled {
+ color: #bbbbbb; }
+ .sm-clean a.has-submenu {
+ padding-right: 24px; }
+ .sm-clean a .sub-arrow {
+ top: 50%;
+ margin-top: -2px;
+ right: 12px;
+ width: 0;
+ height: 0;
+ border-width: 4px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0; }
+ .sm-clean a .sub-arrow::before {
+ display: none; }
+ .sm-clean li {
+ border-top: 0; }
+ .sm-clean > li > ul::before,
+ .sm-clean > li > ul::after {
+ content: '';
+ position: absolute;
+ top: -18px;
+ left: 30px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 9px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #bbbbbb transparent; }
+ .sm-clean > li > ul::after {
+ top: -16px;
+ left: 31px;
+ border-width: 8px;
+ border-color: transparent transparent #fff transparent; }
+ .sm-clean ul {
+ border: 1px solid #bbbbbb;
+ padding: 5px 0;
+ background: #fff;
+ border-radius: 5px !important;
+ box-shadow: 0 5px 9px rgba(0, 0, 0, 0.2); }
+ .sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
+ border: 0 !important;
+ padding: 10px 20px;
+ color: #555555; }
+ .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
+ background: #eeeeee;
+ color: #D23600; }
+ .sm-clean ul a.current {
+ color: #D23600; }
+ .sm-clean ul a.disabled {
+ background: #fff;
+ color: #cccccc; }
+ .sm-clean ul a.has-submenu {
+ padding-right: 20px; }
+ .sm-clean ul a .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -5px;
+ border-width: 5px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #555555; }
+ .sm-clean .scroll-up,
+ .sm-clean .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px; }
+ .sm-clean .scroll-up:hover,
+ .sm-clean .scroll-down:hover {
+ background: #eeeeee; }
+ .sm-clean .scroll-up:hover .scroll-up-arrow {
+ border-color: transparent transparent #D23600 transparent; }
+ .sm-clean .scroll-down:hover .scroll-down-arrow {
+ border-color: #D23600 transparent transparent transparent; }
+ .sm-clean .scroll-up-arrow,
+ .sm-clean .scroll-down-arrow {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ margin-left: -6px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 6px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #555555 transparent; }
+ .sm-clean .scroll-down-arrow {
+ top: 8px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent; }
+ .sm-clean.sm-rtl a.has-submenu {
+ padding-right: 12px;
+ padding-left: 24px; }
+ .sm-clean.sm-rtl a .sub-arrow {
+ right: auto;
+ left: 12px; }
+ .sm-clean.sm-rtl.sm-vertical a.has-submenu {
+ padding: 10px 20px; }
+ .sm-clean.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #555555 transparent transparent; }
+ .sm-clean.sm-rtl > li > ul::before {
+ left: auto;
+ right: 30px; }
+ .sm-clean.sm-rtl > li > ul::after {
+ left: auto;
+ right: 31px; }
+ .sm-clean.sm-rtl ul a.has-submenu {
+ padding: 10px 20px !important; }
+ .sm-clean.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #555555 transparent transparent; }
+ .sm-clean.sm-vertical {
+ padding: 10px 0;
+ border-radius: 5px; }
+ .sm-clean.sm-vertical a {
+ padding: 10px 20px; }
+ .sm-clean.sm-vertical a:hover, .sm-clean.sm-vertical a:focus, .sm-clean.sm-vertical a:active, .sm-clean.sm-vertical a.highlighted {
+ background: #fff; }
+ .sm-clean.sm-vertical a.disabled {
+ background: #eeeeee; }
+ .sm-clean.sm-vertical a .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -5px;
+ border-width: 5px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #555555; }
+ .sm-clean.sm-vertical > li > ul::before,
+ .sm-clean.sm-vertical > li > ul::after {
+ display: none; }
+ .sm-clean.sm-vertical ul a {
+ padding: 10px 20px; }
+ .sm-clean.sm-vertical ul a:hover, .sm-clean.sm-vertical ul a:focus, .sm-clean.sm-vertical ul a:active, .sm-clean.sm-vertical ul a.highlighted {
+ background: #eeeeee; }
+ .sm-clean.sm-vertical ul a.disabled {
+ background: #fff; } }
+
+/*# sourceMappingURL=sm-clean.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css.map
new file mode 100644
index 0000000..9c63a9c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-clean.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["../sm-clean/_sm-clean-theme.scss","../sm-clean/mixins/_round-corners-last-item.scss","../sm-clean/mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-clean.css"
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css
new file mode 100644
index 0000000..211ab21
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css
@@ -0,0 +1,261 @@
+.sm-mint {
+ border-top: 2px solid #8db863;
+ border-bottom: 2px solid #8db863;
+ background: #fff; }
+ .sm-mint a, .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #333;
+ font-family: Arial, sans-serif;
+ font-size: 16px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none; }
+ .sm-mint a.current {
+ font-weight: bold; }
+ .sm-mint a.disabled {
+ color: #cccccc; }
+ .sm-mint a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 14px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(141, 184, 99, 0.2);
+ border-radius: 4px; }
+ .sm-mint a .sub-arrow::before {
+ content: '+'; }
+ .sm-mint a.highlighted .sub-arrow::before {
+ content: '-'; }
+ .sm-mint li {
+ border-top: 1px solid rgba(141, 184, 99, 0.2); }
+ .sm-mint > li:first-child {
+ border-top: 0; }
+ .sm-mint ul {
+ background: rgba(141, 184, 99, 0.2); }
+ .sm-mint ul a, .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active {
+ font-size: 14px;
+ border-left: 8px solid transparent; }
+ .sm-mint ul ul a,
+ .sm-mint ul ul a:hover,
+ .sm-mint ul ul a:focus,
+ .sm-mint ul ul a:active {
+ border-left: 16px solid transparent; }
+ .sm-mint ul ul ul a,
+ .sm-mint ul ul ul a:hover,
+ .sm-mint ul ul ul a:focus,
+ .sm-mint ul ul ul a:active {
+ border-left: 24px solid transparent; }
+ .sm-mint ul ul ul ul a,
+ .sm-mint ul ul ul ul a:hover,
+ .sm-mint ul ul ul ul a:focus,
+ .sm-mint ul ul ul ul a:active {
+ border-left: 32px solid transparent; }
+ .sm-mint ul ul ul ul ul a,
+ .sm-mint ul ul ul ul ul a:hover,
+ .sm-mint ul ul ul ul ul a:focus,
+ .sm-mint ul ul ul ul ul a:active {
+ border-left: 40px solid transparent; }
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-mint ul {
+ position: absolute;
+ width: 12em; }
+
+ .sm-mint li {
+ float: left; }
+
+ .sm-mint.sm-rtl li {
+ float: right; }
+
+ .sm-mint ul li, .sm-mint.sm-rtl ul li, .sm-mint.sm-vertical li {
+ float: none; }
+
+ .sm-mint a {
+ white-space: nowrap; }
+
+ .sm-mint ul a, .sm-mint.sm-vertical a {
+ white-space: normal; }
+
+ .sm-mint .sm-nowrap > li > a, .sm-mint .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap; }
+
+ /* ...end */
+ .sm-mint {
+ border-top: 0;
+ background: transparent; }
+ .sm-mint a, .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active, .sm-mint a.highlighted {
+ padding: 11px 20px;
+ color: #333;
+ border-radius: 4px 4px 0 0; }
+ .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active {
+ background: #8db863;
+ color: #fff; }
+ .sm-mint a.highlighted {
+ background: #F6FFED;
+ color: #333;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25); }
+ .sm-mint a.disabled {
+ background: transparent;
+ color: #cccccc;
+ box-shadow: none; }
+ .sm-mint a.has-submenu {
+ padding-right: 34px; }
+ .sm-mint a .sub-arrow {
+ top: 50%;
+ margin-top: -3px;
+ right: 20px;
+ width: 0;
+ height: 0;
+ border-width: 6px 4.02px 0 4.02px;
+ border-style: solid dashed dashed dashed;
+ border-color: #8db863 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0; }
+ .sm-mint a:hover .sub-arrow, .sm-mint a:focus .sub-arrow, .sm-mint a:active .sub-arrow {
+ border-color: #fff transparent transparent transparent; }
+ .sm-mint a.highlighted .sub-arrow {
+ border-color: #8db863 transparent transparent transparent; }
+ .sm-mint a.disabled .sub-arrow {
+ border-color: #8db863 transparent transparent transparent; }
+ .sm-mint a .sub-arrow::before {
+ display: none; }
+ .sm-mint li {
+ border-top: 0; }
+ .sm-mint ul {
+ border: 0;
+ padding: 8px 0;
+ background: #F6FFED;
+ border-radius: 0 4px 4px 4px;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25); }
+ .sm-mint ul ul {
+ border-radius: 4px; }
+ .sm-mint ul a, .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active, .sm-mint ul a.highlighted {
+ border: 0 !important;
+ padding: 10px 20px;
+ color: #333;
+ border-radius: 0; }
+ .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active, .sm-mint ul a.highlighted {
+ background: #8db863;
+ color: #fff;
+ box-shadow: none; }
+ .sm-mint ul a.disabled {
+ background: transparent;
+ color: #b3b3b3; }
+ .sm-mint ul a.has-submenu {
+ padding-right: 20px; }
+ .sm-mint ul a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #8db863; }
+ .sm-mint ul a:hover .sub-arrow, .sm-mint ul a:focus .sub-arrow, .sm-mint ul a:active .sub-arrow, .sm-mint ul a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff; }
+ .sm-mint ul a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #8db863; }
+ .sm-mint .scroll-up,
+ .sm-mint .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #F6FFED;
+ height: 20px; }
+ .sm-mint .scroll-up-arrow,
+ .sm-mint .scroll-down-arrow {
+ position: absolute;
+ top: 6px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 0 6px 8px 6px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #8db863 transparent; }
+ .sm-mint .scroll-down-arrow {
+ border-width: 8px 6px 0 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #8db863 transparent transparent transparent; }
+ .sm-mint.sm-rtl a.has-submenu {
+ padding-right: 20px;
+ padding-left: 34px; }
+ .sm-mint.sm-rtl a .sub-arrow {
+ right: auto;
+ left: 20px; }
+ .sm-mint.sm-rtl.sm-vertical {
+ border-right: 0;
+ border-left: 2px solid #8db863; }
+ .sm-mint.sm-rtl.sm-vertical a {
+ border-radius: 0 4px 4px 0; }
+ .sm-mint.sm-rtl.sm-vertical a.has-submenu {
+ padding: 10px 20px; }
+ .sm-mint.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #8db863 transparent transparent; }
+ .sm-mint.sm-rtl.sm-vertical a:hover .sub-arrow, .sm-mint.sm-rtl.sm-vertical a:focus .sub-arrow, .sm-mint.sm-rtl.sm-vertical a:active .sub-arrow, .sm-mint.sm-rtl.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent; }
+ .sm-mint.sm-rtl.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent #8db863 transparent transparent; }
+ .sm-mint.sm-rtl ul {
+ border-radius: 4px 0 4px 4px; }
+ .sm-mint.sm-rtl ul a {
+ border-radius: 0 !important; }
+ .sm-mint.sm-rtl ul a.has-submenu {
+ padding: 10px 20px !important; }
+ .sm-mint.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #8db863 transparent transparent; }
+ .sm-mint.sm-rtl ul a:hover .sub-arrow, .sm-mint.sm-rtl ul a:focus .sub-arrow, .sm-mint.sm-rtl ul a:active .sub-arrow, .sm-mint.sm-rtl ul a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent; }
+ .sm-mint.sm-rtl ul a.disabled .sub-arrow {
+ border-color: transparent #8db863 transparent transparent; }
+ .sm-mint.sm-vertical {
+ border-bottom: 0;
+ border-right: 2px solid #8db863; }
+ .sm-mint.sm-vertical a {
+ padding: 10px 20px;
+ border-radius: 4px 0 0 4px; }
+ .sm-mint.sm-vertical a:hover, .sm-mint.sm-vertical a:focus, .sm-mint.sm-vertical a:active, .sm-mint.sm-vertical a.highlighted {
+ background: #8db863;
+ color: #fff;
+ box-shadow: none; }
+ .sm-mint.sm-vertical a.disabled {
+ background: transparent;
+ color: #cccccc; }
+ .sm-mint.sm-vertical a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #8db863; }
+ .sm-mint.sm-vertical a:hover .sub-arrow, .sm-mint.sm-vertical a:focus .sub-arrow, .sm-mint.sm-vertical a:active .sub-arrow, .sm-mint.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff; }
+ .sm-mint.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #8db863; }
+ .sm-mint.sm-vertical ul {
+ border-radius: 4px !important; }
+ .sm-mint.sm-vertical ul a {
+ padding: 10px 20px; } }
+
+/*# sourceMappingURL=sm-mint.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css.map
new file mode 100644
index 0000000..8d9d316
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-mint.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["../sm-mint/_sm-mint-theme.scss","../sm-mint/mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-mint.css"
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css
new file mode 100644
index 0000000..1c6c6e0
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css
@@ -0,0 +1,196 @@
+.sm-simple {
+ border: 1px solid #bbbbbb;
+ background: #fff;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); }
+ .sm-simple a, .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #555555;
+ font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif;
+ font-size: 16px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none; }
+ .sm-simple a.current {
+ background: #555555;
+ color: #fff; }
+ .sm-simple a.disabled {
+ color: #cccccc; }
+ .sm-simple a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 14px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(0, 0, 0, 0.08); }
+ .sm-simple a .sub-arrow::before {
+ content: '+'; }
+ .sm-simple a.highlighted .sub-arrow::before {
+ content: '-'; }
+ .sm-simple li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05); }
+ .sm-simple > li:first-child {
+ border-top: 0; }
+ .sm-simple ul {
+ background: rgba(179, 179, 179, 0.1); }
+ .sm-simple ul a, .sm-simple ul a:hover, .sm-simple ul a:focus, .sm-simple ul a:active {
+ font-size: 14px;
+ border-left: 8px solid transparent; }
+ .sm-simple ul ul a,
+ .sm-simple ul ul a:hover,
+ .sm-simple ul ul a:focus,
+ .sm-simple ul ul a:active {
+ border-left: 16px solid transparent; }
+ .sm-simple ul ul ul a,
+ .sm-simple ul ul ul a:hover,
+ .sm-simple ul ul ul a:focus,
+ .sm-simple ul ul ul a:active {
+ border-left: 24px solid transparent; }
+ .sm-simple ul ul ul ul a,
+ .sm-simple ul ul ul ul a:hover,
+ .sm-simple ul ul ul ul a:focus,
+ .sm-simple ul ul ul ul a:active {
+ border-left: 32px solid transparent; }
+ .sm-simple ul ul ul ul ul a,
+ .sm-simple ul ul ul ul ul a:hover,
+ .sm-simple ul ul ul ul ul a:focus,
+ .sm-simple ul ul ul ul ul a:active {
+ border-left: 40px solid transparent; }
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-simple ul {
+ position: absolute;
+ width: 12em; }
+
+ .sm-simple li {
+ float: left; }
+
+ .sm-simple.sm-rtl li {
+ float: right; }
+
+ .sm-simple ul li, .sm-simple.sm-rtl ul li, .sm-simple.sm-vertical li {
+ float: none; }
+
+ .sm-simple a {
+ white-space: nowrap; }
+
+ .sm-simple ul a, .sm-simple.sm-vertical a {
+ white-space: normal; }
+
+ .sm-simple .sm-nowrap > li > a, .sm-simple .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap; }
+
+ /* ...end */
+ .sm-simple {
+ background: #fff; }
+ .sm-simple a, .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active, .sm-simple a.highlighted {
+ padding: 11px 20px;
+ color: #555555; }
+ .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active, .sm-simple a.highlighted {
+ background: #eeeeee; }
+ .sm-simple a.current {
+ background: #555555;
+ color: #fff; }
+ .sm-simple a.disabled {
+ background: #fff;
+ color: #cccccc; }
+ .sm-simple a.has-submenu {
+ padding-right: 32px; }
+ .sm-simple a .sub-arrow {
+ top: 50%;
+ margin-top: -8px;
+ right: 20px;
+ width: 8px;
+ height: 16px;
+ font: 14px/16px monospace !important;
+ background: transparent; }
+ .sm-simple a.highlighted .sub-arrow::before {
+ content: '+'; }
+ .sm-simple > li {
+ border-top: 0;
+ border-left: 1px solid #eeeeee; }
+ .sm-simple > li:first-child {
+ border-left: 0; }
+ .sm-simple ul {
+ border: 1px solid #bbbbbb;
+ background: #fff;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); }
+ .sm-simple ul a {
+ border: 0 !important; }
+ .sm-simple ul a.has-submenu {
+ padding-right: 20px; }
+ .sm-simple ul a .sub-arrow {
+ left: 8px;
+ right: auto; }
+ .sm-simple ul > li {
+ border-left: 0;
+ border-top: 1px solid #eeeeee; }
+ .sm-simple ul > li:first-child {
+ border-top: 0; }
+ .sm-simple .scroll-up,
+ .sm-simple .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px; }
+ .sm-simple .scroll-up-arrow,
+ .sm-simple .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #555555 transparent; }
+ .sm-simple .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent; }
+ .sm-simple.sm-rtl a.has-submenu {
+ padding-right: 20px;
+ padding-left: 32px; }
+ .sm-simple.sm-rtl a .sub-arrow {
+ left: 20px;
+ right: auto; }
+ .sm-simple.sm-rtl.sm-vertical a.has-submenu {
+ padding: 11px 20px; }
+ .sm-simple.sm-rtl.sm-vertical a .sub-arrow {
+ left: auto;
+ right: 8px; }
+ .sm-simple.sm-rtl > li:first-child {
+ border-left: 1px solid #eeeeee; }
+ .sm-simple.sm-rtl > li:last-child {
+ border-left: 0; }
+ .sm-simple.sm-rtl ul a.has-submenu {
+ padding: 11px 20px; }
+ .sm-simple.sm-rtl ul a .sub-arrow {
+ left: auto;
+ right: 8px; }
+ .sm-simple.sm-vertical a .sub-arrow {
+ left: 8px;
+ right: auto; }
+ .sm-simple.sm-vertical li {
+ border-left: 0;
+ border-top: 1px solid #eeeeee; }
+ .sm-simple.sm-vertical > li:first-child {
+ border-top: 0; } }
+
+/*# sourceMappingURL=sm-simple.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css.map
new file mode 100644
index 0000000..e842e06
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-simple.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["../sm-simple/_sm-simple-theme.scss","../sm-simple/mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-simple.css"
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css
new file mode 100644
index 0000000..443f002
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css
@@ -0,0 +1,261 @@
+.sm-sport-blue {
+ border-top: 2px solid #0AA1F1;
+ border-bottom: 2px solid #0AA1F1;
+ background: #fff; }
+ .sm-sport-blue a, .sm-sport-blue a:hover, .sm-sport-blue a:focus, .sm-sport-blue a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #333;
+ font-family: "Play", Arial, sans-serif;
+ font-size: 14px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none; }
+ .sm-sport-blue a.current {
+ font-weight: bold; }
+ .sm-sport-blue a.disabled {
+ color: #cccccc; }
+ .sm-sport-blue a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 13px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(10, 161, 241, 0.2);
+ border-radius: 4px; }
+ .sm-sport-blue a .sub-arrow::before {
+ content: '+'; }
+ .sm-sport-blue a.highlighted .sub-arrow::before {
+ content: '-'; }
+ .sm-sport-blue li {
+ border-top: 1px solid rgba(10, 161, 241, 0.2); }
+ .sm-sport-blue > li:first-child {
+ border-top: 0; }
+ .sm-sport-blue ul {
+ background: rgba(10, 161, 241, 0.2); }
+ .sm-sport-blue ul a, .sm-sport-blue ul a:hover, .sm-sport-blue ul a:focus, .sm-sport-blue ul a:active {
+ font-size: 13px;
+ border-left: 8px solid transparent; }
+ .sm-sport-blue ul ul a,
+ .sm-sport-blue ul ul a:hover,
+ .sm-sport-blue ul ul a:focus,
+ .sm-sport-blue ul ul a:active {
+ border-left: 16px solid transparent; }
+ .sm-sport-blue ul ul ul a,
+ .sm-sport-blue ul ul ul a:hover,
+ .sm-sport-blue ul ul ul a:focus,
+ .sm-sport-blue ul ul ul a:active {
+ border-left: 24px solid transparent; }
+ .sm-sport-blue ul ul ul ul a,
+ .sm-sport-blue ul ul ul ul a:hover,
+ .sm-sport-blue ul ul ul ul a:focus,
+ .sm-sport-blue ul ul ul ul a:active {
+ border-left: 32px solid transparent; }
+ .sm-sport-blue ul ul ul ul ul a,
+ .sm-sport-blue ul ul ul ul ul a:hover,
+ .sm-sport-blue ul ul ul ul ul a:focus,
+ .sm-sport-blue ul ul ul ul ul a:active {
+ border-left: 40px solid transparent; }
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-sport-blue ul {
+ position: absolute;
+ width: 12em; }
+
+ .sm-sport-blue li {
+ float: left; }
+
+ .sm-sport-blue.sm-rtl li {
+ float: right; }
+
+ .sm-sport-blue ul li, .sm-sport-blue.sm-rtl ul li, .sm-sport-blue.sm-vertical li {
+ float: none; }
+
+ .sm-sport-blue a {
+ white-space: nowrap; }
+
+ .sm-sport-blue ul a, .sm-sport-blue.sm-vertical a {
+ white-space: normal; }
+
+ .sm-sport-blue .sm-nowrap > li > a, .sm-sport-blue .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap; }
+
+ /* ...end */
+ .sm-sport-blue {
+ border-top: 0;
+ background: transparent; }
+ .sm-sport-blue a, .sm-sport-blue a:hover, .sm-sport-blue a:focus, .sm-sport-blue a:active, .sm-sport-blue a.highlighted {
+ padding: 11px 20px;
+ color: #333;
+ border-radius: 4px 4px 0 0; }
+ .sm-sport-blue a:hover, .sm-sport-blue a:focus, .sm-sport-blue a:active {
+ background: #0AA1F1;
+ color: #fff; }
+ .sm-sport-blue a.highlighted {
+ background: #ceecfc;
+ color: #333;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25); }
+ .sm-sport-blue a.disabled {
+ background: transparent;
+ color: #cccccc;
+ box-shadow: none; }
+ .sm-sport-blue a.has-submenu {
+ padding-right: 34px; }
+ .sm-sport-blue a .sub-arrow {
+ top: 50%;
+ margin-top: -3px;
+ right: 20px;
+ width: 0;
+ height: 0;
+ border-width: 6px 4.02px 0 4.02px;
+ border-style: solid dashed dashed dashed;
+ border-color: #0AA1F1 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0; }
+ .sm-sport-blue a:hover .sub-arrow, .sm-sport-blue a:focus .sub-arrow, .sm-sport-blue a:active .sub-arrow {
+ border-color: #fff transparent transparent transparent; }
+ .sm-sport-blue a.highlighted .sub-arrow {
+ border-color: #0AA1F1 transparent transparent transparent; }
+ .sm-sport-blue a.disabled .sub-arrow {
+ border-color: #0AA1F1 transparent transparent transparent; }
+ .sm-sport-blue a .sub-arrow::before {
+ display: none; }
+ .sm-sport-blue li {
+ border-top: 0; }
+ .sm-sport-blue ul {
+ border: 0;
+ padding: 8px 0;
+ background: #ceecfc;
+ border-radius: 0 4px 4px 4px;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25); }
+ .sm-sport-blue ul ul {
+ border-radius: 4px; }
+ .sm-sport-blue ul a, .sm-sport-blue ul a:hover, .sm-sport-blue ul a:focus, .sm-sport-blue ul a:active, .sm-sport-blue ul a.highlighted {
+ border: 0 !important;
+ padding: 10px 20px;
+ color: #333;
+ border-radius: 0; }
+ .sm-sport-blue ul a:hover, .sm-sport-blue ul a:focus, .sm-sport-blue ul a:active, .sm-sport-blue ul a.highlighted {
+ background: #0AA1F1;
+ color: #fff;
+ box-shadow: none; }
+ .sm-sport-blue ul a.disabled {
+ background: transparent;
+ color: #b3b3b3; }
+ .sm-sport-blue ul a.has-submenu {
+ padding-right: 20px; }
+ .sm-sport-blue ul a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #0AA1F1; }
+ .sm-sport-blue ul a:hover .sub-arrow, .sm-sport-blue ul a:focus .sub-arrow, .sm-sport-blue ul a:active .sub-arrow, .sm-sport-blue ul a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff; }
+ .sm-sport-blue ul a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #0AA1F1; }
+ .sm-sport-blue .scroll-up,
+ .sm-sport-blue .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #ceecfc;
+ height: 20px; }
+ .sm-sport-blue .scroll-up-arrow,
+ .sm-sport-blue .scroll-down-arrow {
+ position: absolute;
+ top: 6px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 0 6px 8px 6px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #0AA1F1 transparent; }
+ .sm-sport-blue .scroll-down-arrow {
+ border-width: 8px 6px 0 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #0AA1F1 transparent transparent transparent; }
+ .sm-sport-blue.sm-rtl a.has-submenu {
+ padding-right: 20px;
+ padding-left: 34px; }
+ .sm-sport-blue.sm-rtl a .sub-arrow {
+ right: auto;
+ left: 20px; }
+ .sm-sport-blue.sm-rtl.sm-vertical {
+ border-right: 0;
+ border-left: 2px solid #0AA1F1; }
+ .sm-sport-blue.sm-rtl.sm-vertical a {
+ border-radius: 0 4px 4px 0; }
+ .sm-sport-blue.sm-rtl.sm-vertical a.has-submenu {
+ padding: 10px 20px; }
+ .sm-sport-blue.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #0AA1F1 transparent transparent; }
+ .sm-sport-blue.sm-rtl.sm-vertical a:hover .sub-arrow, .sm-sport-blue.sm-rtl.sm-vertical a:focus .sub-arrow, .sm-sport-blue.sm-rtl.sm-vertical a:active .sub-arrow, .sm-sport-blue.sm-rtl.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent; }
+ .sm-sport-blue.sm-rtl.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent #0AA1F1 transparent transparent; }
+ .sm-sport-blue.sm-rtl ul {
+ border-radius: 4px 0 4px 4px; }
+ .sm-sport-blue.sm-rtl ul a {
+ border-radius: 0 !important; }
+ .sm-sport-blue.sm-rtl ul a.has-submenu {
+ padding: 10px 20px !important; }
+ .sm-sport-blue.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #0AA1F1 transparent transparent; }
+ .sm-sport-blue.sm-rtl ul a:hover .sub-arrow, .sm-sport-blue.sm-rtl ul a:focus .sub-arrow, .sm-sport-blue.sm-rtl ul a:active .sub-arrow, .sm-sport-blue.sm-rtl ul a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent; }
+ .sm-sport-blue.sm-rtl ul a.disabled .sub-arrow {
+ border-color: transparent #0AA1F1 transparent transparent; }
+ .sm-sport-blue.sm-vertical {
+ border-bottom: 0;
+ border-right: 2px solid #0AA1F1; }
+ .sm-sport-blue.sm-vertical a {
+ padding: 10px 20px;
+ border-radius: 4px 0 0 4px; }
+ .sm-sport-blue.sm-vertical a:hover, .sm-sport-blue.sm-vertical a:focus, .sm-sport-blue.sm-vertical a:active, .sm-sport-blue.sm-vertical a.highlighted {
+ background: #0AA1F1;
+ color: #fff;
+ box-shadow: none; }
+ .sm-sport-blue.sm-vertical a.disabled {
+ background: transparent;
+ color: #cccccc; }
+ .sm-sport-blue.sm-vertical a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #0AA1F1; }
+ .sm-sport-blue.sm-vertical a:hover .sub-arrow, .sm-sport-blue.sm-vertical a:focus .sub-arrow, .sm-sport-blue.sm-vertical a:active .sub-arrow, .sm-sport-blue.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff; }
+ .sm-sport-blue.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #0AA1F1; }
+ .sm-sport-blue.sm-vertical ul {
+ border-radius: 4px !important; }
+ .sm-sport-blue.sm-vertical ul a {
+ padding: 10px 20px; } }
+
+/*# sourceMappingURL=sm-sport-blue.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css.map
new file mode 100644
index 0000000..a36b048
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/css/sm-sport-blue.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["../sm-sport-blue/_sm-sport-blue-theme.scss","../sm-sport-blue/mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-sport-blue.css"
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_mixins.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_mixins.scss
new file mode 100644
index 0000000..0ed0650
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_mixins.scss
@@ -0,0 +1,2 @@
+@import 'mixins/_sub-items-indentation.scss';
+@import 'mixins/_round-corners-last-item.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_sm-blue-theme.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_sm-blue-theme.scss
new file mode 100644
index 0000000..d7c2828
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/_sm-blue-theme.scss
@@ -0,0 +1,586 @@
+// This file is best viewed with Tab size 4 code indentation
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 1. Theme Quick Settings (Variables)
+// (for further control, you will need to dig into the actual CSS in 2.)
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 1.1. Colors
+// ----------------------------------------------------------
+
+$sm-blue__blue: #3092c0 !default;
+$sm-blue__blue-dark: darken($sm-blue__blue, 5%) !default;
+$sm-blue__blue-darker: #006892 !default;
+$sm-blue__blue-light: lighten($sm-blue__blue, 30%) !default;
+$sm-blue__white: #fff !default;
+$sm-blue__gray: darken($sm-blue__white, 34%) !default;
+
+$sm-blue__text-shadow: rgba(0, 0, 0, 0.2) !default;
+$sm-blue__box-shadow: rgba(0, 0, 0, 0.2) !default;
+
+$sm-blue__gradients_amount: 2% !default;
+
+
+// ----------------------------------------------------------
+// :: 1.2. Breakpoints
+// ----------------------------------------------------------
+
+$sm-blue__desktop-vp: 768px !default; // switch from collapsible to desktop
+
+
+// ----------------------------------------------------------
+// :: 1.3. Typography
+// ----------------------------------------------------------
+
+// Import "PT Sans Narrow" font from Google fonts
+@import url(https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700);
+
+$sm-blue__font-family: "PT Sans Narrow", "Arial Narrow", Arial, Helvetica, sans-serif !default;
+$sm-blue__font-size-base: 18px !default;
+$sm-blue__font-size-small: 16px !default;
+$sm-blue__line-height: 23px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.4. Borders
+// ----------------------------------------------------------
+
+$sm-blue__border-width: 1px !default;
+$sm-blue__border-radius-base: 8px !default;
+$sm-blue__border-radius-small: 4px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.5. Collapsible main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-blue__collapsible-bg: transparent !default;
+$sm-blue__collapsible-border-radius: $sm-blue__border-radius-base !default;
+$sm-blue__collapsible-box-shadow: 0 1px 4px $sm-blue__box-shadow !default;
+
+// Items
+$sm-blue__collapsible-item-color: $sm-blue__white !default;
+$sm-blue__collapsible-item-bg: $sm-blue__blue !default;
+$sm-blue__collapsible-item-current-color: $sm-blue__white !default;
+$sm-blue__collapsible-item-current-bg: $sm-blue__blue-darker !default;
+$sm-blue__collapsible-item-disabled-color: lighten($sm-blue__blue, 30%) !default;
+$sm-blue__collapsible-item-padding-vertical: 10px !default;
+$sm-blue__collapsible-item-padding-horizontal: 20px !default;
+
+// Toggle button (sub menu indicators)
+$sm-blue__collapsible-toggle-bg: rgba(0, 0, 0, 0.1) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.6. Collapsible sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-blue__collapsible-sub-bg: $sm-blue__white !default;
+
+// Items
+$sm-blue__collapsible-sub-item-color: $sm-blue__blue-dark !default;
+$sm-blue__collapsible-sub-item-bg: transparent !default;
+$sm-blue__collapsible-sub-item-current-color: $sm-blue__white !default;
+$sm-blue__collapsible-sub-item-current-bg: $sm-blue__blue-darker !default;
+$sm-blue__collapsible-sub-item-disabled-color: darken($sm-blue__white, 30%) !default;
+
+// Items separators
+$sm-blue__collapsible-sub-separators-color: rgba(0, 0, 0, 0.05) !default;
+
+// Items text indentation for deeper levels
+$sm-blue__collapsible-sub-item-indentation: 8px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.7. Desktop main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-blue__desktop-bg: $sm-blue__blue !default;
+$sm-blue__desktop-border-radius: $sm-blue__border-radius-base !default;
+$sm-blue__desktop-box-shadow: 0 1px 1px $sm-blue__box-shadow !default;
+
+// Items
+$sm-blue__desktop-item-color: $sm-blue__white !default;
+$sm-blue__desktop-item-bg: $sm-blue__blue !default;
+$sm-blue__desktop-item-hover-bg: darken($sm-blue__blue, 5%) !default;
+$sm-blue__desktop-item-current-color: $sm-blue__white !default;
+$sm-blue__desktop-item-current-bg: $sm-blue__blue-darker !default;
+$sm-blue__desktop-item-disabled-color: lighten($sm-blue__blue, 30%) !default;
+$sm-blue__desktop-item-padding-vertical: 13px !default;
+$sm-blue__desktop-item-padding-horizontal: 24px !default;
+
+// Items separators
+$sm-blue__desktop-separators-size: 1px !default;
+$sm-blue__desktop-separators-color: darken($sm-blue__blue, 5%) !default;
+
+// Sub menu indicators
+$sm-blue__desktop-arrow-size: 5px !default; // border-width
+$sm-blue__desktop-arrow-color: $sm-blue__blue-light !default;
+
+// Vertical menu box
+$sm-blue__desktop-vertical-box-shadow: 0 1px 4px $sm-blue__box-shadow !default;
+
+// Vertical items
+$sm-blue__desktop-vertical-item-padding-vertical: 9px !default;
+$sm-blue__desktop-vertical-item-padding-horizontal: 23px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.8. Desktop sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-blue__desktop-sub-bg: $sm-blue__white !default;
+$sm-blue__desktop-sub-border-color: $sm-blue__gray !default;
+$sm-blue__desktop-sub-border-radius: $sm-blue__border-radius-small !default;
+$sm-blue__desktop-sub-box-shadow: 0 5px 12px $sm-blue__box-shadow !default;
+$sm-blue__desktop-sub-padding-vertical: 7px !default;
+$sm-blue__desktop-sub-padding-horizontal: 0 !default;
+
+// Items
+$sm-blue__desktop-sub-item-color: $sm-blue__blue-dark !default;
+$sm-blue__desktop-sub-item-bg: transparent !default;
+$sm-blue__desktop-sub-item-hover-color: $sm-blue__white !default;
+$sm-blue__desktop-sub-item-hover-bg: $sm-blue__blue !default;
+$sm-blue__desktop-sub-item-current-color: $sm-blue__white !default;
+$sm-blue__desktop-sub-item-current-bg: $sm-blue__blue-darker !default;
+$sm-blue__desktop-sub-item-disabled-color: darken($sm-blue__white, 30%) !default;
+$sm-blue__desktop-sub-item-padding-vertical: 9px !default;
+$sm-blue__desktop-sub-item-padding-horizontal: 23px !default;
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 2. Theme CSS
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 2.1. Collapsible mode (mobile first)
+// ----------------------------------------------------------
+
+// calc item height and sub menus toggle button size
+$sm-blue__item-height: $sm-blue__line-height + $sm-blue__collapsible-item-padding-vertical * 2;
+// set toggle button size to 80% of item height
+$sm-blue__toggle-size: floor($sm-blue__item-height * 0.8);
+$sm-blue__toggle-spacing: floor($sm-blue__item-height * 0.1);
+
+// Main menu box
+.sm-blue {
+ background: $sm-blue__collapsible-bg;
+ border-radius: $sm-blue__collapsible-border-radius;
+ box-shadow: $sm-blue__collapsible-box-shadow;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ padding: $sm-blue__collapsible-item-padding-vertical $sm-blue__collapsible-item-padding-horizontal;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: $sm-blue__collapsible-item-padding-horizontal + $sm-blue__toggle-size + $sm-blue__toggle-spacing;
+ background: $sm-blue__collapsible-item-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__collapsible-item-bg, $sm-blue__gradients_amount), darken($sm-blue__collapsible-item-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__collapsible-item-color;
+ font-family: $sm-blue__font-family;
+ font-size: $sm-blue__font-size-base;
+ font-weight: bold;
+ line-height: $sm-blue__line-height;
+ text-decoration: none;
+ text-shadow: 0 1px 0 $sm-blue__text-shadow;
+ }
+
+ &.current {
+ background: $sm-blue__collapsible-item-current-bg;
+ background-image: linear-gradient(to bottom, darken($sm-blue__collapsible-item-current-bg, $sm-blue__gradients_amount), lighten($sm-blue__collapsible-item-current-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__collapsible-item-current-color;
+ }
+
+ &.disabled {
+ color: $sm-blue__collapsible-item-disabled-color;
+ }
+
+ // Toggle buttons (sub menu indicators)
+ .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -(ceil($sm-blue__toggle-size / 2));
+ left: auto;
+ right: $sm-blue__toggle-spacing;
+ width: $sm-blue__toggle-size;
+ height: $sm-blue__toggle-size;
+ overflow: hidden;
+ font: bold #{$sm-blue__font-size-small}/#{$sm-blue__toggle-size} monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: $sm-blue__collapsible-toggle-bg;
+ border-radius: $sm-blue__border-radius-small;
+ }
+ .sub-arrow::before {
+ content: '+';
+ }
+ &.highlighted .sub-arrow::before {
+ content: '-';
+ }
+ }
+
+ // round the corners of the first item
+ > li:first-child > a, > li:first-child > :not(ul) a {
+ border-radius: $sm-blue__collapsible-border-radius $sm-blue__collapsible-border-radius 0 0;
+ }
+ // round the corners of the last item
+ @include sm-blue__round-corners-last-item($sm-blue__collapsible-border-radius);
+
+ // Sub menus box
+ ul {
+ background: $sm-blue__collapsible-sub-bg;
+
+ // darken the background of the 2+ level sub menus
+ ul {
+ background: rgba(darken($sm-blue__collapsible-sub-bg, 60%), 0.1);
+ }
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ background: $sm-blue__collapsible-sub-item-bg;
+ color: $sm-blue__collapsible-sub-item-color;
+ font-size: $sm-blue__font-size-small;
+ text-shadow: none;
+ // add indentation for sub menus text
+ border-left: $sm-blue__collapsible-sub-item-indentation solid transparent;
+ }
+
+ &.current {
+ background: $sm-blue__collapsible-sub-item-current-bg;
+ background-image: linear-gradient(to bottom, darken($sm-blue__collapsible-sub-item-current-bg, $sm-blue__gradients_amount), lighten($sm-blue__collapsible-sub-item-current-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__collapsible-sub-item-current-color;
+ }
+
+ &.disabled {
+ color: $sm-blue__collapsible-sub-item-disabled-color;
+ }
+ }
+
+ // Add indentation for sub menus text for deeper levels
+ @include sm-blue__sub-items-indentation($sm-blue__collapsible-sub-item-indentation);
+
+ // Sub menus items separators
+ li {
+ border-top: 1px solid $sm-blue__collapsible-sub-separators-color;
+
+ &:first-child {
+ border-top: 0;
+ }
+ }
+ }
+}
+
+
+// ----------------------------------------------------------
+// :: 2.2. Desktop mode
+// ----------------------------------------------------------
+
+@media (min-width: $sm-blue__desktop-vp) {
+
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-blue ul{position:absolute;width:12em;}
+ .sm-blue li{float:left;}
+ .sm-blue.sm-rtl li{float:right;}
+ .sm-blue ul li,.sm-blue.sm-rtl ul li,.sm-blue.sm-vertical li{float:none;}
+ .sm-blue a{white-space:nowrap;}
+ .sm-blue ul a,.sm-blue.sm-vertical a{white-space:normal;}
+ .sm-blue .sm-nowrap > li > a,.sm-blue .sm-nowrap > li > :not(ul) a{white-space:nowrap;}
+ /* ...end */
+
+ // Main menu box
+ .sm-blue {
+ background: $sm-blue__desktop-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__desktop-bg, $sm-blue__gradients_amount), darken($sm-blue__desktop-bg, $sm-blue__gradients_amount));
+ border-radius: $sm-blue__desktop-border-radius;
+ box-shadow: $sm-blue__desktop-box-shadow;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ padding: $sm-blue__desktop-item-padding-vertical $sm-blue__desktop-item-padding-horizontal;
+ background: $sm-blue__desktop-item-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__desktop-item-bg, $sm-blue__gradients_amount), darken($sm-blue__desktop-item-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__desktop-item-color;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-blue__desktop-item-hover-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__desktop-item-hover-bg, $sm-blue__gradients_amount), darken($sm-blue__desktop-item-hover-bg, $sm-blue__gradients_amount));
+ }
+
+ &.current {
+ background: $sm-blue__desktop-item-current-bg;
+ background-image: linear-gradient(to bottom, darken($sm-blue__desktop-item-current-bg, $sm-blue__gradients_amount), lighten($sm-blue__desktop-item-current-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__desktop-item-current-color;
+ }
+
+ &.disabled {
+ background: $sm-blue__desktop-item-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__desktop-item-bg, $sm-blue__gradients_amount), darken($sm-blue__desktop-item-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__desktop-item-disabled-color;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: auto;
+ margin-top: 0;
+ bottom: 2px;
+ left: 50%;
+ margin-left: -$sm-blue__desktop-arrow-size;
+ right: auto;
+ width: 0;
+ height: 0;
+ border-width: $sm-blue__desktop-arrow-size;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-blue__desktop-arrow-color transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ // reset mobile first style
+ .sub-arrow::before {
+ display: none;
+ }
+ }
+
+ // round the corners of the first and last items
+ > li:first-child > a, > li:first-child > :not(ul) a {
+ border-radius: $sm-blue__desktop-border-radius 0 0 $sm-blue__desktop-border-radius;
+ }
+ > li:last-child > a, > li:last-child > :not(ul) a {
+ border-radius: 0 $sm-blue__desktop-border-radius $sm-blue__desktop-border-radius 0 !important;
+ }
+
+ // Main menu items separators
+ > li {
+ border-left: $sm-blue__desktop-separators-size solid $sm-blue__desktop-separators-color;
+
+ &:first-child {
+ border-left: 0;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border: $sm-blue__border-width solid $sm-blue__desktop-sub-border-color;
+ padding: $sm-blue__desktop-sub-padding-vertical $sm-blue__desktop-sub-padding-horizontal;
+ background: $sm-blue__desktop-sub-bg;
+ border-radius: 0 0 $sm-blue__desktop-sub-border-radius $sm-blue__desktop-sub-border-radius !important;
+ box-shadow: $sm-blue__desktop-sub-box-shadow;
+
+ // 2+ sub levels need rounding of all corners
+ ul {
+ border-radius: $sm-blue__desktop-sub-border-radius !important;
+ background: $sm-blue__desktop-sub-bg;
+ }
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ border: 0 !important;
+ padding: $sm-blue__desktop-sub-item-padding-vertical $sm-blue__desktop-sub-item-padding-horizontal;
+ background: $sm-blue__desktop-sub-item-bg;
+ color: $sm-blue__desktop-sub-item-color;
+ border-radius: 0 !important;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-blue__desktop-sub-item-hover-bg;
+ background-image: linear-gradient(to bottom, lighten($sm-blue__desktop-sub-item-hover-bg, $sm-blue__gradients_amount), darken($sm-blue__desktop-sub-item-hover-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__desktop-sub-item-hover-color;
+ }
+
+ &.current {
+ background: $sm-blue__desktop-sub-item-current-bg;
+ background-image: linear-gradient(to bottom, darken($sm-blue__desktop-sub-item-current-bg, $sm-blue__gradients_amount), lighten($sm-blue__desktop-sub-item-current-bg, $sm-blue__gradients_amount));
+ color: $sm-blue__desktop-sub-item-current-color;
+ }
+
+ &.disabled {
+ background: $sm-blue__desktop-sub-bg;
+ color: $sm-blue__desktop-sub-item-disabled-color;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -$sm-blue__desktop-arrow-size;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-blue__desktop-arrow-color;
+ }
+ }
+
+ // No sub menus items separators
+ li {
+ border: 0;
+ }
+ }
+
+ // Scrolling arrows containers for tall sub menus - test sub menu: "Sub test" -> "more..." in the default download package
+ .scroll-up,
+ .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: $sm-blue__desktop-sub-bg;
+ height: 20px;
+ // width and position will be set automatically by the script
+ }
+ .scroll-up-arrow,
+ .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ // we will use one-side border to create a triangle so that we don't use a real background image, of course, you can use a real image if you like too
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px; // tweak size of the arrow
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-blue__desktop-sub-item-color transparent;
+ }
+ .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-blue__desktop-sub-item-color transparent transparent transparent;
+ }
+
+
+ // Rigth-to-left
+
+ // Main menu box
+ &.sm-rtl {
+
+ // Vertical main menu items
+ &.sm-vertical {
+ a {
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-blue__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+
+ // round the corners of the first and last items
+ > li:first-child > a, > li:first-child > :not(ul) a {
+ border-radius: 0 $sm-blue__desktop-border-radius $sm-blue__desktop-border-radius 0;
+ }
+ > li:last-child > a, > li:last-child > :not(ul) a {
+ border-radius: $sm-blue__desktop-border-radius 0 0 $sm-blue__desktop-border-radius !important;
+ }
+
+ // Main menu items separators
+ > li {
+ &:first-child {
+ border-left: $sm-blue__desktop-separators-size solid $sm-blue__desktop-separators-color;
+ }
+ &:last-child {
+ border-left: 0;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ a {
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-blue__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+ }
+
+
+ // Vertical main menu
+
+ // Main menu box
+ &.sm-vertical {
+ box-shadow: $sm-blue__desktop-vertical-box-shadow;
+
+ // Main menu items
+ a {
+ padding: $sm-blue__desktop-vertical-item-padding-vertical $sm-blue__desktop-vertical-item-padding-horizontal;
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -$sm-blue__desktop-arrow-size;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-blue__desktop-arrow-color;
+ }
+ }
+
+ // round the corners of the first and last items
+ > li:first-child > a, > li:first-child > :not(ul) a {
+ border-radius: $sm-blue__desktop-border-radius $sm-blue__desktop-border-radius 0 0;
+ }
+ > li:last-child > a, > li:last-child > :not(ul) a {
+ border-radius: 0 0 $sm-blue__desktop-border-radius $sm-blue__desktop-border-radius !important;
+ }
+
+ // No main menu item separators
+ > li {
+ border-left: 0 !important;
+ }
+
+ // Sub menus box
+ ul {
+ border-radius: $sm-blue__desktop-sub-border-radius !important;
+
+ // Sub menus items
+ a {
+ padding: $sm-blue__desktop-sub-item-padding-vertical $sm-blue__desktop-sub-item-padding-horizontal;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_round-corners-last-item.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_round-corners-last-item.scss
new file mode 100644
index 0000000..9622771
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_round-corners-last-item.scss
@@ -0,0 +1,25 @@
+// Generate rules to round the corners of the last collapsible item
+
+@mixin sm-blue__round-corners-last-item($amount, $chainable: 'ul > li:last-child > ', $level: 4, $chain_prefix: '> li:last-child > ', $chain: '', $selector: '') {
+ $chain: $chain_prefix;
+ $selector: $chain + 'a, ' + $chain + '*:not(ul) a, ' + $chain + 'ul';
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ $selector: $selector + ',
+' + $chain + ' a, ' + $chain + '*:not(ul) a, ' + $chain + ' ul';
+ }
+ #{$selector} {
+ border-radius: 0 0 $amount $amount;
+ }
+ // highlighted items, don't need rounding since their sub is open
+ $chain: $chain_prefix;
+ $selector: $chain + 'a.highlighted, ' + $chain + '*:not(ul) a.highlighted';
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ $selector: $selector + ',
+' + $chain + ' a.highlighted, ' + $chain + '*:not(ul) a.highlighted';
+ }
+ #{$selector} {
+ border-radius: 0;
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_sub-items-indentation.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_sub-items-indentation.scss
new file mode 100644
index 0000000..30cd01b
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/mixins/_sub-items-indentation.scss
@@ -0,0 +1,15 @@
+// Generate rules to indent sub menus text
+//
+// We'll use left border to avoid messing with the padding.
+
+@mixin sm-blue__sub-items-indentation($amount, $chainable: 'ul ', $level: 4, $chain: '') {
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ #{$chain} a,
+ #{$chain} a:hover,
+ #{$chain} a:focus,
+ #{$chain} a:active {
+ border-left: ($amount * ($i + 1)) solid transparent;
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css
new file mode 100644
index 0000000..4cff3bb
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css
@@ -0,0 +1,333 @@
+@import url(https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700);
+.sm-blue {
+ background: transparent;
+ border-radius: 8px;
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
+}
+.sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active {
+ padding: 10px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff;
+ font-family: "PT Sans Narrow", "Arial Narrow", Arial, Helvetica, sans-serif;
+ font-size: 18px;
+ font-weight: bold;
+ line-height: 23px;
+ text-decoration: none;
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
+}
+.sm-blue a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff;
+}
+.sm-blue a.disabled {
+ color: #a1d1e8;
+}
+.sm-blue a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 16px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(0, 0, 0, 0.1);
+ border-radius: 4px;
+}
+.sm-blue a .sub-arrow::before {
+ content: '+';
+}
+.sm-blue a.highlighted .sub-arrow::before {
+ content: '-';
+}
+.sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {
+ border-radius: 8px 8px 0 0;
+}
+.sm-blue > li:last-child > a, .sm-blue > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
+ border-radius: 0 0 8px 8px;
+}
+.sm-blue > li:last-child > a.highlighted, .sm-blue > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-blue > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
+ border-radius: 0;
+}
+.sm-blue ul {
+ background: #fff;
+}
+.sm-blue ul ul {
+ background: rgba(102, 102, 102, 0.1);
+}
+.sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active {
+ background: transparent;
+ color: #2b82ac;
+ font-size: 16px;
+ text-shadow: none;
+ border-left: 8px solid transparent;
+}
+.sm-blue ul a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff;
+}
+.sm-blue ul a.disabled {
+ color: #b3b3b3;
+}
+.sm-blue ul ul a,
+.sm-blue ul ul a:hover,
+.sm-blue ul ul a:focus,
+.sm-blue ul ul a:active {
+ border-left: 16px solid transparent;
+}
+.sm-blue ul ul ul a,
+.sm-blue ul ul ul a:hover,
+.sm-blue ul ul ul a:focus,
+.sm-blue ul ul ul a:active {
+ border-left: 24px solid transparent;
+}
+.sm-blue ul ul ul ul a,
+.sm-blue ul ul ul ul a:hover,
+.sm-blue ul ul ul ul a:focus,
+.sm-blue ul ul ul ul a:active {
+ border-left: 32px solid transparent;
+}
+.sm-blue ul ul ul ul ul a,
+.sm-blue ul ul ul ul ul a:hover,
+.sm-blue ul ul ul ul ul a:focus,
+.sm-blue ul ul ul ul ul a:active {
+ border-left: 40px solid transparent;
+}
+.sm-blue ul li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05);
+}
+.sm-blue ul li:first-child {
+ border-top: 0;
+}
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-blue ul {
+ position: absolute;
+ width: 12em;
+ }
+
+ .sm-blue li {
+ float: left;
+ }
+
+ .sm-blue.sm-rtl li {
+ float: right;
+ }
+
+ .sm-blue ul li, .sm-blue.sm-rtl ul li, .sm-blue.sm-vertical li {
+ float: none;
+ }
+
+ .sm-blue a {
+ white-space: nowrap;
+ }
+
+ .sm-blue ul a, .sm-blue.sm-vertical a {
+ white-space: normal;
+ }
+
+ .sm-blue .sm-nowrap > li > a, .sm-blue .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap;
+ }
+
+ /* ...end */
+ .sm-blue {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ border-radius: 8px;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
+ }
+ .sm-blue a, .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {
+ padding: 13px 24px;
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff;
+ }
+ .sm-blue a:hover, .sm-blue a:focus, .sm-blue a:active, .sm-blue a.highlighted {
+ background: #2b82ac;
+ background-image: linear-gradient(to bottom, #2d89b4, #297ca3);
+ }
+ .sm-blue a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff;
+ }
+ .sm-blue a.disabled {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #a1d1e8;
+ }
+ .sm-blue a .sub-arrow {
+ top: auto;
+ margin-top: 0;
+ bottom: 2px;
+ left: 50%;
+ margin-left: -5px;
+ right: auto;
+ width: 0;
+ height: 0;
+ border-width: 5px;
+ border-style: solid dashed dashed dashed;
+ border-color: #a1d1e8 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ .sm-blue a .sub-arrow::before {
+ display: none;
+ }
+ .sm-blue > li:first-child > a, .sm-blue > li:first-child > :not(ul) a {
+ border-radius: 8px 0 0 8px;
+ }
+ .sm-blue > li:last-child > a, .sm-blue > li:last-child > :not(ul) a {
+ border-radius: 0 8px 8px 0 !important;
+ }
+ .sm-blue > li {
+ border-left: 1px solid #2b82ac;
+ }
+ .sm-blue > li:first-child {
+ border-left: 0;
+ }
+ .sm-blue ul {
+ border: 1px solid #a8a8a8;
+ padding: 7px 0;
+ background: #fff;
+ border-radius: 0 0 4px 4px !important;
+ box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2);
+ }
+ .sm-blue ul ul {
+ border-radius: 4px !important;
+ background: #fff;
+ }
+ .sm-blue ul a, .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {
+ border: 0 !important;
+ padding: 9px 23px;
+ background: transparent;
+ color: #2b82ac;
+ border-radius: 0 !important;
+ }
+ .sm-blue ul a:hover, .sm-blue ul a:focus, .sm-blue ul a:active, .sm-blue ul a.highlighted {
+ background: #3092c0;
+ background-image: linear-gradient(to bottom, #3298c8, #2e8cb8);
+ color: #fff;
+ }
+ .sm-blue ul a.current {
+ background: #006892;
+ background-image: linear-gradient(to bottom, #006188, #006f9c);
+ color: #fff;
+ }
+ .sm-blue ul a.disabled {
+ background: #fff;
+ color: #b3b3b3;
+ }
+ .sm-blue ul a .sub-arrow {
+ top: 50%;
+ margin-top: -5px;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #a1d1e8;
+ }
+ .sm-blue ul li {
+ border: 0;
+ }
+ .sm-blue .scroll-up,
+ .sm-blue .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px;
+ }
+ .sm-blue .scroll-up-arrow,
+ .sm-blue .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #2b82ac transparent;
+ }
+ .sm-blue .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #2b82ac transparent transparent transparent;
+ }
+ .sm-blue.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #a1d1e8 transparent transparent;
+ }
+ .sm-blue.sm-rtl > li:first-child > a, .sm-blue.sm-rtl > li:first-child > :not(ul) a {
+ border-radius: 0 8px 8px 0;
+ }
+ .sm-blue.sm-rtl > li:last-child > a, .sm-blue.sm-rtl > li:last-child > :not(ul) a {
+ border-radius: 8px 0 0 8px !important;
+ }
+ .sm-blue.sm-rtl > li:first-child {
+ border-left: 1px solid #2b82ac;
+ }
+ .sm-blue.sm-rtl > li:last-child {
+ border-left: 0;
+ }
+ .sm-blue.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #a1d1e8 transparent transparent;
+ }
+ .sm-blue.sm-vertical {
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
+ }
+ .sm-blue.sm-vertical a {
+ padding: 9px 23px;
+ }
+ .sm-blue.sm-vertical a .sub-arrow {
+ top: 50%;
+ margin-top: -5px;
+ bottom: auto;
+ left: auto;
+ margin-left: 0;
+ right: 10px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #a1d1e8;
+ }
+ .sm-blue.sm-vertical > li:first-child > a, .sm-blue.sm-vertical > li:first-child > :not(ul) a {
+ border-radius: 8px 8px 0 0;
+ }
+ .sm-blue.sm-vertical > li:last-child > a, .sm-blue.sm-vertical > li:last-child > :not(ul) a {
+ border-radius: 0 0 8px 8px !important;
+ }
+ .sm-blue.sm-vertical > li {
+ border-left: 0 !important;
+ }
+ .sm-blue.sm-vertical ul {
+ border-radius: 4px !important;
+ }
+ .sm-blue.sm-vertical ul a {
+ padding: 9px 23px;
+ }
+}
+
+/*# sourceMappingURL=sm-blue.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css.map
new file mode 100644
index 0000000..b9c9d7e
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["_sm-blue-theme.scss","mixins/_round-corners-last-item.scss","mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-blue.css"
+}
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.scss
new file mode 100644
index 0000000..ddb9f1c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-blue/sm-blue.scss
@@ -0,0 +1,4 @@
+@import '_mixins.scss';
+
+// the variables + the CSS
+@import '_sm-blue-theme.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_mixins.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_mixins.scss
new file mode 100644
index 0000000..0ed0650
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_mixins.scss
@@ -0,0 +1,2 @@
+@import 'mixins/_sub-items-indentation.scss';
+@import 'mixins/_round-corners-last-item.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_sm-clean-theme.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_sm-clean-theme.scss
new file mode 100644
index 0000000..14bd800
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/_sm-clean-theme.scss
@@ -0,0 +1,579 @@
+// This file is best viewed with Tab size 4 code indentation
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 1. Theme Quick Settings (Variables)
+// (for further control, you will need to dig into the actual CSS in 2.)
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 1.1. Colors
+// ----------------------------------------------------------
+
+$sm-clean__white: #fff !default;
+$sm-clean__gray: darken($sm-clean__white, 6.5%) !default;
+$sm-clean__gray-dark: darken($sm-clean__white, 26.5%) !default;
+$sm-clean__gray-darker: darken($sm-clean__white, 66.5%) !default;
+$sm-clean__red: #D23600 !default;
+
+$sm-clean__box-shadow: rgba(0, 0, 0, 0.2) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.2. Breakpoints
+// ----------------------------------------------------------
+
+$sm-clean__desktop-vp: 768px !default; // switch from collapsible to desktop
+
+
+// ----------------------------------------------------------
+// :: 1.3. Typography
+// ----------------------------------------------------------
+
+$sm-clean__font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif !default;
+$sm-clean__font-size-base: 18px !default;
+$sm-clean__font-size-small: 16px !default;
+$sm-clean__line-height: 17px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.4. Borders
+// ----------------------------------------------------------
+
+$sm-clean__border-width: 1px !default;
+$sm-clean__border-radius: 5px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.5. Collapsible main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-clean__collapsible-bg: $sm-clean__gray !default;
+$sm-clean__collapsible-border-radius: $sm-clean__border-radius !default;
+
+// Items
+$sm-clean__collapsible-item-color: $sm-clean__gray-darker !default;
+$sm-clean__collapsible-item-current-color: $sm-clean__red !default;
+$sm-clean__collapsible-item-disabled-color: darken($sm-clean__gray, 20%) !default;
+$sm-clean__collapsible-item-padding-vertical: 13px !default;
+$sm-clean__collapsible-item-padding-horizontal: 20px !default;
+
+// Items separators
+$sm-clean__collapsible-separators-color: rgba(0, 0, 0, 0.05) !default;
+
+// Toggle button (sub menu indicators)
+$sm-clean__collapsible-toggle-bg: rgba(255, 255, 255, 0.5) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.6. Collapsible sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-clean__collapsible-sub-bg: rgba(darken($sm-clean__collapsible-bg, 30%), 0.1) !default;
+
+// Items text indentation for deeper levels
+$sm-clean__collapsible-sub-item-indentation: 8px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.7. Desktop main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-clean__desktop-bg: $sm-clean__gray !default;
+$sm-clean__desktop-border-radius: 100px !default;
+$sm-clean__desktop-padding-horizontal: 10px !default;
+
+// Items
+$sm-clean__desktop-item-color: $sm-clean__gray-darker !default;
+$sm-clean__desktop-item-hover-color: $sm-clean__red !default;
+$sm-clean__desktop-item-current-color: $sm-clean__red !default;
+$sm-clean__desktop-item-disabled-color: darken($sm-clean__gray, 20%) !default;
+$sm-clean__desktop-item-padding-vertical: 12px !default;
+$sm-clean__desktop-item-padding-horizontal: 12px !default;
+
+// Sub menu indicators
+$sm-clean__desktop-arrow-size: 4px !default; // border-width
+$sm-clean__desktop-arrow-color: $sm-clean__gray-darker !default;
+$sm-clean__desktop-arrow-spacing: 4px !default;
+
+// Vertical menu box
+$sm-clean__desktop-vertical-border-radius: $sm-clean__border-radius !default;
+$sm-clean__desktop-vertical-padding-vertical: 10px !default;
+
+// Vertical items
+$sm-clean__desktop-vertical-item-hover-bg: $sm-clean__white !default;
+$sm-clean__desktop-vertical-item-padding-vertical: 10px !default;
+$sm-clean__desktop-vertical-item-padding-horizontal: 20px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.8. Desktop sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-clean__desktop-sub-bg: $sm-clean__white !default;
+$sm-clean__desktop-sub-border-color: $sm-clean__gray-dark !default;
+$sm-clean__desktop-sub-border-radius: $sm-clean__border-radius !default;
+$sm-clean__desktop-sub-box-shadow: 0 5px 9px $sm-clean__box-shadow !default;
+$sm-clean__desktop-sub-padding-vertical: 5px !default;
+$sm-clean__desktop-sub-padding-horizontal: 0 !default;
+
+// Items
+$sm-clean__desktop-sub-item-color: $sm-clean__gray-darker !default;
+$sm-clean__desktop-sub-item-hover-color: $sm-clean__red !default;
+$sm-clean__desktop-sub-item-hover-bg: $sm-clean__gray !default;
+$sm-clean__desktop-sub-item-current-color: $sm-clean__red !default;
+$sm-clean__desktop-sub-item-disabled-color: darken($sm-clean__white, 20%) !default;
+$sm-clean__desktop-sub-item-padding-vertical: 10px !default;
+$sm-clean__desktop-sub-item-padding-horizontal: 20px !default;
+
+// Sub menu indicators
+$sm-clean__desktop-sub-arrow-size: 5px !default; // border-width
+
+// Sub menu carets
+$sm-clean__desktop-sub-caret-size: 8px !default; // border-width
+$sm-clean__desktop-sub-caret-left: 30px !default;
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 2. Theme CSS
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 2.1. Collapsible mode (mobile first)
+// ----------------------------------------------------------
+
+// calc item height and sub menus toggle button size
+$sm-clean__item-height: $sm-clean__line-height + $sm-clean__collapsible-item-padding-vertical * 2;
+// set toggle button size to 80% of item height
+$sm-clean__toggle-size: floor($sm-clean__item-height * 0.8);
+$sm-clean__toggle-spacing: floor($sm-clean__item-height * 0.1);
+
+// Main menu box
+.sm-clean {
+ background: $sm-clean__collapsible-bg;
+ border-radius: $sm-clean__collapsible-border-radius;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ padding: $sm-clean__collapsible-item-padding-vertical $sm-clean__collapsible-item-padding-horizontal;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: $sm-clean__collapsible-item-padding-horizontal + $sm-clean__toggle-size + $sm-clean__toggle-spacing;
+ color: $sm-clean__collapsible-item-color;
+ font-family: $sm-clean__font-family;
+ font-size: $sm-clean__font-size-base;
+ font-weight: normal;
+ line-height: $sm-clean__line-height;
+ text-decoration: none;
+ }
+
+ &.current {
+ color: $sm-clean__collapsible-item-current-color;
+ }
+
+ &.disabled {
+ color: $sm-clean__collapsible-item-disabled-color;
+ }
+
+ // Toggle buttons (sub menu indicators)
+ .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -(ceil($sm-clean__toggle-size / 2));
+ left: auto;
+ right: $sm-clean__toggle-spacing;
+ width: $sm-clean__toggle-size;
+ height: $sm-clean__toggle-size;
+ overflow: hidden;
+ font: bold #{$sm-clean__font-size-small}/#{$sm-clean__toggle-size} monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: $sm-clean__collapsible-toggle-bg;
+ border-radius: $sm-clean__border-radius;
+ }
+ .sub-arrow::before {
+ content: '+';
+ }
+ &.highlighted .sub-arrow::before {
+ content: '-';
+ }
+ }
+
+ // round the corners of the first item
+ > li:first-child > a, > li:first-child > :not(ul) a {
+ border-radius: $sm-clean__collapsible-border-radius $sm-clean__collapsible-border-radius 0 0;
+ }
+ // round the corners of the last item
+ @include sm-clean__round-corners-last-item($sm-clean__collapsible-border-radius);
+
+ // Main menu items separators
+ li {
+ border-top: 1px solid $sm-clean__collapsible-separators-color;
+ }
+ > li:first-child {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ background: $sm-clean__collapsible-sub-bg;
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ font-size: $sm-clean__font-size-small;
+ // add indentation for sub menus text
+ border-left: $sm-clean__collapsible-sub-item-indentation solid transparent;
+ }
+ }
+
+ // Add indentation for sub menus text for deeper levels
+ @include sm-clean__sub-items-indentation($sm-clean__collapsible-sub-item-indentation);
+ }
+}
+
+
+// ----------------------------------------------------------
+// :: 2.2. Desktop mode
+// ----------------------------------------------------------
+
+@media (min-width: $sm-clean__desktop-vp) {
+
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-clean ul{position:absolute;width:12em;}
+ .sm-clean li{float:left;}
+ .sm-clean.sm-rtl li{float:right;}
+ .sm-clean ul li,.sm-clean.sm-rtl ul li,.sm-clean.sm-vertical li{float:none;}
+ .sm-clean a{white-space:nowrap;}
+ .sm-clean ul a,.sm-clean.sm-vertical a{white-space:normal;}
+ .sm-clean .sm-nowrap > li > a,.sm-clean .sm-nowrap > li > :not(ul) a{white-space:nowrap;}
+ /* ...end */
+
+ // Main menu box
+ .sm-clean {
+ padding: 0 $sm-clean__desktop-padding-horizontal;
+ background: $sm-clean__desktop-bg;
+ border-radius: $sm-clean__desktop-border-radius;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ padding: $sm-clean__desktop-item-padding-vertical $sm-clean__desktop-item-padding-horizontal;
+ color: $sm-clean__desktop-item-color;
+ border-radius: 0 !important;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ color: $sm-clean__desktop-item-hover-color;
+ }
+
+ &.current {
+ color: $sm-clean__desktop-item-current-color;
+ }
+
+ &.disabled {
+ color: $sm-clean__desktop-item-disabled-color;
+ }
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-clean__desktop-item-padding-horizontal + $sm-clean__desktop-arrow-size * 2 + $sm-clean__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -(ceil($sm-clean__desktop-arrow-size / 2));
+ right: $sm-clean__desktop-item-padding-horizontal;
+ width: 0;
+ height: 0;
+ border-width: $sm-clean__desktop-arrow-size;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-clean__desktop-arrow-color transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ // reset mobile first style
+ .sub-arrow::before {
+ display: none;
+ }
+ }
+
+ // No main menu items separators
+ li {
+ border-top: 0;
+ }
+
+ // First sub level carets
+ > li > ul::before,
+ > li > ul::after {
+ content: '';
+ position: absolute;
+ top: -($sm-clean__desktop-sub-caret-size * 2 + $sm-clean__border-width * 2);
+ left: $sm-clean__desktop-sub-caret-left;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: ($sm-clean__desktop-sub-caret-size + $sm-clean__border-width);
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-clean__desktop-sub-border-color transparent;
+ }
+ > li > ul::after {
+ top: -($sm-clean__desktop-sub-caret-size * 2);
+ left: ($sm-clean__desktop-sub-caret-left + $sm-clean__border-width);
+ border-width: $sm-clean__desktop-sub-caret-size;
+ border-color: transparent transparent $sm-clean__desktop-sub-bg transparent;
+ }
+
+ // Sub menus box
+ ul {
+ border: $sm-clean__border-width solid $sm-clean__desktop-sub-border-color;
+ padding: $sm-clean__desktop-sub-padding-vertical $sm-clean__desktop-sub-padding-horizontal;
+ background: $sm-clean__desktop-sub-bg;
+ border-radius: $sm-clean__desktop-sub-border-radius !important;
+ box-shadow: $sm-clean__desktop-sub-box-shadow;
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ border: 0 !important;
+ padding: $sm-clean__desktop-sub-item-padding-vertical $sm-clean__desktop-sub-item-padding-horizontal;
+ color: $sm-clean__desktop-sub-item-color;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-clean__desktop-sub-item-hover-bg;
+ color: $sm-clean__desktop-sub-item-hover-color;
+ }
+
+ &.current {
+ color: $sm-clean__desktop-sub-item-current-color;
+ }
+
+ &.disabled {
+ background: $sm-clean__desktop-sub-bg;
+ color: $sm-clean__desktop-sub-item-disabled-color;
+ }
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-clean__desktop-sub-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -$sm-clean__desktop-sub-arrow-size;
+ border-width: $sm-clean__desktop-sub-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-clean__desktop-arrow-color;
+ }
+ }
+ }
+
+ // Scrolling arrows containers for tall sub menus - test sub menu: "Sub test" -> "more..." in the default download package
+ .scroll-up,
+ .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: $sm-clean__desktop-sub-bg;
+ height: 20px;
+ // width and position will be set automatically by the script
+
+ &:hover {
+ background: $sm-clean__desktop-sub-item-hover-bg;
+ }
+ }
+ .scroll-up:hover .scroll-up-arrow {
+ border-color: transparent transparent $sm-clean__desktop-sub-item-hover-color transparent;
+ }
+ .scroll-down:hover .scroll-down-arrow {
+ border-color: $sm-clean__desktop-sub-item-hover-color transparent transparent transparent;
+ }
+ .scroll-up-arrow,
+ .scroll-down-arrow {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ margin-left: -6px;
+ // we will use one-side border to create a triangle so that we don't use a real background image, of course, you can use a real image if you like too
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 6px; // tweak size of the arrow
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-clean__desktop-sub-item-color transparent;
+ }
+ .scroll-down-arrow {
+ top: 8px;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-clean__desktop-sub-item-color transparent transparent transparent;
+ }
+
+
+ // Rigth-to-left
+
+ // Main menu box
+ &.sm-rtl {
+
+ // Main menu items
+ a {
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-clean__desktop-item-padding-horizontal;
+ padding-left: $sm-clean__desktop-item-padding-horizontal + $sm-clean__desktop-arrow-size * 2 + $sm-clean__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: $sm-clean__desktop-item-padding-horizontal;
+ }
+ }
+
+ // Vertical main menu items
+ &.sm-vertical {
+ a {
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-clean__desktop-vertical-item-padding-vertical $sm-clean__desktop-vertical-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-clean__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+
+ // First sub level carets
+ > li > ul::before {
+ left: auto;
+ right: $sm-clean__desktop-sub-caret-left;
+ }
+ > li > ul::after {
+ left: auto;
+ right: ($sm-clean__desktop-sub-caret-left + $sm-clean__border-width);
+ }
+
+ // Sub menus box
+ ul {
+ a {
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-clean__desktop-sub-item-padding-vertical $sm-clean__desktop-sub-item-padding-horizontal !important;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-clean__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+ }
+
+
+ // Vertical main menu
+
+ // Main menu box
+ &.sm-vertical {
+ padding: $sm-clean__desktop-vertical-padding-vertical 0;
+ border-radius: $sm-clean__desktop-vertical-border-radius;
+
+ // Main menu items
+ a {
+ padding: $sm-clean__desktop-vertical-item-padding-vertical $sm-clean__desktop-vertical-item-padding-horizontal;
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-clean__desktop-vertical-item-hover-bg;
+ }
+
+ &.disabled {
+ background: $sm-clean__desktop-bg;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -$sm-clean__desktop-sub-arrow-size;
+ border-width: $sm-clean__desktop-sub-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-clean__desktop-arrow-color;
+ }
+ }
+
+ // No sub level carets
+ > li > ul::before,
+ > li > ul::after {
+ display: none;
+ }
+
+ // Sub menus box
+ ul {
+
+ // Sub menus items
+ a {
+ padding: $sm-clean__desktop-sub-item-padding-vertical $sm-clean__desktop-sub-item-padding-horizontal;
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-clean__desktop-sub-item-hover-bg;
+ }
+
+ &.disabled {
+ background: $sm-clean__desktop-sub-bg;
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_round-corners-last-item.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_round-corners-last-item.scss
new file mode 100644
index 0000000..3687ba4
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_round-corners-last-item.scss
@@ -0,0 +1,25 @@
+// Generate rules to round the corners of the last collapsible item
+
+@mixin sm-clean__round-corners-last-item($amount, $chainable: 'ul > li:last-child > ', $level: 4, $chain_prefix: '> li:last-child > ', $chain: '', $selector: '') {
+ $chain: $chain_prefix;
+ $selector: $chain + 'a, ' + $chain + '*:not(ul) a, ' + $chain + 'ul';
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ $selector: $selector + ',
+' + $chain + ' a, ' + $chain + '*:not(ul) a, ' + $chain + ' ul';
+ }
+ #{$selector} {
+ border-radius: 0 0 $amount $amount;
+ }
+ // highlighted items, don't need rounding since their sub is open
+ $chain: $chain_prefix;
+ $selector: $chain + 'a.highlighted, ' + $chain + '*:not(ul) a.highlighted';
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ $selector: $selector + ',
+' + $chain + ' a.highlighted, ' + $chain + '*:not(ul) a.highlighted';
+ }
+ #{$selector} {
+ border-radius: 0;
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_sub-items-indentation.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_sub-items-indentation.scss
new file mode 100644
index 0000000..0225b65
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/mixins/_sub-items-indentation.scss
@@ -0,0 +1,15 @@
+// Generate rules to indent sub menus text
+//
+// We'll use left border to avoid messing with the padding.
+
+@mixin sm-clean__sub-items-indentation($amount, $chainable: 'ul ', $level: 4, $chain: '') {
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ #{$chain} a,
+ #{$chain} a:hover,
+ #{$chain} a:focus,
+ #{$chain} a:active {
+ border-left: ($amount * ($i + 1)) solid transparent;
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css
new file mode 100644
index 0000000..4fb39b7
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css
@@ -0,0 +1,327 @@
+.sm-clean {
+ background: #eeeeee;
+ border-radius: 5px;
+}
+.sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #555555;
+ font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif;
+ font-size: 18px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none;
+}
+.sm-clean a.current {
+ color: #D23600;
+}
+.sm-clean a.disabled {
+ color: #bbbbbb;
+}
+.sm-clean a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 16px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(255, 255, 255, 0.5);
+ border-radius: 5px;
+}
+.sm-clean a .sub-arrow::before {
+ content: '+';
+}
+.sm-clean a.highlighted .sub-arrow::before {
+ content: '-';
+}
+.sm-clean > li:first-child > a, .sm-clean > li:first-child > :not(ul) a {
+ border-radius: 5px 5px 0 0;
+}
+.sm-clean > li:last-child > a, .sm-clean > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
+ border-radius: 0 0 5px 5px;
+}
+.sm-clean > li:last-child > a.highlighted, .sm-clean > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
+ border-radius: 0;
+}
+.sm-clean li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05);
+}
+.sm-clean > li:first-child {
+ border-top: 0;
+}
+.sm-clean ul {
+ background: rgba(162, 162, 162, 0.1);
+}
+.sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active {
+ font-size: 16px;
+ border-left: 8px solid transparent;
+}
+.sm-clean ul ul a,
+.sm-clean ul ul a:hover,
+.sm-clean ul ul a:focus,
+.sm-clean ul ul a:active {
+ border-left: 16px solid transparent;
+}
+.sm-clean ul ul ul a,
+.sm-clean ul ul ul a:hover,
+.sm-clean ul ul ul a:focus,
+.sm-clean ul ul ul a:active {
+ border-left: 24px solid transparent;
+}
+.sm-clean ul ul ul ul a,
+.sm-clean ul ul ul ul a:hover,
+.sm-clean ul ul ul ul a:focus,
+.sm-clean ul ul ul ul a:active {
+ border-left: 32px solid transparent;
+}
+.sm-clean ul ul ul ul ul a,
+.sm-clean ul ul ul ul ul a:hover,
+.sm-clean ul ul ul ul ul a:focus,
+.sm-clean ul ul ul ul ul a:active {
+ border-left: 40px solid transparent;
+}
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-clean ul {
+ position: absolute;
+ width: 12em;
+ }
+
+ .sm-clean li {
+ float: left;
+ }
+
+ .sm-clean.sm-rtl li {
+ float: right;
+ }
+
+ .sm-clean ul li, .sm-clean.sm-rtl ul li, .sm-clean.sm-vertical li {
+ float: none;
+ }
+
+ .sm-clean a {
+ white-space: nowrap;
+ }
+
+ .sm-clean ul a, .sm-clean.sm-vertical a {
+ white-space: normal;
+ }
+
+ .sm-clean .sm-nowrap > li > a, .sm-clean .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap;
+ }
+
+ /* ...end */
+ .sm-clean {
+ padding: 0 10px;
+ background: #eeeeee;
+ border-radius: 100px;
+ }
+ .sm-clean a, .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
+ padding: 12px 12px;
+ color: #555555;
+ border-radius: 0 !important;
+ }
+ .sm-clean a:hover, .sm-clean a:focus, .sm-clean a:active, .sm-clean a.highlighted {
+ color: #D23600;
+ }
+ .sm-clean a.current {
+ color: #D23600;
+ }
+ .sm-clean a.disabled {
+ color: #bbbbbb;
+ }
+ .sm-clean a.has-submenu {
+ padding-right: 24px;
+ }
+ .sm-clean a .sub-arrow {
+ top: 50%;
+ margin-top: -2px;
+ right: 12px;
+ width: 0;
+ height: 0;
+ border-width: 4px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ .sm-clean a .sub-arrow::before {
+ display: none;
+ }
+ .sm-clean li {
+ border-top: 0;
+ }
+ .sm-clean > li > ul::before,
+ .sm-clean > li > ul::after {
+ content: '';
+ position: absolute;
+ top: -18px;
+ left: 30px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 9px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #bbbbbb transparent;
+ }
+ .sm-clean > li > ul::after {
+ top: -16px;
+ left: 31px;
+ border-width: 8px;
+ border-color: transparent transparent #fff transparent;
+ }
+ .sm-clean ul {
+ border: 1px solid #bbbbbb;
+ padding: 5px 0;
+ background: #fff;
+ border-radius: 5px !important;
+ box-shadow: 0 5px 9px rgba(0, 0, 0, 0.2);
+ }
+ .sm-clean ul a, .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
+ border: 0 !important;
+ padding: 10px 20px;
+ color: #555555;
+ }
+ .sm-clean ul a:hover, .sm-clean ul a:focus, .sm-clean ul a:active, .sm-clean ul a.highlighted {
+ background: #eeeeee;
+ color: #D23600;
+ }
+ .sm-clean ul a.current {
+ color: #D23600;
+ }
+ .sm-clean ul a.disabled {
+ background: #fff;
+ color: #cccccc;
+ }
+ .sm-clean ul a.has-submenu {
+ padding-right: 20px;
+ }
+ .sm-clean ul a .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -5px;
+ border-width: 5px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #555555;
+ }
+ .sm-clean .scroll-up,
+ .sm-clean .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px;
+ }
+ .sm-clean .scroll-up:hover,
+ .sm-clean .scroll-down:hover {
+ background: #eeeeee;
+ }
+ .sm-clean .scroll-up:hover .scroll-up-arrow {
+ border-color: transparent transparent #D23600 transparent;
+ }
+ .sm-clean .scroll-down:hover .scroll-down-arrow {
+ border-color: #D23600 transparent transparent transparent;
+ }
+ .sm-clean .scroll-up-arrow,
+ .sm-clean .scroll-down-arrow {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ margin-left: -6px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 6px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #555555 transparent;
+ }
+ .sm-clean .scroll-down-arrow {
+ top: 8px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent;
+ }
+ .sm-clean.sm-rtl a.has-submenu {
+ padding-right: 12px;
+ padding-left: 24px;
+ }
+ .sm-clean.sm-rtl a .sub-arrow {
+ right: auto;
+ left: 12px;
+ }
+ .sm-clean.sm-rtl.sm-vertical a.has-submenu {
+ padding: 10px 20px;
+ }
+ .sm-clean.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #555555 transparent transparent;
+ }
+ .sm-clean.sm-rtl > li > ul::before {
+ left: auto;
+ right: 30px;
+ }
+ .sm-clean.sm-rtl > li > ul::after {
+ left: auto;
+ right: 31px;
+ }
+ .sm-clean.sm-rtl ul a.has-submenu {
+ padding: 10px 20px !important;
+ }
+ .sm-clean.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 8px;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #555555 transparent transparent;
+ }
+ .sm-clean.sm-vertical {
+ padding: 10px 0;
+ border-radius: 5px;
+ }
+ .sm-clean.sm-vertical a {
+ padding: 10px 20px;
+ }
+ .sm-clean.sm-vertical a:hover, .sm-clean.sm-vertical a:focus, .sm-clean.sm-vertical a:active, .sm-clean.sm-vertical a.highlighted {
+ background: #fff;
+ }
+ .sm-clean.sm-vertical a.disabled {
+ background: #eeeeee;
+ }
+ .sm-clean.sm-vertical a .sub-arrow {
+ right: 8px;
+ top: 50%;
+ margin-top: -5px;
+ border-width: 5px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #555555;
+ }
+ .sm-clean.sm-vertical > li > ul::before,
+ .sm-clean.sm-vertical > li > ul::after {
+ display: none;
+ }
+ .sm-clean.sm-vertical ul a {
+ padding: 10px 20px;
+ }
+ .sm-clean.sm-vertical ul a:hover, .sm-clean.sm-vertical ul a:focus, .sm-clean.sm-vertical ul a:active, .sm-clean.sm-vertical ul a.highlighted {
+ background: #eeeeee;
+ }
+ .sm-clean.sm-vertical ul a.disabled {
+ background: #fff;
+ }
+}
+
+/*# sourceMappingURL=sm-clean.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css.map
new file mode 100644
index 0000000..552d708
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["_sm-clean-theme.scss","mixins/_round-corners-last-item.scss","mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-clean.css"
+}
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.scss
new file mode 100644
index 0000000..109712c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-clean/sm-clean.scss
@@ -0,0 +1,4 @@
+@import '_mixins.scss';
+
+// the variables + the CSS
+@import '_sm-clean-theme.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-core-css.css b/frontend/web/themes/sport/plugins/smartmenus/css/sm-core-css.css
new file mode 100644
index 0000000..6130ae2
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-core-css.css
@@ -0,0 +1,14 @@
+/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
+ You need this once per page no matter how many menu trees or different themes you use.
+-------------------------------------------------------------------------------------------*/
+
+.sm{box-sizing:border-box;position:relative;z-index:9999;-webkit-tap-highlight-color:rgba(0,0,0,0);}
+.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;}
+.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right;}
+.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0;}
+.sm ul{display:none;}
+.sm li,.sm a{position:relative;}
+.sm a{display:block;}
+.sm a.disabled{cursor:default;}
+.sm::after{content:"";display:block;height:0;font:0px/0 serif;clear:both;overflow:hidden;}
+.sm *,.sm *::before,.sm *::after{box-sizing:inherit;}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_mixins.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_mixins.scss
new file mode 100644
index 0000000..dd6ff7c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_mixins.scss
@@ -0,0 +1 @@
+@import 'mixins/_sub-items-indentation.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_sm-mint-theme.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_sm-mint-theme.scss
new file mode 100644
index 0000000..ab8b120
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/_sm-mint-theme.scss
@@ -0,0 +1,569 @@
+// This file is best viewed with Tab size 4 code indentation
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 1. Theme Quick Settings (Variables)
+// (for further control, you will need to dig into the actual CSS in 2.)
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 1.1. Colors
+// ----------------------------------------------------------
+
+$sm-mint__white: #fff !default;
+$sm-mint__black: #333 !default;
+$sm-mint__green: #F6FFED !default;
+$sm-mint__green-dark: #8db863 !default;
+
+$sm-mint__box-shadow: rgba(0, 0, 0, 0.25) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.2. Breakpoints
+// ----------------------------------------------------------
+
+$sm-mint__desktop-vp: 768px !default; // switch from collapsible to desktop
+
+
+// ----------------------------------------------------------
+// :: 1.3. Typography
+// ----------------------------------------------------------
+
+$sm-mint__font-family: Arial, sans-serif !default;
+$sm-mint__font-size-base: 16px !default;
+$sm-mint__font-size-small: 14px !default;
+$sm-mint__line-height: 17px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.4. Borders
+// ----------------------------------------------------------
+
+$sm-mint__border-width: 2px !default;
+$sm-mint__border-radius-base: 4px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.5. Collapsible main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-mint__collapsible-bg: $sm-mint__white !default;
+$sm-mint__collapsible-border-color: $sm-mint__green-dark !default;
+
+// Items
+$sm-mint__collapsible-item-color: $sm-mint__black !default;
+$sm-mint__collapsible-item-disabled-color: darken($sm-mint__white, 20%) !default;
+$sm-mint__collapsible-item-padding-vertical: 13px !default;
+$sm-mint__collapsible-item-padding-horizontal: 20px !default;
+
+// Items separators
+$sm-mint__collapsible-separators-color: rgba($sm-mint__green-dark, 0.2) !default;
+
+// Toggle button (sub menu indicators)
+$sm-mint__collapsible-toggle-bg: rgba($sm-mint__green-dark, 0.2) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.6. Collapsible sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-mint__collapsible-sub-bg: rgba($sm-mint__green-dark, 0.2) !default;
+
+// Items text indentation for deeper levels
+$sm-mint__collapsible-sub-item-indentation: 8px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.7. Desktop main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-mint__desktop-bg: transparent !default;
+
+// Items
+$sm-mint__desktop-item-color: $sm-mint__black !default;
+$sm-mint__desktop-item-hover-color: $sm-mint__white !default;
+$sm-mint__desktop-item-hover-bg: $sm-mint__green-dark !default;
+$sm-mint__desktop-item-highlighted-color: $sm-mint__black !default;
+$sm-mint__desktop-item-highlighted-bg: $sm-mint__green !default;
+$sm-mint__desktop-item-highlighted-box-shadow: 0 4px 3px $sm-mint__box-shadow !default;
+$sm-mint__desktop-item-disabled-color: darken($sm-mint__white, 20%) !default;
+$sm-mint__desktop-item-padding-vertical: 11px !default;
+$sm-mint__desktop-item-padding-horizontal: 20px !default;
+
+// Sub menu indicators
+$sm-mint__desktop-arrow-size: 6px !default; // border-width
+$sm-mint__desktop-arrow-color: $sm-mint__green-dark !default;
+$sm-mint__desktop-arrow-hover-color: $sm-mint__white !default;
+$sm-mint__desktop-arrow-highlighted-color: $sm-mint__green-dark !default;
+$sm-mint__desktop-arrow-spacing: 6px !default;
+
+// Vertical items
+$sm-mint__desktop-vertical-item-highlighted-color: $sm-mint__desktop-item-hover-color !default;
+$sm-mint__desktop-vertical-item-highlighted-bg: $sm-mint__desktop-item-hover-bg !default;
+$sm-mint__desktop-vertical-item-padding-vertical: 10px !default;
+$sm-mint__desktop-vertical-item-padding-horizontal: 20px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.8. Desktop sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-mint__desktop-sub-bg: $sm-mint__green !default;
+$sm-mint__desktop-sub-box-shadow: 0 4px 3px $sm-mint__box-shadow !default;
+$sm-mint__desktop-sub-padding-vertical: 8px !default;
+$sm-mint__desktop-sub-padding-horizontal: 0 !default;
+
+// Items
+$sm-mint__desktop-sub-item-color: $sm-mint__black !default;
+$sm-mint__desktop-sub-item-hover-color: $sm-mint__white !default;
+$sm-mint__desktop-sub-item-hover-bg: $sm-mint__green-dark !default;
+$sm-mint__desktop-sub-item-disabled-color: lighten($sm-mint__black, 50%) !default;
+$sm-mint__desktop-sub-item-padding-vertical: 10px !default;
+$sm-mint__desktop-sub-item-padding-horizontal: 20px !default;
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 2. Theme CSS
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 2.1. Collapsible mode (mobile first)
+// ----------------------------------------------------------
+
+// calc item height and sub menus toggle button size
+$sm-mint__item-height: $sm-mint__line-height + $sm-mint__collapsible-item-padding-vertical * 2;
+// set toggle button size to 80% of item height
+$sm-mint__toggle-size: floor($sm-mint__item-height * 0.8);
+$sm-mint__toggle-spacing: floor($sm-mint__item-height * 0.1);
+
+// Main menu box
+.sm-mint {
+ border-top: $sm-mint__border-width solid $sm-mint__collapsible-border-color;
+ border-bottom: $sm-mint__border-width solid $sm-mint__collapsible-border-color;
+ background: $sm-mint__collapsible-bg;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ padding: $sm-mint__collapsible-item-padding-vertical $sm-mint__collapsible-item-padding-horizontal;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: $sm-mint__collapsible-item-padding-horizontal + $sm-mint__toggle-size + $sm-mint__toggle-spacing;
+ color: $sm-mint__collapsible-item-color;
+ font-family: $sm-mint__font-family;
+ font-size: $sm-mint__font-size-base;
+ font-weight: normal;
+ line-height: $sm-mint__line-height;
+ text-decoration: none;
+ }
+
+ &.current {
+ font-weight: bold;
+ }
+
+ &.disabled {
+ color: $sm-mint__collapsible-item-disabled-color;
+ }
+
+ // Toggle buttons (sub menu indicators)
+ .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -(ceil($sm-mint__toggle-size / 2));
+ left: auto;
+ right: $sm-mint__toggle-spacing;
+ width: $sm-mint__toggle-size;
+ height: $sm-mint__toggle-size;
+ overflow: hidden;
+ font: bold #{$sm-mint__font-size-small}/#{$sm-mint__toggle-size} monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: $sm-mint__collapsible-toggle-bg;
+ border-radius: $sm-mint__border-radius-base;
+ }
+ .sub-arrow::before {
+ content: '+';
+ }
+ &.highlighted .sub-arrow::before {
+ content: '-';
+ }
+ }
+
+ // Main menu items separators
+ li {
+ border-top: 1px solid $sm-mint__collapsible-separators-color;
+ }
+ > li:first-child {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ background: $sm-mint__collapsible-sub-bg;
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ font-size: $sm-mint__font-size-small;
+ // add indentation for sub menus text
+ border-left: $sm-mint__collapsible-sub-item-indentation solid transparent;
+ }
+ }
+
+ // Add indentation for sub menus text for deeper levels
+ @include sm-mint__sub-items-indentation($sm-mint__collapsible-sub-item-indentation);
+ }
+}
+
+
+// ----------------------------------------------------------
+// :: 2.2. Desktop mode
+// ----------------------------------------------------------
+
+@media (min-width: $sm-mint__desktop-vp) {
+
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-mint ul{position:absolute;width:12em;}
+ .sm-mint li{float:left;}
+ .sm-mint.sm-rtl li{float:right;}
+ .sm-mint ul li,.sm-mint.sm-rtl ul li,.sm-mint.sm-vertical li{float:none;}
+ .sm-mint a{white-space:nowrap;}
+ .sm-mint ul a,.sm-mint.sm-vertical a{white-space:normal;}
+ .sm-mint .sm-nowrap > li > a,.sm-mint .sm-nowrap > li > :not(ul) a{white-space:nowrap;}
+ /* ...end */
+
+ // Main menu box
+ .sm-mint {
+ border-top: 0;
+ background: $sm-mint__desktop-bg;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ padding: $sm-mint__desktop-item-padding-vertical $sm-mint__desktop-item-padding-horizontal;
+ color: $sm-mint__desktop-item-color;
+ border-radius: $sm-mint__border-radius-base $sm-mint__border-radius-base 0 0;
+ }
+
+ &:hover,
+ &:focus,
+ &:active {
+ background: $sm-mint__desktop-item-hover-bg;
+ color: $sm-mint__desktop-item-hover-color;
+ }
+
+ &.highlighted {
+ background: $sm-mint__desktop-item-highlighted-bg;
+ color: $sm-mint__desktop-item-highlighted-color;
+ box-shadow: $sm-mint__desktop-item-highlighted-box-shadow;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-mint__desktop-item-disabled-color;
+ box-shadow: none;
+ }
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-mint__desktop-item-padding-horizontal + 8px + $sm-mint__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -(ceil($sm-mint__desktop-arrow-size / 2));
+ right: $sm-mint__desktop-item-padding-horizontal;
+ width: 0;
+ height: 0;
+ border-width: $sm-mint__desktop-arrow-size ($sm-mint__desktop-arrow-size * 0.67) 0 ($sm-mint__desktop-arrow-size * 0.67);
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-mint__desktop-arrow-color transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow {
+ border-color: $sm-mint__desktop-arrow-hover-color transparent transparent transparent;
+ }
+ &.highlighted .sub-arrow {
+ border-color: $sm-mint__desktop-arrow-highlighted-color transparent transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: $sm-mint__desktop-arrow-color transparent transparent transparent;
+ }
+ // reset mobile first style
+ .sub-arrow::before {
+ display: none;
+ }
+ }
+
+ // No main menu items separators
+ li {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ border: 0;
+ padding: $sm-mint__desktop-sub-padding-vertical $sm-mint__desktop-sub-padding-horizontal;
+ background: $sm-mint__desktop-sub-bg;
+ border-radius: 0 $sm-mint__border-radius-base $sm-mint__border-radius-base $sm-mint__border-radius-base;
+ box-shadow: $sm-mint__desktop-sub-box-shadow;
+
+ // 2+ sub levels need rounding of all corners
+ ul {
+ border-radius: $sm-mint__border-radius-base;
+ }
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ border: 0 !important;
+ padding: $sm-mint__desktop-sub-item-padding-vertical $sm-mint__desktop-sub-item-padding-horizontal;
+ color: $sm-mint__desktop-sub-item-color;
+ border-radius: 0;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-mint__desktop-sub-item-hover-bg;
+ color: $sm-mint__desktop-sub-item-hover-color;
+ box-shadow: none;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-mint__desktop-sub-item-disabled-color;
+ }
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-mint__desktop-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 10px;
+ margin-top: -($sm-mint__desktop-arrow-size * 0.67);
+ border-width: ($sm-mint__desktop-arrow-size * 0.67) 0 ($sm-mint__desktop-arrow-size * 0.67) $sm-mint__desktop-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-color;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-hover-color;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-color;
+ }
+ }
+ }
+
+ // Scrolling arrows containers for tall sub menus - test sub menu: "Sub test" -> "more..." in the default download package
+ .scroll-up,
+ .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: $sm-mint__desktop-sub-bg;
+ height: 20px;
+ // width and position will be set automatically by the script
+ }
+ .scroll-up-arrow,
+ .scroll-down-arrow {
+ position: absolute;
+ top: 6px;
+ left: 50%;
+ margin-left: -8px;
+ // we will use one-side border to create a triangle so that we don't use a real background image, of course, you can use a real image if you like too
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 0 6px 8px 6px; // tweak size of the arrow
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-mint__desktop-arrow-color transparent;
+ }
+ .scroll-down-arrow {
+ border-width: 8px 6px 0 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-mint__desktop-arrow-color transparent transparent transparent;
+ }
+
+
+ // Rigth-to-left
+
+ // Main menu box
+ &.sm-rtl {
+
+ // Main menu items
+ a {
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-mint__desktop-item-padding-horizontal;
+ padding-left: $sm-mint__desktop-item-padding-horizontal + 8px + $sm-mint__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: $sm-mint__desktop-item-padding-horizontal;
+ }
+ }
+
+ // Vertical main menu
+ &.sm-vertical {
+ border-right: 0;
+ border-left: $sm-mint__border-width solid $sm-mint__collapsible-border-color;
+
+ // Vertical main menu items
+ a {
+ border-radius: 0 $sm-mint__border-radius-base $sm-mint__border-radius-base 0;
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-mint__desktop-vertical-item-padding-vertical $sm-mint__desktop-vertical-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: ($sm-mint__desktop-arrow-size * 0.67) $sm-mint__desktop-arrow-size ($sm-mint__desktop-arrow-size * 0.67) 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-mint__desktop-arrow-color transparent transparent;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent $sm-mint__desktop-arrow-hover-color transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent $sm-mint__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border-radius: $sm-mint__border-radius-base 0 $sm-mint__border-radius-base $sm-mint__border-radius-base;
+
+ a {
+ border-radius: 0 !important;
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-mint__desktop-sub-item-padding-vertical $sm-mint__desktop-sub-item-padding-horizontal !important;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: ($sm-mint__desktop-arrow-size * 0.67) $sm-mint__desktop-arrow-size ($sm-mint__desktop-arrow-size * 0.67) 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-mint__desktop-arrow-color transparent transparent;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent $sm-mint__desktop-arrow-hover-color transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent $sm-mint__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+ }
+
+
+ // Vertical main menu
+
+ // Main menu box
+ &.sm-vertical {
+ border-bottom: 0;
+ border-right: $sm-mint__border-width solid $sm-mint__collapsible-border-color;
+
+ // Main menu items
+ a {
+ padding: $sm-mint__desktop-vertical-item-padding-vertical $sm-mint__desktop-vertical-item-padding-horizontal;
+ border-radius: $sm-mint__border-radius-base 0 0 $sm-mint__border-radius-base;
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-mint__desktop-item-hover-bg;
+ color: $sm-mint__desktop-item-hover-color;
+ box-shadow: none;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-mint__desktop-item-disabled-color;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 10px;
+ margin-top: -($sm-mint__desktop-arrow-size * 0.67);
+ border-width: ($sm-mint__desktop-arrow-size * 0.67) 0 ($sm-mint__desktop-arrow-size * 0.67) $sm-mint__desktop-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-color;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-hover-color;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent transparent transparent $sm-mint__desktop-arrow-color;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border-radius: $sm-mint__border-radius-base !important;
+
+ // Sub menus items
+ a {
+ padding: $sm-mint__desktop-sub-item-padding-vertical $sm-mint__desktop-sub-item-padding-horizontal;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/mixins/_sub-items-indentation.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/mixins/_sub-items-indentation.scss
new file mode 100644
index 0000000..2873133
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/mixins/_sub-items-indentation.scss
@@ -0,0 +1,15 @@
+// Generate rules to indent sub menus text
+//
+// We'll use left border to avoid messing with the padding.
+
+@mixin sm-mint__sub-items-indentation($amount, $chainable: 'ul ', $level: 4, $chain: '') {
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ #{$chain} a,
+ #{$chain} a:hover,
+ #{$chain} a:focus,
+ #{$chain} a:active {
+ border-left: ($amount * ($i + 1)) solid transparent;
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css
new file mode 100644
index 0000000..1ab6555
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css
@@ -0,0 +1,331 @@
+.sm-mint {
+ border-top: 2px solid #8db863;
+ border-bottom: 2px solid #8db863;
+ background: #fff;
+}
+.sm-mint a, .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #333;
+ font-family: Arial, sans-serif;
+ font-size: 16px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none;
+}
+.sm-mint a.current {
+ font-weight: bold;
+}
+.sm-mint a.disabled {
+ color: #cccccc;
+}
+.sm-mint a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 14px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(141, 184, 99, 0.2);
+ border-radius: 4px;
+}
+.sm-mint a .sub-arrow::before {
+ content: '+';
+}
+.sm-mint a.highlighted .sub-arrow::before {
+ content: '-';
+}
+.sm-mint li {
+ border-top: 1px solid rgba(141, 184, 99, 0.2);
+}
+.sm-mint > li:first-child {
+ border-top: 0;
+}
+.sm-mint ul {
+ background: rgba(141, 184, 99, 0.2);
+}
+.sm-mint ul a, .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active {
+ font-size: 14px;
+ border-left: 8px solid transparent;
+}
+.sm-mint ul ul a,
+.sm-mint ul ul a:hover,
+.sm-mint ul ul a:focus,
+.sm-mint ul ul a:active {
+ border-left: 16px solid transparent;
+}
+.sm-mint ul ul ul a,
+.sm-mint ul ul ul a:hover,
+.sm-mint ul ul ul a:focus,
+.sm-mint ul ul ul a:active {
+ border-left: 24px solid transparent;
+}
+.sm-mint ul ul ul ul a,
+.sm-mint ul ul ul ul a:hover,
+.sm-mint ul ul ul ul a:focus,
+.sm-mint ul ul ul ul a:active {
+ border-left: 32px solid transparent;
+}
+.sm-mint ul ul ul ul ul a,
+.sm-mint ul ul ul ul ul a:hover,
+.sm-mint ul ul ul ul ul a:focus,
+.sm-mint ul ul ul ul ul a:active {
+ border-left: 40px solid transparent;
+}
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-mint ul {
+ position: absolute;
+ width: 12em;
+ }
+
+ .sm-mint li {
+ float: left;
+ }
+
+ .sm-mint.sm-rtl li {
+ float: right;
+ }
+
+ .sm-mint ul li, .sm-mint.sm-rtl ul li, .sm-mint.sm-vertical li {
+ float: none;
+ }
+
+ .sm-mint a {
+ white-space: nowrap;
+ }
+
+ .sm-mint ul a, .sm-mint.sm-vertical a {
+ white-space: normal;
+ }
+
+ .sm-mint .sm-nowrap > li > a, .sm-mint .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap;
+ }
+
+ /* ...end */
+ .sm-mint {
+ border-top: 0;
+ background: transparent;
+ }
+ .sm-mint a, .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active, .sm-mint a.highlighted {
+ padding: 11px 20px;
+ color: #333;
+ border-radius: 4px 4px 0 0;
+ }
+ .sm-mint a:hover, .sm-mint a:focus, .sm-mint a:active {
+ background: #8db863;
+ color: #fff;
+ }
+ .sm-mint a.highlighted {
+ background: #F6FFED;
+ color: #333;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25);
+ }
+ .sm-mint a.disabled {
+ background: transparent;
+ color: #cccccc;
+ box-shadow: none;
+ }
+ .sm-mint a.has-submenu {
+ padding-right: 34px;
+ }
+ .sm-mint a .sub-arrow {
+ top: 50%;
+ margin-top: -3px;
+ right: 20px;
+ width: 0;
+ height: 0;
+ border-width: 6px 4.02px 0 4.02px;
+ border-style: solid dashed dashed dashed;
+ border-color: #8db863 transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ .sm-mint a:hover .sub-arrow, .sm-mint a:focus .sub-arrow, .sm-mint a:active .sub-arrow {
+ border-color: #fff transparent transparent transparent;
+ }
+ .sm-mint a.highlighted .sub-arrow {
+ border-color: #8db863 transparent transparent transparent;
+ }
+ .sm-mint a.disabled .sub-arrow {
+ border-color: #8db863 transparent transparent transparent;
+ }
+ .sm-mint a .sub-arrow::before {
+ display: none;
+ }
+ .sm-mint li {
+ border-top: 0;
+ }
+ .sm-mint ul {
+ border: 0;
+ padding: 8px 0;
+ background: #F6FFED;
+ border-radius: 0 4px 4px 4px;
+ box-shadow: 0 4px 3px rgba(0, 0, 0, 0.25);
+ }
+ .sm-mint ul ul {
+ border-radius: 4px;
+ }
+ .sm-mint ul a, .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active, .sm-mint ul a.highlighted {
+ border: 0 !important;
+ padding: 10px 20px;
+ color: #333;
+ border-radius: 0;
+ }
+ .sm-mint ul a:hover, .sm-mint ul a:focus, .sm-mint ul a:active, .sm-mint ul a.highlighted {
+ background: #8db863;
+ color: #fff;
+ box-shadow: none;
+ }
+ .sm-mint ul a.disabled {
+ background: transparent;
+ color: #b3b3b3;
+ }
+ .sm-mint ul a.has-submenu {
+ padding-right: 20px;
+ }
+ .sm-mint ul a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #8db863;
+ }
+ .sm-mint ul a:hover .sub-arrow, .sm-mint ul a:focus .sub-arrow, .sm-mint ul a:active .sub-arrow, .sm-mint ul a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff;
+ }
+ .sm-mint ul a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #8db863;
+ }
+ .sm-mint .scroll-up,
+ .sm-mint .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #F6FFED;
+ height: 20px;
+ }
+ .sm-mint .scroll-up-arrow,
+ .sm-mint .scroll-down-arrow {
+ position: absolute;
+ top: 6px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 0 6px 8px 6px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #8db863 transparent;
+ }
+ .sm-mint .scroll-down-arrow {
+ border-width: 8px 6px 0 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #8db863 transparent transparent transparent;
+ }
+ .sm-mint.sm-rtl a.has-submenu {
+ padding-right: 20px;
+ padding-left: 34px;
+ }
+ .sm-mint.sm-rtl a .sub-arrow {
+ right: auto;
+ left: 20px;
+ }
+ .sm-mint.sm-rtl.sm-vertical {
+ border-right: 0;
+ border-left: 2px solid #8db863;
+ }
+ .sm-mint.sm-rtl.sm-vertical a {
+ border-radius: 0 4px 4px 0;
+ }
+ .sm-mint.sm-rtl.sm-vertical a.has-submenu {
+ padding: 10px 20px;
+ }
+ .sm-mint.sm-rtl.sm-vertical a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #8db863 transparent transparent;
+ }
+ .sm-mint.sm-rtl.sm-vertical a:hover .sub-arrow, .sm-mint.sm-rtl.sm-vertical a:focus .sub-arrow, .sm-mint.sm-rtl.sm-vertical a:active .sub-arrow, .sm-mint.sm-rtl.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent;
+ }
+ .sm-mint.sm-rtl.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent #8db863 transparent transparent;
+ }
+ .sm-mint.sm-rtl ul {
+ border-radius: 4px 0 4px 4px;
+ }
+ .sm-mint.sm-rtl ul a {
+ border-radius: 0 !important;
+ }
+ .sm-mint.sm-rtl ul a.has-submenu {
+ padding: 10px 20px !important;
+ }
+ .sm-mint.sm-rtl ul a .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: 4.02px 6px 4.02px 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent #8db863 transparent transparent;
+ }
+ .sm-mint.sm-rtl ul a:hover .sub-arrow, .sm-mint.sm-rtl ul a:focus .sub-arrow, .sm-mint.sm-rtl ul a:active .sub-arrow, .sm-mint.sm-rtl ul a.highlighted .sub-arrow {
+ border-color: transparent #fff transparent transparent;
+ }
+ .sm-mint.sm-rtl ul a.disabled .sub-arrow {
+ border-color: transparent #8db863 transparent transparent;
+ }
+ .sm-mint.sm-vertical {
+ border-bottom: 0;
+ border-right: 2px solid #8db863;
+ }
+ .sm-mint.sm-vertical a {
+ padding: 10px 20px;
+ border-radius: 4px 0 0 4px;
+ }
+ .sm-mint.sm-vertical a:hover, .sm-mint.sm-vertical a:focus, .sm-mint.sm-vertical a:active, .sm-mint.sm-vertical a.highlighted {
+ background: #8db863;
+ color: #fff;
+ box-shadow: none;
+ }
+ .sm-mint.sm-vertical a.disabled {
+ background: transparent;
+ color: #cccccc;
+ }
+ .sm-mint.sm-vertical a .sub-arrow {
+ right: 10px;
+ margin-top: -4.02px;
+ border-width: 4.02px 0 4.02px 6px;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent #8db863;
+ }
+ .sm-mint.sm-vertical a:hover .sub-arrow, .sm-mint.sm-vertical a:focus .sub-arrow, .sm-mint.sm-vertical a:active .sub-arrow, .sm-mint.sm-vertical a.highlighted .sub-arrow {
+ border-color: transparent transparent transparent #fff;
+ }
+ .sm-mint.sm-vertical a.disabled .sub-arrow {
+ border-color: transparent transparent transparent #8db863;
+ }
+ .sm-mint.sm-vertical ul {
+ border-radius: 4px !important;
+ }
+ .sm-mint.sm-vertical ul a {
+ padding: 10px 20px;
+ }
+}
+
+/*# sourceMappingURL=sm-mint.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css.map
new file mode 100644
index 0000000..2220dbd
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["_sm-mint-theme.scss","mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-mint.css"
+}
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.scss
new file mode 100644
index 0000000..00dc267
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-mint/sm-mint.scss
@@ -0,0 +1,4 @@
+@import '_mixins.scss';
+
+// the variables + the CSS
+@import '_sm-mint-theme.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_mixins.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_mixins.scss
new file mode 100644
index 0000000..dd6ff7c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_mixins.scss
@@ -0,0 +1 @@
+@import 'mixins/_sub-items-indentation.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_sm-simple-theme.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_sm-simple-theme.scss
new file mode 100644
index 0000000..e72e20b
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/_sm-simple-theme.scss
@@ -0,0 +1,446 @@
+// This file is best viewed with Tab size 4 code indentation
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 1. Theme Quick Settings (Variables)
+// (for further control, you will need to dig into the actual CSS in 2.)
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 1.1. Colors
+// ----------------------------------------------------------
+
+$sm-simple__white: #fff !default;
+$sm-simple__gray: darken($sm-simple__white, 6.5%) !default;
+$sm-simple__gray-dark: darken($sm-simple__white, 26.5%) !default;
+$sm-simple__gray-darker: darken($sm-simple__white, 66.5%) !default;
+
+$sm-simple__box-shadow: rgba(0, 0, 0, 0.2) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.2. Breakpoints
+// ----------------------------------------------------------
+
+$sm-simple__desktop-vp: 768px !default; // switch from collapsible to desktop
+
+
+// ----------------------------------------------------------
+// :: 1.3. Typography
+// ----------------------------------------------------------
+
+$sm-simple__font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif !default;
+$sm-simple__font-size-base: 16px !default;
+$sm-simple__font-size-small: 14px !default;
+$sm-simple__line-height: 17px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.4. Borders
+// ----------------------------------------------------------
+
+$sm-simple__border-width: 1px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.5. Collapsible main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-simple__collapsible-bg: $sm-simple__white !default;
+$sm-simple__collapsible-border-color: $sm-simple__gray-dark !default;
+$sm-simple__collapsible-box-shadow: 0 1px 1px $sm-simple__box-shadow !default;
+
+// Items
+$sm-simple__collapsible-item-color: $sm-simple__gray-darker !default;
+$sm-simple__collapsible-item-current-color: $sm-simple__white !default;
+$sm-simple__collapsible-item-current-bg: $sm-simple__gray-darker !default;
+$sm-simple__collapsible-item-disabled-color: darken($sm-simple__white, 20%) !default;
+$sm-simple__collapsible-item-padding-vertical: 13px !default;
+$sm-simple__collapsible-item-padding-horizontal: 20px !default;
+
+// Items separators
+$sm-simple__collapsible-separators-color: rgba(0, 0, 0, 0.05) !default;
+
+// Toggle button (sub menu indicators)
+$sm-simple__collapsible-toggle-bg: rgba(0, 0, 0, 0.08) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.6. Collapsible sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-simple__collapsible-sub-bg: rgba(darken($sm-simple__collapsible-bg, 30%), 0.1) !default;
+
+// Items text indentation for deeper levels
+$sm-simple__collapsible-sub-item-indentation: 8px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.7. Desktop main menu and sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-simple__desktop-bg: $sm-simple__white !default;
+
+// Items
+$sm-simple__desktop-item-color: $sm-simple__gray-darker !default;
+$sm-simple__desktop-item-hover-bg: $sm-simple__gray !default;
+$sm-simple__desktop-item-current-color: $sm-simple__white !default;
+$sm-simple__desktop-item-current-bg: $sm-simple__gray-darker !default;
+$sm-simple__desktop-item-disabled-color: darken($sm-simple__white, 20%) !default;
+$sm-simple__desktop-item-padding-vertical: 11px !default;
+$sm-simple__desktop-item-padding-horizontal: 20px !default;
+
+// Items separators
+$sm-simple__desktop-separators-size: 1px !default;
+$sm-simple__desktop-separators-color: $sm-simple__gray !default;
+
+// Sub menu indicators
+$sm-simple__desktop-arrow-spacing: 4px !default;
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 2. Theme CSS
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 2.1. Collapsible mode (mobile first)
+// ----------------------------------------------------------
+
+// calc item height and sub menus toggle button size
+$sm-simple__item-height: $sm-simple__line-height + $sm-simple__collapsible-item-padding-vertical * 2;
+// set toggle button size to 80% of item height
+$sm-simple__toggle-size: floor($sm-simple__item-height * 0.8);
+$sm-simple__toggle-spacing: floor($sm-simple__item-height * 0.1);
+
+// Main menu box
+.sm-simple {
+ border: $sm-simple__border-width solid $sm-simple__collapsible-border-color;
+ background: $sm-simple__collapsible-bg;
+ box-shadow: $sm-simple__collapsible-box-shadow;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ padding: $sm-simple__collapsible-item-padding-vertical $sm-simple__collapsible-item-padding-horizontal;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: $sm-simple__collapsible-item-padding-horizontal + $sm-simple__toggle-size + $sm-simple__toggle-spacing;
+ color: $sm-simple__collapsible-item-color;
+ font-family: $sm-simple__font-family;
+ font-size: $sm-simple__font-size-base;
+ font-weight: normal;
+ line-height: $sm-simple__line-height;
+ text-decoration: none;
+ }
+
+ &.current {
+ background: $sm-simple__collapsible-item-current-bg;
+ color: $sm-simple__collapsible-item-current-color;
+ }
+
+ &.disabled {
+ color: $sm-simple__collapsible-item-disabled-color;
+ }
+
+ // Toggle buttons (sub menu indicators)
+ .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -(ceil($sm-simple__toggle-size / 2));
+ left: auto;
+ right: $sm-simple__toggle-spacing;
+ width: $sm-simple__toggle-size;
+ height: $sm-simple__toggle-size;
+ overflow: hidden;
+ font: bold #{$sm-simple__font-size-small}/#{$sm-simple__toggle-size} monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: $sm-simple__collapsible-toggle-bg;
+ }
+ .sub-arrow::before {
+ content: '+';
+ }
+ &.highlighted .sub-arrow::before {
+ content: '-';
+ }
+ }
+
+ // Main menu items separators
+ li {
+ border-top: 1px solid $sm-simple__collapsible-separators-color;
+ }
+ > li:first-child {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ background: $sm-simple__collapsible-sub-bg;
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ font-size: $sm-simple__font-size-small;
+ // add indentation for sub menus text
+ border-left: $sm-simple__collapsible-sub-item-indentation solid transparent;
+ }
+ }
+
+ // Add indentation for sub menus text for deeper levels
+ @include sm-simple__sub-items-indentation($sm-simple__collapsible-sub-item-indentation);
+ }
+}
+
+
+// ----------------------------------------------------------
+// :: 2.2. Desktop mode
+// ----------------------------------------------------------
+
+@media (min-width: $sm-simple__desktop-vp) {
+
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-simple ul{position:absolute;width:12em;}
+ .sm-simple li{float:left;}
+ .sm-simple.sm-rtl li{float:right;}
+ .sm-simple ul li,.sm-simple.sm-rtl ul li,.sm-simple.sm-vertical li{float:none;}
+ .sm-simple a{white-space:nowrap;}
+ .sm-simple ul a,.sm-simple.sm-vertical a{white-space:normal;}
+ .sm-simple .sm-nowrap > li > a,.sm-simple .sm-nowrap > li > :not(ul) a{white-space:nowrap;}
+ /* ...end */
+
+ // Main menu box
+ .sm-simple {
+ background: $sm-simple__desktop-bg;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ padding: $sm-simple__desktop-item-padding-vertical $sm-simple__desktop-item-padding-horizontal;
+ color: $sm-simple__desktop-item-color;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-simple__desktop-item-hover-bg;
+ }
+
+ &.current {
+ background: $sm-simple__desktop-item-current-bg;
+ color: $sm-simple__desktop-item-current-color;
+ }
+
+ &.disabled {
+ background: $sm-simple__desktop-bg;
+ color: $sm-simple__desktop-item-disabled-color;
+ }
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-simple__desktop-item-padding-horizontal + 8px + $sm-simple__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -8px;
+ right: $sm-simple__desktop-item-padding-horizontal;
+ width: 8px;
+ height: 16px;
+ font: #{$sm-simple__font-size-small}/16px monospace !important;
+ background: transparent;
+ }
+ // reset mobile first style
+ &.highlighted .sub-arrow::before {
+ content: '+';
+ }
+ }
+
+ // Main menu items separators
+ > li {
+ border-top: 0;
+ border-left: $sm-simple__desktop-separators-size solid $sm-simple__desktop-separators-color;
+
+ &:first-child {
+ border-left: 0;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border: $sm-simple__border-width solid $sm-simple__collapsible-border-color;
+ background: $sm-simple__desktop-bg;
+ box-shadow: $sm-simple__collapsible-box-shadow;
+
+ // Sub menus items
+ a {
+ border: 0 !important;
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-simple__desktop-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ left: $sm-simple__desktop-item-padding-horizontal - 8px - $sm-simple__desktop-arrow-spacing;
+ right: auto;
+ }
+ }
+
+ // Sub menus items separators
+ > li {
+ border-left: 0;
+ border-top: $sm-simple__desktop-separators-size solid $sm-simple__desktop-separators-color;
+
+ &:first-child {
+ border-top: 0;
+ }
+ }
+ }
+
+ // Scrolling arrows containers for tall sub menus - test sub menu: "Sub test" -> "more..." in the default download package
+ .scroll-up,
+ .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: $sm-simple__desktop-bg;
+ height: 20px;
+ // width and position will be set automatically by the script
+ }
+ .scroll-up-arrow,
+ .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ // we will use one-side border to create a triangle so that we don't use a real background image, of course, you can use a real image if you like too
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px; // tweak size of the arrow
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-simple__desktop-item-color transparent;
+ }
+ .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-simple__desktop-item-color transparent transparent transparent;
+ }
+
+
+ // Rigth-to-left
+
+ // Main menu box
+ &.sm-rtl {
+
+ // Main menu items
+ a {
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-simple__desktop-item-padding-horizontal;
+ padding-left: $sm-simple__desktop-item-padding-horizontal + 8px + $sm-simple__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ left: $sm-simple__desktop-item-padding-horizontal;
+ right: auto;
+ }
+ }
+
+ // Vertical main menu items
+ &.sm-vertical {
+ a {
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-simple__desktop-item-padding-vertical $sm-simple__desktop-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ left: auto;
+ right: $sm-simple__desktop-item-padding-horizontal - 8px - $sm-simple__desktop-arrow-spacing;
+ }
+ }
+ }
+
+ // Main menu items separators
+ > li {
+ &:first-child {
+ border-left: $sm-simple__desktop-separators-size solid $sm-simple__desktop-separators-color;
+ }
+ &:last-child {
+ border-left: 0;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ a {
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-simple__desktop-item-padding-vertical $sm-simple__desktop-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ left: auto;
+ right: $sm-simple__desktop-item-padding-horizontal - 8px - $sm-simple__desktop-arrow-spacing;
+ }
+ }
+ }
+ }
+
+
+ // Vertical main menu
+
+ // Main menu box
+ &.sm-vertical {
+
+ // Main menu items
+ a {
+
+ // Sub menu indicators
+ .sub-arrow {
+ left: $sm-simple__desktop-item-padding-horizontal - 8px - $sm-simple__desktop-arrow-spacing;
+ right: auto;
+ }
+ }
+
+ // Main menu items separators
+ li {
+ border-left: 0;
+ border-top: $sm-simple__desktop-separators-size solid $sm-simple__desktop-separators-color;
+ }
+ > li:first-child {
+ border-top: 0;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/mixins/_sub-items-indentation.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/mixins/_sub-items-indentation.scss
new file mode 100644
index 0000000..966e7c6
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/mixins/_sub-items-indentation.scss
@@ -0,0 +1,15 @@
+// Generate rules to indent sub menus text
+//
+// We'll use left border to avoid messing with the padding.
+
+@mixin sm-simple__sub-items-indentation($amount, $chainable: 'ul ', $level: 4, $chain: '') {
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ #{$chain} a,
+ #{$chain} a:hover,
+ #{$chain} a:focus,
+ #{$chain} a:active {
+ border-left: ($amount * ($i + 1)) solid transparent;
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css
new file mode 100644
index 0000000..8fcf0c1
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css
@@ -0,0 +1,249 @@
+.sm-simple {
+ border: 1px solid #bbbbbb;
+ background: #fff;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
+}
+.sm-simple a, .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active {
+ padding: 13px 20px;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: 58px;
+ color: #555555;
+ font-family: "Lucida Sans Unicode", "Lucida Sans", "Lucida Grande", Arial, sans-serif;
+ font-size: 16px;
+ font-weight: normal;
+ line-height: 17px;
+ text-decoration: none;
+}
+.sm-simple a.current {
+ background: #555555;
+ color: #fff;
+}
+.sm-simple a.disabled {
+ color: #cccccc;
+}
+.sm-simple a .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -17px;
+ left: auto;
+ right: 4px;
+ width: 34px;
+ height: 34px;
+ overflow: hidden;
+ font: bold 14px/34px monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: rgba(0, 0, 0, 0.08);
+}
+.sm-simple a .sub-arrow::before {
+ content: '+';
+}
+.sm-simple a.highlighted .sub-arrow::before {
+ content: '-';
+}
+.sm-simple li {
+ border-top: 1px solid rgba(0, 0, 0, 0.05);
+}
+.sm-simple > li:first-child {
+ border-top: 0;
+}
+.sm-simple ul {
+ background: rgba(179, 179, 179, 0.1);
+}
+.sm-simple ul a, .sm-simple ul a:hover, .sm-simple ul a:focus, .sm-simple ul a:active {
+ font-size: 14px;
+ border-left: 8px solid transparent;
+}
+.sm-simple ul ul a,
+.sm-simple ul ul a:hover,
+.sm-simple ul ul a:focus,
+.sm-simple ul ul a:active {
+ border-left: 16px solid transparent;
+}
+.sm-simple ul ul ul a,
+.sm-simple ul ul ul a:hover,
+.sm-simple ul ul ul a:focus,
+.sm-simple ul ul ul a:active {
+ border-left: 24px solid transparent;
+}
+.sm-simple ul ul ul ul a,
+.sm-simple ul ul ul ul a:hover,
+.sm-simple ul ul ul ul a:focus,
+.sm-simple ul ul ul ul a:active {
+ border-left: 32px solid transparent;
+}
+.sm-simple ul ul ul ul ul a,
+.sm-simple ul ul ul ul ul a:hover,
+.sm-simple ul ul ul ul ul a:focus,
+.sm-simple ul ul ul ul ul a:active {
+ border-left: 40px solid transparent;
+}
+
+@media (min-width: 768px) {
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-simple ul {
+ position: absolute;
+ width: 12em;
+ }
+
+ .sm-simple li {
+ float: left;
+ }
+
+ .sm-simple.sm-rtl li {
+ float: right;
+ }
+
+ .sm-simple ul li, .sm-simple.sm-rtl ul li, .sm-simple.sm-vertical li {
+ float: none;
+ }
+
+ .sm-simple a {
+ white-space: nowrap;
+ }
+
+ .sm-simple ul a, .sm-simple.sm-vertical a {
+ white-space: normal;
+ }
+
+ .sm-simple .sm-nowrap > li > a, .sm-simple .sm-nowrap > li > :not(ul) a {
+ white-space: nowrap;
+ }
+
+ /* ...end */
+ .sm-simple {
+ background: #fff;
+ }
+ .sm-simple a, .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active, .sm-simple a.highlighted {
+ padding: 11px 20px;
+ color: #555555;
+ }
+ .sm-simple a:hover, .sm-simple a:focus, .sm-simple a:active, .sm-simple a.highlighted {
+ background: #eeeeee;
+ }
+ .sm-simple a.current {
+ background: #555555;
+ color: #fff;
+ }
+ .sm-simple a.disabled {
+ background: #fff;
+ color: #cccccc;
+ }
+ .sm-simple a.has-submenu {
+ padding-right: 32px;
+ }
+ .sm-simple a .sub-arrow {
+ top: 50%;
+ margin-top: -8px;
+ right: 20px;
+ width: 8px;
+ height: 16px;
+ font: 14px/16px monospace !important;
+ background: transparent;
+ }
+ .sm-simple a.highlighted .sub-arrow::before {
+ content: '+';
+ }
+ .sm-simple > li {
+ border-top: 0;
+ border-left: 1px solid #eeeeee;
+ }
+ .sm-simple > li:first-child {
+ border-left: 0;
+ }
+ .sm-simple ul {
+ border: 1px solid #bbbbbb;
+ background: #fff;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
+ }
+ .sm-simple ul a {
+ border: 0 !important;
+ }
+ .sm-simple ul a.has-submenu {
+ padding-right: 20px;
+ }
+ .sm-simple ul a .sub-arrow {
+ left: 8px;
+ right: auto;
+ }
+ .sm-simple ul > li {
+ border-left: 0;
+ border-top: 1px solid #eeeeee;
+ }
+ .sm-simple ul > li:first-child {
+ border-top: 0;
+ }
+ .sm-simple .scroll-up,
+ .sm-simple .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: #fff;
+ height: 20px;
+ }
+ .sm-simple .scroll-up-arrow,
+ .sm-simple .scroll-down-arrow {
+ position: absolute;
+ top: -2px;
+ left: 50%;
+ margin-left: -8px;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 8px;
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent #555555 transparent;
+ }
+ .sm-simple .scroll-down-arrow {
+ top: 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: #555555 transparent transparent transparent;
+ }
+ .sm-simple.sm-rtl a.has-submenu {
+ padding-right: 20px;
+ padding-left: 32px;
+ }
+ .sm-simple.sm-rtl a .sub-arrow {
+ left: 20px;
+ right: auto;
+ }
+ .sm-simple.sm-rtl.sm-vertical a.has-submenu {
+ padding: 11px 20px;
+ }
+ .sm-simple.sm-rtl.sm-vertical a .sub-arrow {
+ left: auto;
+ right: 8px;
+ }
+ .sm-simple.sm-rtl > li:first-child {
+ border-left: 1px solid #eeeeee;
+ }
+ .sm-simple.sm-rtl > li:last-child {
+ border-left: 0;
+ }
+ .sm-simple.sm-rtl ul a.has-submenu {
+ padding: 11px 20px;
+ }
+ .sm-simple.sm-rtl ul a .sub-arrow {
+ left: auto;
+ right: 8px;
+ }
+ .sm-simple.sm-vertical a .sub-arrow {
+ left: 8px;
+ right: auto;
+ }
+ .sm-simple.sm-vertical li {
+ border-left: 0;
+ border-top: 1px solid #eeeeee;
+ }
+ .sm-simple.sm-vertical > li:first-child {
+ border-top: 0;
+ }
+}
+
+/*# sourceMappingURL=sm-simple.css.map */
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css.map b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css.map
new file mode 100644
index 0000000..88f0476
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["_sm-simple-theme.scss","mixins/_sub-items-indentation.scss"],
+"names": [],
+"file": "sm-simple.css"
+}
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.scss
new file mode 100644
index 0000000..5415dbf
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-simple/sm-simple.scss
@@ -0,0 +1,4 @@
+@import '_mixins.scss';
+
+// the variables + the CSS
+@import '_sm-simple-theme.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_mixins.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_mixins.scss
new file mode 100644
index 0000000..dd6ff7c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_mixins.scss
@@ -0,0 +1 @@
+@import 'mixins/_sub-items-indentation.scss';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_sm-sport-blue-theme.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_sm-sport-blue-theme.scss
new file mode 100644
index 0000000..2a3d582
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/_sm-sport-blue-theme.scss
@@ -0,0 +1,569 @@
+// This file is best viewed with Tab size 4 code indentation
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 1. Theme Quick Settings (Variables)
+// (for further control, you will need to dig into the actual CSS in 2.)
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 1.1. Colors
+// ----------------------------------------------------------
+
+$sm-sport-blue__white: #fff !default;
+$sm-sport-blue__black: #333 !default;
+$sm-sport-blue__green: #ceecfc !default;
+$sm-sport-blue__green-dark: #0AA1F1 !default;
+
+$sm-sport-blue__box-shadow: rgba(0, 0, 0, 0.25) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.2. Breakpoints
+// ----------------------------------------------------------
+
+$sm-sport-blue__desktop-vp: 768px !default; // switch from collapsible to desktop
+
+
+// ----------------------------------------------------------
+// :: 1.3. Typography
+// ----------------------------------------------------------
+
+$sm-sport-blue__font-family: "Play", Arial, sans-serif !default;
+$sm-sport-blue__font-size-base: 14px !default;
+$sm-sport-blue__font-size-small: 13px !default;
+$sm-sport-blue__line-height: 17px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.4. Borders
+// ----------------------------------------------------------
+
+$sm-sport-blue__border-width: 2px !default;
+$sm-sport-blue__border-radius-base: 4px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.5. Collapsible main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-sport-blue__collapsible-bg: $sm-sport-blue__white !default;
+$sm-sport-blue__collapsible-border-color: $sm-sport-blue__green-dark !default;
+
+// Items
+$sm-sport-blue__collapsible-item-color: $sm-sport-blue__black !default;
+$sm-sport-blue__collapsible-item-disabled-color: darken($sm-sport-blue__white, 20%) !default;
+$sm-sport-blue__collapsible-item-padding-vertical: 13px !default;
+$sm-sport-blue__collapsible-item-padding-horizontal: 20px !default;
+
+// Items separators
+$sm-sport-blue__collapsible-separators-color: rgba($sm-sport-blue__green-dark, 0.2) !default;
+
+// Toggle button (sub menu indicators)
+$sm-sport-blue__collapsible-toggle-bg: rgba($sm-sport-blue__green-dark, 0.2) !default;
+
+
+// ----------------------------------------------------------
+// :: 1.6. Collapsible sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-sport-blue__collapsible-sub-bg: rgba($sm-sport-blue__green-dark, 0.2) !default;
+
+// Items text indentation for deeper levels
+$sm-sport-blue__collapsible-sub-item-indentation: 8px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.7. Desktop main menu
+// ----------------------------------------------------------
+
+// Menu box
+$sm-sport-blue__desktop-bg: transparent !default;
+
+// Items
+$sm-sport-blue__desktop-item-color: $sm-sport-blue__black !default;
+$sm-sport-blue__desktop-item-hover-color: $sm-sport-blue__white !default;
+$sm-sport-blue__desktop-item-hover-bg: $sm-sport-blue__green-dark !default;
+$sm-sport-blue__desktop-item-highlighted-color: $sm-sport-blue__black !default;
+$sm-sport-blue__desktop-item-highlighted-bg: $sm-sport-blue__green !default;
+$sm-sport-blue__desktop-item-highlighted-box-shadow: 0 4px 3px $sm-sport-blue__box-shadow !default;
+$sm-sport-blue__desktop-item-disabled-color: darken($sm-sport-blue__white, 20%) !default;
+$sm-sport-blue__desktop-item-padding-vertical: 11px !default;
+$sm-sport-blue__desktop-item-padding-horizontal: 20px !default;
+
+// Sub menu indicators
+$sm-sport-blue__desktop-arrow-size: 6px !default; // border-width
+$sm-sport-blue__desktop-arrow-color: $sm-sport-blue__green-dark !default;
+$sm-sport-blue__desktop-arrow-hover-color: $sm-sport-blue__white !default;
+$sm-sport-blue__desktop-arrow-highlighted-color: $sm-sport-blue__green-dark !default;
+$sm-sport-blue__desktop-arrow-spacing: 6px !default;
+
+// Vertical items
+$sm-sport-blue__desktop-vertical-item-highlighted-color: $sm-sport-blue__desktop-item-hover-color !default;
+$sm-sport-blue__desktop-vertical-item-highlighted-bg: $sm-sport-blue__desktop-item-hover-bg !default;
+$sm-sport-blue__desktop-vertical-item-padding-vertical: 10px !default;
+$sm-sport-blue__desktop-vertical-item-padding-horizontal: 20px !default;
+
+
+// ----------------------------------------------------------
+// :: 1.8. Desktop sub menus
+// ----------------------------------------------------------
+
+// Menu box
+$sm-sport-blue__desktop-sub-bg: $sm-sport-blue__green !default;
+$sm-sport-blue__desktop-sub-box-shadow: 0 4px 3px $sm-sport-blue__box-shadow !default;
+$sm-sport-blue__desktop-sub-padding-vertical: 8px !default;
+$sm-sport-blue__desktop-sub-padding-horizontal: 0 !default;
+
+// Items
+$sm-sport-blue__desktop-sub-item-color: $sm-sport-blue__black !default;
+$sm-sport-blue__desktop-sub-item-hover-color: $sm-sport-blue__white !default;
+$sm-sport-blue__desktop-sub-item-hover-bg: $sm-sport-blue__green-dark !default;
+$sm-sport-blue__desktop-sub-item-disabled-color: lighten($sm-sport-blue__black, 50%) !default;
+$sm-sport-blue__desktop-sub-item-padding-vertical: 10px !default;
+$sm-sport-blue__desktop-sub-item-padding-horizontal: 20px !default;
+
+
+// -----------------------------------------------------------------------------------------------------------------
+// 2. Theme CSS
+// -----------------------------------------------------------------------------------------------------------------
+
+
+// ----------------------------------------------------------
+// :: 2.1. Collapsible mode (mobile first)
+// ----------------------------------------------------------
+
+// calc item height and sub menus toggle button size
+$sm-sport-blue__item-height: $sm-sport-blue__line-height + $sm-sport-blue__collapsible-item-padding-vertical * 2;
+// set toggle button size to 80% of item height
+$sm-sport-blue__toggle-size: floor($sm-sport-blue__item-height * 0.8);
+$sm-sport-blue__toggle-spacing: floor($sm-sport-blue__item-height * 0.1);
+
+// Main menu box
+.sm-sport-blue {
+ border-top: $sm-sport-blue__border-width solid $sm-sport-blue__collapsible-border-color;
+ border-bottom: $sm-sport-blue__border-width solid $sm-sport-blue__collapsible-border-color;
+ background: $sm-sport-blue__collapsible-bg;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ padding: $sm-sport-blue__collapsible-item-padding-vertical $sm-sport-blue__collapsible-item-padding-horizontal;
+ /* make room for the toggle button (sub indicator) */
+ padding-right: $sm-sport-blue__collapsible-item-padding-horizontal + $sm-sport-blue__toggle-size + $sm-sport-blue__toggle-spacing;
+ color: $sm-sport-blue__collapsible-item-color;
+ font-family: $sm-sport-blue__font-family;
+ font-size: $sm-sport-blue__font-size-base;
+ font-weight: normal;
+ line-height: $sm-sport-blue__line-height;
+ text-decoration: none;
+ }
+
+ &.current {
+ font-weight: bold;
+ }
+
+ &.disabled {
+ color: $sm-sport-blue__collapsible-item-disabled-color;
+ }
+
+ // Toggle buttons (sub menu indicators)
+ .sub-arrow {
+ position: absolute;
+ top: 50%;
+ margin-top: -(ceil($sm-sport-blue__toggle-size / 2));
+ left: auto;
+ right: $sm-sport-blue__toggle-spacing;
+ width: $sm-sport-blue__toggle-size;
+ height: $sm-sport-blue__toggle-size;
+ overflow: hidden;
+ font: bold #{$sm-sport-blue__font-size-small}/#{$sm-sport-blue__toggle-size} monospace !important;
+ text-align: center;
+ text-shadow: none;
+ background: $sm-sport-blue__collapsible-toggle-bg;
+ border-radius: $sm-sport-blue__border-radius-base;
+ }
+ .sub-arrow::before {
+ content: '+';
+ }
+ &.highlighted .sub-arrow::before {
+ content: '-';
+ }
+ }
+
+ // Main menu items separators
+ li {
+ border-top: 1px solid $sm-sport-blue__collapsible-separators-color;
+ }
+ > li:first-child {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ background: $sm-sport-blue__collapsible-sub-bg;
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active {
+ font-size: $sm-sport-blue__font-size-small;
+ // add indentation for sub menus text
+ border-left: $sm-sport-blue__collapsible-sub-item-indentation solid transparent;
+ }
+ }
+
+ // Add indentation for sub menus text for deeper levels
+ @include sm-sport-blue__sub-items-indentation($sm-sport-blue__collapsible-sub-item-indentation);
+ }
+}
+
+
+// ----------------------------------------------------------
+// :: 2.2. Desktop mode
+// ----------------------------------------------------------
+
+@media (min-width: $sm-sport-blue__desktop-vp) {
+
+ /* Switch to desktop layout
+ -----------------------------------------------
+ These transform the menu tree from
+ collapsible to desktop (navbar + dropdowns)
+ -----------------------------------------------*/
+ /* start... (it's not recommended editing these rules) */
+ .sm-sport-blue ul{position:absolute;width:12em;}
+ .sm-sport-blue li{float:left;}
+ .sm-sport-blue.sm-rtl li{float:right;}
+ .sm-sport-blue ul li,.sm-sport-blue.sm-rtl ul li,.sm-sport-blue.sm-vertical li{float:none;}
+ .sm-sport-blue a{white-space:nowrap;}
+ .sm-sport-blue ul a,.sm-sport-blue.sm-vertical a{white-space:normal;}
+ .sm-sport-blue .sm-nowrap > li > a,.sm-sport-blue .sm-nowrap > li > :not(ul) a{white-space:nowrap;}
+ /* ...end */
+
+ // Main menu box
+ .sm-sport-blue {
+ border-top: 0;
+ background: $sm-sport-blue__desktop-bg;
+
+ // Main menu items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ padding: $sm-sport-blue__desktop-item-padding-vertical $sm-sport-blue__desktop-item-padding-horizontal;
+ color: $sm-sport-blue__desktop-item-color;
+ border-radius: $sm-sport-blue__border-radius-base $sm-sport-blue__border-radius-base 0 0;
+ }
+
+ &:hover,
+ &:focus,
+ &:active {
+ background: $sm-sport-blue__desktop-item-hover-bg;
+ color: $sm-sport-blue__desktop-item-hover-color;
+ }
+
+ &.highlighted {
+ background: $sm-sport-blue__desktop-item-highlighted-bg;
+ color: $sm-sport-blue__desktop-item-highlighted-color;
+ box-shadow: $sm-sport-blue__desktop-item-highlighted-box-shadow;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-sport-blue__desktop-item-disabled-color;
+ box-shadow: none;
+ }
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-sport-blue__desktop-item-padding-horizontal + 8px + $sm-sport-blue__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ top: 50%;
+ margin-top: -(ceil($sm-sport-blue__desktop-arrow-size / 2));
+ right: $sm-sport-blue__desktop-item-padding-horizontal;
+ width: 0;
+ height: 0;
+ border-width: $sm-sport-blue__desktop-arrow-size ($sm-sport-blue__desktop-arrow-size * 0.67) 0 ($sm-sport-blue__desktop-arrow-size * 0.67);
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-sport-blue__desktop-arrow-color transparent transparent transparent;
+ background: transparent;
+ border-radius: 0;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow {
+ border-color: $sm-sport-blue__desktop-arrow-hover-color transparent transparent transparent;
+ }
+ &.highlighted .sub-arrow {
+ border-color: $sm-sport-blue__desktop-arrow-highlighted-color transparent transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: $sm-sport-blue__desktop-arrow-color transparent transparent transparent;
+ }
+ // reset mobile first style
+ .sub-arrow::before {
+ display: none;
+ }
+ }
+
+ // No main menu items separators
+ li {
+ border-top: 0;
+ }
+
+ // Sub menus box
+ ul {
+ border: 0;
+ padding: $sm-sport-blue__desktop-sub-padding-vertical $sm-sport-blue__desktop-sub-padding-horizontal;
+ background: $sm-sport-blue__desktop-sub-bg;
+ border-radius: 0 $sm-sport-blue__border-radius-base $sm-sport-blue__border-radius-base $sm-sport-blue__border-radius-base;
+ box-shadow: $sm-sport-blue__desktop-sub-box-shadow;
+
+ // 2+ sub levels need rounding of all corners
+ ul {
+ border-radius: $sm-sport-blue__border-radius-base;
+ }
+
+ // Sub menus items
+ a {
+ &,
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ border: 0 !important;
+ padding: $sm-sport-blue__desktop-sub-item-padding-vertical $sm-sport-blue__desktop-sub-item-padding-horizontal;
+ color: $sm-sport-blue__desktop-sub-item-color;
+ border-radius: 0;
+ }
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-sport-blue__desktop-sub-item-hover-bg;
+ color: $sm-sport-blue__desktop-sub-item-hover-color;
+ box-shadow: none;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-sport-blue__desktop-sub-item-disabled-color;
+ }
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-sport-blue__desktop-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 10px;
+ margin-top: -($sm-sport-blue__desktop-arrow-size * 0.67);
+ border-width: ($sm-sport-blue__desktop-arrow-size * 0.67) 0 ($sm-sport-blue__desktop-arrow-size * 0.67) $sm-sport-blue__desktop-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-color;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-hover-color;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-color;
+ }
+ }
+ }
+
+ // Scrolling arrows containers for tall sub menus - test sub menu: "Sub test" -> "more..." in the default download package
+ .scroll-up,
+ .scroll-down {
+ position: absolute;
+ display: none;
+ visibility: hidden;
+ overflow: hidden;
+ background: $sm-sport-blue__desktop-sub-bg;
+ height: 20px;
+ // width and position will be set automatically by the script
+ }
+ .scroll-up-arrow,
+ .scroll-down-arrow {
+ position: absolute;
+ top: 6px;
+ left: 50%;
+ margin-left: -8px;
+ // we will use one-side border to create a triangle so that we don't use a real background image, of course, you can use a real image if you like too
+ width: 0;
+ height: 0;
+ overflow: hidden;
+ border-width: 0 6px 8px 6px; // tweak size of the arrow
+ border-style: dashed dashed solid dashed;
+ border-color: transparent transparent $sm-sport-blue__desktop-arrow-color transparent;
+ }
+ .scroll-down-arrow {
+ border-width: 8px 6px 0 6px;
+ border-style: solid dashed dashed dashed;
+ border-color: $sm-sport-blue__desktop-arrow-color transparent transparent transparent;
+ }
+
+
+ // Rigth-to-left
+
+ // Main menu box
+ &.sm-rtl {
+
+ // Main menu items
+ a {
+
+ // Make room for the sub arrows
+ &.has-submenu {
+ padding-right: $sm-sport-blue__desktop-item-padding-horizontal;
+ padding-left: $sm-sport-blue__desktop-item-padding-horizontal + 8px + $sm-sport-blue__desktop-arrow-spacing;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: $sm-sport-blue__desktop-item-padding-horizontal;
+ }
+ }
+
+ // Vertical main menu
+ &.sm-vertical {
+ border-right: 0;
+ border-left: $sm-sport-blue__border-width solid $sm-sport-blue__collapsible-border-color;
+
+ // Vertical main menu items
+ a {
+ border-radius: 0 $sm-sport-blue__border-radius-base $sm-sport-blue__border-radius-base 0;
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-sport-blue__desktop-vertical-item-padding-vertical $sm-sport-blue__desktop-vertical-item-padding-horizontal;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: ($sm-sport-blue__desktop-arrow-size * 0.67) $sm-sport-blue__desktop-arrow-size ($sm-sport-blue__desktop-arrow-size * 0.67) 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-sport-blue__desktop-arrow-color transparent transparent;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent $sm-sport-blue__desktop-arrow-hover-color transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent $sm-sport-blue__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border-radius: $sm-sport-blue__border-radius-base 0 $sm-sport-blue__border-radius-base $sm-sport-blue__border-radius-base;
+
+ a {
+ border-radius: 0 !important;
+
+ // No need for additional room for the sub arrows
+ &.has-submenu {
+ padding: $sm-sport-blue__desktop-sub-item-padding-vertical $sm-sport-blue__desktop-sub-item-padding-horizontal !important;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: auto;
+ left: 10px;
+ border-width: ($sm-sport-blue__desktop-arrow-size * 0.67) $sm-sport-blue__desktop-arrow-size ($sm-sport-blue__desktop-arrow-size * 0.67) 0;
+ border-style: dashed solid dashed dashed;
+ border-color: transparent $sm-sport-blue__desktop-arrow-color transparent transparent;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent $sm-sport-blue__desktop-arrow-hover-color transparent transparent;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent $sm-sport-blue__desktop-arrow-color transparent transparent;
+ }
+ }
+ }
+ }
+
+
+ // Vertical main menu
+
+ // Main menu box
+ &.sm-vertical {
+ border-bottom: 0;
+ border-right: $sm-sport-blue__border-width solid $sm-sport-blue__collapsible-border-color;
+
+ // Main menu items
+ a {
+ padding: $sm-sport-blue__desktop-vertical-item-padding-vertical $sm-sport-blue__desktop-vertical-item-padding-horizontal;
+ border-radius: $sm-sport-blue__border-radius-base 0 0 $sm-sport-blue__border-radius-base;
+
+ &:hover,
+ &:focus,
+ &:active,
+ &.highlighted {
+ background: $sm-sport-blue__desktop-item-hover-bg;
+ color: $sm-sport-blue__desktop-item-hover-color;
+ box-shadow: none;
+ }
+
+ &.disabled {
+ background: transparent;
+ color: $sm-sport-blue__desktop-item-disabled-color;
+ }
+
+ // Sub menu indicators
+ .sub-arrow {
+ right: 10px;
+ margin-top: -($sm-sport-blue__desktop-arrow-size * 0.67);
+ border-width: ($sm-sport-blue__desktop-arrow-size * 0.67) 0 ($sm-sport-blue__desktop-arrow-size * 0.67) $sm-sport-blue__desktop-arrow-size;
+ border-style: dashed dashed dashed solid;
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-color;
+ }
+ &:hover .sub-arrow,
+ &:focus .sub-arrow,
+ &:active .sub-arrow,
+ &.highlighted .sub-arrow {
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-hover-color;
+ }
+ &.disabled .sub-arrow {
+ border-color: transparent transparent transparent $sm-sport-blue__desktop-arrow-color;
+ }
+ }
+
+ // Sub menus box
+ ul {
+ border-radius: $sm-sport-blue__border-radius-base !important;
+
+ // Sub menus items
+ a {
+ padding: $sm-sport-blue__desktop-sub-item-padding-vertical $sm-sport-blue__desktop-sub-item-padding-horizontal;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/mixins/_sub-items-indentation.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/mixins/_sub-items-indentation.scss
new file mode 100644
index 0000000..df1665c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/mixins/_sub-items-indentation.scss
@@ -0,0 +1,15 @@
+// Generate rules to indent sub menus text
+//
+// We'll use left border to avoid messing with the padding.
+
+@mixin sm-sport-blue__sub-items-indentation($amount, $chainable: 'ul ', $level: 4, $chain: '') {
+ @for $i from 1 through $level {
+ $chain: $chain + $chainable;
+ #{$chain} a,
+ #{$chain} a:hover,
+ #{$chain} a:focus,
+ #{$chain} a:active {
+ border-left: ($amount * ($i + 1)) solid transparent;
+ }
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/sm-sport-blue.scss b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/sm-sport-blue.scss
new file mode 100644
index 0000000..d82fb84
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/css/sm-sport-blue/sm-sport-blue.scss
@@ -0,0 +1,4 @@
+@import '_mixins.scss';
+
+// the variables + the CSS
+@import '_sm-sport-blue-theme';
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-bottom.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-bottom.html
new file mode 100644
index 0000000..1e83090
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-bottom.html
@@ -0,0 +1,377 @@
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap 4 Addon - Navbar fixed bottom
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SmartMenus Bootstrap 4 Addon (Navbar fixed bottom)
+
Zero config advanced Bootstrap navbars with SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon.
+
+
+
You just need to include the JS/CSS files on your Bootstrap 4 powered pages and everything should work automatically including full support for your Bootstrap 4 theme. And you also have the power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap 4 Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon CSS -->
+<link href="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css" rel="stylesheet">
+
+
HTML
+
Note: Bootstrap 4 normally uses <div>
elements as .dropdown-menu
containers. But since we are building a multi-level menu tree, we need to replace them with nested <ul>
/<li>
elements.
+
<!-- Navbar -->
+<nav class="navbar navbar-expand-lg navbar-dark bg-dark mb-4">
+ <div class="container">
+ <a class="navbar-brand" href="#">Navbar</a>
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
+ <span class="navbar-toggler-icon"></span>
+ </button>
+
+ <div class="collapse navbar-collapse" id="navbarNavDropdown">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav mr-auto">
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled link</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a class="dropdown-item" href="#">Separated link</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">One more separated link</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A long sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 1</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 2</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 3</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 4</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 5</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 6</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 7</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 8</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 9</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 10</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 11</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 12</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 13</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 14</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 15</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 16</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 17</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 18</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 19</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 20</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 21</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 22</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 23</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 24</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 25</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 26</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 27</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 28</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 29</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 30</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 31</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 32</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 33</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 34</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 35</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 36</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 37</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 38</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 39</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 40</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 41</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 42</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 43</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 44</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 45</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 46</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 47</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 48</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 49</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 50</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 51</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 52</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 53</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 54</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 55</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 56</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 57</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 58</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 59</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">Another link</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav">
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar.html">Default</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-static-top.html">Static top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-top.html">Fixed top</a></li>
+ <li class="nav-item active"><a class="nav-link" href="bootstrap-4-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled item</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div>
+ </div>
+</nav>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
+<script src="http://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon -->
+<script type="text/javascript" src="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The Bootstrap 4 addon introduces the following additional data-*
attributes which can be set to any .navbar-nav
:
+
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible). If you need even further control, you can check the collapsibleBehavior
SmartMenus option which can be set in a data-sm-options
attribute.
+
+
+
Options
+
The following additional option can be set in a data-sm-options
attribute:
+
+ bootstrapHighlightClasses: 'text-dark bg-light'
- CSS class(es) for highlighting expanded parent dropdown items.
+
+
Check the docs for a complete list of all the available SmartMenus options.
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them at any time (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-top.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-top.html
new file mode 100644
index 0000000..da63b11
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-fixed-top.html
@@ -0,0 +1,377 @@
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap 4 Addon - Navbar fixed top
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SmartMenus Bootstrap 4 Addon (Navbar fixed top)
+
Zero config advanced Bootstrap navbars with SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon.
+
+
+
You just need to include the JS/CSS files on your Bootstrap 4 powered pages and everything should work automatically including full support for your Bootstrap 4 theme. And you also have the power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap 4 Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon CSS -->
+<link href="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css" rel="stylesheet">
+
+
HTML
+
Note: Bootstrap 4 normally uses <div>
elements as .dropdown-menu
containers. But since we are building a multi-level menu tree, we need to replace them with nested <ul>
/<li>
elements.
+
<!-- Navbar -->
+<nav class="navbar navbar-expand-lg navbar-dark bg-dark mb-4">
+ <div class="container">
+ <a class="navbar-brand" href="#">Navbar</a>
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
+ <span class="navbar-toggler-icon"></span>
+ </button>
+
+ <div class="collapse navbar-collapse" id="navbarNavDropdown">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav mr-auto">
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled link</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a class="dropdown-item" href="#">Separated link</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">One more separated link</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A long sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 1</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 2</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 3</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 4</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 5</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 6</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 7</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 8</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 9</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 10</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 11</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 12</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 13</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 14</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 15</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 16</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 17</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 18</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 19</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 20</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 21</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 22</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 23</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 24</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 25</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 26</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 27</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 28</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 29</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 30</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 31</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 32</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 33</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 34</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 35</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 36</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 37</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 38</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 39</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 40</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 41</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 42</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 43</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 44</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 45</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 46</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 47</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 48</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 49</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 50</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 51</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 52</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 53</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 54</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 55</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 56</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 57</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 58</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 59</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">Another link</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav">
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar.html">Default</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-static-top.html">Static top</a></li>
+ <li class="nav-item active"><a class="nav-link" href="bootstrap-4-navbar-fixed-top.html">Fixed top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled item</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div>
+ </div>
+</nav>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
+<script src="http://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon -->
+<script type="text/javascript" src="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The Bootstrap 4 addon introduces the following additional data-*
attributes which can be set to any .navbar-nav
:
+
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible). If you need even further control, you can check the collapsibleBehavior
SmartMenus option which can be set in a data-sm-options
attribute.
+
+
+
Options
+
The following additional option can be set in a data-sm-options
attribute:
+
+ bootstrapHighlightClasses: 'text-dark bg-light'
- CSS class(es) for highlighting expanded parent dropdown items.
+
+
Check the docs for a complete list of all the available SmartMenus options.
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them at any time (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-static-top.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-static-top.html
new file mode 100644
index 0000000..5ee83c8
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar-static-top.html
@@ -0,0 +1,377 @@
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap 4 Addon - Navbar static top
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SmartMenus Bootstrap 4 Addon (Navbar static top)
+
Zero config advanced Bootstrap navbars with SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon.
+
+
+
You just need to include the JS/CSS files on your Bootstrap 4 powered pages and everything should work automatically including full support for your Bootstrap 4 theme. And you also have the power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap 4 Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon CSS -->
+<link href="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css" rel="stylesheet">
+
+
HTML
+
Note: Bootstrap 4 normally uses <div>
elements as .dropdown-menu
containers. But since we are building a multi-level menu tree, we need to replace them with nested <ul>
/<li>
elements.
+
<!-- Navbar -->
+<nav class="navbar navbar-expand-lg navbar-dark bg-dark mb-4">
+ <div class="container">
+ <a class="navbar-brand" href="#">Navbar</a>
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
+ <span class="navbar-toggler-icon"></span>
+ </button>
+
+ <div class="collapse navbar-collapse" id="navbarNavDropdown">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav mr-auto">
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled link</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a class="dropdown-item" href="#">Separated link</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">One more separated link</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A long sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 1</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 2</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 3</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 4</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 5</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 6</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 7</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 8</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 9</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 10</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 11</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 12</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 13</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 14</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 15</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 16</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 17</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 18</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 19</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 20</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 21</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 22</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 23</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 24</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 25</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 26</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 27</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 28</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 29</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 30</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 31</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 32</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 33</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 34</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 35</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 36</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 37</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 38</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 39</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 40</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 41</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 42</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 43</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 44</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 45</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 46</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 47</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 48</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 49</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 50</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 51</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 52</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 53</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 54</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 55</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 56</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 57</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 58</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 59</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">Another link</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav">
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar.html">Default</a></li>
+ <li class="nav-item active"><a class="nav-link" href="bootstrap-4-navbar-static-top.html">Static top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-top.html">Fixed top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled item</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div>
+ </div>
+</nav>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
+<script src="http://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon -->
+<script type="text/javascript" src="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The Bootstrap 4 addon introduces the following additional data-*
attributes which can be set to any .navbar-nav
:
+
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible). If you need even further control, you can check the collapsibleBehavior
SmartMenus option which can be set in a data-sm-options
attribute.
+
+
+
Options
+
The following additional option can be set in a data-sm-options
attribute:
+
+ bootstrapHighlightClasses: 'text-dark bg-light'
- CSS class(es) for highlighting expanded parent dropdown items.
+
+
Check the docs for a complete list of all the available SmartMenus options.
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them at any time (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar.html
new file mode 100644
index 0000000..a92cf20
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-4-navbar.html
@@ -0,0 +1,373 @@
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap 4 Addon - Navbar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Navbar
+
+
+
+
+
+
+
+
+
+
+
SmartMenus Bootstrap 4 Addon (Navbar)
+
Zero config advanced Bootstrap navbars with SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon.
+
+
+
You just need to include the JS/CSS files on your Bootstrap 4 powered pages and everything should work automatically including full support for your Bootstrap 4 theme. And you also have the power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap 4 Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon CSS -->
+<link href="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.css" rel="stylesheet">
+
+
HTML
+
Note: Bootstrap 4 normally uses <div>
elements as .dropdown-menu
containers. But since we are building a multi-level menu tree, we need to replace them with nested <ul>
/<li>
elements.
+
<!-- Navbar -->
+<nav class="navbar navbar-expand-lg navbar-light bg-light rounded mb-4">
+ <a class="navbar-brand" href="#">Navbar</a>
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
+ <span class="navbar-toggler-icon"></span>
+ </button>
+
+ <div class="collapse navbar-collapse" id="navbarNavDropdown">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav mr-auto">
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item"><a class="nav-link" href="#">Link</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled link</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a class="dropdown-item" href="#">Separated link</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">One more separated link</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A long sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 1</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 2</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 3</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 4</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 5</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 6</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 7</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 8</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 9</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 10</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 11</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 12</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 13</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 14</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 15</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 16</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 17</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 18</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 19</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 20</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 21</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 22</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 23</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 24</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 25</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 26</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 27</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 28</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 29</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 30</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 31</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 32</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 33</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 34</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 35</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 36</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 37</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 38</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 39</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 40</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 41</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 42</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 43</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 44</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 45</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 46</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 47</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 48</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 49</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 50</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 51</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 52</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 53</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 54</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 55</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 56</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 57</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 58</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 59</a></li>
+ <li><a class="dropdown-item" href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">Another link</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav">
+ <li class="nav-item active"><a class="nav-link" href="bootstrap-4-navbar.html">Default</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-static-top.html">Static top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-top.html">Fixed top</a></li>
+ <li class="nav-item"><a class="nav-link" href="bootstrap-4-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#">Dropdown</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li class="dropdown-divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li class="dropdown"><a class="dropdown-item dropdown-toggle" href="#">A sub menu</a>
+ <ul class="dropdown-menu">
+ <li><a class="dropdown-item" href="#">Action</a></li>
+ <li><a class="dropdown-item" href="#">Another action</a></li>
+ <li><a class="dropdown-item" href="#">Something else here</a></li>
+ <li><a class="dropdown-item disabled" href="#">Disabled item</a></li>
+ <li><a class="dropdown-item" href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a class="dropdown-item" href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div>
+</nav>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap 4 Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
+<script src="http://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap 4 Addon -->
+<script type="text/javascript" src="../addons/bootstrap-4/jquery.smartmenus.bootstrap-4.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The Bootstrap 4 addon introduces the following additional data-*
attributes which can be set to any .navbar-nav
:
+
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible). If you need even further control, you can check the collapsibleBehavior
SmartMenus option which can be set in a data-sm-options
attribute.
+
+
+
Options
+
The following additional option can be set in a data-sm-options
attribute:
+
+ bootstrapHighlightClasses: 'text-dark bg-light'
- CSS class(es) for highlighting expanded parent dropdown items.
+
+
Check the docs for a complete list of all the available SmartMenus options.
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them at any time (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-bottom.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-bottom.html
new file mode 100644
index 0000000..4b9f4b0
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-bottom.html
@@ -0,0 +1,391 @@
+
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap Addon - Navbar fixed bottom
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
You basically just need to include the JS/CSS files on your Bootstrap 3 powered pages and everything should work automatically including full support for whatever Bootstrap theme you already use. And, of course, you still have the full power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap Addon CSS -->
+<link href="../addons/bootstrap/jquery.smartmenus.bootstrap.css" rel="stylesheet">
+
+
HTML
+
<!-- Navbar fixed bottom -->
+<div class="navbar navbar-default navbar-fixed-bottom" role="navigation">
+ <div class="container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <a class="navbar-brand" href="#">Project name</a>
+ </div>
+ <div class="navbar-collapse collapse">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav">
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#" class="dropup">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">Separated link</a></li>
+ <li><a href="#">One more separated link <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">A long sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ <li><a href="#">Menu item 1</a></li>
+ <li><a href="#">Menu item 2</a></li>
+ <li><a href="#">Menu item 3</a></li>
+ <li><a href="#">Menu item 4</a></li>
+ <li><a href="#">Menu item 5</a></li>
+ <li><a href="#">Menu item 6</a></li>
+ <li><a href="#">Menu item 7</a></li>
+ <li><a href="#">Menu item 8</a></li>
+ <li><a href="#">Menu item 9</a></li>
+ <li><a href="#">Menu item 10</a></li>
+ <li><a href="#">Menu item 11</a></li>
+ <li><a href="#">Menu item 12</a></li>
+ <li><a href="#">Menu item 13</a></li>
+ <li><a href="#">Menu item 14</a></li>
+ <li><a href="#">Menu item 15</a></li>
+ <li><a href="#">Menu item 16</a></li>
+ <li><a href="#">Menu item 17</a></li>
+ <li><a href="#">Menu item 18</a></li>
+ <li><a href="#">Menu item 19</a></li>
+ <li><a href="#">Menu item 20</a></li>
+ <li><a href="#">Menu item 21</a></li>
+ <li><a href="#">Menu item 22</a></li>
+ <li><a href="#">Menu item 23</a></li>
+ <li><a href="#">Menu item 24</a></li>
+ <li><a href="#">Menu item 25</a></li>
+ <li><a href="#">Menu item 26</a></li>
+ <li><a href="#">Menu item 27</a></li>
+ <li><a href="#">Menu item 28</a></li>
+ <li><a href="#">Menu item 29</a></li>
+ <li><a href="#">Menu item 30</a></li>
+ <li><a href="#">Menu item 31</a></li>
+ <li><a href="#">Menu item 32</a></li>
+ <li><a href="#">Menu item 33</a></li>
+ <li><a href="#">Menu item 34</a></li>
+ <li><a href="#">Menu item 35</a></li>
+ <li><a href="#">Menu item 36</a></li>
+ <li><a href="#">Menu item 37</a></li>
+ <li><a href="#">Menu item 38</a></li>
+ <li><a href="#">Menu item 39</a></li>
+ <li><a href="#">Menu item 40</a></li>
+ <li><a href="#">Menu item 41</a></li>
+ <li><a href="#">Menu item 42</a></li>
+ <li><a href="#">Menu item 43</a></li>
+ <li><a href="#">Menu item 44</a></li>
+ <li><a href="#">Menu item 45</a></li>
+ <li><a href="#">Menu item 46</a></li>
+ <li><a href="#">Menu item 47</a></li>
+ <li><a href="#">Menu item 48</a></li>
+ <li><a href="#">Menu item 49</a></li>
+ <li><a href="#">Menu item 50</a></li>
+ <li><a href="#">Menu item 51</a></li>
+ <li><a href="#">Menu item 52</a></li>
+ <li><a href="#">Menu item 53</a></li>
+ <li><a href="#">Menu item 54</a></li>
+ <li><a href="#">Menu item 55</a></li>
+ <li><a href="#">Menu item 56</a></li>
+ <li><a href="#">Menu item 57</a></li>
+ <li><a href="#">Menu item 58</a></li>
+ <li><a href="#">Menu item 59</a></li>
+ <li><a href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a href="#">Another link</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav navbar-right">
+ <li><a href="bootstrap-navbar.html">Default</a></li>
+ <li><a href="bootstrap-navbar-static-top.html">Static top</a></li>
+ <li><a href="bootstrap-navbar-fixed-top.html">Fixed top</a></li>
+ <li class="active"><a href="bootstrap-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li><a href="#" class="dropup">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">A sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div><!--/.nav-collapse -->
+ </div><!--/.container -->
+</div>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- Bootstrap core JavaScript
+================================================== -->
+<!-- Placed at the end of the document so the pages load faster -->
+<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap Addon -->
+<script type="text/javascript" src="../addons/bootstrap/jquery.smartmenus.bootstrap.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The following data-*
attributes can be set to any ul.navbar-nav
:
+
+ data-sm-options
- set any custom options for the SmartMenus jQuery plugin (check the docs for details).
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate dedicated +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible).
+
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-top.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-top.html
new file mode 100644
index 0000000..709c92c
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-fixed-top.html
@@ -0,0 +1,391 @@
+
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap Addon - Navbar fixed top
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
You basically just need to include the JS/CSS files on your Bootstrap 3 powered pages and everything should work automatically including full support for whatever Bootstrap theme you already use. And, of course, you still have the full power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap Addon CSS -->
+<link href="../addons/bootstrap/jquery.smartmenus.bootstrap.css" rel="stylesheet">
+
+
HTML
+
<!-- Navbar fixed top -->
+<div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <a class="navbar-brand" href="#">Project name</a>
+ </div>
+ <div class="navbar-collapse collapse">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav">
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">Separated link</a></li>
+ <li><a href="#">One more separated link <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">A long sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ <li><a href="#">Menu item 1</a></li>
+ <li><a href="#">Menu item 2</a></li>
+ <li><a href="#">Menu item 3</a></li>
+ <li><a href="#">Menu item 4</a></li>
+ <li><a href="#">Menu item 5</a></li>
+ <li><a href="#">Menu item 6</a></li>
+ <li><a href="#">Menu item 7</a></li>
+ <li><a href="#">Menu item 8</a></li>
+ <li><a href="#">Menu item 9</a></li>
+ <li><a href="#">Menu item 10</a></li>
+ <li><a href="#">Menu item 11</a></li>
+ <li><a href="#">Menu item 12</a></li>
+ <li><a href="#">Menu item 13</a></li>
+ <li><a href="#">Menu item 14</a></li>
+ <li><a href="#">Menu item 15</a></li>
+ <li><a href="#">Menu item 16</a></li>
+ <li><a href="#">Menu item 17</a></li>
+ <li><a href="#">Menu item 18</a></li>
+ <li><a href="#">Menu item 19</a></li>
+ <li><a href="#">Menu item 20</a></li>
+ <li><a href="#">Menu item 21</a></li>
+ <li><a href="#">Menu item 22</a></li>
+ <li><a href="#">Menu item 23</a></li>
+ <li><a href="#">Menu item 24</a></li>
+ <li><a href="#">Menu item 25</a></li>
+ <li><a href="#">Menu item 26</a></li>
+ <li><a href="#">Menu item 27</a></li>
+ <li><a href="#">Menu item 28</a></li>
+ <li><a href="#">Menu item 29</a></li>
+ <li><a href="#">Menu item 30</a></li>
+ <li><a href="#">Menu item 31</a></li>
+ <li><a href="#">Menu item 32</a></li>
+ <li><a href="#">Menu item 33</a></li>
+ <li><a href="#">Menu item 34</a></li>
+ <li><a href="#">Menu item 35</a></li>
+ <li><a href="#">Menu item 36</a></li>
+ <li><a href="#">Menu item 37</a></li>
+ <li><a href="#">Menu item 38</a></li>
+ <li><a href="#">Menu item 39</a></li>
+ <li><a href="#">Menu item 40</a></li>
+ <li><a href="#">Menu item 41</a></li>
+ <li><a href="#">Menu item 42</a></li>
+ <li><a href="#">Menu item 43</a></li>
+ <li><a href="#">Menu item 44</a></li>
+ <li><a href="#">Menu item 45</a></li>
+ <li><a href="#">Menu item 46</a></li>
+ <li><a href="#">Menu item 47</a></li>
+ <li><a href="#">Menu item 48</a></li>
+ <li><a href="#">Menu item 49</a></li>
+ <li><a href="#">Menu item 50</a></li>
+ <li><a href="#">Menu item 51</a></li>
+ <li><a href="#">Menu item 52</a></li>
+ <li><a href="#">Menu item 53</a></li>
+ <li><a href="#">Menu item 54</a></li>
+ <li><a href="#">Menu item 55</a></li>
+ <li><a href="#">Menu item 56</a></li>
+ <li><a href="#">Menu item 57</a></li>
+ <li><a href="#">Menu item 58</a></li>
+ <li><a href="#">Menu item 59</a></li>
+ <li><a href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a href="#">Another link</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav navbar-right">
+ <li><a href="bootstrap-navbar.html">Default</a></li>
+ <li><a href="bootstrap-navbar-static-top.html">Static top</a></li>
+ <li class="active"><a href="bootstrap-navbar-fixed-top.html">Fixed top</a></li>
+ <li><a href="bootstrap-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">A sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div><!--/.nav-collapse -->
+ </div><!--/.container -->
+</div>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- Bootstrap core JavaScript
+================================================== -->
+<!-- Placed at the end of the document so the pages load faster -->
+<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap Addon -->
+<script type="text/javascript" src="../addons/bootstrap/jquery.smartmenus.bootstrap.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The following data-*
attributes can be set to any ul.navbar-nav
:
+
+ data-sm-options
- set any custom options for the SmartMenus jQuery plugin (check the docs for details).
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate dedicated +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible).
+
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-static-top.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-static-top.html
new file mode 100644
index 0000000..4bf8b37
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar-static-top.html
@@ -0,0 +1,390 @@
+
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap Addon - Navbar static top
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
You basically just need to include the JS/CSS files on your Bootstrap 3 powered pages and everything should work automatically including full support for whatever Bootstrap theme you already use. And, of course, you still have the full power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap Addon CSS -->
+<link href="../addons/bootstrap/jquery.smartmenus.bootstrap.css" rel="stylesheet">
+
+
HTML
+
<!-- Navbar static top -->
+<div class="navbar navbar-default navbar-static-top" role="navigation">
+ <div class="container">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <a class="navbar-brand" href="#">Project name</a>
+ </div>
+ <div class="navbar-collapse collapse">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav">
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">Separated link</a></li>
+ <li><a href="#">One more separated link <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">A long sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ <li><a href="#">Menu item 1</a></li>
+ <li><a href="#">Menu item 2</a></li>
+ <li><a href="#">Menu item 3</a></li>
+ <li><a href="#">Menu item 4</a></li>
+ <li><a href="#">Menu item 5</a></li>
+ <li><a href="#">Menu item 6</a></li>
+ <li><a href="#">Menu item 7</a></li>
+ <li><a href="#">Menu item 8</a></li>
+ <li><a href="#">Menu item 9</a></li>
+ <li><a href="#">Menu item 10</a></li>
+ <li><a href="#">Menu item 11</a></li>
+ <li><a href="#">Menu item 12</a></li>
+ <li><a href="#">Menu item 13</a></li>
+ <li><a href="#">Menu item 14</a></li>
+ <li><a href="#">Menu item 15</a></li>
+ <li><a href="#">Menu item 16</a></li>
+ <li><a href="#">Menu item 17</a></li>
+ <li><a href="#">Menu item 18</a></li>
+ <li><a href="#">Menu item 19</a></li>
+ <li><a href="#">Menu item 20</a></li>
+ <li><a href="#">Menu item 21</a></li>
+ <li><a href="#">Menu item 22</a></li>
+ <li><a href="#">Menu item 23</a></li>
+ <li><a href="#">Menu item 24</a></li>
+ <li><a href="#">Menu item 25</a></li>
+ <li><a href="#">Menu item 26</a></li>
+ <li><a href="#">Menu item 27</a></li>
+ <li><a href="#">Menu item 28</a></li>
+ <li><a href="#">Menu item 29</a></li>
+ <li><a href="#">Menu item 30</a></li>
+ <li><a href="#">Menu item 31</a></li>
+ <li><a href="#">Menu item 32</a></li>
+ <li><a href="#">Menu item 33</a></li>
+ <li><a href="#">Menu item 34</a></li>
+ <li><a href="#">Menu item 35</a></li>
+ <li><a href="#">Menu item 36</a></li>
+ <li><a href="#">Menu item 37</a></li>
+ <li><a href="#">Menu item 38</a></li>
+ <li><a href="#">Menu item 39</a></li>
+ <li><a href="#">Menu item 40</a></li>
+ <li><a href="#">Menu item 41</a></li>
+ <li><a href="#">Menu item 42</a></li>
+ <li><a href="#">Menu item 43</a></li>
+ <li><a href="#">Menu item 44</a></li>
+ <li><a href="#">Menu item 45</a></li>
+ <li><a href="#">Menu item 46</a></li>
+ <li><a href="#">Menu item 47</a></li>
+ <li><a href="#">Menu item 48</a></li>
+ <li><a href="#">Menu item 49</a></li>
+ <li><a href="#">Menu item 50</a></li>
+ <li><a href="#">Menu item 51</a></li>
+ <li><a href="#">Menu item 52</a></li>
+ <li><a href="#">Menu item 53</a></li>
+ <li><a href="#">Menu item 54</a></li>
+ <li><a href="#">Menu item 55</a></li>
+ <li><a href="#">Menu item 56</a></li>
+ <li><a href="#">Menu item 57</a></li>
+ <li><a href="#">Menu item 58</a></li>
+ <li><a href="#">Menu item 59</a></li>
+ <li><a href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a href="#">Another link</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav navbar-right">
+ <li><a href="bootstrap-navbar.html">Default</a></li>
+ <li class="active"><a href="bootstrap-navbar-static-top.html">Static top</a></li>
+ <li><a href="bootstrap-navbar-fixed-top.html">Fixed top</a></li>
+ <li><a href="bootstrap-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">A sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div><!--/.nav-collapse -->
+ </div><!--/.container -->
+</div>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- Bootstrap core JavaScript
+================================================== -->
+<!-- Placed at the end of the document so the pages load faster -->
+<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap Addon -->
+<script type="text/javascript" src="../addons/bootstrap/jquery.smartmenus.bootstrap.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The following data-*
attributes can be set to any ul.navbar-nav
:
+
+ data-sm-options
- set any custom options for the SmartMenus jQuery plugin (check the docs for details).
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate dedicated +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible).
+
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar.html b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar.html
new file mode 100644
index 0000000..fad489d
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/bootstrap-navbar.html
@@ -0,0 +1,386 @@
+
+
+
+
+
+
+
+ SmartMenus jQuery Website Menu - Bootstrap Addon - Navbar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
You basically just need to include the JS/CSS files on your Bootstrap 3 powered pages and everything should work automatically including full support for whatever Bootstrap theme you already use. And, of course, you still have the full power and flexibility of SmartMenus jQuery at hand should you need to tweak or customize anything.
+
+
Source Code
+
+
CSS
+
In addition to Bootstrap's CSS just include the SmartMenus jQuery Bootstrap Addon CSS. It's just static CSS code you don't need to edit at all (and probably shouldn't try to).
+
<!-- Bootstrap core CSS -->
+<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
+
+<!-- SmartMenus jQuery Bootstrap Addon CSS -->
+<link href="../addons/bootstrap/jquery.smartmenus.bootstrap.css" rel="stylesheet">
+
+
HTML
+
<!-- Navbar -->
+<div class="navbar navbar-default" role="navigation">
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <a class="navbar-brand" href="#">Project name</a>
+ </div>
+ <div class="navbar-collapse collapse">
+
+ <!-- Left nav -->
+ <ul class="nav navbar-nav">
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Link</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">Separated link</a></li>
+ <li><a href="#">One more separated link <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">A long sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ <li><a href="#">Menu item 1</a></li>
+ <li><a href="#">Menu item 2</a></li>
+ <li><a href="#">Menu item 3</a></li>
+ <li><a href="#">Menu item 4</a></li>
+ <li><a href="#">Menu item 5</a></li>
+ <li><a href="#">Menu item 6</a></li>
+ <li><a href="#">Menu item 7</a></li>
+ <li><a href="#">Menu item 8</a></li>
+ <li><a href="#">Menu item 9</a></li>
+ <li><a href="#">Menu item 10</a></li>
+ <li><a href="#">Menu item 11</a></li>
+ <li><a href="#">Menu item 12</a></li>
+ <li><a href="#">Menu item 13</a></li>
+ <li><a href="#">Menu item 14</a></li>
+ <li><a href="#">Menu item 15</a></li>
+ <li><a href="#">Menu item 16</a></li>
+ <li><a href="#">Menu item 17</a></li>
+ <li><a href="#">Menu item 18</a></li>
+ <li><a href="#">Menu item 19</a></li>
+ <li><a href="#">Menu item 20</a></li>
+ <li><a href="#">Menu item 21</a></li>
+ <li><a href="#">Menu item 22</a></li>
+ <li><a href="#">Menu item 23</a></li>
+ <li><a href="#">Menu item 24</a></li>
+ <li><a href="#">Menu item 25</a></li>
+ <li><a href="#">Menu item 26</a></li>
+ <li><a href="#">Menu item 27</a></li>
+ <li><a href="#">Menu item 28</a></li>
+ <li><a href="#">Menu item 29</a></li>
+ <li><a href="#">Menu item 30</a></li>
+ <li><a href="#">Menu item 31</a></li>
+ <li><a href="#">Menu item 32</a></li>
+ <li><a href="#">Menu item 33</a></li>
+ <li><a href="#">Menu item 34</a></li>
+ <li><a href="#">Menu item 35</a></li>
+ <li><a href="#">Menu item 36</a></li>
+ <li><a href="#">Menu item 37</a></li>
+ <li><a href="#">Menu item 38</a></li>
+ <li><a href="#">Menu item 39</a></li>
+ <li><a href="#">Menu item 40</a></li>
+ <li><a href="#">Menu item 41</a></li>
+ <li><a href="#">Menu item 42</a></li>
+ <li><a href="#">Menu item 43</a></li>
+ <li><a href="#">Menu item 44</a></li>
+ <li><a href="#">Menu item 45</a></li>
+ <li><a href="#">Menu item 46</a></li>
+ <li><a href="#">Menu item 47</a></li>
+ <li><a href="#">Menu item 48</a></li>
+ <li><a href="#">Menu item 49</a></li>
+ <li><a href="#">Menu item 50</a></li>
+ <li><a href="#">Menu item 51</a></li>
+ <li><a href="#">Menu item 52</a></li>
+ <li><a href="#">Menu item 53</a></li>
+ <li><a href="#">Menu item 54</a></li>
+ <li><a href="#">Menu item 55</a></li>
+ <li><a href="#">Menu item 56</a></li>
+ <li><a href="#">Menu item 57</a></li>
+ <li><a href="#">Menu item 58</a></li>
+ <li><a href="#">Menu item 59</a></li>
+ <li><a href="#">Menu item 60</a></li>
+ </ul>
+ </li>
+ <li><a href="#">Another link</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+
+ <!-- Right nav -->
+ <ul class="nav navbar-nav navbar-right">
+ <li class="active"><a href="bootstrap-navbar.html">Default</a></li>
+ <li><a href="bootstrap-navbar-static-top.html">Static top</a></li>
+ <li><a href="bootstrap-navbar-fixed-top.html">Fixed top</a></li>
+ <li><a href="bootstrap-navbar-fixed-bottom.html">Fixed bottom</a></li>
+ <li><a href="#">Dropdown <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="divider"></li>
+ <li class="dropdown-header">Nav header</li>
+ <li><a href="#">A sub menu <span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="#">Action</a></li>
+ <li><a href="#">Another action</a></li>
+ <li><a href="#">Something else here</a></li>
+ <li class="disabled"><a class="disabled" href="#">Disabled item</a></li>
+ <li><a href="#">One more link</a></li>
+ </ul>
+ </li>
+ <li><a href="#">A separated link</a></li>
+ </ul>
+ </li>
+ </ul>
+
+ </div><!--/.nav-collapse -->
+</div>
+
+
JavaScript
+
In addition to Bootstrap's JavaScript just include SmartMenus jQuery and the SmartMenus jQuery Bootstrap Addon. The default options used in jquery.smartmenus.bootstrap.js
should work well for all. However, you can, of course, tweak them if you like.
+
<!-- Bootstrap core JavaScript
+================================================== -->
+<!-- Placed at the end of the document so the pages load faster -->
+<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
+
+<!-- SmartMenus jQuery plugin -->
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>
+
+<!-- SmartMenus jQuery Bootstrap Addon -->
+<script type="text/javascript" src="../addons/bootstrap/jquery.smartmenus.bootstrap.js"></script>
+
+
Quick customization
+
+
data-*
attributes
+
The following data-*
attributes can be set to any ul.navbar-nav
:
+
+ data-sm-options
- set any custom options for the SmartMenus jQuery plugin (check the docs for details).
+ data-sm-skip
- this will tell the script to skip this navbar and not apply any SmartMenus features to it so it will behave like a regular Bootstrap navbar.
+ data-sm-skip-collapsible-behavior
- this will tell the script to not apply SmartMenus' specific behavior to this navbar in collapsible mode (mobile view). Bootstrap's behavior for navbars in collapsible mode is to use the whole area of the parent items just as a toggle button for their sub menus and thus it's impossible to set a link to the parent items that can be followed on click/tap. SmartMenus' behavior is to add a separate dedicated +/- sub menus toggle button to parent items and thus allows the link of the parent items to be activated on the second click/tap (the first click/tap displays the sub menu if it's not visible).
+
+
+
API
+
The following methods are available:
+
+ jQuery.SmartMenus.Bootstrap.init()
- reinit the addon. Useful if you add any navbars dynamically on your page and need to init them (all navbars are normally initialized ondomready).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/index.html b/frontend/web/themes/sport/plugins/smartmenus/demo/index.html
new file mode 100644
index 0000000..6d0e97a
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/index.html
@@ -0,0 +1,226 @@
+
+
+
+ SmartMenus jQuery Website Menu - jQuery Plugin
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SmartMenus
+
jQuery website menu plugin. Responsive and accessible list-based website menus that work on all devices.
+
+
Examples
+
Basic bundled demos:
+
+
Online demos + themes gallery »
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/demo/keyboard-navigation.html b/frontend/web/themes/sport/plugins/smartmenus/demo/keyboard-navigation.html
new file mode 100644
index 0000000..069e6fc
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/demo/keyboard-navigation.html
@@ -0,0 +1,243 @@
+
+
+
+ SmartMenus jQuery Website Menu - Keyboard Addon
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SmartMenus Keyboard Addon
+
This is a demo of the SmartMenus jQuery Keyboard Addon which you can optionally include on your pages in addition to the SmartMenus jQuery plugin. It brings advanced keyboard navigation for all menu trees you may have on your pages.
+
By default without this addon the SmartMenus plugin includes basic keyboard navigation support - a user can use the Tab key to cycle through all main menu links, the Enter or Space key to activate the sub menus and also include their links in the tab order and the Esc key to deactivate the sub menus.
+
This addon takes keyboard navigation to a more advanced level by allowing the use of the keyboard ← → ↑ ↓ arrow keys to browse the menu tree conveniently. Additionally a hotkey can be set too if needed - i.e. a keyboard shortcut that will send focus to any menu tree.
+
Improving further accessibility
+
You can consider improving even further accessibility for users of screen readers or text mode browsers by wrapping the main menu item links in headings - e.g. on this demo page <h2>
tags are used. This would allow such users to skip from branch to branch more easily in certain scenarios.
+
Demo
+
Press Shift + F12 to send focus to the first link in the main menu above (or press Tab as many times as need to focus some of the menu items). Then press Enter , Space or ↓ to activate some sub menu and then you can use the ← → ↑ ↓ arrow keys to move the focus to other menu items. The script will automatically show/hide the sub menus as needed. You can press Esc at any time to deactivate the sub menus.
+
Methods
+
This addon introduces the following API method:
+
+ keyboardSetHotkey
+
+ Sets a hotkey combination that will send focus to the menu tree.
+ Arguments:
+
+ keyCode
+ Type: Integer The key code for the hotkey (a good char code reference ).
+ modifiers
+ Type: String, Array The hotkey modifier key. None, one or multiple of 'ctrlKey'
, 'shiftKey'
, 'altKey'
, 'metaKey'
.
+
+ Code sample:
+ // set Shift + F12 hotkey
+ $('#main-menu').smartmenus('keyboardSetHotkey', 123, 'shiftKey');
+
+ // set Ctrl + Alt + Shift + F12 hotkey
+ $('#main-menu').smartmenus('keyboardSetHotkey', 123, ['ctrlKey', 'altKey', 'shiftKey']);
+ Note: It is recommended to always use a combination (i.e. modifier + key) rather than use just a single key to avoid preventing important default browser features from working. 'shiftKey'
is best supported and probably the safest modifier you could use. 'ctrlKey'
and 'altKey'
generally work well too, there were just some issues with older Opera versions. 'metaKey'
is the Mac ⌘ key and it only works on Macs so, unless you know what you are doing, you probably shouldn't use it.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.js b/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.js
new file mode 100644
index 0000000..d6b7a47
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.js
@@ -0,0 +1,1216 @@
+/*!
+ * SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+
+(function(factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD
+ define(['jquery'], factory);
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
+ // CommonJS
+ module.exports = factory(require('jquery'));
+ } else {
+ // Global jQuery
+ factory(jQuery);
+ }
+} (function($) {
+
+ var menuTrees = [],
+ mouse = false, // optimize for touch by default - we will detect for mouse input
+ touchEvents = 'ontouchstart' in window, // we use this just to choose between toucn and pointer events, not for touch screen detection
+ mouseDetectionEnabled = false,
+ requestAnimationFrame = window.requestAnimationFrame || function(callback) { return setTimeout(callback, 1000 / 60); },
+ cancelAnimationFrame = window.cancelAnimationFrame || function(id) { clearTimeout(id); },
+ canAnimate = !!$.fn.animate;
+
+ // Handle detection for mouse input (i.e. desktop browsers, tablets with a mouse, etc.)
+ function initMouseDetection(disable) {
+ var eNS = '.smartmenus_mouse';
+ if (!mouseDetectionEnabled && !disable) {
+ // if we get two consecutive mousemoves within 2 pixels from each other and within 300ms, we assume a real mouse/cursor is present
+ // in practice, this seems like impossible to trick unintentianally with a real mouse and a pretty safe detection on touch devices (even with older browsers that do not support touch events)
+ var firstTime = true,
+ lastMove = null,
+ events = {
+ 'mousemove': function(e) {
+ var thisMove = { x: e.pageX, y: e.pageY, timeStamp: new Date().getTime() };
+ if (lastMove) {
+ var deltaX = Math.abs(lastMove.x - thisMove.x),
+ deltaY = Math.abs(lastMove.y - thisMove.y);
+ if ((deltaX > 0 || deltaY > 0) && deltaX <= 2 && deltaY <= 2 && thisMove.timeStamp - lastMove.timeStamp <= 300) {
+ mouse = true;
+ // if this is the first check after page load, check if we are not over some item by chance and call the mouseenter handler if yes
+ if (firstTime) {
+ var $a = $(e.target).closest('a');
+ if ($a.is('a')) {
+ $.each(menuTrees, function() {
+ if ($.contains(this.$root[0], $a[0])) {
+ this.itemEnter({ currentTarget: $a[0] });
+ return false;
+ }
+ });
+ }
+ firstTime = false;
+ }
+ }
+ }
+ lastMove = thisMove;
+ }
+ };
+ events[touchEvents ? 'touchstart' : 'pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut'] = function(e) {
+ if (isTouchEvent(e.originalEvent)) {
+ mouse = false;
+ }
+ };
+ $(document).on(getEventsNS(events, eNS));
+ mouseDetectionEnabled = true;
+ } else if (mouseDetectionEnabled && disable) {
+ $(document).off(eNS);
+ mouseDetectionEnabled = false;
+ }
+ }
+
+ function isTouchEvent(e) {
+ return !/^(4|mouse)$/.test(e.pointerType);
+ }
+
+ // returns a jQuery on() ready object
+ function getEventsNS(events, eNS) {
+ if (!eNS) {
+ eNS = '';
+ }
+ var eventsNS = {};
+ for (var i in events) {
+ eventsNS[i.split(' ').join(eNS + ' ') + eNS] = events[i];
+ }
+ return eventsNS;
+ }
+
+ $.SmartMenus = function(elm, options) {
+ this.$root = $(elm);
+ this.opts = options;
+ this.rootId = ''; // internal
+ this.accessIdPrefix = '';
+ this.$subArrow = null;
+ this.activatedItems = []; // stores last activated A's for each level
+ this.visibleSubMenus = []; // stores visible sub menus UL's (might be in no particular order)
+ this.showTimeout = 0;
+ this.hideTimeout = 0;
+ this.scrollTimeout = 0;
+ this.clickActivated = false;
+ this.focusActivated = false;
+ this.zIndexInc = 0;
+ this.idInc = 0;
+ this.$firstLink = null; // we'll use these for some tests
+ this.$firstSub = null; // at runtime so we'll cache them
+ this.disabled = false;
+ this.$disableOverlay = null;
+ this.$touchScrollingSub = null;
+ this.cssTransforms3d = 'perspective' in elm.style || 'webkitPerspective' in elm.style;
+ this.wasCollapsible = false;
+ this.init();
+ };
+
+ $.extend($.SmartMenus, {
+ hideAll: function() {
+ $.each(menuTrees, function() {
+ this.menuHideAll();
+ });
+ },
+ destroy: function() {
+ while (menuTrees.length) {
+ menuTrees[0].destroy();
+ }
+ initMouseDetection(true);
+ },
+ prototype: {
+ init: function(refresh) {
+ var self = this;
+
+ if (!refresh) {
+ menuTrees.push(this);
+
+ this.rootId = (new Date().getTime() + Math.random() + '').replace(/\D/g, '');
+ this.accessIdPrefix = 'sm-' + this.rootId + '-';
+
+ if (this.$root.hasClass('sm-rtl')) {
+ this.opts.rightToLeftSubMenus = true;
+ }
+
+ // init root (main menu)
+ var eNS = '.smartmenus';
+ this.$root
+ .data('smartmenus', this)
+ .attr('data-smartmenus-id', this.rootId)
+ .dataSM('level', 1)
+ .on(getEventsNS({
+ 'mouseover focusin': $.proxy(this.rootOver, this),
+ 'mouseout focusout': $.proxy(this.rootOut, this),
+ 'keydown': $.proxy(this.rootKeyDown, this)
+ }, eNS))
+ .on(getEventsNS({
+ 'mouseenter': $.proxy(this.itemEnter, this),
+ 'mouseleave': $.proxy(this.itemLeave, this),
+ 'mousedown': $.proxy(this.itemDown, this),
+ 'focus': $.proxy(this.itemFocus, this),
+ 'blur': $.proxy(this.itemBlur, this),
+ 'click': $.proxy(this.itemClick, this)
+ }, eNS), 'a');
+
+ // hide menus on tap or click outside the root UL
+ eNS += this.rootId;
+ if (this.opts.hideOnClick) {
+ $(document).on(getEventsNS({
+ 'touchstart': $.proxy(this.docTouchStart, this),
+ 'touchmove': $.proxy(this.docTouchMove, this),
+ 'touchend': $.proxy(this.docTouchEnd, this),
+ // for Opera Mobile < 11.5, webOS browser, etc. we'll check click too
+ 'click': $.proxy(this.docClick, this)
+ }, eNS));
+ }
+ // hide sub menus on resize
+ $(window).on(getEventsNS({ 'resize orientationchange': $.proxy(this.winResize, this) }, eNS));
+
+ if (this.opts.subIndicators) {
+ this.$subArrow = $(' ').addClass('sub-arrow');
+ if (this.opts.subIndicatorsText) {
+ this.$subArrow.html(this.opts.subIndicatorsText);
+ }
+ }
+
+ // make sure mouse detection is enabled
+ initMouseDetection();
+ }
+
+ // init sub menus
+ this.$firstSub = this.$root.find('ul').each(function() { self.menuInit($(this)); }).eq(0);
+
+ this.$firstLink = this.$root.find('a').eq(0);
+
+ // find current item
+ if (this.opts.markCurrentItem) {
+ var reDefaultDoc = /(index|default)\.[^#\?\/]*/i,
+ reHash = /#.*/,
+ locHref = window.location.href.replace(reDefaultDoc, ''),
+ locHrefNoHash = locHref.replace(reHash, '');
+ this.$root.find('a').each(function() {
+ var href = this.href.replace(reDefaultDoc, ''),
+ $this = $(this);
+ if (href == locHref || href == locHrefNoHash) {
+ $this.addClass('current');
+ if (self.opts.markCurrentTree) {
+ $this.parentsUntil('[data-smartmenus-id]', 'ul').each(function() {
+ $(this).dataSM('parent-a').addClass('current');
+ });
+ }
+ }
+ });
+ }
+
+ // save initial state
+ this.wasCollapsible = this.isCollapsible();
+ },
+ destroy: function(refresh) {
+ if (!refresh) {
+ var eNS = '.smartmenus';
+ this.$root
+ .removeData('smartmenus')
+ .removeAttr('data-smartmenus-id')
+ .removeDataSM('level')
+ .off(eNS);
+ eNS += this.rootId;
+ $(document).off(eNS);
+ $(window).off(eNS);
+ if (this.opts.subIndicators) {
+ this.$subArrow = null;
+ }
+ }
+ this.menuHideAll();
+ var self = this;
+ this.$root.find('ul').each(function() {
+ var $this = $(this);
+ if ($this.dataSM('scroll-arrows')) {
+ $this.dataSM('scroll-arrows').remove();
+ }
+ if ($this.dataSM('shown-before')) {
+ if (self.opts.subMenusMinWidth || self.opts.subMenusMaxWidth) {
+ $this.css({ width: '', minWidth: '', maxWidth: '' }).removeClass('sm-nowrap');
+ }
+ if ($this.dataSM('scroll-arrows')) {
+ $this.dataSM('scroll-arrows').remove();
+ }
+ $this.css({ zIndex: '', top: '', left: '', marginLeft: '', marginTop: '', display: '' });
+ }
+ if (($this.attr('id') || '').indexOf(self.accessIdPrefix) == 0) {
+ $this.removeAttr('id');
+ }
+ })
+ .removeDataSM('in-mega')
+ .removeDataSM('shown-before')
+ .removeDataSM('scroll-arrows')
+ .removeDataSM('parent-a')
+ .removeDataSM('level')
+ .removeDataSM('beforefirstshowfired')
+ .removeAttr('role')
+ .removeAttr('aria-hidden')
+ .removeAttr('aria-labelledby')
+ .removeAttr('aria-expanded');
+ this.$root.find('a.has-submenu').each(function() {
+ var $this = $(this);
+ if ($this.attr('id').indexOf(self.accessIdPrefix) == 0) {
+ $this.removeAttr('id');
+ }
+ })
+ .removeClass('has-submenu')
+ .removeDataSM('sub')
+ .removeAttr('aria-haspopup')
+ .removeAttr('aria-controls')
+ .removeAttr('aria-expanded')
+ .closest('li').removeDataSM('sub');
+ if (this.opts.subIndicators) {
+ this.$root.find('span.sub-arrow').remove();
+ }
+ if (this.opts.markCurrentItem) {
+ this.$root.find('a.current').removeClass('current');
+ }
+ if (!refresh) {
+ this.$root = null;
+ this.$firstLink = null;
+ this.$firstSub = null;
+ if (this.$disableOverlay) {
+ this.$disableOverlay.remove();
+ this.$disableOverlay = null;
+ }
+ menuTrees.splice($.inArray(this, menuTrees), 1);
+ }
+ },
+ disable: function(noOverlay) {
+ if (!this.disabled) {
+ this.menuHideAll();
+ // display overlay over the menu to prevent interaction
+ if (!noOverlay && !this.opts.isPopup && this.$root.is(':visible')) {
+ var pos = this.$root.offset();
+ this.$disableOverlay = $('
').css({
+ position: 'absolute',
+ top: pos.top,
+ left: pos.left,
+ width: this.$root.outerWidth(),
+ height: this.$root.outerHeight(),
+ zIndex: this.getStartZIndex(true),
+ opacity: 0
+ }).appendTo(document.body);
+ }
+ this.disabled = true;
+ }
+ },
+ docClick: function(e) {
+ if (this.$touchScrollingSub) {
+ this.$touchScrollingSub = null;
+ return;
+ }
+ // hide on any click outside the menu or on a menu link
+ if (this.visibleSubMenus.length && !$.contains(this.$root[0], e.target) || $(e.target).closest('a').length) {
+ this.menuHideAll();
+ }
+ },
+ docTouchEnd: function(e) {
+ if (!this.lastTouch) {
+ return;
+ }
+ if (this.visibleSubMenus.length && (this.lastTouch.x2 === undefined || this.lastTouch.x1 == this.lastTouch.x2) && (this.lastTouch.y2 === undefined || this.lastTouch.y1 == this.lastTouch.y2) && (!this.lastTouch.target || !$.contains(this.$root[0], this.lastTouch.target))) {
+ if (this.hideTimeout) {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout = 0;
+ }
+ // hide with a delay to prevent triggering accidental unwanted click on some page element
+ var self = this;
+ this.hideTimeout = setTimeout(function() { self.menuHideAll(); }, 350);
+ }
+ this.lastTouch = null;
+ },
+ docTouchMove: function(e) {
+ if (!this.lastTouch) {
+ return;
+ }
+ var touchPoint = e.originalEvent.touches[0];
+ this.lastTouch.x2 = touchPoint.pageX;
+ this.lastTouch.y2 = touchPoint.pageY;
+ },
+ docTouchStart: function(e) {
+ var touchPoint = e.originalEvent.touches[0];
+ this.lastTouch = { x1: touchPoint.pageX, y1: touchPoint.pageY, target: touchPoint.target };
+ },
+ enable: function() {
+ if (this.disabled) {
+ if (this.$disableOverlay) {
+ this.$disableOverlay.remove();
+ this.$disableOverlay = null;
+ }
+ this.disabled = false;
+ }
+ },
+ getClosestMenu: function(elm) {
+ var $closestMenu = $(elm).closest('ul');
+ while ($closestMenu.dataSM('in-mega')) {
+ $closestMenu = $closestMenu.parent().closest('ul');
+ }
+ return $closestMenu[0] || null;
+ },
+ getHeight: function($elm) {
+ return this.getOffset($elm, true);
+ },
+ // returns precise width/height float values
+ getOffset: function($elm, height) {
+ var old;
+ if ($elm.css('display') == 'none') {
+ old = { position: $elm[0].style.position, visibility: $elm[0].style.visibility };
+ $elm.css({ position: 'absolute', visibility: 'hidden' }).show();
+ }
+ var box = $elm[0].getBoundingClientRect && $elm[0].getBoundingClientRect(),
+ val = box && (height ? box.height || box.bottom - box.top : box.width || box.right - box.left);
+ if (!val && val !== 0) {
+ val = height ? $elm[0].offsetHeight : $elm[0].offsetWidth;
+ }
+ if (old) {
+ $elm.hide().css(old);
+ }
+ return val;
+ },
+ getStartZIndex: function(root) {
+ var zIndex = parseInt(this[root ? '$root' : '$firstSub'].css('z-index'));
+ if (!root && isNaN(zIndex)) {
+ zIndex = parseInt(this.$root.css('z-index'));
+ }
+ return !isNaN(zIndex) ? zIndex : 1;
+ },
+ getTouchPoint: function(e) {
+ return e.touches && e.touches[0] || e.changedTouches && e.changedTouches[0] || e;
+ },
+ getViewport: function(height) {
+ var name = height ? 'Height' : 'Width',
+ val = document.documentElement['client' + name],
+ val2 = window['inner' + name];
+ if (val2) {
+ val = Math.min(val, val2);
+ }
+ return val;
+ },
+ getViewportHeight: function() {
+ return this.getViewport(true);
+ },
+ getViewportWidth: function() {
+ return this.getViewport();
+ },
+ getWidth: function($elm) {
+ return this.getOffset($elm);
+ },
+ handleEvents: function() {
+ return !this.disabled && this.isCSSOn();
+ },
+ handleItemEvents: function($a) {
+ return this.handleEvents() && !this.isLinkInMegaMenu($a);
+ },
+ isCollapsible: function() {
+ return this.$firstSub.css('position') == 'static';
+ },
+ isCSSOn: function() {
+ return this.$firstLink.css('display') != 'inline';
+ },
+ isFixed: function() {
+ var isFixed = this.$root.css('position') == 'fixed';
+ if (!isFixed) {
+ this.$root.parentsUntil('body').each(function() {
+ if ($(this).css('position') == 'fixed') {
+ isFixed = true;
+ return false;
+ }
+ });
+ }
+ return isFixed;
+ },
+ isLinkInMegaMenu: function($a) {
+ return $(this.getClosestMenu($a[0])).hasClass('mega-menu');
+ },
+ isTouchMode: function() {
+ return !mouse || this.opts.noMouseOver || this.isCollapsible();
+ },
+ itemActivate: function($a, hideDeeperSubs) {
+ var $ul = $a.closest('ul'),
+ level = $ul.dataSM('level');
+ // if for some reason the parent item is not activated (e.g. this is an API call to activate the item), activate all parent items first
+ if (level > 1 && (!this.activatedItems[level - 2] || this.activatedItems[level - 2][0] != $ul.dataSM('parent-a')[0])) {
+ var self = this;
+ $($ul.parentsUntil('[data-smartmenus-id]', 'ul').get().reverse()).add($ul).each(function() {
+ self.itemActivate($(this).dataSM('parent-a'));
+ });
+ }
+ // hide any visible deeper level sub menus
+ if (!this.isCollapsible() || hideDeeperSubs) {
+ this.menuHideSubMenus(!this.activatedItems[level - 1] || this.activatedItems[level - 1][0] != $a[0] ? level - 1 : level);
+ }
+ // save new active item for this level
+ this.activatedItems[level - 1] = $a;
+ if (this.$root.triggerHandler('activate.smapi', $a[0]) === false) {
+ return;
+ }
+ // show the sub menu if this item has one
+ var $sub = $a.dataSM('sub');
+ if ($sub && (this.isTouchMode() || (!this.opts.showOnClick || this.clickActivated))) {
+ this.menuShow($sub);
+ }
+ },
+ itemBlur: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ this.$root.triggerHandler('blur.smapi', $a[0]);
+ },
+ itemClick: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ if (this.$touchScrollingSub && this.$touchScrollingSub[0] == $a.closest('ul')[0]) {
+ this.$touchScrollingSub = null;
+ e.stopPropagation();
+ return false;
+ }
+ if (this.$root.triggerHandler('click.smapi', $a[0]) === false) {
+ return false;
+ }
+ var subArrowClicked = $(e.target).is('.sub-arrow'),
+ $sub = $a.dataSM('sub'),
+ firstLevelSub = $sub ? $sub.dataSM('level') == 2 : false,
+ collapsible = this.isCollapsible(),
+ behaviorToggle = /toggle$/.test(this.opts.collapsibleBehavior),
+ behaviorLink = /link$/.test(this.opts.collapsibleBehavior),
+ behaviorAccordion = /^accordion/.test(this.opts.collapsibleBehavior);
+ // if the sub is hidden, try to show it
+ if ($sub && !$sub.is(':visible')) {
+ if (!behaviorLink || !collapsible || subArrowClicked) {
+ if (this.opts.showOnClick && firstLevelSub) {
+ this.clickActivated = true;
+ }
+ // try to activate the item and show the sub
+ this.itemActivate($a, behaviorAccordion);
+ // if "itemActivate" showed the sub, prevent the click so that the link is not loaded
+ // if it couldn't show it, then the sub menus are disabled with an !important declaration (e.g. via mobile styles) so let the link get loaded
+ if ($sub.is(':visible')) {
+ this.focusActivated = true;
+ return false;
+ }
+ }
+ // if the sub is visible and we are in collapsible mode
+ } else if (collapsible && (behaviorToggle || subArrowClicked)) {
+ this.itemActivate($a, behaviorAccordion);
+ this.menuHide($sub);
+ if (behaviorToggle) {
+ this.focusActivated = false;
+ }
+ return false;
+ }
+ if (this.opts.showOnClick && firstLevelSub || $a.hasClass('disabled') || this.$root.triggerHandler('select.smapi', $a[0]) === false) {
+ return false;
+ }
+ },
+ itemDown: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ $a.dataSM('mousedown', true);
+ },
+ itemEnter: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ if (!this.isTouchMode()) {
+ if (this.showTimeout) {
+ clearTimeout(this.showTimeout);
+ this.showTimeout = 0;
+ }
+ var self = this;
+ this.showTimeout = setTimeout(function() { self.itemActivate($a); }, this.opts.showOnClick && $a.closest('ul').dataSM('level') == 1 ? 1 : this.opts.showTimeout);
+ }
+ this.$root.triggerHandler('mouseenter.smapi', $a[0]);
+ },
+ itemFocus: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ // fix (the mousedown check): in some browsers a tap/click produces consecutive focus + click events so we don't need to activate the item on focus
+ if (this.focusActivated && (!this.isTouchMode() || !$a.dataSM('mousedown')) && (!this.activatedItems.length || this.activatedItems[this.activatedItems.length - 1][0] != $a[0])) {
+ this.itemActivate($a, true);
+ }
+ this.$root.triggerHandler('focus.smapi', $a[0]);
+ },
+ itemLeave: function(e) {
+ var $a = $(e.currentTarget);
+ if (!this.handleItemEvents($a)) {
+ return;
+ }
+ if (!this.isTouchMode()) {
+ $a[0].blur();
+ if (this.showTimeout) {
+ clearTimeout(this.showTimeout);
+ this.showTimeout = 0;
+ }
+ }
+ $a.removeDataSM('mousedown');
+ this.$root.triggerHandler('mouseleave.smapi', $a[0]);
+ },
+ menuHide: function($sub) {
+ if (this.$root.triggerHandler('beforehide.smapi', $sub[0]) === false) {
+ return;
+ }
+ if (canAnimate) {
+ $sub.stop(true, true);
+ }
+ if ($sub.css('display') != 'none') {
+ var complete = function() {
+ // unset z-index
+ $sub.css('z-index', '');
+ };
+ // if sub is collapsible (mobile view)
+ if (this.isCollapsible()) {
+ if (canAnimate && this.opts.collapsibleHideFunction) {
+ this.opts.collapsibleHideFunction.call(this, $sub, complete);
+ } else {
+ $sub.hide(this.opts.collapsibleHideDuration, complete);
+ }
+ } else {
+ if (canAnimate && this.opts.hideFunction) {
+ this.opts.hideFunction.call(this, $sub, complete);
+ } else {
+ $sub.hide(this.opts.hideDuration, complete);
+ }
+ }
+ // deactivate scrolling if it is activated for this sub
+ if ($sub.dataSM('scroll')) {
+ this.menuScrollStop($sub);
+ $sub.css({ 'touch-action': '', '-ms-touch-action': '', '-webkit-transform': '', transform: '' })
+ .off('.smartmenus_scroll').removeDataSM('scroll').dataSM('scroll-arrows').hide();
+ }
+ // unhighlight parent item + accessibility
+ $sub.dataSM('parent-a').removeClass('highlighted').attr('aria-expanded', 'false');
+ $sub.attr({
+ 'aria-expanded': 'false',
+ 'aria-hidden': 'true'
+ });
+ var level = $sub.dataSM('level');
+ this.activatedItems.splice(level - 1, 1);
+ this.visibleSubMenus.splice($.inArray($sub, this.visibleSubMenus), 1);
+ this.$root.triggerHandler('hide.smapi', $sub[0]);
+ }
+ },
+ menuHideAll: function() {
+ if (this.showTimeout) {
+ clearTimeout(this.showTimeout);
+ this.showTimeout = 0;
+ }
+ // hide all subs
+ // if it's a popup, this.visibleSubMenus[0] is the root UL
+ var level = this.opts.isPopup ? 1 : 0;
+ for (var i = this.visibleSubMenus.length - 1; i >= level; i--) {
+ this.menuHide(this.visibleSubMenus[i]);
+ }
+ // hide root if it's popup
+ if (this.opts.isPopup) {
+ if (canAnimate) {
+ this.$root.stop(true, true);
+ }
+ if (this.$root.is(':visible')) {
+ if (canAnimate && this.opts.hideFunction) {
+ this.opts.hideFunction.call(this, this.$root);
+ } else {
+ this.$root.hide(this.opts.hideDuration);
+ }
+ }
+ }
+ this.activatedItems = [];
+ this.visibleSubMenus = [];
+ this.clickActivated = false;
+ this.focusActivated = false;
+ // reset z-index increment
+ this.zIndexInc = 0;
+ this.$root.triggerHandler('hideAll.smapi');
+ },
+ menuHideSubMenus: function(level) {
+ for (var i = this.activatedItems.length - 1; i >= level; i--) {
+ var $sub = this.activatedItems[i].dataSM('sub');
+ if ($sub) {
+ this.menuHide($sub);
+ }
+ }
+ },
+ menuInit: function($ul) {
+ if (!$ul.dataSM('in-mega')) {
+ // mark UL's in mega drop downs (if any) so we can neglect them
+ if ($ul.hasClass('mega-menu')) {
+ $ul.find('ul').dataSM('in-mega', true);
+ }
+ // get level (much faster than, for example, using parentsUntil)
+ var level = 2,
+ par = $ul[0];
+ while ((par = par.parentNode.parentNode) != this.$root[0]) {
+ level++;
+ }
+ // cache stuff for quick access
+ var $a = $ul.prevAll('a').eq(-1);
+ // if the link is nested (e.g. in a heading)
+ if (!$a.length) {
+ $a = $ul.prevAll().find('a').eq(-1);
+ }
+ $a.addClass('has-submenu').dataSM('sub', $ul);
+ $ul.dataSM('parent-a', $a)
+ .dataSM('level', level)
+ .parent().dataSM('sub', $ul);
+ // accessibility
+ var aId = $a.attr('id') || this.accessIdPrefix + (++this.idInc),
+ ulId = $ul.attr('id') || this.accessIdPrefix + (++this.idInc);
+ $a.attr({
+ id: aId,
+ 'aria-haspopup': 'true',
+ 'aria-controls': ulId,
+ 'aria-expanded': 'false'
+ });
+ $ul.attr({
+ id: ulId,
+ 'role': 'group',
+ 'aria-hidden': 'true',
+ 'aria-labelledby': aId,
+ 'aria-expanded': 'false'
+ });
+ // add sub indicator to parent item
+ if (this.opts.subIndicators) {
+ $a[this.opts.subIndicatorsPos](this.$subArrow.clone());
+ }
+ }
+ },
+ menuPosition: function($sub) {
+ var $a = $sub.dataSM('parent-a'),
+ $li = $a.closest('li'),
+ $ul = $li.parent(),
+ level = $sub.dataSM('level'),
+ subW = this.getWidth($sub),
+ subH = this.getHeight($sub),
+ itemOffset = $a.offset(),
+ itemX = itemOffset.left,
+ itemY = itemOffset.top,
+ itemW = this.getWidth($a),
+ itemH = this.getHeight($a),
+ $win = $(window),
+ winX = $win.scrollLeft(),
+ winY = $win.scrollTop(),
+ winW = this.getViewportWidth(),
+ winH = this.getViewportHeight(),
+ horizontalParent = $ul.parent().is('[data-sm-horizontal-sub]') || level == 2 && !$ul.hasClass('sm-vertical'),
+ rightToLeft = this.opts.rightToLeftSubMenus && !$li.is('[data-sm-reverse]') || !this.opts.rightToLeftSubMenus && $li.is('[data-sm-reverse]'),
+ subOffsetX = level == 2 ? this.opts.mainMenuSubOffsetX : this.opts.subMenusSubOffsetX,
+ subOffsetY = level == 2 ? this.opts.mainMenuSubOffsetY : this.opts.subMenusSubOffsetY,
+ x, y;
+ if (horizontalParent) {
+ x = rightToLeft ? itemW - subW - subOffsetX : subOffsetX;
+ y = this.opts.bottomToTopSubMenus ? -subH - subOffsetY : itemH + subOffsetY;
+ } else {
+ x = rightToLeft ? subOffsetX - subW : itemW - subOffsetX;
+ y = this.opts.bottomToTopSubMenus ? itemH - subOffsetY - subH : subOffsetY;
+ }
+ if (this.opts.keepInViewport) {
+ var absX = itemX + x,
+ absY = itemY + y;
+ if (rightToLeft && absX < winX) {
+ x = horizontalParent ? winX - absX + x : itemW - subOffsetX;
+ } else if (!rightToLeft && absX + subW > winX + winW) {
+ x = horizontalParent ? winX + winW - subW - absX + x : subOffsetX - subW;
+ }
+ if (!horizontalParent) {
+ if (subH < winH && absY + subH > winY + winH) {
+ y += winY + winH - subH - absY;
+ } else if (subH >= winH || absY < winY) {
+ y += winY - absY;
+ }
+ }
+ // do we need scrolling?
+ // 0.49 used for better precision when dealing with float values
+ if (horizontalParent && (absY + subH > winY + winH + 0.49 || absY < winY) || !horizontalParent && subH > winH + 0.49) {
+ var self = this;
+ if (!$sub.dataSM('scroll-arrows')) {
+ $sub.dataSM('scroll-arrows', $([$(' ')[0], $(' ')[0]])
+ .on({
+ mouseenter: function() {
+ $sub.dataSM('scroll').up = $(this).hasClass('scroll-up');
+ self.menuScroll($sub);
+ },
+ mouseleave: function(e) {
+ self.menuScrollStop($sub);
+ self.menuScrollOut($sub, e);
+ },
+ 'mousewheel DOMMouseScroll': function(e) { e.preventDefault(); }
+ })
+ .insertAfter($sub)
+ );
+ }
+ // bind scroll events and save scroll data for this sub
+ var eNS = '.smartmenus_scroll';
+ $sub.dataSM('scroll', {
+ y: this.cssTransforms3d ? 0 : y - itemH,
+ step: 1,
+ // cache stuff for faster recalcs later
+ itemH: itemH,
+ subH: subH,
+ arrowDownH: this.getHeight($sub.dataSM('scroll-arrows').eq(1))
+ })
+ .on(getEventsNS({
+ 'mouseover': function(e) { self.menuScrollOver($sub, e); },
+ 'mouseout': function(e) { self.menuScrollOut($sub, e); },
+ 'mousewheel DOMMouseScroll': function(e) { self.menuScrollMousewheel($sub, e); }
+ }, eNS))
+ .dataSM('scroll-arrows').css({ top: 'auto', left: '0', marginLeft: x + (parseInt($sub.css('border-left-width')) || 0), width: subW - (parseInt($sub.css('border-left-width')) || 0) - (parseInt($sub.css('border-right-width')) || 0), zIndex: $sub.css('z-index') })
+ .eq(horizontalParent && this.opts.bottomToTopSubMenus ? 0 : 1).show();
+ // when a menu tree is fixed positioned we allow scrolling via touch too
+ // since there is no other way to access such long sub menus if no mouse is present
+ if (this.isFixed()) {
+ var events = {};
+ events[touchEvents ? 'touchstart touchmove touchend' : 'pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp'] = function(e) {
+ self.menuScrollTouch($sub, e);
+ };
+ $sub.css({ 'touch-action': 'none', '-ms-touch-action': 'none' }).on(getEventsNS(events, eNS));
+ }
+ }
+ }
+ $sub.css({ top: 'auto', left: '0', marginLeft: x, marginTop: y - itemH });
+ },
+ menuScroll: function($sub, once, step) {
+ var data = $sub.dataSM('scroll'),
+ $arrows = $sub.dataSM('scroll-arrows'),
+ end = data.up ? data.upEnd : data.downEnd,
+ diff;
+ if (!once && data.momentum) {
+ data.momentum *= 0.92;
+ diff = data.momentum;
+ if (diff < 0.5) {
+ this.menuScrollStop($sub);
+ return;
+ }
+ } else {
+ diff = step || (once || !this.opts.scrollAccelerate ? this.opts.scrollStep : Math.floor(data.step));
+ }
+ // hide any visible deeper level sub menus
+ var level = $sub.dataSM('level');
+ if (this.activatedItems[level - 1] && this.activatedItems[level - 1].dataSM('sub') && this.activatedItems[level - 1].dataSM('sub').is(':visible')) {
+ this.menuHideSubMenus(level - 1);
+ }
+ data.y = data.up && end <= data.y || !data.up && end >= data.y ? data.y : (Math.abs(end - data.y) > diff ? data.y + (data.up ? diff : -diff) : end);
+ $sub.css(this.cssTransforms3d ? { '-webkit-transform': 'translate3d(0, ' + data.y + 'px, 0)', transform: 'translate3d(0, ' + data.y + 'px, 0)' } : { marginTop: data.y });
+ // show opposite arrow if appropriate
+ if (mouse && (data.up && data.y > data.downEnd || !data.up && data.y < data.upEnd)) {
+ $arrows.eq(data.up ? 1 : 0).show();
+ }
+ // if we've reached the end
+ if (data.y == end) {
+ if (mouse) {
+ $arrows.eq(data.up ? 0 : 1).hide();
+ }
+ this.menuScrollStop($sub);
+ } else if (!once) {
+ if (this.opts.scrollAccelerate && data.step < this.opts.scrollStep) {
+ data.step += 0.2;
+ }
+ var self = this;
+ this.scrollTimeout = requestAnimationFrame(function() { self.menuScroll($sub); });
+ }
+ },
+ menuScrollMousewheel: function($sub, e) {
+ if (this.getClosestMenu(e.target) == $sub[0]) {
+ e = e.originalEvent;
+ var up = (e.wheelDelta || -e.detail) > 0;
+ if ($sub.dataSM('scroll-arrows').eq(up ? 0 : 1).is(':visible')) {
+ $sub.dataSM('scroll').up = up;
+ this.menuScroll($sub, true);
+ }
+ }
+ e.preventDefault();
+ },
+ menuScrollOut: function($sub, e) {
+ if (mouse) {
+ if (!/^scroll-(up|down)/.test((e.relatedTarget || '').className) && ($sub[0] != e.relatedTarget && !$.contains($sub[0], e.relatedTarget) || this.getClosestMenu(e.relatedTarget) != $sub[0])) {
+ $sub.dataSM('scroll-arrows').css('visibility', 'hidden');
+ }
+ }
+ },
+ menuScrollOver: function($sub, e) {
+ if (mouse) {
+ if (!/^scroll-(up|down)/.test(e.target.className) && this.getClosestMenu(e.target) == $sub[0]) {
+ this.menuScrollRefreshData($sub);
+ var data = $sub.dataSM('scroll'),
+ upEnd = $(window).scrollTop() - $sub.dataSM('parent-a').offset().top - data.itemH;
+ $sub.dataSM('scroll-arrows').eq(0).css('margin-top', upEnd).end()
+ .eq(1).css('margin-top', upEnd + this.getViewportHeight() - data.arrowDownH).end()
+ .css('visibility', 'visible');
+ }
+ }
+ },
+ menuScrollRefreshData: function($sub) {
+ var data = $sub.dataSM('scroll'),
+ upEnd = $(window).scrollTop() - $sub.dataSM('parent-a').offset().top - data.itemH;
+ if (this.cssTransforms3d) {
+ upEnd = -(parseFloat($sub.css('margin-top')) - upEnd);
+ }
+ $.extend(data, {
+ upEnd: upEnd,
+ downEnd: upEnd + this.getViewportHeight() - data.subH
+ });
+ },
+ menuScrollStop: function($sub) {
+ if (this.scrollTimeout) {
+ cancelAnimationFrame(this.scrollTimeout);
+ this.scrollTimeout = 0;
+ $sub.dataSM('scroll').step = 1;
+ return true;
+ }
+ },
+ menuScrollTouch: function($sub, e) {
+ e = e.originalEvent;
+ if (isTouchEvent(e)) {
+ var touchPoint = this.getTouchPoint(e);
+ // neglect event if we touched a visible deeper level sub menu
+ if (this.getClosestMenu(touchPoint.target) == $sub[0]) {
+ var data = $sub.dataSM('scroll');
+ if (/(start|down)$/i.test(e.type)) {
+ if (this.menuScrollStop($sub)) {
+ // if we were scrolling, just stop and don't activate any link on the first touch
+ e.preventDefault();
+ this.$touchScrollingSub = $sub;
+ } else {
+ this.$touchScrollingSub = null;
+ }
+ // update scroll data since the user might have zoomed, etc.
+ this.menuScrollRefreshData($sub);
+ // extend it with the touch properties
+ $.extend(data, {
+ touchStartY: touchPoint.pageY,
+ touchStartTime: e.timeStamp
+ });
+ } else if (/move$/i.test(e.type)) {
+ var prevY = data.touchY !== undefined ? data.touchY : data.touchStartY;
+ if (prevY !== undefined && prevY != touchPoint.pageY) {
+ this.$touchScrollingSub = $sub;
+ var up = prevY < touchPoint.pageY;
+ // changed direction? reset...
+ if (data.up !== undefined && data.up != up) {
+ $.extend(data, {
+ touchStartY: touchPoint.pageY,
+ touchStartTime: e.timeStamp
+ });
+ }
+ $.extend(data, {
+ up: up,
+ touchY: touchPoint.pageY
+ });
+ this.menuScroll($sub, true, Math.abs(touchPoint.pageY - prevY));
+ }
+ e.preventDefault();
+ } else { // touchend/pointerup
+ if (data.touchY !== undefined) {
+ if (data.momentum = Math.pow(Math.abs(touchPoint.pageY - data.touchStartY) / (e.timeStamp - data.touchStartTime), 2) * 15) {
+ this.menuScrollStop($sub);
+ this.menuScroll($sub);
+ e.preventDefault();
+ }
+ delete data.touchY;
+ }
+ }
+ }
+ }
+ },
+ menuShow: function($sub) {
+ if (!$sub.dataSM('beforefirstshowfired')) {
+ $sub.dataSM('beforefirstshowfired', true);
+ if (this.$root.triggerHandler('beforefirstshow.smapi', $sub[0]) === false) {
+ return;
+ }
+ }
+ if (this.$root.triggerHandler('beforeshow.smapi', $sub[0]) === false) {
+ return;
+ }
+ $sub.dataSM('shown-before', true);
+ if (canAnimate) {
+ $sub.stop(true, true);
+ }
+ if (!$sub.is(':visible')) {
+ // highlight parent item
+ var $a = $sub.dataSM('parent-a'),
+ collapsible = this.isCollapsible();
+ if (this.opts.keepHighlighted || collapsible) {
+ $a.addClass('highlighted');
+ }
+ if (collapsible) {
+ $sub.removeClass('sm-nowrap').css({ zIndex: '', width: 'auto', minWidth: '', maxWidth: '', top: '', left: '', marginLeft: '', marginTop: '' });
+ } else {
+ // set z-index
+ $sub.css('z-index', this.zIndexInc = (this.zIndexInc || this.getStartZIndex()) + 1);
+ // min/max-width fix - no way to rely purely on CSS as all UL's are nested
+ if (this.opts.subMenusMinWidth || this.opts.subMenusMaxWidth) {
+ $sub.css({ width: 'auto', minWidth: '', maxWidth: '' }).addClass('sm-nowrap');
+ if (this.opts.subMenusMinWidth) {
+ $sub.css('min-width', this.opts.subMenusMinWidth);
+ }
+ if (this.opts.subMenusMaxWidth) {
+ var noMaxWidth = this.getWidth($sub);
+ $sub.css('max-width', this.opts.subMenusMaxWidth);
+ if (noMaxWidth > this.getWidth($sub)) {
+ $sub.removeClass('sm-nowrap').css('width', this.opts.subMenusMaxWidth);
+ }
+ }
+ }
+ this.menuPosition($sub);
+ }
+ var complete = function() {
+ // fix: "overflow: hidden;" is not reset on animation complete in jQuery < 1.9.0 in Chrome when global "box-sizing: border-box;" is used
+ $sub.css('overflow', '');
+ };
+ // if sub is collapsible (mobile view)
+ if (collapsible) {
+ if (canAnimate && this.opts.collapsibleShowFunction) {
+ this.opts.collapsibleShowFunction.call(this, $sub, complete);
+ } else {
+ $sub.show(this.opts.collapsibleShowDuration, complete);
+ }
+ } else {
+ if (canAnimate && this.opts.showFunction) {
+ this.opts.showFunction.call(this, $sub, complete);
+ } else {
+ $sub.show(this.opts.showDuration, complete);
+ }
+ }
+ // accessibility
+ $a.attr('aria-expanded', 'true');
+ $sub.attr({
+ 'aria-expanded': 'true',
+ 'aria-hidden': 'false'
+ });
+ // store sub menu in visible array
+ this.visibleSubMenus.push($sub);
+ this.$root.triggerHandler('show.smapi', $sub[0]);
+ }
+ },
+ popupHide: function(noHideTimeout) {
+ if (this.hideTimeout) {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout = 0;
+ }
+ var self = this;
+ this.hideTimeout = setTimeout(function() {
+ self.menuHideAll();
+ }, noHideTimeout ? 1 : this.opts.hideTimeout);
+ },
+ popupShow: function(left, top) {
+ if (!this.opts.isPopup) {
+ alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.');
+ return;
+ }
+ if (this.hideTimeout) {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout = 0;
+ }
+ this.$root.dataSM('shown-before', true);
+ if (canAnimate) {
+ this.$root.stop(true, true);
+ }
+ if (!this.$root.is(':visible')) {
+ this.$root.css({ left: left, top: top });
+ // show menu
+ var self = this,
+ complete = function() {
+ self.$root.css('overflow', '');
+ };
+ if (canAnimate && this.opts.showFunction) {
+ this.opts.showFunction.call(this, this.$root, complete);
+ } else {
+ this.$root.show(this.opts.showDuration, complete);
+ }
+ this.visibleSubMenus[0] = this.$root;
+ }
+ },
+ refresh: function() {
+ this.destroy(true);
+ this.init(true);
+ },
+ rootKeyDown: function(e) {
+ if (!this.handleEvents()) {
+ return;
+ }
+ switch (e.keyCode) {
+ case 27: // reset on Esc
+ var $activeTopItem = this.activatedItems[0];
+ if ($activeTopItem) {
+ this.menuHideAll();
+ $activeTopItem[0].focus();
+ var $sub = $activeTopItem.dataSM('sub');
+ if ($sub) {
+ this.menuHide($sub);
+ }
+ }
+ break;
+ case 32: // activate item's sub on Space
+ var $target = $(e.target);
+ if ($target.is('a') && this.handleItemEvents($target)) {
+ var $sub = $target.dataSM('sub');
+ if ($sub && !$sub.is(':visible')) {
+ this.itemClick({ currentTarget: e.target });
+ e.preventDefault();
+ }
+ }
+ break;
+ }
+ },
+ rootOut: function(e) {
+ if (!this.handleEvents() || this.isTouchMode() || e.target == this.$root[0]) {
+ return;
+ }
+ if (this.hideTimeout) {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout = 0;
+ }
+ if (!this.opts.showOnClick || !this.opts.hideOnClick) {
+ var self = this;
+ this.hideTimeout = setTimeout(function() { self.menuHideAll(); }, this.opts.hideTimeout);
+ }
+ },
+ rootOver: function(e) {
+ if (!this.handleEvents() || this.isTouchMode() || e.target == this.$root[0]) {
+ return;
+ }
+ if (this.hideTimeout) {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout = 0;
+ }
+ },
+ winResize: function(e) {
+ if (!this.handleEvents()) {
+ // we still need to resize the disable overlay if it's visible
+ if (this.$disableOverlay) {
+ var pos = this.$root.offset();
+ this.$disableOverlay.css({
+ top: pos.top,
+ left: pos.left,
+ width: this.$root.outerWidth(),
+ height: this.$root.outerHeight()
+ });
+ }
+ return;
+ }
+ // hide sub menus on resize - on mobile do it only on orientation change
+ if (!('onorientationchange' in window) || e.type == 'orientationchange') {
+ var collapsible = this.isCollapsible();
+ // if it was collapsible before resize and still is, don't do it
+ if (!(this.wasCollapsible && collapsible)) {
+ if (this.activatedItems.length) {
+ this.activatedItems[this.activatedItems.length - 1][0].blur();
+ }
+ this.menuHideAll();
+ }
+ this.wasCollapsible = collapsible;
+ }
+ }
+ }
+ });
+
+ $.fn.dataSM = function(key, val) {
+ if (val) {
+ return this.data(key + '_smartmenus', val);
+ }
+ return this.data(key + '_smartmenus');
+ };
+
+ $.fn.removeDataSM = function(key) {
+ return this.removeData(key + '_smartmenus');
+ };
+
+ $.fn.smartmenus = function(options) {
+ if (typeof options == 'string') {
+ var args = arguments,
+ method = options;
+ Array.prototype.shift.call(args);
+ return this.each(function() {
+ var smartmenus = $(this).data('smartmenus');
+ if (smartmenus && smartmenus[method]) {
+ smartmenus[method].apply(smartmenus, args);
+ }
+ });
+ }
+ return this.each(function() {
+ // [data-sm-options] attribute on the root UL
+ var dataOpts = $(this).data('sm-options') || null;
+ if (dataOpts) {
+ try {
+ dataOpts = eval('(' + dataOpts + ')');
+ } catch(e) {
+ dataOpts = null;
+ alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.');
+ };
+ }
+ new $.SmartMenus(this, $.extend({}, $.fn.smartmenus.defaults, options, dataOpts));
+ });
+ };
+
+ // default settings
+ $.fn.smartmenus.defaults = {
+ isPopup: false, // is this a popup menu (can be shown via the popupShow/popupHide methods) or a permanent menu bar
+ mainMenuSubOffsetX: 0, // pixels offset from default position
+ mainMenuSubOffsetY: 0, // pixels offset from default position
+ subMenusSubOffsetX: 0, // pixels offset from default position
+ subMenusSubOffsetY: 0, // pixels offset from default position
+ subMenusMinWidth: '10em', // min-width for the sub menus (any CSS unit) - if set, the fixed width set in CSS will be ignored
+ subMenusMaxWidth: '20em', // max-width for the sub menus (any CSS unit) - if set, the fixed width set in CSS will be ignored
+ subIndicators: true, // create sub menu indicators - creates a SPAN and inserts it in the A
+ subIndicatorsPos: 'append', // position of the SPAN relative to the menu item content ('append', 'prepend')
+ subIndicatorsText: '', // [optionally] add text in the SPAN (e.g. '+') (you may want to check the CSS for the sub indicators too)
+ scrollStep: 30, // pixels step when scrolling long sub menus that do not fit in the viewport height
+ scrollAccelerate: true, // accelerate scrolling or use a fixed step
+ showTimeout: 250, // timeout before showing the sub menus
+ hideTimeout: 500, // timeout before hiding the sub menus
+ showDuration: 0, // duration for show animation - set to 0 for no animation - matters only if showFunction:null
+ showFunction: null, // custom function to use when showing a sub menu (the default is the jQuery 'show')
+ // don't forget to call complete() at the end of whatever you do
+ // e.g.: function($ul, complete) { $ul.fadeIn(250, complete); }
+ hideDuration: 0, // duration for hide animation - set to 0 for no animation - matters only if hideFunction:null
+ hideFunction: function($ul, complete) { $ul.fadeOut(200, complete); }, // custom function to use when hiding a sub menu (the default is the jQuery 'hide')
+ // don't forget to call complete() at the end of whatever you do
+ // e.g.: function($ul, complete) { $ul.fadeOut(250, complete); }
+ collapsibleShowDuration:0, // duration for show animation for collapsible sub menus - matters only if collapsibleShowFunction:null
+ collapsibleShowFunction:function($ul, complete) { $ul.slideDown(200, complete); }, // custom function to use when showing a collapsible sub menu
+ // (i.e. when mobile styles are used to make the sub menus collapsible)
+ collapsibleHideDuration:0, // duration for hide animation for collapsible sub menus - matters only if collapsibleHideFunction:null
+ collapsibleHideFunction:function($ul, complete) { $ul.slideUp(200, complete); }, // custom function to use when hiding a collapsible sub menu
+ // (i.e. when mobile styles are used to make the sub menus collapsible)
+ showOnClick: false, // show the first-level sub menus onclick instead of onmouseover (i.e. mimic desktop app menus) (matters only for mouse input)
+ hideOnClick: true, // hide the sub menus on click/tap anywhere on the page
+ noMouseOver: false, // disable sub menus activation onmouseover (i.e. behave like in touch mode - use just mouse clicks) (matters only for mouse input)
+ keepInViewport: true, // reposition the sub menus if needed to make sure they always appear inside the viewport
+ keepHighlighted: true, // keep all ancestor items of the current sub menu highlighted (adds the 'highlighted' class to the A's)
+ markCurrentItem: false, // automatically add the 'current' class to the A element of the item linking to the current URL
+ markCurrentTree: true, // add the 'current' class also to the A elements of all ancestor items of the current item
+ rightToLeftSubMenus: false, // right to left display of the sub menus (check the CSS for the sub indicators' position)
+ bottomToTopSubMenus: false, // bottom to top display of the sub menus
+ collapsibleBehavior: 'default' // parent items behavior in collapsible (mobile) view ('default', 'toggle', 'link', 'accordion', 'accordion-toggle', 'accordion-link')
+ // 'default' - first tap on parent item expands sub, second tap loads its link
+ // 'toggle' - the whole parent item acts just as a toggle button for its sub menu (expands/collapses on each tap)
+ // 'link' - the parent item acts as a regular item (first tap loads its link), the sub menu can be expanded only via the +/- button
+ // 'accordion' - like 'default' but on expand also resets any visible sub menus from deeper levels or other branches
+ // 'accordion-toggle' - like 'toggle' but on expand also resets any visible sub menus from deeper levels or other branches
+ // 'accordion-link' - like 'link' but on expand also resets any visible sub menus from deeper levels or other branches
+ };
+
+ return $;
+}));
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.min.js b/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.min.js
new file mode 100644
index 0000000..4f98566
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/jquery.smartmenus.min.js
@@ -0,0 +1,3 @@
+/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$(" ").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$(' ')[0],$(' ')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/demo.css b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/demo.css
new file mode 100644
index 0000000..b5425a5
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/demo.css
@@ -0,0 +1,209 @@
+/* Import "Lora" font from Google fonts */
+@import url(http://fonts.googleapis.com/css?family=Lora:400,700);
+
+html, body {
+ background:#fbf3e8;
+}
+body {
+ margin:0;
+ padding:2em 5px;
+ font:100% Lora,Georgia,'Times New Roman',Times,serif;
+ color:#222;
+}
+#content {
+ padding:0 5px;
+}
+#content p a {
+ word-wrap:break-word;
+}
+h1, h2, h3 {
+ font-family:"PT Sans Narrow","Arial Narrow",Arial,Helvetica,sans-serif;
+ font-weight:bold;
+ color:#1675A1;
+}
+h1 {
+ margin-top:1em;
+ margin-bottom:0.36em;
+ font-size:2.26em;
+}
+h2 {
+ font-size:1.667em;
+}
+h2, h3, h4 {
+ margin-top:0;
+ margin-bottom:0.416em;
+}
+p, ul, dl {
+ margin-bottom:1.5em;
+ line-height:1.625em;
+}
+ul {
+ list-style:circle;
+ padding-left:1.3em;
+}
+a {
+ color:#D23600;
+ text-decoration:none;
+}
+a:hover, a:focus, a:active {
+ color:#980000;
+}
+small {
+ font-size:0.8em;
+}
+#themes {
+ margin:2.5625em 0 2em 0;
+ border:1px solid;
+ border-color:#ebe3d9;
+ border-color:rgba(0,0,0,0.04);
+ padding:2.5%;
+ background:#f4ece1;
+ background:rgba(0,0,0,0.03);
+ -moz-border-radius:8px;
+ -webkit-border-radius:8px;
+ border-radius:8px;
+}
+#themes p:last-child {
+ margin-bottom:0;
+}
+#themes select {
+ display:block;
+ width:100%;
+ height:24px;
+ line-height:24px;
+ background:#fff;
+}
+#themes label {
+ margin-left:0.3em;
+}
+.right-column h2 {
+ margin-top:0;
+}
+.right-column h4 {
+ font-size:1em;
+ font-weight:normal;
+}
+dl.docs-terms dt {
+ margin:0 0 0.5em 0;
+ font-weight:bold;
+}
+dl.docs-terms dd {
+ margin:0 0 1.5em 1.3em;
+}
+dl.docs-arguments {
+ margin:0 0 0 1.3em;
+}
+dl.docs-arguments dt, dl.docs-arguments dd {
+ margin:0;
+}
+pre.sh_sourceCode {
+ border:1px solid;
+ border-color:#e1ddd8;
+ border-color:rgba(0,0,0,0.10);
+ padding:0.5em;
+ background:#f9f5f0;
+ background:rgba(255,255,255,0.5);
+ overflow:auto;
+ min-width:0;
+ font:0.89em Consolas,'Lucida Console',Monaco,'Courier New',Courier,monospace;
+ -moz-border-radius:3px;
+ -webkit-border-radius:3px;
+ border-radius:3px;
+}
+code {
+ background:#f9f5f0;
+ background:rgba(255,255,255,0.5);
+ -moz-border-radius:3px;
+ -webkit-border-radius:3px;
+ border-radius:3px;
+}
+kbd {
+ /* Thanks to: https://github.com/michaelhue/keyscss */
+ display: inline;
+ display: inline-block;
+ min-width: 1em;
+ padding: .2em .3em;
+ font: normal .85em/1 "Arial Unicode MS", "Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif;
+ text-align: center;
+ -moz-border-radius: .3em;
+ -webkit-border-radius: .3em;
+ border-radius: .3em;
+ cursor: default;
+ -moz-user-select: none;
+ -webkit-user-select: none;
+ user-select: none;
+ background: #555;
+ background-image:-moz-linear-gradient(top,rgb(70,70,70) 0%,rgb(90,90,90) 100%);
+ background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgb(70,70,70)),color-stop(100%,rgb(90,90,90)));
+ background-image:-webkit-linear-gradient(top,rgb(70,70,70) 0%,rgb(90,90,90) 100%);
+ background-image:-o-linear-gradient(top,rgb(70,70,70) 0%,rgb(90,90,90) 100%);
+ background-image:-ms-linear-gradient(top,rgb(70,70,70) 0%,rgb(90,90,90) 100%);
+ background-image:linear-gradient(top,rgb(70,70,70) 0%,rgb(90,90,90) 100%);
+ color: #fff;
+ text-shadow: -1px -1px 0 rgb(70, 70, 70);
+ -moz-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
+ -webkit-box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
+ box-shadow: inset 0 0 1px rgb(150, 150, 150), inset 0 -.05em .4em rgb(80, 80, 80), 0 .1em 0 rgb(30, 30, 30), 0 .1em .1em rgba(0, 0, 0, .3);
+}
+.pagination {
+ text-align:center;
+}
+.pagination a {
+ margin:1em 0.5em 0 0.5em;
+ display:inline-block;
+ border:1px solid #dad3c9;
+ border-color:rgba(0,0,0,0.10);
+ padding:0.111em 0.666em;
+ text-decoration:none;
+ color:#1675A1;
+ -moz-border-radius:50px;
+ -webkit-border-radius:50px;
+ border-radius:50px;
+}
+.pagination a:hover, .pagination a:focus, .pagination a:active {
+ color:#d23600;
+}
+.gray-button {
+ display:inline-block;
+ border:1px solid #dad3c9;
+ padding:0.111em 0.666em;
+ text-decoration:none;
+ background:transparent;
+ color:#1675A1;
+ white-space:nowrap;
+ font-family:inherit;
+ font-size:1em;
+ font-weight:bold;
+ line-height:1.61em;
+ -moz-border-radius:50px;
+ -webkit-border-radius:50px;
+ border-radius:50px;
+ cursor:pointer;
+ outline:none;
+}
+.gray-button:hover, .gray-button:focus, .gray-button:active {
+ color:#d23600;
+}
+@media (min-width: 640px) {
+ body {
+ padding:2em;
+ font-size:112.5%;
+ }
+ .columns {
+ overflow:hidden;
+ }
+ .left-column, .right-column {
+ float:left;
+ width:50%;
+ }
+ .right-column {
+ float:right;
+ }
+ #content {
+ margin:0 24px;
+ padding:0;
+ }
+ #themes {
+ margin:2.5625em 24px 2em 24px;
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/readme.txt b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/readme.txt
new file mode 100644
index 0000000..c2f006e
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/readme.txt
@@ -0,0 +1,3 @@
+SmartMenus jQuery DOES NOT depend on any file in this folder.
+
+This folder and its sub folders contain JavaScript and CSS files that are used just for the demo pages' layout and styling.
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.css b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.css
new file mode 100644
index 0000000..9e08d43
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.css
@@ -0,0 +1,110 @@
+pre.sh_sourceCode .sh_keyword {
+ color: #aa0d91;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_type {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_string {
+ color: #c80000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_regexp {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_specialchar {
+ color: #ff00ff;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_comment {
+ color: #007400;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_number {
+ color: #3200ff;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_preproc {
+ color: #008200;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_function {
+ color: #000000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_url {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_date {
+ color: #000000;
+ font-weight: bold;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_time {
+ color: #000000;
+ font-weight: bold;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_file {
+ color: #000000;
+ font-weight: bold;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_ip {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_name {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_variable {
+ color: #000000;
+ font-weight: bold;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_oldfile {
+ color: #ff00ff;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_newfile {
+ color: #008000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_difflines {
+ color: #000000;
+ font-weight: bold;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_selector {
+ color: #000000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_property {
+ color: #c80000;
+ font-weight: normal;
+ font-style: normal;
+}
+pre.sh_sourceCode .sh_value {
+ color: #3200ff;
+ font-weight: normal;
+ font-style: normal;
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.js b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.js
new file mode 100644
index 0000000..ecd5bfe
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/libs/demo-assets/shjs/shjs.js
@@ -0,0 +1,20 @@
+/* Copyright (C) 2007, 2008 gnombat@users.sourceforge.net */
+/* License: http://shjs.sourceforge.net/doc/gplv3.html */
+
+if(!this.sh_languages){this.sh_languages={}}var sh_requests={};function sh_isEmailAddress(a){if(/^mailto:/.test(a)){return false}return a.indexOf("@")!==-1}function sh_setHref(b,c,d){var a=d.substring(b[c-2].pos,b[c-1].pos);if(a.length>=2&&a.charAt(0)==="<"&&a.charAt(a.length-1)===">"){a=a.substr(1,a.length-2)}if(sh_isEmailAddress(a)){a="mailto:"+a}b[c-2].node.href=a}function sh_konquerorExec(b){var a=[""];a.index=b.length;a.input=b;return a}function sh_highlightString(B,o){if(/Konqueror/.test(navigator.userAgent)){if(!o.konquered){for(var F=0;FI){x(g.substring(I,E.index),null)}var e=O[u];var J=e[1];var b;if(J instanceof Array){for(var L=0;L0){var e=b.split(" ");for(var c=0;c0){a.push(e[c])}}}return a}function sh_addClass(c,a){var d=sh_getClasses(c);for(var b=0;b element with class="'+h+'", but no such language exists'}}break}}}};
+
+
+// JavaScript syntax module
+if(!this.sh_languages){this.sh_languages={}}sh_languages.javascript=[[[/\/\/\//g,"sh_comment",1],[/\/\//g,"sh_comment",7],[/\/\*\*/g,"sh_comment",8],[/\/\*/g,"sh_comment",9],[/\b(?:abstract|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|final|finally|for|function|goto|if|implements|in|instanceof|interface|native|new|null|private|protected|public|return|static|super|switch|synchronized|throw|throws|this|transient|true|try|typeof|var|volatile|while|with)\b/g,"sh_keyword",-1],[/(\+\+|--|\)|\])(\s*)(\/=?(?![*\/]))/g,["sh_symbol","sh_normal","sh_symbol"],-1],[/(0x[A-Fa-f0-9]+|(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?)(\s*)(\/(?![*\/]))/g,["sh_number","sh_normal","sh_symbol"],-1],[/([A-Za-z$_][A-Za-z0-9$_]*\s*)(\/=?(?![*\/]))/g,["sh_normal","sh_symbol"],-1],[/\/(?:\\.|[^*\\\/])(?:\\.|[^\\\/])*\/[gim]*/g,"sh_regexp",-1],[/\b[+-]?(?:(?:0x[A-Fa-f0-9]+)|(?:(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?))u?(?:(?:int(?:8|16|32|64))|L)?\b/g,"sh_number",-1],[/"/g,"sh_string",10],[/'/g,"sh_string",11],[/~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g,"sh_symbol",-1],[/\{|\}/g,"sh_cbracket",-1],[/\b(?:Math|Infinity|NaN|undefined|arguments)\b/g,"sh_predef_var",-1],[/\b(?:Array|Boolean|Date|Error|EvalError|Function|Number|Object|RangeError|ReferenceError|RegExp|String|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt)\b/g,"sh_predef_func",-1],[/\b(?:applicationCache|closed|Components|content|controllers|crypto|defaultStatus|dialogArguments|directories|document|frameElement|frames|fullScreen|globalStorage|history|innerHeight|innerWidth|length|location|locationbar|menubar|name|navigator|opener|outerHeight|outerWidth|pageXOffset|pageYOffset|parent|personalbar|pkcs11|returnValue|screen|availTop|availLeft|availHeight|availWidth|colorDepth|height|left|pixelDepth|top|width|screenX|screenY|scrollbars|scrollMaxX|scrollMaxY|scrollX|scrollY|self|sessionStorage|sidebar|status|statusbar|toolbar|top|window)\b/g,"sh_predef_var",-1],[/\b(?:alert|addEventListener|atob|back|blur|btoa|captureEvents|clearInterval|clearTimeout|close|confirm|dump|escape|find|focus|forward|getAttention|getComputedStyle|getSelection|home|moveBy|moveTo|open|openDialog|postMessage|print|prompt|releaseEvents|removeEventListener|resizeBy|resizeTo|scroll|scrollBy|scrollByLines|scrollByPages|scrollTo|setInterval|setTimeout|showModalDialog|sizeToContent|stop|unescape|updateCommands|onabort|onbeforeunload|onblur|onchange|onclick|onclose|oncontextmenu|ondragdrop|onerror|onfocus|onkeydown|onkeypress|onkeyup|onload|onmousedown|onmousemove|onmouseout|onmouseover|onmouseup|onpaint|onreset|onresize|onscroll|onselect|onsubmit|onunload)\b/g,"sh_predef_func",-1],[/(?:[A-Za-z]|_)[A-Za-z0-9_]*(?=[ \t]*\()/g,"sh_function",-1]],[[/$/g,null,-2],[/(?:)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,"sh_url",-1],[/<\?xml/g,"sh_preproc",2,1],[//g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,"sh_keyword",6,1],[/&(?:[A-Za-z0-9]+);/g,"sh_preproc",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,"sh_keyword",-1],[/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,"sh_keyword",6,1],[/@[A-Za-z]+/g,"sh_type",-1],[/(?:TODO|FIXME|BUG)(?:[:]?)/g,"sh_todo",-1]],[[/\?>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",3]],[[/\\(?:\\|")/g,null,-1],[/"/g,"sh_string",-2]],[[/>/g,"sh_preproc",-2],[/([^=" \t>]+)([ \t]*)(=?)/g,["sh_type","sh_normal","sh_symbol"],-1],[/"/g,"sh_string",3]],[[/-->/g,"sh_comment",-2],[//g,"sh_comment",-2],[//g,"sh_comment",-2],[//g,"sh_comment",-2],[/\
+\
+\
+ sm-blue \
+ sm-clean \
+ sm-mint \
+ sm-simple \
+ \
+ Customize "sm-blue " on Codepen \
+ \
+ Horizontal full width main menu \
+ \
+ justified Note: Some themes may need minor changes like tweaking the main menu sub indicators\' position, etc. \
+ \
+ Horizontal main menu \
+ \
+ left \
+ center \
+ right \
+ \
+ Vertical main menu \
+ Right-to-left \
+ \
+ Source code \
+ CSS: \
+ <!-- SmartMenus core CSS (required) -->\n\
+<link href="../css/sm-core-css.css" rel="stylesheet" type="text/css" />\n\
+\n\
+<!-- "sm-blue " menu theme (optional, you can use your own CSS, too) -->\n\
+<link href="../css/sm-blue /sm-blue .css" rel="stylesheet" type="text/css" />\
+\n\n\
+<!-- #main-menu config - instance specific stuff not covered in the theme -->\n\
+<!-- You could put this in an external stylesheet (e.g. where the rest of your page styles are) -->\n\
+<style type="text/css">\n </style>\
+ \
+ HTML: \
+ ' + (window.addonHTMLBefore ? window.addonHTMLBefore : '') + '\<nav id="main-nav">\n\
+ <ul id="main-menu" class="' + $menu[0].className + ' ">\n\
+ ...\n\
+ </ul>\n\
+</nav>' + (window.addonHTMLAfter ? window.addonHTMLAfter : '') + ' \
+ JavaScript: \
+ <!-- jQuery -->\n\
+<script type="text/javascript" src="../libs/jquery/jquery.js"></script>\n\
+\n\
+<!-- SmartMenus jQuery plugin -->\n\
+<script type="text/javascript" src="../jquery.smartmenus.js"></script>\n' + (window.addonScriptSrc ? $.map(window.addonScriptSrc, function(arr) {
+ return '\n<!-- ' + arr[0] + ' -->\n<script type="text/javascript" src="' + arr[1] + '"></script>\n';
+}).join('') : '') + '\
+\n\
+<!-- SmartMenus jQuery init -->\n\
+<script type="text/javascript">\n\
+ $(function() {\n\
+ $(\'#main-menu\').smartmenus({\n\
+ subMenusSubOffsetX: 1,\n\
+ subMenusSubOffsetY: -8\n\
+ } );\n' + (window.addonScriptInit ? window.addonScriptInit : '') + '\
+ });\n\
+</script> \
+ \
+');
+
+ // hide sub options
+ $('#themes-horizontal-align-holder').hide();
+
+ // load additional themes
+ $('#themes-classes option').not(':first').each(function() {
+ var className = $(this).attr('value');
+ $(' ').appendTo('head');
+ });
+
+ // update Respond.js to parse all themes loaded dynamically
+ if (window.respond) {
+ respond.update();
+ }
+
+ // define the styles for the different main menu configurations
+ var mainMenuConfigs = {
+ horizontalLeft: ' @media (min-width: 768px) {\n\
+ #main-nav {\n\
+ line-height: 0;\n\
+ text-align: left;\n\
+ }\n\
+ #main-menu {\n\
+ display: inline-block;\n\
+ }\n\
+ }\n',
+ horizontalCenter: ' @media (min-width: 768px) {\n\
+ #main-nav {\n\
+ line-height: 0;\n\
+ text-align: center;\n\
+ }\n\
+ #main-menu {\n\
+ display: inline-block;\n\
+ }\n\
+ }\n',
+ horizontalRight: ' @media (min-width: 768px) {\n\
+ #main-nav {\n\
+ line-height: 0;\n\
+ text-align: right;\n\
+ }\n\
+ #main-menu {\n\
+ display: inline-block;\n\
+ }\n\
+ }\n',
+ horizontalFullwidthLeft: '',
+ horizontalFullwidthJustified: ' @media (min-width: 768px) {\n\
+ #main-menu > li {\n\
+ float: none;\n\
+ display: table-cell;\n\
+ width: 1%;\n\
+ text-align: center;\n\
+ }\n\
+ }\n',
+ vertical: ' @media (min-width: 768px) {\n\
+ #main-menu {\n\
+ float: left;\n\
+ width: 12em;\n\
+ }\n\
+ }\n',
+ verticalRTL: ' @media (min-width: 768px) {\n\
+ #main-menu {\n\
+ float: right;\n\
+ width: 12em;\n\
+ }\n\
+ }\n'
+ };
+
+ // hook theme switcher
+ $('#themes-classes, #themes-horizontal, #themes-horizontal-align-left, #themes-horizontal-align-center, #themes-horizontal-align-right, #themes-horizontal-fullwidth, #themes-horizontal-fullwidth-align-justified, #themes-vertical, #themes-rtl').change(function() {
+ var $select = $('#themes-classes'),
+ $mainMenuCSS = $('#main-menu-css'),
+ mainMenuCSS,
+ className = $select.val(),
+ horizontal = $('#themes-horizontal')[0].checked,
+ horizontalLeft = horizontal && $('#themes-horizontal-align-left')[0].checked,
+ horizontalCenter = horizontal && $('#themes-horizontal-align-center')[0].checked,
+ horizontalRight = horizontal && $('#themes-horizontal-align-right')[0].checked,
+ horizontalFullwidth = $('#themes-horizontal-fullwidth')[0].checked,
+ horizontalFullwidthLeft = horizontalFullwidth && !$('#themes-horizontal-fullwidth-align-justified')[0].checked,
+ horizontalFullwidthJustified = horizontalFullwidth && $('#themes-horizontal-fullwidth-align-justified')[0].checked,
+ vertical = $('#themes-vertical')[0].checked,
+ rtl = $('#themes-rtl')[0].checked,
+ $optionElm = $select.children().eq($select[0].selectedIndex),
+ initOptions = $optionElm.data('init-options' + (vertical ? '-vertical' : '')),
+ mainMenuClass = 'sm ' + (rtl ? 'sm-rtl ' : '') + (vertical ? 'sm-vertical ' : '') + className;
+
+ if ($mainMenuCSS.length) {
+ $mainMenuCSS.remove();
+ $mainMenuCSS = null;
+ } else {
+ // remove the inline style on init
+ $('style').eq(0).remove();
+ }
+ mainMenuCSS = (horizontalLeft ? mainMenuConfigs['horizontalLeft'] :
+ horizontalCenter ? mainMenuConfigs['horizontalCenter'] :
+ horizontalRight ? mainMenuConfigs['horizontalRight'] :
+ horizontalFullwidthLeft ? mainMenuConfigs['horizontalFullwidthLeft'] :
+ horizontalFullwidthJustified ? mainMenuConfigs['horizontalFullwidthJustified'] :
+ // vertical
+ !rtl ? mainMenuConfigs['vertical'] : mainMenuConfigs['verticalRTL']);
+ $('').appendTo('head');
+
+ // show/hide sub options
+ $('#themes-horizontal-align-holder')[horizontal ? 'slideDown' : 'slideUp'](250);
+ $('#themes-horizontal-fullwidth-align-holder')[horizontalFullwidth ? 'slideDown' : 'slideUp'](250);
+
+ // switch #main-menu theme
+ $menu.smartmenus('destroy')[0].className = mainMenuClass;
+ $menu.smartmenus(eval('(' + initOptions + ')'));
+ $('html, body').css('background', $optionElm.data('page-bg'));
+
+ // update code samples
+ $('span.themes-code-class span, #themes-codepen-theme-name').text(className);
+ $('#themes-codepen-url').attr('href', $optionElm.data('codepen-url'));
+ $('span.themes-code-main-class span').text(mainMenuClass);
+ $('span.themes-code-main-menu-css').text(mainMenuCSS);
+ $('span.themes-code-main-menu-css-holder')[mainMenuCSS ? 'show' : 'hide']();
+ $('span.themes-code-init-options').text(initOptions);
+
+ // display horizontal justified note if needed
+ if ($(this).is('#themes-horizontal-fullwidth-align-justified')) {
+ $('label[for="themes-horizontal-fullwidth-align-justified"] small')[this.checked ? 'show' : 'hide']();
+ }
+
+ // call any addon init code
+ if (window.addonScriptInit) {
+ try { eval(window.addonScriptInit); } catch(e) {};
+ }
+ });
+
+ // init SHJS syntax highlighter
+ $(' ').appendTo('head');
+ sh_highlightDocument();
+
+});
+
+// load SHJS syntax highlighter synchronously
+document.write(' ');
\ No newline at end of file
diff --git a/frontend/web/themes/sport/plugins/smartmenus/libs/jquery/jquery.js b/frontend/web/themes/sport/plugins/smartmenus/libs/jquery/jquery.js
new file mode 100644
index 0000000..b0ecadd
--- /dev/null
+++ b/frontend/web/themes/sport/plugins/smartmenus/libs/jquery/jquery.js
@@ -0,0 +1,5 @@
+/*! jQuery v1.12.4 | (c) jQuery Foundation | jquery.org/license */
+!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="1.12.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:g,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(n.isPlainObject(c)||(b=n.isArray(c)))?(b?(b=!1,f=a&&n.isArray(a)?a:[]):f=a&&n.isPlainObject(a)?a:{},g[d]=n.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray||function(a){return"array"===n.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;try{if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(!l.ownFirst)for(b in a)return k.call(a,b);for(b in a);return void 0===b||k.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?i[j.call(a)]||"object":typeof a},globalEval:function(b){b&&n.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):g.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(h)return h.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(f=a[b],b=a,a=f),n.isFunction(a)?(c=e.call(arguments,2),d=function(){return a.apply(b||this,c.concat(e.call(arguments)))},d.guid=a.guid=a.guid||n.guid++,d):void 0},now:function(){return+new Date},support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ga(),z=ga(),A=ga(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(function(a){o.appendChild(a).innerHTML=" ",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ia(function(a){var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fa.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fa.selectors={cacheLength:50,createPseudo:ha,match:W,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fa.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ba,ca).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fa.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(P," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Y.test(a.nodeName)},input:function(a){return X.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function ra(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j,k=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[ra(sa(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML=" ","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML=" ",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return n.inArray(a,b)>-1!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;e>b;b++)if(n.contains(d[b],this))return!0}));for(b=0;e>b;b++)n.find(a,d[b],c);return c=this.pushStack(e>1?n.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}if(f=d.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return A.find(a);this.length=1,this[0]=f}return this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(a){var b,c=n(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(n.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=w.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?n.inArray(this[0],n(a)):n.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(a.firstChild)},contents:function(a){return n.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(E[a]||(e=n.uniqueSort(e)),D.test(a)&&(e=e.reverse())),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=!0,c||j.disable(),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().progress(c.notify).done(c.resolve).fail(c.reject):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.addEventListener?(d.removeEventListener("DOMContentLoaded",K),a.removeEventListener("load",K)):(d.detachEvent("onreadystatechange",K),a.detachEvent("onload",K))}function K(){(d.addEventListener||"load"===a.event.type||"complete"===d.readyState)&&(J(),n.ready())}n.ready.promise=function(b){if(!I)if(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll)a.setTimeout(n.ready);else if(d.addEventListener)d.addEventListener("DOMContentLoaded",K),a.addEventListener("load",K);else{d.attachEvent("onreadystatechange",K),a.attachEvent("onload",K);var c=!1;try{c=null==a.frameElement&&d.documentElement}catch(e){}c&&c.doScroll&&!function f(){if(!n.isReady){try{c.doScroll("left")}catch(b){return a.setTimeout(f,50)}J(),n.ready()}}()}return I.promise(b)},n.ready.promise();var L;for(L in n(l))break;l.ownFirst="0"===L,l.inlineBlockNeedsLayout=!1,n(function(){var a,b,c,e;c=d.getElementsByTagName("body")[0],c&&c.style&&(b=d.createElement("div"),e=d.createElement("div"),e.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(e).appendChild(b),"undefined"!=typeof b.style.zoom&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",l.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(e))}),function(){var a=d.createElement("div");l.deleteExpando=!0;try{delete a.test}catch(b){l.deleteExpando=!1}a=null}();var M=function(a){var b=n.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b},N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(O,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}n.data(a,b,c)}else c=void 0;
+}return c}function Q(a){var b;for(b in a)if(("data"!==b||!n.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function R(a,b,d,e){if(M(a)){var f,g,h=n.expando,i=a.nodeType,j=i?n.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||n.guid++:h),j[k]||(j[k]=i?{}:{toJSON:n.noop}),"object"!=typeof b&&"function"!=typeof b||(e?j[k]=n.extend(j[k],b):j[k].data=n.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[n.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[n.camelCase(b)])):f=g,f}}function S(a,b,c){if(M(a)){var d,e,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){n.isArray(b)?b=b.concat(n.map(b,n.camelCase)):b in d?b=[b]:(b=n.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!Q(d):!n.isEmptyObject(d))return}(c||(delete g[h].data,Q(g[h])))&&(f?n.cleanData([a],!0):l.deleteExpando||g!=g.window?delete g[h]:g[h]=void 0)}}}n.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?n.cache[a[n.expando]]:a[n.expando],!!a&&!Q(a)},data:function(a,b,c){return R(a,b,c)},removeData:function(a,b){return S(a,b)},_data:function(a,b,c){return R(a,b,c,!0)},_removeData:function(a,b){return S(a,b,!0)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=n.data(f),1===f.nodeType&&!n._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));n._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){n.data(this,a)}):arguments.length>1?this.each(function(){n.data(this,a,b)}):f?P(f,a,n.data(f,a)):void 0},removeData:function(a){return this.each(function(){n.removeData(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=n._data(a,b),c&&(!d||n.isArray(c)?d=n._data(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return n._data(a,c)||n._data(a,c,{empty:n.Callbacks("once memory").add(function(){n._removeData(a,b+"queue"),n._removeData(a,c)})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthh;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},Z=/^(?:checkbox|radio)$/i,$=/<([\w:-]+)/,_=/^$|\/(?:java|ecma)script/i,aa=/^\s+/,ba="abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";function ca(a){var b=ba.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}!function(){var a=d.createElement("div"),b=d.createDocumentFragment(),c=d.createElement("input");a.innerHTML=" a ",l.leadingWhitespace=3===a.firstChild.nodeType,l.tbody=!a.getElementsByTagName("tbody").length,l.htmlSerialize=!!a.getElementsByTagName("link").length,l.html5Clone="<:nav>"!==d.createElement("nav").cloneNode(!0).outerHTML,c.type="checkbox",c.checked=!0,b.appendChild(c),l.appendChecked=c.checked,a.innerHTML="",l.noCloneChecked=!!a.cloneNode(!0).lastChild.defaultValue,b.appendChild(a),c=d.createElement("input"),c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),a.appendChild(c),l.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,l.noCloneEvent=!!a.addEventListener,a[n.expando]=1,l.attributes=!a.getAttribute(n.expando)}();var da={option:[1,""," "],legend:[1,""," "],area:[1,""," "],param:[1,""," "],thead:[1,""],tr:[2,""],col:[2,""],td:[3,""],_default:l.htmlSerialize?[0,"",""]:[1,"X","
"]};da.optgroup=da.option,da.tbody=da.tfoot=da.colgroup=da.caption=da.thead,da.th=da.td;function ea(a,b){var c,d,e=0,f="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||n.nodeName(d,b)?f.push(d):n.merge(f,ea(d,b));return void 0===b||b&&n.nodeName(a,b)?n.merge([a],f):f}function fa(a,b){for(var c,d=0;null!=(c=a[d]);d++)n._data(c,"globalEval",!b||n._data(b[d],"globalEval"))}var ga=/<|?\w+;/,ha=/r;r++)if(g=a[r],g||0===g)if("object"===n.type(g))n.merge(q,g.nodeType?[g]:g);else if(ga.test(g)){i=i||p.appendChild(b.createElement("div")),j=($.exec(g)||["",""])[1].toLowerCase(),m=da[j]||da._default,i.innerHTML=m[1]+n.htmlPrefilter(g)+m[2],f=m[0];while(f--)i=i.lastChild;if(!l.leadingWhitespace&&aa.test(g)&&q.push(b.createTextNode(aa.exec(g)[0])),!l.tbody){g="table"!==j||ha.test(g)?""!==m[1]||ha.test(g)?0:i:i.firstChild,f=g&&g.childNodes.length;while(f--)n.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k)}n.merge(q,i.childNodes),i.textContent="";while(i.firstChild)i.removeChild(i.firstChild);i=p.lastChild}else q.push(b.createTextNode(g));i&&p.removeChild(i),l.appendChecked||n.grep(ea(q,"input"),ia),r=0;while(g=q[r++])if(d&&n.inArray(g,d)>-1)e&&e.push(g);else if(h=n.contains(g.ownerDocument,g),i=ea(p.appendChild(g),"script"),h&&fa(i),c){f=0;while(g=i[f++])_.test(g.type||"")&&c.push(g)}return i=null,p}!function(){var b,c,e=d.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(l[b]=c in a)||(e.setAttribute(c,"t"),l[b]=e.attributes[c].expando===!1);e=null}();var ka=/^(?:input|select|textarea)$/i,la=/^key/,ma=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,na=/^(?:focusinfocus|focusoutblur)$/,oa=/^([^.]*)(?:\.(.+)|)/;function pa(){return!0}function qa(){return!1}function ra(){try{return d.activeElement}catch(a){}}function sa(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)sa(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=qa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=n.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return"undefined"==typeof n||a&&n.event.triggered===a.type?void 0:n.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(G)||[""],h=b.length;while(h--)f=oa.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=n.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=n.event.special[o]||{},l=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},i),(m=g[o])||(m=g[o]=[],m.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,l):m.push(l),n.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n.hasData(a)&&n._data(a);if(r&&(k=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=oa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=m.length;while(f--)g=m[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(m.splice(f,1),g.selector&&m.delegateCount--,l.remove&&l.remove.call(a,g));i&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(k)&&(delete r.handle,n._removeData(a,"events"))}},trigger:function(b,c,e,f){var g,h,i,j,l,m,o,p=[e||d],q=k.call(b,"type")?b.type:b,r=k.call(b,"namespace")?b.namespace.split("."):[];if(i=m=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!na.test(q+n.event.triggered)&&(q.indexOf(".")>-1&&(r=q.split("."),q=r.shift(),r.sort()),h=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=r.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:n.makeArray(c,[b]),l=n.event.special[q]||{},f||!l.trigger||l.trigger.apply(e,c)!==!1)){if(!f&&!l.noBubble&&!n.isWindow(e)){for(j=l.delegateType||q,na.test(j+q)||(i=i.parentNode);i;i=i.parentNode)p.push(i),m=i;m===(e.ownerDocument||d)&&p.push(m.defaultView||m.parentWindow||a)}o=0;while((i=p[o++])&&!b.isPropagationStopped())b.type=o>1?j:l.bindType||q,g=(n._data(i,"events")||{})[b.type]&&n._data(i,"handle"),g&&g.apply(i,c),g=h&&i[h],g&&g.apply&&M(i)&&(b.result=g.apply(i,c),b.result===!1&&b.preventDefault());if(b.type=q,!f&&!b.isDefaultPrevented()&&(!l._default||l._default.apply(p.pop(),c)===!1)&&M(e)&&h&&e[q]&&!n.isWindow(e)){m=e[h],m&&(e[h]=null),n.event.triggered=q;try{e[q]()}catch(s){}n.event.triggered=void 0,m&&(e[h]=m)}return b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(n._data(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())a.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h ]","i"),va=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,wa=/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ = Yii::$app->formatter->asHtml($product->description, [
+ 'Attr.AllowedRel' => array('nofollow'),
+ 'HTML.SafeObject' => true,
+ 'Output.FlashCompat' => true,
+ 'HTML.SafeIframe' => true,
+ 'URI.SafeIframeRegexp'=>'%^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)%',
+ ]) ?>
+
+
+
+ = \kartik\detail\DetailView::widget([
+ 'model' => $product,
+ 'hAlign' => 'left',
+ 'attributes' => $characteristics,
+ 'bordered' => false,
+ 'striped' => false,
+ 'options' => [
+ 'class' => 'char_detail'
+ ],
+ ]) ?>
+
+
+
+
+
+
+
+
+
+ ['method' => 'POST', 'timeout' => 7000]]); ?>
+ = \yii\grid\GridView::widget([
+ 'dataProvider' => $reviewProvider,
+ 'summary' => '',
+ 'showHeader' => false,
+ 'emptyText' => Yii::t('shop_public', 'There are no reviews. Be the first.'),
+ 'columns' => [
+ [
+ 'attribute' => 'vote',
+ 'format' => 'raw',
+ 'value' => function(\app\modules\shop\entities\product\Review $review)
+ {
+ $starWidget = \kartik\rating\StarRating::widget([
+ 'name' => 'rating_' . $review->id,
+ 'value' => $review->vote,
+ 'pluginOptions' => [
+ 'displayOnly' => true,
+ 'size' => 'xs',
+ ]
+ ]);
+
+ return '' . $starWidget . ' ' . date('d-m-Y h:i', $review->created_at);
+ },
+ 'options' => ['style' => 'width: 150px;'],
+ ],
+ [
+ 'attribute' => 'text',
+ 'format' => 'raw',
+ 'value' => function(\app\modules\shop\entities\product\Review $review)
+ {
+ return '' . $review->user->username . ' ' . nl2br(Html::encode($review->text));
+ }
+ ]
+ ],
+ 'tableOptions' => ['class' => 'table'],
+ ]) ?>
+
+
+
+
= Yii::t('shop_public', 'Write a review') ?>
+
+ user->isGuest): ?>
+
+
+
+ = Yii::t('shop_public', 'Please {login} for writing a review.', ['login' => Html::a(Yii::t('shop_public', 'Log In'), ['/users/auth/login'])]) ?>
+
+
+
+
+
+ 'form-review']) ?>
+
+ = $form->field($reviewForm, 'vote')->widget(\kartik\rating\StarRating::classname(), [
+ 'pluginOptions' => [
+ 'size'=>'sm',
+ 'min' => 0,
+ 'max' => 5,
+ 'step' => 1,
+ 'showClear' => false,
+ 'showCaption' => false,
+
+ ]
+ ]) ?>
+ = $form->field($reviewForm, 'text')->textarea(['rows' => 5]) ?>
+
+
+ = Html::submitButton(Yii::t('shop_public', 'Send'), ['class' => 'btn btn-primary btn-lg btn-block', 'style' => 'width:150px']) ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+registerJs($js, $this::POS_READY);
+?>
\ No newline at end of file
diff --git a/frontend/web/themes/sport/template/modules/shop/views/catalog/search.php b/frontend/web/themes/sport/template/modules/shop/views/catalog/search.php
new file mode 100644
index 0000000..9f0b8f2
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/views/catalog/search.php
@@ -0,0 +1,35 @@
+title = Yii::t('shop_public', 'Search');
+
+$this->params['breadcrumbs'][] = $this->title;
+?>
+
+
+
+ = Yii::t('shop_public', 'Found in categories') ?>
+
+
+
+ categories as $path): ?>
+ = Breadcrumbs::widget([
+ 'links' => isset($path) ? $path : [],
+ ]) ?>
+
+
+
+
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/views/catalog/tag.php b/frontend/web/themes/sport/template/modules/shop/views/catalog/tag.php
new file mode 100644
index 0000000..89bdf24
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/views/catalog/tag.php
@@ -0,0 +1,24 @@
+title = $tag->name;
+
+//$this->registerMetaTag(['name' =>'description', 'content' => $brand->meta->description]);
+//$this->registerMetaTag(['name' =>'keywords', 'content' => $brand->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+$this->params['breadcrumbs'][] = $tag->name;
+?>
+
+= Html::encode($tag->name) ?>
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/views/catalog/type.php b/frontend/web/themes/sport/template/modules/shop/views/catalog/type.php
new file mode 100644
index 0000000..cf761f6
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/views/catalog/type.php
@@ -0,0 +1,24 @@
+title = $type->getSeoTitle();
+
+$this->registerMetaTag(['name' =>'description', 'content' => $type->meta->description]);
+$this->registerMetaTag(['name' =>'keywords', 'content' => $type->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+$this->params['breadcrumbs'][] = $type->name;
+?>
+
+= Html::encode($type->name) ?>
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/views/checkout/index.php b/frontend/web/themes/sport/template/modules/shop/views/checkout/index.php
new file mode 100644
index 0000000..cfa3fb2
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/views/checkout/index.php
@@ -0,0 +1,411 @@
+title = Yii::t('shop_public', 'Checkout Form');
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['/shop/catalog/index']];
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Shopping Cart'), 'url' => ['/shop/cart/index']];
+$this->params['breadcrumbs'][] = $this->title;
+
+$profilesC = [];
+// Prepare Customer Profiles Json
+foreach ($customerProfiles as $customerProfile)
+{
+ $array = Json::decode($customerProfile->company, true);
+ $profilesC[$customerProfile->id] = array_merge([
+ 'name' => $customerProfile->name,
+ 'phone' => $customerProfile->phone,
+ ], is_array($array) ? $array : []);
+}
+$jsArrayC = Json::encode($profilesC);
+
+$profilesD = [];
+// Prepare Delivery Profiles Json
+foreach ($deliveryProfiles as $deliveryProfile)
+{
+ $profilesD[$deliveryProfile->id] = [
+ 'method_id' => $deliveryProfile->method_id,
+ 'post_index' => $deliveryProfile->post_index,
+ 'post_address' => $deliveryProfile->post_address,
+ ];
+}
+$jsArrayD = Json::encode($profilesD);
+
+$deleteCustomerProfileUrl = Url::to(['/shop/checkout/delete-customer-profile']);
+$deleteDeliveryProfileUrl = Url::to(['/shop/checkout/delete-delivery-profile']);
+$checkPromoUrl = Url::to(['/shop/checkout/check']);
+
+$js = <<registerJs($js, $this::POS_HEAD);
+
+$js2 = <<registerJs($js2, $this::POS_READY);
+$cartTotal = $cart->getCost();
+$cartPay = $cart->getCalculatedCost();
+$cartDiscount = $cartTotal - $cartPay;
+?>
+
+
= Html::encode($this->title) ?>
+
+
+
+
+
+ = Yii::t('shop_public', 'Product Name') ?>
+ = Yii::t('shop_public', 'Modification') ?>
+ = Yii::t('shop_public', 'Quantity') ?>
+ = Yii::t('shop_public', 'Price') ?>
+ = Yii::t('shop_public', 'Total') ?>
+
+
+
+ getItems() as $item): ?>
+ getProduct();
+ $modification = $item->getModification();
+ $url = Url::to(['/shop/catalog/product', 'id' => $product->id]);
+ ?>
+
+
+ = Html::encode($product->name) ?>
+
+
+
+ = Html::encode($modification->name) ?>
+
+
+
+ = $item->getQuantity() ?>
+
+ = PriceHelper::format($item->getCalculatedPrice()) ?>
+ = PriceHelper::format($item->getCalculatedCost()) ?>
+
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Total') ?>
+ = PriceHelper::format($cartTotal) ?>
+
+
+ = Yii::t('shop_public', 'Your discount') ?>
+ = PriceHelper::format($cartDiscount) ?>
+
+
+ = Yii::t('shop_public', 'To Pay') ?>
+ = PriceHelper::format($cartPay) ?>
+
+
+ = Yii::t('shop_public', 'Weight') ?>
+ = WeightHelper::format($cart->getWeight()) ?>
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Promo Code') ?>
+
+
+
+
+
+
+ = $form->field($model, 'promo',[
+ 'template' => '{label}
',
+ ])->textInput(['maxlength' => true])->label(Yii::t('shop_public', 'Promo Code')) ?>
+
+
+ = Yii::t('shop_public', 'Discount') ?>:
+
+ = Yii::t('shop_public', 'Use count') ?>:
+
+
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Customer') ?>
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Customer Profile') ?>
+ = Html::dropDownList('customer_profile', null, \yii\helpers\ArrayHelper::map($customerProfiles, 'id', 'title'), [
+ 'prompt' => Yii::t('shop_public', '--- Select ---'),
+ 'id' => 'customer_profile',
+ ]); ?>
+ = Html::a(Yii::t('shop_public', 'Delete Profile'), '#', [
+ 'class' => 'text-danger',
+ 'onclick' => 'return deleteCustomerProfile();'
+ ]) ?>
+
+
+ = $form->field($model->customer, 'phone')->textInput() ?>
+ = $form->field($model->customer, 'name')->textInput() ?>
+
+ = $form->field($model->customer, 'is_company')->checkbox([
+ 'style' => 'vertical-align: middle; margin-top:3px; padding:0;',
+ 'onclick' => 'if (this.checked) {$("#customer_company").show();} else {$("#customer_company").hide();}',
+ ]) ?>
+
+
+
+
+ = $form->field($model->customer, 'company')->textInput() ?>
+
+
+ = $form->field($model->customer, 'address')->textInput() ?>
+
+
+
+
+
+ = $form->field($model->customer, 'director')->textInput() ?>
+
+
+ = $form->field($model->customer, 'finance_director')->textInput() ?>
+
+
+
+
+
+ = $form->field($model->customer, 'inn')->textInput() ?>
+
+
+ = $form->field($model->customer, 'kpp')->textInput() ?>
+
+
+ = $form->field($model->customer, 'account_number')->textInput() ?>
+
+
+
+
+
+ = $form->field($model->customer, 'bik')->textInput() ?>
+
+
+ = $form->field($model->customer, 'bank_name')->textInput() ?>
+
+
+ = $form->field($model->customer, 'bank_account_number')->textInput() ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Delivery') ?>
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Delivery Profile') ?>
+ = Html::dropDownList('delivery_profile', null, \yii\helpers\ArrayHelper::map($deliveryProfiles, 'id', 'title'), [
+ 'prompt' => Yii::t('shop_public', '--- Select ---'),
+ 'id' => 'delivery_profile',
+ ]); ?>
+ = Html::a(Yii::t('shop_public', 'Delete Profile'), '#', [
+ 'class' => 'text-danger',
+ 'onclick' => 'return deleteDeliveryProfile();'
+ ]) ?>
+
+
+ = $form->field($model->delivery, 'method')->dropDownList($model->delivery->deliveryMethodsList(), ['prompt' => Yii::t('shop_public', '--- Select ---') ]) ?>
+ = $form->field($model->delivery, 'index')->textInput() ?>
+ = $form->field($model->delivery, 'address')->textarea(['rows' => 3]) ?>
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Note') ?>
+
+
+
+
+
+ = $form->field($model, 'note')->textarea(['rows' => 3])->label(false) ?>
+
+
+
+
+
+
+
+ = Html::submitButton(Yii::t('shop_public', 'Checkout'), ['class' => 'btn btn-blue order_button']) ?>
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/views/wishlist/index.php b/frontend/web/themes/sport/template/modules/shop/views/wishlist/index.php
new file mode 100644
index 0000000..8d064cd
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/views/wishlist/index.php
@@ -0,0 +1,66 @@
+title = Yii::t('shop_public', 'Wish List');
+$this->params['breadcrumbs'][] = ['label' => Yii::t('users_public', 'Profile'), 'url' => ['/users/account/profile/edit']];
+$this->params['breadcrumbs'][] = $this->title;
+?>
+
+
= Html::encode($this->title) ?>
+
+ = GridView::widget([
+ 'dataProvider' => $dataProvider,
+ 'columns' => [
+ [
+ 'label' => Yii::t('shop_public', 'Product Name'),
+ 'value' => function (Product $model) {
+
+ $img = Html::a(Html::img($model->mainPhoto->getThumbFileUrl('file', 'cart_list'), ['class' => 'img-thumbnail']), ['/shop/catalog/product', 'id' => $model->id]);
+ $img = '
' . $img . '
';
+
+
+ $info = '
' . Html::a(Html::encode($model->name), ['/shop/catalog/product', 'id' => $model->id]) . ' ';
+
+ return $img . $info;
+
+ //return $model->mainPhoto ? Html::img($model->mainPhoto->getThumbFileUrl('file', 'admin')) : null;
+ },
+ 'format' => 'raw',
+ //'contentOptions' => ['style' => 'width: 100px'],
+ 'contentOptions' => ['class' => 'cell_1'],
+ ],
+ [
+ 'attribute' => 'price_new',
+ 'label' => Yii::t('shop_public', 'Price'),
+ 'value' => function (Product $model) {
+ return '
' . PriceHelper::format($model->price_new) . ' ';
+ },
+ 'format' => 'raw',
+ 'contentOptions' => ['class' => 'text-right'],
+ 'headerOptions' => ['class' => 'cell_2'],
+ ],
+ [
+ 'class' => ActionColumn::class,
+ 'template' => '{delete}',
+ 'options' => ['style' => 'width: 50px;'],
+ 'headerOptions' => ['class' => 'cell_3'],
+ ],
+ ],
+ 'tableOptions' => [
+ 'class' => 'cart_list'
+ ],
+ 'rowOptions' => [
+ 'class' => 'cart_item'
+ ],
+ 'showHeader' => true,
+ 'summary' => '',
+ ]); ?>
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/widgets/views/checkbox-filter.php b/frontend/web/themes/sport/template/modules/shop/widgets/views/checkbox-filter.php
new file mode 100644
index 0000000..f4a2978
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/widgets/views/checkbox-filter.php
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+ = $form->field($searchForm, $attribute, [
+ 'template' => '
',
+ 'options' => [
+ 'tag' => null, // Don't wrap with "form-group" div
+ ],
+ ])->checkboxList($items, [
+ 'onclick' => "$(this).val( $('input:checkbox:checked').val()); ",
+ 'item' => function($index, $label, $name, $checked, $value)
+ {
+ $disabled = isset($label['disabled']) && $label['disabled']? 'disabled="disabled"' : '';
+ $disabledCheckboxClass = isset($label['disabled']) && $label['disabled']? 'class="filter_disabled_checkbox"' : '';
+ return '
' . $label['name'] . '' . $label['doc_count'] . ' ' . '';
+ }
+ ]) ?>
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/template/modules/shop/widgets/views/filter.php b/frontend/web/themes/sport/template/modules/shop/widgets/views/filter.php
new file mode 100644
index 0000000..193ee1a
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/widgets/views/filter.php
@@ -0,0 +1,130 @@
+
+
+
+ ['/shop/catalog/category', 'id' => $requestId], 'method' => 'get']) ?>
+
+ ['/shop/catalog/brand', 'id' => $brandId], 'method' => 'get']) ?>
+
+ ['/shop/catalog/tag', 'id' => $tagId], 'method' => 'get']) ?>
+
+ ['/shop/catalog/product-type', 'id' => $typeId], 'method' => 'get']) ?>
+
+ ['/shop/catalog/index'], 'method' => 'get']) ?>
+
+
+
+
+
+ 1): ?>
+ = $this->render('checkbox-filter', [
+ 'searchForm' => $searchForm,
+ 'items' => FilterHelper::checkboxBrends($filter['aggregations']['brands']['buckets'], $all['aggregations']['brands']['buckets']),
+ 'form' => $form,
+ 'attribute' => 'brand',
+ 'title' => Yii::t('shop_public', 'Vendor'),
+ ]) ?>
+
+
+
+ 1): ?>
+ = $this->render('range-filter', [
+ 'searchForm' => $searchForm,
+ //'items' => [$filter['aggregations']['prices']['min'] , $filter['aggregations']['prices']['max']],
+ 'items' => [$all['aggregations']['prices']['min'] , $all['aggregations']['prices']['max']],
+ 'form' => $form,
+ 'from' => [
+ 'attribute' => 'price_from',
+ 'id' => 'price_from',
+ 'value' => $searchForm->price_from,
+ ],
+ 'to' => [
+ 'attribute' => 'price_to',
+ 'id' => 'price_to',
+ 'value' => $searchForm->price_to,
+ ],
+ 'title' => Yii::t('shop_public', 'Price'),
+ ]) ?>
+
+
+
+
+
+
+
+
+values as $i => $value): ?>
+ getId()]['ids'];
+ $valueCount = $filter['aggregations']['characteristics']['char_' . $value->getId()]['doc_count'];
+ ?>
+ getWidget() == Characteristic::WIDGET_PERIOD): ?>
+
+
+ 1) { ?>
+ = $this->render('range-filter', [
+ 'searchForm' => $value, //$searchForm,
+ 'items' => [$valueData['min'] , $valueData['max']],
+ 'form' => $form,
+ 'from' => [
+ 'attribute' => '[' . $i . ']from',
+ 'id' => 'v-' . $i . '-from',
+ 'value' => $value->from,
+ ],
+ 'to' => [
+ 'attribute' => '[' . $i . ']to',
+ 'id' => 'v-' . $i . '-to',
+ 'value' => $value->to,
+ ],
+ 'title' => Html::encode($value->getCharacteristicName()),
+ ]) ?>
+
+
+ getWidget() == Characteristic::WIDGET_CHECKBOX): ?>
+
+ 1 && $doc_count == $valueCount) || ($value->isFilled())) { ?>
+ = $this->render('checkbox-filter', [
+ 'searchForm' => $value, //$searchForm,
+ 'items' => FilterHelper::checkboxVariants($filter['aggregations']['characteristics']['char_' . $value->getId()]['ids']['buckets'], $all['aggregations']['characteristics']['char_' . $value->getId()]['ids']['buckets']),
+ 'form' => $form,
+ 'attribute' => '[' . $i . ']equal',
+ 'title' => Html::encode($value->getCharacteristicName()),
+ ]) ?>
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/shop/widgets/views/range-filter.php b/frontend/web/themes/sport/template/modules/shop/widgets/views/range-filter.php
new file mode 100644
index 0000000..d7d8b16
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/shop/widgets/views/range-filter.php
@@ -0,0 +1,48 @@
+XX min attribute, 'value'=>XX ex.: searchForm->price_from, id for jQuery selector
+ * @var $to array; // 'attrubute'=>XX max attribute, 'value'=>XX ex.: searchForm->price_to, id for jQuery selector
+ */
+?>
+
+
+
+
+ = $form->field($searchForm, $from['attribute'])->hiddenInput(['value' => $from['value'] ?: ''])->label(false) ?>
+ = $form->field($searchForm, $to['attribute'])->hiddenInput(['value' => $to['value'] ?: ''])->label(false) ?>
+
+
+ =
+ \yii2mod\slider\IonSlider::widget([
+ 'name' => 'slider',
+ 'type' => \yii2mod\slider\IonSlider::TYPE_DOUBLE,
+ 'pluginOptions' => [
+ //'disable' => true,
+ 'min' => $items[0],
+ 'max' => $items[1],
+ 'from' => $from['value'] ?: $items[0],
+ 'to' => $to['value'] ?: $items[1],
+ 'step' => 1,
+ 'force_edges' => true,
+ 'onChange' => new \yii\web\JsExpression('
+ function(data) {
+ //console.log(data);
+ $("#' . $from['id'] . '").val(data.from);
+ $("#' . $to['id'] . '").val(data.to);
+ }
+ ')
+ ]
+ ]);
+ ?>
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/users/views/account/profile/edit.php b/frontend/web/themes/sport/template/modules/users/views/account/profile/edit.php
new file mode 100644
index 0000000..03df592
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/users/views/account/profile/edit.php
@@ -0,0 +1,65 @@
+title = Yii::t('users_public', 'Edit Profile');
+//$this->params['breadcrumbs'][] = ['label' => 'Profile', 'url' => ['cabinet/default/index']];
+$this->params['breadcrumbs'][] = Yii::t('users_public', 'Profile');
+
+$image = new \app\components\MultiUploader\ImageManager();
+
+$js = <<registerJs($js, $this::POS_READY);
+?>
+= $this->title ?>
+
+
+
+
+
+
+
+ = Yii::$app->user->identity->user->username ?>
+
+
+
+
+
+ 'form-profile']); ?>
+
+ = $form->field($model, 'email')->label(Yii::t('users_public', 'E-mail')) ?>
+ = $form->field($model, 'phone', [
+ 'addon' => [
+ 'prepend' => ['content'=>'+']
+ ]])->widget(\yii\widgets\MaskedInput::className(), [
+ 'mask' => '9 (999) 999-9999',
+ 'clientOptions' => [
+ 'removeMaskOnSubmit' => true,
+ ],
+ ])->label(Yii::t('users_public', 'Phone')) ?>
+ = $form->field($model, 'userpic')->fileInput() ?>
+
+
+ = Html::submitButton(Yii::t('users_public', 'Save'), ['class' => 'btn btn-blue']) ?>
+
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/users/views/auth/login.php b/frontend/web/themes/sport/template/modules/users/views/auth/login.php
new file mode 100644
index 0000000..bee017a
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/users/views/auth/login.php
@@ -0,0 +1,73 @@
+title = 'Login';
+$this->params['breadcrumbs'][] = $this->title;
+?>
+= Yii::t('users_public', 'Login or create an account') ?>
+
+
+
+
+
+
= Yii::t('users_public', 'New here?') ?>
+
+
= Yii::t('users_public', 'Registration is free and easy!') ?>
+
+
+
+ = Yii::t('users_public', 'Faster checkout') ?>
+ = Yii::t('users_public', 'Save shipping address') ?>
+ = Yii::t('users_public', 'View and track orders and more') ?>
+
+
+
+ = Html::a(Yii::t('users_public', 'Create an account'), ['/users/signup/request'], ['class' => 'btn']) ?>
+
+
+
+
= Yii::t('users_public', 'Social Login') ?>
+ = yii\authclient\widgets\AuthChoice::widget([
+ 'baseAuthUrl' => ['/users/network/auth']
+ ]); ?>
+
+
+
+
+
+
+
+
+
+
= Yii::t('users_public', 'Already registered?') ?>
+
+
+
+
+ 'login-form']); ?>
+
+ = $form->field($model, 'username')->textInput() ?>
+
+ = $form->field($model, 'password')->passwordInput() ?>
+
+ = $form->field($model, 'rememberMe')->checkbox() ?>
+
+
+ = Html::submitButton(Yii::t('users_public', 'Sign in'), ['class' => 'btn btn-blue', 'name' => 'login-button']) ?>
+
+ = Html::a(Yii::t('users_public', 'Forgot your password?'), ['reset/request']) ?>
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/users/views/reset/request.php b/frontend/web/themes/sport/template/modules/users/views/reset/request.php
new file mode 100644
index 0000000..7aede77
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/users/views/reset/request.php
@@ -0,0 +1,44 @@
+title = 'Reset Password';
+$this->params['breadcrumbs'][] = $this->title;
+?>
+
+= Yii::t('users_public', $this->title) ?>
+
+
+
+
+
+
+
+
+
= Yii::t('users_public', 'Please fill out your email. A link to reset password will be sent there.') ?>
+
+
+
+ 'request-password-reset-form']); ?>
+
+ = $form->field($model, 'email')->textInput(['autofocus' => true])->label(Yii::t('users_public', 'E-mail')) ?>
+
+
+ = Html::submitButton(Yii::t('users_public', 'Send'), ['class' => 'btn btn-blue']) ?>
+
+ = Html::a(Yii::t('users_public', 'Cancel'), ['/users/auth/login']) ?>
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/template/modules/users/views/signup/request.php b/frontend/web/themes/sport/template/modules/users/views/signup/request.php
new file mode 100644
index 0000000..2f438a8
--- /dev/null
+++ b/frontend/web/themes/sport/template/modules/users/views/signup/request.php
@@ -0,0 +1,69 @@
+title = Yii::t('users_public', 'Create an account');
+$this->params['breadcrumbs'][] = $this->title;
+
+$js = <<registerJs($js, $this::POS_READY);
+
+?>
+= Yii::t('users_public', $this->title) ?>
+
+
+
+
+
+
= Yii::t('users_public', 'Please fill out the following fields to signup.') ?>
+
+
+
+ 'form-signup', 'options' => ['autocomplete' => 'off']]); ?>
+
+ = $form->field($model, 'username')->textInput(['autofocus' => true])->label(Yii::t('users_public', 'Username')) ?>
+
+ = $form->field($model, 'email')->label(Yii::t('users_public', 'E-mail')) ?>
+
+ = $form->field($model, 'phone', [
+ 'addon' => [
+ 'prepend' => ['content'=>'+']
+ ]])->widget(\yii\widgets\MaskedInput::className(), [
+ 'mask' => '9 (999) 999-9999',
+ 'clientOptions' => [
+ 'removeMaskOnSubmit' => true,
+ ],
+ ])->label(Yii::t('users_public', 'Phone')) ?>
+
+
+ = $form->field($model, 'password')->passwordInput()->label(Yii::t('users_public', 'Password')) ?>
+
+
+ = Html::submitButton(Yii::t('users_public', 'Sign up'), ['class' => 'btn btn-blue', 'name' => 'signup-button']) ?>
+
+ = Html::a(Yii::t('users_public', 'Cancel'), ['/users/auth/login']) ?>
+
+
+
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/widgets/CartWidget.php b/frontend/web/themes/sport/widgets/CartWidget.php
new file mode 100644
index 0000000..adbf3c7
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/CartWidget.php
@@ -0,0 +1,28 @@
+_cart = $cart;
+ }
+
+ public function run(): string
+ {
+ return $this->render('cart', [
+ 'cart' => $this->_cart,
+ ]);
+ }
+}
diff --git a/frontend/web/themes/sport/widgets/CategoryMenuWidget.php b/frontend/web/themes/sport/widgets/CategoryMenuWidget.php
new file mode 100644
index 0000000..acc46ef
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/CategoryMenuWidget.php
@@ -0,0 +1,54 @@
+_categories = $categories;
+ }
+
+ public function run(): string
+ {
+ $menu = '';
+ //$categories = $this->_categories->getAllTree(5);
+ $categories = $this->_categories->getAllTree();
+ $depth=0;
+ foreach ($categories as $n => $category) {
+ if ($category->depth == $depth) {
+ $menu .= Html::endTag('li') . "\n";
+ } elseif ($category->depth > $depth) {
+ $menu .= Html::beginTag('ul') . "\n";
+ } else {
+ $menu .= Html::endTag('li') . "\n";
+
+ for ($i = $depth - $category->depth; $i; $i--) {
+ $menu .= Html::endTag('ul') . "\n";
+ $menu .= Html::endTag('li') . "\n";
+ }
+ }
+ $menu .= Html::beginTag('li');
+ $menu .= Html::a(Html::encode($category->translation->name), '#');
+ $depth = $category->depth;
+ }
+ for ($i = $depth; $i; $i--) {
+ $menu .= Html::endTag('li') . "\n";
+ $menu .= Html::endTag('ul') . "\n";
+ }
+ return $menu;
+ }
+}
diff --git a/frontend/web/themes/sport/widgets/CategoryWidget.php b/frontend/web/themes/sport/widgets/CategoryWidget.php
new file mode 100644
index 0000000..98a2efb
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/CategoryWidget.php
@@ -0,0 +1,46 @@
+_categories = $categories;
+ }
+
+ public function run(): string
+ {
+ $menuArray = ArrayHelper::toArray($this->_categories->getTreeWithSubsOf($this->active), [
+ ShopCategoryView::class => [
+ 'label' => function ($view) {
+ $indent = ($view->category->depth > 1 ? str_repeat(' ', $view->category->depth - 1) : '');
+ return $indent . $view->category->translation->name . ' ' . $view->count . ' ';
+ },
+ 'url' => function ($view) {
+ return ['/shop/catalog/category', 'id' => $view->category->id];
+ },
+ ],
+ ]);
+ return Menu::widget([
+ 'items' => $menuArray,
+ 'encodeLabels' => false,
+ 'options' => [
+ 'class' => 'category_links',
+ ],
+ ]);
+ }
+}
diff --git a/frontend/web/themes/sport/widgets/MenuLastPostWidget.php b/frontend/web/themes/sport/widgets/MenuLastPostWidget.php
new file mode 100644
index 0000000..b64d67f
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/MenuLastPostWidget.php
@@ -0,0 +1,28 @@
+repository = $repository;
+ }
+
+ public function run(): string
+ {
+ return $this->render('menu-last-posts', [
+ 'posts' => $this->repository->getLast(3)
+ ]);
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/widgets/SearchLineWidget.php b/frontend/web/themes/sport/widgets/SearchLineWidget.php
new file mode 100644
index 0000000..1896d9f
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/SearchLineWidget.php
@@ -0,0 +1,24 @@
+load(\Yii::$app->request->queryParams);
+ $searchForm->validate();
+
+ return $this->render('search-line', [
+ 'searchForm' => $searchForm,
+ ]);
+ }
+}
diff --git a/frontend/web/themes/sport/widgets/SidebarBestsellersWidget.php b/frontend/web/themes/sport/widgets/SidebarBestsellersWidget.php
new file mode 100644
index 0000000..79bd6c7
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/SidebarBestsellersWidget.php
@@ -0,0 +1,49 @@
+products = $products;
+ }
+
+ public function init(){
+ parent::init();
+ $this->count = $this->count != null ? $this->count : 3;
+ }
+
+ public function run(): string
+ {
+ if (Yii::$app->settings->data['shop']['bestsellers_type'] == 'random')
+ {
+ $products = Product::find()->active()->bestseller()->limit($this->count)->all();
+ }
+ else
+ {
+ $ids = Json::decode(Yii::$app->settings->data['shop']['bestsellers_products']);
+ $products = $this->products->findMany($ids);
+ }
+
+ return $this->render('sidebar-bestsellers', [
+ 'products' => $products,
+ ]);
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/widgets/TypeWidget.php b/frontend/web/themes/sport/widgets/TypeWidget.php
new file mode 100644
index 0000000..c0457a6
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/TypeWidget.php
@@ -0,0 +1,31 @@
+all();
+ $menuArray = array_map(function(ProductType $type){
+ return [
+ 'label' => $type->name,
+ 'url' => ['/shop/catalog/product-type', 'id' => $type->id],
+ ];
+ }, $types);
+
+ return Menu::widget([
+ 'items' => $menuArray,
+ 'encodeLabels' => false,
+ 'options' => [
+ 'class' => 'types_links',
+ ],
+ ]);
+ }
+}
\ No newline at end of file
diff --git a/frontend/web/themes/sport/widgets/views/cart.php b/frontend/web/themes/sport/widgets/views/cart.php
new file mode 100644
index 0000000..505f3d3
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/views/cart.php
@@ -0,0 +1,11 @@
+
+
+
+ = Yii::t('shop_public', 'Cart ({count})', ['count' => $cart->getSumAmount()]) ?>
+
\ No newline at end of file
diff --git a/frontend/web/themes/sport/widgets/views/menu-last-posts.php b/frontend/web/themes/sport/widgets/views/menu-last-posts.php
new file mode 100644
index 0000000..33d7d25
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/views/menu-last-posts.php
@@ -0,0 +1,27 @@
+
+
+
+
diff --git a/frontend/web/themes/sport/widgets/views/search-line.php b/frontend/web/themes/sport/widgets/views/search-line.php
new file mode 100644
index 0000000..f9e48db
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/views/search-line.php
@@ -0,0 +1,33 @@
+
+
+ ['/shop/catalog/search'],
+ 'method' => 'get',
+ ]) ?>
+
+
+ = $form->field($searchForm, 'text', [
+ 'template' => '{input}',
+ 'options' => [
+ 'tag' => null, // Don't wrap with "form-group" div
+ ],
+ ])->textInput([
+ 'class' => 'form-control',
+ 'id' => 'search-field',
+ ])->label(false) ?>
+
+ = Yii::t('shop_public', 'Search') ?> >
+
+
+
+
+
+
diff --git a/frontend/web/themes/sport/widgets/views/sidebar-bestsellers.php b/frontend/web/themes/sport/widgets/views/sidebar-bestsellers.php
new file mode 100644
index 0000000..97a8b66
--- /dev/null
+++ b/frontend/web/themes/sport/widgets/views/sidebar-bestsellers.php
@@ -0,0 +1,47 @@
+
+
+
diff --git a/frontend/web/themes/start/css/main.css b/frontend/web/themes/start/css/main.css
index f3db6f7..c64b05d 100644
--- a/frontend/web/themes/start/css/main.css
+++ b/frontend/web/themes/start/css/main.css
@@ -37,4 +37,42 @@ body {
columns: 2;
-webkit-columns: 2;
-moz-columns: 2;
-}
\ No newline at end of file
+}
+
+.product_img a {display: block;position: relative;}
+.product_img img {background-color: #ffffff;position: relative;z-index: 1;}
+.product_img .img__2 {position: absolute;left: 12px;top: 0;z-index: 10; opacity: 0;}
+
+.badge-offer {
+ z-index: 20 !important;
+}
+
+.product_listing_controls {
+ margin: -50px 0 120px 0;
+ font-size: 14px;
+}
+
+.product_listing_controls label {
+ display: inline-block !important;
+}
+.product_listing_controls select{
+ font-size: 12px !important;
+ padding: 3px !important;
+ display: inline-block !important;
+ height: 28px !important;
+}
+/*.product_listing_controls > div {
+ width: 190px;
+ float: left;
+ margin: 0 5px;
+}*/
+
+.sort_by {
+ float: right;
+ margin: 10px 0 0 10px;
+}
+
+.show_products {
+ float: right;
+ margin: 10px 0 0 10px;
+}
diff --git a/frontend/web/themes/start/css/responsive.css b/frontend/web/themes/start/css/responsive.css
new file mode 100644
index 0000000..d928b38
--- /dev/null
+++ b/frontend/web/themes/start/css/responsive.css
@@ -0,0 +1,39 @@
+@media (max-width: 1200px) {
+ /* tablet devices */ }
+@media (max-width: 960px) {
+ /* small tablet devices */
+ .slider-main .item-slide {
+ height: auto; }
+
+ .menu-category .submenu {
+ max-width: 100%;
+ left: 0;
+ top: 100%; }
+
+ .border-cols > [class*="col-"] {
+ border-width: 0 0 1px 1px; } }
+@media all and (max-width: 720px) {
+ /* mobile devices */
+ .navbar {
+ padding: 1rem; }
+
+ .navbar-landing {
+ transition: .5s;
+ padding-top: 7px;
+ padding-bottom: 7px; }
+
+ .nav-item .btn {
+ margin: 7px 0 !important; }
+
+ .list-inline-item {
+ vertical-align: middle;
+ margin-bottom: 5px;
+ margin-top: 5px; }
+
+ .section-header .logo, .header-main .logo {
+ max-height: 30px;
+ width: auto; }
+ .section-header .logo-text, .header-main .logo-text {
+ font-size: 24px; }
+ .section-header .brand-wrap, .section-header .search-wrap, .section-header .widget-header, .header-main .brand-wrap, .header-main .search-wrap, .header-main .widget-header {
+ margin-bottom: 1rem; } }
diff --git a/frontend/web/themes/start/css/ribbon.css b/frontend/web/themes/start/css/ribbon.css
new file mode 100644
index 0000000..4db5932
--- /dev/null
+++ b/frontend/web/themes/start/css/ribbon.css
@@ -0,0 +1,206 @@
+/* PRODUCT LABELS */
+.ribbon {
+ position: absolute;
+ left: 10px;
+ top: -5px;
+ z-index: 20;
+ overflow: hidden;
+ width: 75px;
+ height: 75px;
+ text-align: right; }
+
+@media (max-width: 767px) {
+ .ribbon {
+ left: 10px;
+ top: -5px; }
+
+ .view_list .ribbon {
+ left: 10px;
+ top: 25px; } }
+.ribbon span {
+ font-size: 10px;
+ font-weight: bold;
+ text-transform: uppercase;
+ text-align: center;
+ line-height: 20px;
+ transform: rotate(-45deg);
+ -webkit-transform: rotate(-45deg);
+ width: 100px;
+ display: block;
+ position: absolute;
+ top: 19px;
+ left: -21px; }
+
+/* Discount Sale */
+.ribbon_3 span, .ribbon_2 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#F70505 0%, #8F0808 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_3 span::before, .ribbon_2 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #8F0808;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #8F0808; }
+
+.ribbon_3 span::after, .ribbon_2 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #8F0808;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #8F0808; }
+
+/* New */
+.ribbon_1 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#9BC90D 0%, #79A70A 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_1 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #79A70A;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #79A70A; }
+
+.ribbon_1 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #79A70A;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #79A70A; }
+
+/* Bestseller Best price */
+.ribbon_4 span, .ribbon_5 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#F79E05 0%, #8F5408 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_4 span::before, .ribbon_5 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #8F5408;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #8F5408; }
+
+.ribbon_4 span::after, .ribbon_5 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #8F5408;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #8F5408; }
+
+/* Product day, Popular */
+.ribbon_7 span, .ribbon_8 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#2989d8 0%, #1e5799 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_7 span::before, .ribbon_8 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #1e5799;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #1e5799; }
+
+.ribbon_7 span::after, .ribbon_8 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #1e5799;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #1e5799; }
+
+/* Hot deal, recommended */
+.ribbon_6 span, .ribbon_10 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#F7E64A 0%, #A7820A 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_6 span::before, .ribbon_10 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #A7820A;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #A7820A; }
+
+.ribbon_6 span::after, .ribbon_10 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #A7820A;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #A7820A; }
+
+/* Promo */
+.ribbon_9 span {
+ color: #FFF;
+ background: #79A70A;
+ background: linear-gradient(#F74ADA 0%, #9D0AA7 100%);
+ box-shadow: 0 3px 10px -5px black; }
+
+.ribbon_9 span::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid #9D0AA7;
+ border-right: 3px solid transparent;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #9D0AA7; }
+
+.ribbon_9 span::after {
+ content: "";
+ position: absolute;
+ right: 0px;
+ top: 100%;
+ z-index: -1;
+ border-left: 3px solid transparent;
+ border-right: 3px solid #9D0AA7;
+ border-bottom: 3px solid transparent;
+ border-top: 3px solid #9D0AA7; }
\ No newline at end of file
diff --git a/frontend/web/themes/start/css/uikit.css b/frontend/web/themes/start/css/uikit.css
new file mode 100644
index 0000000..acefd29
--- /dev/null
+++ b/frontend/web/themes/start/css/uikit.css
@@ -0,0 +1,2746 @@
+/* ========================
+UIkit bootstrap-ecommerce.com
+===================== */
+/* ================== HELPERS =================== */
+/* ==================== INCLUDE FONTS ======================= */
+@import url("../fonts/roboto/font.css");
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_base\.scss}line{font-family:\000036}}
+html {
+ font-size: 15px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\000032}}
+a:hover {
+ text-decoration: none; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\000036}}
+.img-wrap {
+ text-align: center;
+ display: block; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\000037}}
+ .img-wrap img {
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\000039}}
+.icon-wrap {
+ text-align: center; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000311}}
+.zoom-in {
+ -webkit-transition: -webkit-transform ease .3s;
+ transition: -webkit-transform ease .3s;
+ transition: transform ease .3s;
+ transition: transform ease .3s, -webkit-transform ease .3s; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000312}}
+.zoom-wrap:hover .zoom-in {
+ -webkit-transform: scale(1.1);
+ transform: scale(1.1);
+ -webkit-transition: -webkit-transform ease .3s;
+ transition: -webkit-transform ease .3s;
+ transition: transform ease .3s;
+ transition: transform ease .3s, -webkit-transform ease .3s; }
+
+/* ================= DEFINED VARIABLES =================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000316}}
+.icon-xs, .icon-sm, .icon-md, .icon-lg {
+ display: inline-block;
+ text-align: center; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000317}}
+.icon-xs {
+ width: 32px;
+ height: 32px;
+ line-height: 32px;
+ font-size: 16px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000318}}
+.icon-sm {
+ width: 42px;
+ height: 42px;
+ line-height: 42px;
+ font-size: 22px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000319}}
+.icon-md {
+ width: 60px;
+ height: 60px;
+ line-height: 60px;
+ font-size: 32px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000320}}
+.icon-lg {
+ width: 80px;
+ height: 80px;
+ line-height: 80px;
+ font-size: 42px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000322}}
+.img-xs, .img-sm, .img-md, .img-lg {
+ -o-object-fit: cover;
+ object-fit: cover; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000323}}
+.img-xs {
+ width: 40px;
+ height: 40px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000324}}
+.img-sm {
+ width: 80px;
+ height: 80px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000325}}
+.img-md {
+ width: 160px;
+ height: 160px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000326}}
+.img-lg {
+ width: 400px;
+ height: 300px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000329}}
+.center-xy {
+ top: 50%;
+ left: 50%;
+ position: absolute;
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000330}}
+.center-y {
+ top: 50%;
+ position: absolute;
+ -webkit-transform: translateY(-50%);
+ transform: translateY(-50%); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000331}}
+.center-x {
+ left: 50%;
+ position: absolute;
+ -webkit-transform: translateX(-50%);
+ transform: translateX(-50%); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000333}}
+.center {
+ margin-left: auto;
+ margin-right: auto; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000334}}
+.overflow-h {
+ overflow: hidden; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000335}}
+.flip-h {
+ -webkit-transform: scaleX(-1);
+ transform: scaleX(-1); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000337}}
+.card-body-lg {
+ padding: 2rem; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000340}}
+.shadow-in {
+ -webkit-box-shadow: inset 0 2px 4px rgba(51, 51, 51, 0.4);
+ box-shadow: inset 0 2px 4px rgba(51, 51, 51, 0.4); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000342}}
+.vh-100 {
+ height: 100vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000343}}
+.vh-90 {
+ height: 90vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000344}}
+.vh-80 {
+ height: 80vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000345}}
+.vh-70 {
+ height: 70vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000346}}
+.vh-60 {
+ height: 60vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000347}}
+.vh-50 {
+ height: 50vh; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000349}}
+[class*="hover-"] {
+ -webkit-transition: .5s;
+ transition: .5s; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000350}}
+.hover-shadow:hover {
+ -webkit-box-shadow: 0 4px 15px rgba(51, 51, 51, 0.5);
+ box-shadow: 0 4px 15px rgba(51, 51, 51, 0.5);
+ -webkit-transition: .5s;
+ transition: .5s; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000351}}
+.hover-bg:hover {
+ background: #007bff;
+ /* For browsers that do not support gradients */
+ /* For Safari 5.1 to 6.0 */
+ /* For Opera 11.1 to 12.0 */
+ /* For Firefox 3.6 to 15 */
+ background: -webkit-gradient(linear, left top, right bottom, from(#007bff), to(#007bff));
+ background: linear-gradient(to bottom right, #007bff, #007bff);
+ /* Standard syntax */
+ -webkit-transition: .5s;
+ transition: .5s; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000352}}
+.hover-zoom:hover {
+ -webkit-transition: .5s;
+ transition: .5s;
+ -webkit-transform: scaleX(1);
+ transform: scaleX(1); }
+
+/* ========== input with icon ========== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000358}}
+.input-icon {
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000359}}
+ .input-icon i + input, .input-icon i + select {
+ padding-left: 36px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000360}}
+ .input-icon i {
+ position: absolute;
+ color: #ccc;
+ z-index: 9;
+ left: 7px;
+ top: 4px;
+ width: 24px;
+ text-align: center;
+ padding: 7px 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000369}}
+.form-inline .form-control-sm[type="number"] {
+ max-width: 100px; }
+
+/* ========== borders ========== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000372}}
+.border {
+ border: 1px solid #eee; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000373}}
+.border-left-white {
+ border-left: 1px solid rgba(255, 255, 255, 0.3); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000374}}
+.border-right-white {
+ border-right: 1px solid rgba(255, 255, 255, 0.3); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000375}}
+.border-top-white {
+ border-top: 1px solid rgba(255, 255, 255, 0.3); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000376}}
+.border-bottom-white {
+ border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000378}}
+.circle {
+ border-radius: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000379}}
+.round {
+ border-radius: 200px; }
+
+/* ============== spacing ============== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000384}}
+.padding-y {
+ padding-top: 32px;
+ padding-bottom: 32px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000385}}
+.padding-top {
+ padding-top: 32px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000386}}
+.padding-bottom {
+ padding-bottom: 32px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000388}}
+.padding-y-lg {
+ padding-top: 60px;
+ padding-bottom: 50px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000389}}
+.padding-top-lg {
+ padding-top: 60px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000390}}
+.padding-bottom-lg {
+ padding-bottom: 60px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000392}}
+.padding-y-sm {
+ padding-top: 16px;
+ padding-bottom: 16px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000393}}
+.padding-top-sm {
+ padding-top: 16px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000394}}
+.padding-bottom-sm {
+ padding-bottom: 16px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000396}}
+.nopadding {
+ padding: 0px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000396}}
+.p0 {
+ padding: 0px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000396}}
+.p5 {
+ padding: 5px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000396}}
+.p7 {
+ padding: 7px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000396}}
+.p10 {
+ padding: 10px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000397}}
+.p15 {
+ padding: 15px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000397}}
+.p20 {
+ padding: 20px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000397}}
+.p30 {
+ padding: 30px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000397}}
+.p40 {
+ padding: 40px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000397}}
+.p50 {
+ padding: 50px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\0000398}}
+.p60 {
+ padding: 60px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003100}}
+.nomargin {
+ margin: 0px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003100}}
+.m0 {
+ margin: 0px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003100}}
+.m5 {
+ margin: 5px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003100}}
+.m7 {
+ margin: 7px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003100}}
+.m10 {
+ margin: 10px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003101}}
+.m15 {
+ margin: 15px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003101}}
+.m30 {
+ margin: 30px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003101}}
+.m40 {
+ margin: 40px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003101}}
+.m50 {
+ margin: 50px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003102}}
+.m60 {
+ margin: 60px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003106}}
+.relative {
+ position: relative; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003107}}
+.absolute {
+ position: absolute; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003109}}
+var {
+ font-style: normal; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003110}}
+figure {
+ margin-bottom: 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003114}}
+.form-noborder input, .form-noborder select, .form-noborder .btn {
+ border: none; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003115}}
+.form-noborder select.form-control-lg:not([size]):not([multiple]) {
+ height: 2.875rem; }
+
+/* all clearfix */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003119}}
+article:after,
+.form-group:after {
+ display: block;
+ clear: both;
+ content: ""; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003127}}
+.border-cols:not(:last-child) {
+ border-bottom: 1px solid #eee; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003128}}
+.border-cols > [class*="col-"] {
+ overflow: hidden;
+ border-color: #eee;
+ border-width: 0 0 0 1px;
+ border-style: solid; }
+
+/* -------------------- small grid gutter --------------------- */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003136}}
+.row-sm {
+ margin-right: -7px;
+ margin-left: -7px;
+ display: -ms-flexbox;
+ display: -webkit-box;
+ display: flex;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_helper-classes\.scss}line{font-family:\00003143}}
+.row-sm > [class^="col"] {
+ padding-left: 7px;
+ padding-right: 7px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\000033}}
+.bg-white {
+ background-color: #fff !important; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\000035}}
+.bg-white-50 {
+ background-color: rgba(255, 255, 255, 0.5); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\000036}}
+.bg-dark-50 {
+ background-color: rgba(0, 0, 0, 0.5); }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\000038}}
+.bg-grad-primary {
+ background: #3395ff;
+ /* For browsers that do not support gradients */
+ /* For Safari 5.1 to 6.0 */
+ /* For Opera 11.1 to 12.0 */
+ /* For Firefox 3.6 to 15 */
+ background: -webkit-gradient(linear, left top, right bottom, from(#0062cc), to(#3395ff));
+ background: linear-gradient(to bottom right, #0062cc, #3395ff);
+ /* Standard syntax */ }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000310}}
+.bg {
+ background-color: #f8f8f8 !important; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000311}}
+.bg2 {
+ background-color: #eceded !important; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000312}}
+.bg-purple {
+ background-color: #6f42c1; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000313}}
+.bg-orange {
+ background-color: #fd7e14; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000314}}
+.bg-green {
+ background-color: #28a745; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000315}}
+.bg-blue {
+ background-color: #007bff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000317}}
+.bg-pattern {
+ background-image: url(../images/banners/bg-pattern.svg), linear-gradient(135deg, #007bff, #0062cc);
+ background-size: cover, auto;
+ background-repeat: no-repeat, repeat;
+ background-position: 0px 0px, 50% 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000325}}
+.bg-img {
+ overflow: hidden;
+ background-color: #ddd;
+ background-image: linear-gradient(135deg, rgba(51, 149, 255, 0.8), rgba(0, 98, 204, 0.9)), url("../images/banners/bg-cpu.jpg");
+ background-position: 0px 0px, 50% 50%;
+ background-size: auto, cover; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000333}}
+.overlay-grad {
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000334}}
+ .overlay-grad:before {
+ position: absolute;
+ content: "";
+ display: block;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background: #e83e8c;
+ /* For browsers that do not support gradients */
+ /* For Safari 5.1 to 6.0 */
+ /* For Opera 11.1 to 12.0 */
+ /* For Firefox 3.6 to 15 */
+ background: -webkit-gradient(linear, left top, right bottom, from(#007bff), to(#e83e8c));
+ background: linear-gradient(to bottom right, #007bff, #e83e8c);
+ /* Standard syntax */
+ opacity: .6;
+ -webkit-transition: .5s;
+ transition: .5s; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_bg\.scss}line{font-family:\0000337}}
+ .overlay-grad:hover:before {
+ opacity: .9; }
+
+/* --------------------- titles ---------------------- */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000032}}
+.section-heading {
+ margin-bottom: 20px;
+ margin-top: 10px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000033}}
+.title-section {
+ padding-right: 15px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000034}}
+.title-text {
+ margin-top: 45px;
+ margin-bottom: 20px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000035}}
+.title-category {
+ margin: 0;
+ padding: 1rem 1rem; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000036}}
+.title-bg {
+ padding: 7px 15px;
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\000038}}
+.font-title {
+ font-family: "Roboto", sans-serif; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000310}}
+.text-lg {
+ font-size: 125%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000311}}
+.word-limit {
+ height: 40px;
+ line-height: 20px; }
+
+/* ================== title element ================ */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000316}}
+.heading-line {
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000317}}
+ .heading-line .title-section {
+ position: relative;
+ display: inline-block;
+ padding-right: 15px;
+ background-color: inherit;
+ z-index: 2; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000325}}
+.heading-line::before {
+ top: 43%;
+ border-top-style: solid;
+ content: "";
+ position: absolute;
+ left: auto;
+ right: 0;
+ width: 100%;
+ height: 0;
+ border: 3px solid #E9EAEF;
+ overflow: hidden; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000338}}
+.b {
+ font-weight: 600; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000340}}
+.white {
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000341}}
+.black, .dark {
+ color: #000; }
+
+/* ================== title helpers ================ */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000344}}
+.rtl {
+ direction: rtl; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000345}}
+.ltr {
+ direction: ltr; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000348}}
+.lh-sm {
+ line-height: 1.2; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_typography\.scss}line{font-family:\0000349}}
+.lh-lg {
+ line-height: 1.6; }
+
+/*!
+ * grid for 24 of 1
+ * made by bootstrap-ecommerce.com
+*/
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\000035}}
+.col-1-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 4.1666666667%;
+ flex: 0 0 4.1666666667%;
+ max-width: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\000039}}
+.col-2-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 8.3333333333%;
+ flex: 0 0 8.3333333333%;
+ max-width: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000313}}
+.col-3-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 12.5%;
+ flex: 0 0 12.5%;
+ max-width: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000317}}
+.col-4-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 16.6666666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000321}}
+.col-5-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 20.8333333333%;
+ flex: 0 0 20.8333333333%;
+ max-width: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000325}}
+.col-6-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ max-width: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000329}}
+.col-7-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 29.1666666667%;
+ flex: 0 0 29.1666666667%;
+ max-width: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000333}}
+.col-8-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 33.3333333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000337}}
+.col-9-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 37.5%;
+ flex: 0 0 37.5%;
+ max-width: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000341}}
+.col-10-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 41.6666666667%;
+ flex: 0 0 41.6666666667%;
+ max-width: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000345}}
+.col-11-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 45.8333333333%;
+ flex: 0 0 45.8333333333%;
+ max-width: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000349}}
+.col-12-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ max-width: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000353}}
+.col-13-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 54.1666666667%;
+ flex: 0 0 54.1666666667%;
+ max-width: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000357}}
+.col-14-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 58.3333333333%;
+ flex: 0 0 58.3333333333%;
+ max-width: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000361}}
+.col-15-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 62.5%;
+ flex: 0 0 62.5%;
+ max-width: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000365}}
+.col-16-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 66.6666666667%;
+ flex: 0 0 66.6666666667%;
+ max-width: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000369}}
+.col-17-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 70.8333333333%;
+ flex: 0 0 70.8333333333%;
+ max-width: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000373}}
+.col-18-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ max-width: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000377}}
+.col-19-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 79.1666666667%;
+ flex: 0 0 79.1666666667%;
+ max-width: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000381}}
+.col-20-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 83.3333333333%;
+ flex: 0 0 83.3333333333%;
+ max-width: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000385}}
+.col-21-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 87.5%;
+ flex: 0 0 87.5%;
+ max-width: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000389}}
+.col-22-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 91.6666666667%;
+ flex: 0 0 91.6666666667%;
+ max-width: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000393}}
+.col-23-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 95.8333333333%;
+ flex: 0 0 95.8333333333%;
+ max-width: 95.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\0000397}}
+.col-24, .col-24-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003101}}
+.offset-1-24 {
+ margin-left: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003104}}
+.offset-2-24 {
+ margin-left: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003107}}
+.offset-3-24 {
+ margin-left: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003110}}
+.offset-4-24 {
+ margin-left: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003113}}
+.offset-5-24 {
+ margin-left: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003116}}
+.offset-6-24 {
+ margin-left: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003119}}
+.offset-7-24 {
+ margin-left: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003122}}
+.offset-8-24 {
+ margin-left: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003125}}
+.offset-9-24 {
+ margin-left: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003128}}
+.offset-10-24 {
+ margin-left: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003131}}
+.offset-11-24 {
+ margin-left: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003134}}
+.offset-12-24 {
+ margin-left: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003137}}
+.offset-13-24 {
+ margin-left: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003140}}
+.offset-14-24 {
+ margin-left: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003143}}
+.offset-15-24 {
+ margin-left: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003146}}
+.offset-16-24 {
+ margin-left: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003149}}
+.offset-17-24 {
+ margin-left: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003152}}
+.offset-18-24 {
+ margin-left: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003155}}
+.offset-19-24 {
+ margin-left: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003158}}
+.offset-20-24 {
+ margin-left: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003161}}
+.offset-21-24 {
+ margin-left: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003164}}
+.offset-22-24 {
+ margin-left: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003167}}
+.offset-23-24 {
+ margin-left: 95.8333333333%; }
+
+@media (min-width: 576px) {
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003172}}
+ .col-sm-1-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 4.1666666667%;
+ flex: 0 0 4.1666666667%;
+ max-width: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003176}}
+ .col-sm-2-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 8.3333333333%;
+ flex: 0 0 8.3333333333%;
+ max-width: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003180}}
+ .col-sm-3-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 12.5%;
+ flex: 0 0 12.5%;
+ max-width: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003184}}
+ .col-sm-4-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 16.6666666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003188}}
+ .col-sm-5-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 20.8333333333%;
+ flex: 0 0 20.8333333333%;
+ max-width: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003192}}
+ .col-sm-6-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ max-width: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003196}}
+ .col-sm-7-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 29.1666666667%;
+ flex: 0 0 29.1666666667%;
+ max-width: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003200}}
+ .col-sm-8-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 33.3333333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003204}}
+ .col-sm-9-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 37.5%;
+ flex: 0 0 37.5%;
+ max-width: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003208}}
+ .col-sm-10-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 41.6666666667%;
+ flex: 0 0 41.6666666667%;
+ max-width: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003212}}
+ .col-sm-11-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 45.8333333333%;
+ flex: 0 0 45.8333333333%;
+ max-width: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003216}}
+ .col-sm-12-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ max-width: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003220}}
+ .col-sm-13-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 54.1666666667%;
+ flex: 0 0 54.1666666667%;
+ max-width: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003224}}
+ .col-sm-14-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 58.3333333333%;
+ flex: 0 0 58.3333333333%;
+ max-width: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003228}}
+ .col-sm-15-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 62.5%;
+ flex: 0 0 62.5%;
+ max-width: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003232}}
+ .col-sm-16-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 66.6666666667%;
+ flex: 0 0 66.6666666667%;
+ max-width: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003236}}
+ .col-sm-17-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 70.8333333333%;
+ flex: 0 0 70.8333333333%;
+ max-width: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003240}}
+ .col-sm-18-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ max-width: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003244}}
+ .col-sm-19-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 79.1666666667%;
+ flex: 0 0 79.1666666667%;
+ max-width: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003248}}
+ .col-sm-20-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 83.3333333333%;
+ flex: 0 0 83.3333333333%;
+ max-width: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003252}}
+ .col-sm-21-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 87.5%;
+ flex: 0 0 87.5%;
+ max-width: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003256}}
+ .col-sm-22-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 91.6666666667%;
+ flex: 0 0 91.6666666667%;
+ max-width: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003260}}
+ .col-sm-23-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 95.8333333333%;
+ flex: 0 0 95.8333333333%;
+ max-width: 95.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003264}}
+ .col-sm-24, .col-sm-24-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003268}}
+ .offset-sm-1-24 {
+ margin-left: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003271}}
+ .offset-sm-2-24 {
+ margin-left: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003274}}
+ .offset-sm-3-24 {
+ margin-left: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003277}}
+ .offset-sm-4-24 {
+ margin-left: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003280}}
+ .offset-sm-5-24 {
+ margin-left: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003283}}
+ .offset-sm-6-24 {
+ margin-left: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003286}}
+ .offset-sm-7-24 {
+ margin-left: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003289}}
+ .offset-sm-8-24 {
+ margin-left: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003292}}
+ .offset-sm-9-24 {
+ margin-left: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003295}}
+ .offset-sm-10-24 {
+ margin-left: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003298}}
+ .offset-sm-11-24 {
+ margin-left: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003301}}
+ .offset-sm-12-24 {
+ margin-left: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003304}}
+ .offset-sm-13-24 {
+ margin-left: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003307}}
+ .offset-sm-14-24 {
+ margin-left: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003310}}
+ .offset-sm-15-24 {
+ margin-left: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003313}}
+ .offset-sm-16-24 {
+ margin-left: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003316}}
+ .offset-sm-17-24 {
+ margin-left: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003319}}
+ .offset-sm-18-24 {
+ margin-left: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003322}}
+ .offset-sm-19-24 {
+ margin-left: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003325}}
+ .offset-sm-20-24 {
+ margin-left: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003328}}
+ .offset-sm-21-24 {
+ margin-left: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003331}}
+ .offset-sm-22-24 {
+ margin-left: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003334}}
+ .offset-sm-23-24 {
+ margin-left: 95.8333333333%; } }
+@media (min-width: 768px) {
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003340}}
+ .col-md-1-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 4.1666666667%;
+ flex: 0 0 4.1666666667%;
+ max-width: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003344}}
+ .col-md-2-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 8.3333333333%;
+ flex: 0 0 8.3333333333%;
+ max-width: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003348}}
+ .col-md-3-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 12.5%;
+ flex: 0 0 12.5%;
+ max-width: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003352}}
+ .col-md-4-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 16.6666666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003356}}
+ .col-md-5-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 20.8333333333%;
+ flex: 0 0 20.8333333333%;
+ max-width: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003360}}
+ .col-md-6-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ max-width: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003364}}
+ .col-md-7-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 29.1666666667%;
+ flex: 0 0 29.1666666667%;
+ max-width: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003368}}
+ .col-md-8-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 33.3333333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003372}}
+ .col-md-9-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 37.5%;
+ flex: 0 0 37.5%;
+ max-width: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003376}}
+ .col-md-10-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 41.6666666667%;
+ flex: 0 0 41.6666666667%;
+ max-width: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003380}}
+ .col-md-11-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 45.8333333333%;
+ flex: 0 0 45.8333333333%;
+ max-width: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003384}}
+ .col-md-12-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ max-width: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003388}}
+ .col-md-13-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 54.1666666667%;
+ flex: 0 0 54.1666666667%;
+ max-width: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003392}}
+ .col-md-14-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 58.3333333333%;
+ flex: 0 0 58.3333333333%;
+ max-width: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003396}}
+ .col-md-15-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 62.5%;
+ flex: 0 0 62.5%;
+ max-width: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003400}}
+ .col-md-16-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 66.6666666667%;
+ flex: 0 0 66.6666666667%;
+ max-width: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003404}}
+ .col-md-17-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 70.8333333333%;
+ flex: 0 0 70.8333333333%;
+ max-width: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003408}}
+ .col-md-18-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ max-width: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003412}}
+ .col-md-19-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 79.1666666667%;
+ flex: 0 0 79.1666666667%;
+ max-width: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003416}}
+ .col-md-20-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 83.3333333333%;
+ flex: 0 0 83.3333333333%;
+ max-width: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003420}}
+ .col-md-21-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 87.5%;
+ flex: 0 0 87.5%;
+ max-width: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003424}}
+ .col-md-22-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 91.6666666667%;
+ flex: 0 0 91.6666666667%;
+ max-width: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003428}}
+ .col-md-23-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 95.8333333333%;
+ flex: 0 0 95.8333333333%;
+ max-width: 95.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003432}}
+ .col-md-24, .col-md-24-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003436}}
+ .offset-md-1-24 {
+ margin-left: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003439}}
+ .offset-md-2-24 {
+ margin-left: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003442}}
+ .offset-md-3-24 {
+ margin-left: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003445}}
+ .offset-md-4-24 {
+ margin-left: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003448}}
+ .offset-md-5-24 {
+ margin-left: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003451}}
+ .offset-md-6-24 {
+ margin-left: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003454}}
+ .offset-md-7-24 {
+ margin-left: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003457}}
+ .offset-md-8-24 {
+ margin-left: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003460}}
+ .offset-md-9-24 {
+ margin-left: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003463}}
+ .offset-md-10-24 {
+ margin-left: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003466}}
+ .offset-md-11-24 {
+ margin-left: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003469}}
+ .offset-md-12-24 {
+ margin-left: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003472}}
+ .offset-md-13-24 {
+ margin-left: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003475}}
+ .offset-md-14-24 {
+ margin-left: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003478}}
+ .offset-md-15-24 {
+ margin-left: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003481}}
+ .offset-md-16-24 {
+ margin-left: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003484}}
+ .offset-md-17-24 {
+ margin-left: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003487}}
+ .offset-md-18-24 {
+ margin-left: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003490}}
+ .offset-md-19-24 {
+ margin-left: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003493}}
+ .offset-md-20-24 {
+ margin-left: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003496}}
+ .offset-md-21-24 {
+ margin-left: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003499}}
+ .offset-md-22-24 {
+ margin-left: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003502}}
+ .offset-md-23-24 {
+ margin-left: 95.8333333333%; } }
+@media (min-width: 992px) {
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003508}}
+ .col-lg-1-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 4.1666666667%;
+ flex: 0 0 4.1666666667%;
+ max-width: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003512}}
+ .col-lg-2-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 8.3333333333%;
+ flex: 0 0 8.3333333333%;
+ max-width: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003516}}
+ .col-lg-3-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 12.5%;
+ flex: 0 0 12.5%;
+ max-width: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003520}}
+ .col-lg-4-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 16.6666666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003524}}
+ .col-lg-5-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 20.8333333333%;
+ flex: 0 0 20.8333333333%;
+ max-width: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003528}}
+ .col-lg-6-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ max-width: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003532}}
+ .col-lg-7-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 29.1666666667%;
+ flex: 0 0 29.1666666667%;
+ max-width: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003536}}
+ .col-lg-8-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 33.3333333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003540}}
+ .col-lg-9-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 37.5%;
+ flex: 0 0 37.5%;
+ max-width: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003544}}
+ .col-lg-10-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 41.6666666667%;
+ flex: 0 0 41.6666666667%;
+ max-width: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003548}}
+ .col-lg-11-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 45.8333333333%;
+ flex: 0 0 45.8333333333%;
+ max-width: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003552}}
+ .col-lg-12-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ max-width: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003556}}
+ .col-lg-13-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 54.1666666667%;
+ flex: 0 0 54.1666666667%;
+ max-width: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003560}}
+ .col-lg-14-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 58.3333333333%;
+ flex: 0 0 58.3333333333%;
+ max-width: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003564}}
+ .col-lg-15-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 62.5%;
+ flex: 0 0 62.5%;
+ max-width: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003568}}
+ .col-lg-16-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 66.6666666667%;
+ flex: 0 0 66.6666666667%;
+ max-width: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003572}}
+ .col-lg-17-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 70.8333333333%;
+ flex: 0 0 70.8333333333%;
+ max-width: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003576}}
+ .col-lg-18-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ max-width: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003580}}
+ .col-lg-19-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 79.1666666667%;
+ flex: 0 0 79.1666666667%;
+ max-width: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003584}}
+ .col-lg-20-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 83.3333333333%;
+ flex: 0 0 83.3333333333%;
+ max-width: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003588}}
+ .col-lg-21-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 87.5%;
+ flex: 0 0 87.5%;
+ max-width: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003592}}
+ .col-lg-22-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 91.6666666667%;
+ flex: 0 0 91.6666666667%;
+ max-width: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003596}}
+ .col-lg-23-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 95.8333333333%;
+ flex: 0 0 95.8333333333%;
+ max-width: 95.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003600}}
+ .col-lg-24, .col-lg-24-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003604}}
+ .offset-lg-1-24 {
+ margin-left: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003607}}
+ .offset-lg-2-24 {
+ margin-left: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003610}}
+ .offset-lg-3-24 {
+ margin-left: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003613}}
+ .offset-lg-4-24 {
+ margin-left: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003616}}
+ .offset-lg-5-24 {
+ margin-left: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003619}}
+ .offset-lg-6-24 {
+ margin-left: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003622}}
+ .offset-lg-7-24 {
+ margin-left: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003625}}
+ .offset-lg-8-24 {
+ margin-left: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003628}}
+ .offset-lg-9-24 {
+ margin-left: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003631}}
+ .offset-lg-10-24 {
+ margin-left: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003634}}
+ .offset-lg-11-24 {
+ margin-left: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003637}}
+ .offset-lg-12-24 {
+ margin-left: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003640}}
+ .offset-lg-13-24 {
+ margin-left: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003643}}
+ .offset-lg-14-24 {
+ margin-left: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003646}}
+ .offset-lg-15-24 {
+ margin-left: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003649}}
+ .offset-lg-16-24 {
+ margin-left: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003652}}
+ .offset-lg-17-24 {
+ margin-left: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003655}}
+ .offset-lg-18-24 {
+ margin-left: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003658}}
+ .offset-lg-19-24 {
+ margin-left: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003661}}
+ .offset-lg-20-24 {
+ margin-left: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003664}}
+ .offset-lg-21-24 {
+ margin-left: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003667}}
+ .offset-lg-22-24 {
+ margin-left: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003670}}
+ .offset-lg-23-24 {
+ margin-left: 95.8333333333%; } }
+@media (min-width: 1200px) {
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003675}}
+ .col-xl-1-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 4.1666666667%;
+ flex: 0 0 4.1666666667%;
+ max-width: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003679}}
+ .col-xl-2-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 8.3333333333%;
+ flex: 0 0 8.3333333333%;
+ max-width: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003683}}
+ .col-xl-3-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 12.5%;
+ flex: 0 0 12.5%;
+ max-width: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003687}}
+ .col-xl-4-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 16.6666666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003691}}
+ .col-xl-5-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 20.8333333333%;
+ flex: 0 0 20.8333333333%;
+ max-width: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003695}}
+ .col-xl-6-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 25%;
+ flex: 0 0 25%;
+ max-width: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003699}}
+ .col-xl-7-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 29.1666666667%;
+ flex: 0 0 29.1666666667%;
+ max-width: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003703}}
+ .col-xl-8-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 33.3333333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003707}}
+ .col-xl-9-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 37.5%;
+ flex: 0 0 37.5%;
+ max-width: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003711}}
+ .col-xl-10-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 41.6666666667%;
+ flex: 0 0 41.6666666667%;
+ max-width: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003715}}
+ .col-xl-11-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 45.8333333333%;
+ flex: 0 0 45.8333333333%;
+ max-width: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003719}}
+ .col-xl-12-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 50%;
+ flex: 0 0 50%;
+ max-width: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003723}}
+ .col-xl-13-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 54.1666666667%;
+ flex: 0 0 54.1666666667%;
+ max-width: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003727}}
+ .col-xl-14-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 58.3333333333%;
+ flex: 0 0 58.3333333333%;
+ max-width: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003731}}
+ .col-xl-15-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 62.5%;
+ flex: 0 0 62.5%;
+ max-width: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003735}}
+ .col-xl-16-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 66.6666666667%;
+ flex: 0 0 66.6666666667%;
+ max-width: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003739}}
+ .col-xl-17-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 70.8333333333%;
+ flex: 0 0 70.8333333333%;
+ max-width: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003743}}
+ .col-xl-18-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 75%;
+ flex: 0 0 75%;
+ max-width: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003747}}
+ .col-xl-19-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 79.1666666667%;
+ flex: 0 0 79.1666666667%;
+ max-width: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003751}}
+ .col-xl-20-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 83.3333333333%;
+ flex: 0 0 83.3333333333%;
+ max-width: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003755}}
+ .col-xl-21-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 87.5%;
+ flex: 0 0 87.5%;
+ max-width: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003759}}
+ .col-xl-22-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 91.6666666667%;
+ flex: 0 0 91.6666666667%;
+ max-width: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003763}}
+ .col-xl-23-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 95.8333333333%;
+ flex: 0 0 95.8333333333%;
+ max-width: 95.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003767}}
+ .col-xl-24, .col-xl-24-24 {
+ -webkit-box-flex: 0;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003772}}
+ .offset-xl-1-24 {
+ margin-left: 4.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003775}}
+ .offset-xl-2-24 {
+ margin-left: 8.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003778}}
+ .offset-xl-3-24 {
+ margin-left: 12.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003781}}
+ .offset-xl-4-24 {
+ margin-left: 16.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003784}}
+ .offset-xl-5-24 {
+ margin-left: 20.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003787}}
+ .offset-xl-6-24 {
+ margin-left: 25%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003790}}
+ .offset-xl-7-24 {
+ margin-left: 29.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003793}}
+ .offset-xl-8-24 {
+ margin-left: 33.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003796}}
+ .offset-xl-9-24 {
+ margin-left: 37.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003799}}
+ .offset-xl-10-24 {
+ margin-left: 41.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003802}}
+ .offset-xl-11-24 {
+ margin-left: 45.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003805}}
+ .offset-xl-12-24 {
+ margin-left: 50%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003808}}
+ .offset-xl-13-24 {
+ margin-left: 54.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003811}}
+ .offset-xl-14-24 {
+ margin-left: 58.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003814}}
+ .offset-xl-15-24 {
+ margin-left: 62.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003817}}
+ .offset-xl-16-24 {
+ margin-left: 66.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003820}}
+ .offset-xl-17-24 {
+ margin-left: 70.8333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003823}}
+ .offset-xl-18-24 {
+ margin-left: 75%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003826}}
+ .offset-xl-19-24 {
+ margin-left: 79.1666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003829}}
+ .offset-xl-20-24 {
+ margin-left: 83.3333333333%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003832}}
+ .offset-xl-21-24 {
+ margin-left: 87.5%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003835}}
+ .offset-xl-22-24 {
+ margin-left: 91.6666666667%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003838}}
+ .offset-xl-23-24 {
+ margin-left: 95.8333333333%; } }
+/* by default 24 grid cols full width */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003844}}
+[class^="col-"][class*="-24"] {
+ position: relative;
+ width: 100%;
+ min-height: 1px;
+ padding-right: 15px;
+ padding-left: 15px; }
+
+/* nogutter for 24 grid cols */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/helpers\/_grid-24\.scss}line{font-family:\00003853}}
+.no-gutters > [class*="col-"] {
+ padding-right: 0 !important;
+ padding-left: 0 !important; }
+
+/* ================== SECTIONS =================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\000031}}
+.navbar-top {
+ padding: 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\000033}}
+.navbar-landing {
+ -webkit-transition: .5s;
+ transition: .5s;
+ padding-top: 15px;
+ padding-bottom: 15px;
+ position: fixed;
+ top: 0;
+ z-index: 100;
+ width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\000034}}
+.navbar-landing.fixed-top {
+ -webkit-transition: .5s;
+ transition: .5s;
+ padding-top: 7px;
+ padding-bottom: 7px; }
+
+/* ================== header main ================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\000037}}
+.header-main {
+ padding-top: 1rem;
+ padding-bottom: 1rem; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\000039}}
+.brand-wrap .logo, .navbar-brand .logo {
+ margin-right: 7px;
+ max-height: 42px;
+ display: inline-block; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000310}}
+.brand-wrap .logo-text, .navbar-brand .logo-text {
+ margin: 0;
+ display: inline-block;
+ font-size: 22px;
+ vertical-align: middle; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000313}}
+.header-main {
+ position: relative; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000315}}
+.widget-header {
+ margin-left: 7px;
+ margin-right: 7px;
+ display: inline-block;
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000316}}
+ .widget-header form {
+ min-width: 280px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000317}}
+ .widget-header .title {
+ display: block; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_header\.scss}line{font-family:\0000318}}
+ .widget-header .notify {
+ position: absolute;
+ top: -3px;
+ right: -10px; }
+
+/* desktop only */
+/* desktop only .end */
+/* ================ SECTION-FOOTER ================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_footer\.scss}line{font-family:\000034}}
+.section-footer ul a {
+ color: inherit; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_footer\.scss}line{font-family:\000037}}
+.footer-top .title {
+ font-weight: 600; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/sections\/_footer\.scss}line{font-family:\000039}}
+.footer-bottom {
+ padding: 15px 0; }
+
+/* ================== PAGES =================== */
+/* ================ PAGES HEADER ================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-common\.scss}line{font-family:\000032}}
+.section-pagetop {
+ padding: 45px 0;
+ background-repeat: no-repeat;
+ background-size: cover; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-common\.scss}line{font-family:\000034}}
+ .section-pagetop .title-page {
+ color: #fff;
+ opacity: .6; }
+
+/* ================== PAGE DETAILS ================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\000033}}
+.gallery-wrap .img-big-wrap {
+ margin-bottom: 10px;
+ overflow: hidden;
+ background-color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\000035}}
+ .gallery-wrap .img-big-wrap a {
+ text-align: center;
+ display: block; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\000036}}
+ .gallery-wrap .img-big-wrap img {
+ height: 450px;
+ width: auto;
+ display: inline-block;
+ cursor: -webkit-zoom-in;
+ cursor: zoom-in; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\000038}}
+.gallery-wrap .img-small-wrap {
+ text-align: center; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\000039}}
+ .gallery-wrap .img-small-wrap .item-gallery {
+ width: 60px;
+ height: 60px;
+ border: 1px solid #ddd;
+ margin: 7px 2px;
+ display: inline-block;
+ overflow: hidden; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\0000310}}
+ .gallery-wrap .img-small-wrap img {
+ max-width: 100%;
+ max-height: 100%;
+ -o-object-fit: cover;
+ object-fit: cover;
+ border-radius: 4px;
+ cursor: -webkit-zoom-in;
+ cursor: zoom-in; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/pages\/_page-detail\.scss}line{font-family:\0000312}}
+ .gallery-wrap .img-small-wrap img:hover {
+ -webkit-filter: brightness(1.1);
+ filter: brightness(1.1);
+ cursor: -webkit-zoom-in;
+ cursor: zoom-in; }
+
+/* ================== COMPONENTS =================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\000032}}
+.owl-prev, .owl-next {
+ z-index: 9;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ transform: translateY(-50%);
+ position: absolute; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\000039}}
+.owl-prev {
+ left: -30px;
+ content: "<"; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000310}}
+.owl-next {
+ right: -30px;
+ content: ">"; }
+
+/* slider main */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000314}}
+.slider-main .owl-prev, .slider-main .owl-next {
+ padding: 18px 7px;
+ color: #FFF;
+ background-color: rgba(0, 0, 0, 0.4); }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000315}}
+.slider-main .owl-nav [class*='owl-']:hover {
+ background: #869791;
+ color: #FFF; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000316}}
+.slider-main .owl-prev {
+ left: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000317}}
+.slider-main .owl-next {
+ right: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000318}}
+.slider-main .item-slide {
+ height: 325px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000320}}
+ .slider-main .item-slide img {
+ min-width: 100%;
+ min-height: 100%;
+ -o-object-fit: cover;
+ object-fit: cover; }
+
+/* slide items */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_plugin-styles\.scss}line{font-family:\0000326}}
+.slide-items .owl-prev, .slide-items .owl-next {
+ top: 42%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000032}}
+.btn-facebook {
+ background-color: #405D9D;
+ color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000032}}
+ .btn-facebook:hover {
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000033}}
+.btn-instagram {
+ background-color: #E52D27;
+ color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000033}}
+ .btn-instagram:hover {
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000034}}
+.btn-youtube {
+ background-color: #C8046C;
+ color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000034}}
+ .btn-youtube:hover {
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000035}}
+.btn-twitter {
+ background-color: #42AEEC;
+ color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_buttons\.scss}line{font-family:\000035}}
+ .btn-twitter:hover {
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\000032}}
+.itembox .icon-wrap {
+ margin-bottom: 15px;
+ margin-top: 7px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\000033}}
+.itembox img {
+ max-width: 100%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\000036}}
+.itemside {
+ position: relative;
+ display: -webkit-inline-box;
+ display: -ms-inline-flexbox;
+ display: inline-flex;
+ width: 100%; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\000037}}
+ .itemside .text-wrap {
+ padding-left: 15px;
+ padding-right: 7px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\000038}}
+ .itemside .img-wrap {
+ position: relative;
+ border-radius: 0.25rem 0 0 0.25rem; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000310}}
+ .itemside img {
+ -o-object-fit: contain;
+ object-fit: contain; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000311}}
+ .itemside p, .itemside .title {
+ margin-bottom: 0.5rem; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000313}}
+ .itemside .img-bg {
+ -o-object-fit: contain;
+ object-fit: contain;
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ max-height: 100px;
+ bottom: 0;
+ z-index: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000314}}
+ .itemside .card-body {
+ position: relative;
+ z-index: 3; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000318}}
+.items-bordered-wrap .itemside:not(:last-child) {
+ border-bottom: 1px solid #eee;
+ padding-bottom: 10px;
+ margin-bottom: 10px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_items\.scss}line{font-family:\0000323}}
+.itemlist {
+ padding: 20px;
+ border-bottom: 1px solid #eee; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\000031}}
+.list-inline {
+ margin-bottom: 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\000033}}
+.list-inline-item {
+ vertical-align: middle; }
+
+/* --------- description list --------*/
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\000036}}
+[class*="dlist-"] {
+ margin-bottom: 5px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\000038}}
+ [class*="dlist-"] dd {
+ margin-bottom: 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000312}}
+.dlist-inline dt, .dlist-inline dd {
+ display: inline-block; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000316}}
+.dlist-align dt {
+ width: 90px;
+ float: left;
+ word-wrap: break-word; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000317}}
+.dlist-align dd {
+ margin-left: 120px;
+ vertical-align: baseline; }
+
+/* -------------------- list.row--------------------- */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000320}}
+ul.row, ul.row-sm {
+ list-style: none;
+ padding: 0;
+ margin-bottom: 0; }
+
+/* ================= lists ================= */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000323}}
+[class*="list-"] li:after {
+ visibility: hidden;
+ display: block;
+ content: "";
+ overflow: hidden;
+ height: 0;
+ clear: both; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000332}}
+.list-lg li {
+ margin-bottom: 10px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000335}}
+.list-icon {
+ list-style: none;
+ padding: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000336}}
+ .list-icon li {
+ margin-bottom: 10px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000337}}
+ .list-icon img {
+ width: 30px;
+ vertical-align: middle;
+ margin-right: 15px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000338}}
+ .list-icon .icon {
+ width: 22px;
+ margin-right: 15px;
+ vertical-align: middle;
+ font-size: 20px;
+ text-align: center; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000339}}
+ .list-icon span {
+ vertical-align: middle; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000342}}
+.list-bullet {
+ list-style: none;
+ padding: 0; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000343}}
+.list-bullet li {
+ margin-bottom: 7px;
+ position: relative;
+ padding-left: 15px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000344}}
+.list-bullet li::before {
+ content: " ";
+ position: absolute;
+ top: 45%;
+ left: 0;
+ width: 7px;
+ height: 7px;
+ margin: 0px 10px 0px 0px;
+ background: #FE935F;
+ border-radius: 7px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000355}}
+.list-dots > li {
+ list-style: none;
+ position: relative;
+ font-family: 'Font Awesome 5 Free'; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000356}}
+.list-dots > li::before {
+ position: absolute;
+ top: 10px;
+ content: "\25CF";
+ color: #ccc; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000363}}
+.list-icon {
+ list-style: none;
+ padding: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000364}}
+ .list-icon li {
+ position: relative;
+ padding-left: 30px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_lists\.scss}line{font-family:\0000365}}
+ .list-icon .icon {
+ position: absolute;
+ top: 3px;
+ left: 0;
+ font-size: 13px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\000031}}
+.card-product {
+ margin-bottom: 1rem;
+ /* btn-overlay-bottom */ }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\000032}}
+ .card-product:after {
+ content: "";
+ display: table;
+ clear: both;
+ visibility: hidden; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\000034}}
+ .card-product .img-wrap {
+ border-radius: 0.2rem 0.2rem 0 0;
+ overflow: hidden;
+ position: relative;
+ height: 220px;
+ text-align: center; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000310}}
+ .card-product .img-wrap img {
+ max-height: 100%;
+ max-width: 100%;
+ width: auto;
+ display: inline-block;
+ -o-object-fit: cover;
+ object-fit: cover; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000312}}
+ .card-product .info-wrap {
+ overflow: hidden;
+ padding: 15px;
+ border-top: 1px solid #eee; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000313}}
+ .card-product .action-wrap {
+ padding-top: 4px;
+ margin-top: 4px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000314}}
+ .card-product .bottom-wrap {
+ padding: 15px;
+ border-top: 1px solid #eee; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000315}}
+ .card-product .title {
+ margin-top: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000317}}
+ .card-product .btn-overlay {
+ -webkit-transition: .5s;
+ transition: .5s;
+ opacity: 0;
+ left: 0;
+ bottom: 0;
+ color: #fff;
+ width: 100%;
+ padding: 5px 0;
+ font-size: 12px;
+ text-align: center;
+ position: absolute;
+ text-transform: uppercase;
+ background: rgba(0, 0, 0, 0.5); }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000324}}
+ .card-product:hover .btn-overlay {
+ opacity: 1; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000325}}
+ .card-product:hover {
+ -webkit-box-shadow: 0 4px 15px rgba(153, 153, 153, 0.3);
+ box-shadow: 0 4px 15px rgba(153, 153, 153, 0.3);
+ -webkit-transition: .5s;
+ transition: .5s; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000329}}
+.card-sm .img-wrap {
+ height: 180px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000332}}
+.card-banner {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ position: relative;
+ overflow: hidden;
+ background-color: #fff;
+ background-size: cover;
+ border-radius: 0.25rem; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000334}}
+ .card-banner .card-body {
+ background-size: cover;
+ position: relative;
+ z-index: 10; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000335}}
+ .card-banner .img-bg {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ mix-blend-mode: multiply;
+ max-width: 100%; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000339}}
+ .card-banner .overlay {
+ background-color: rgba(0, 0, 0, 0.65);
+ z-index: 10;
+ padding: 1.25rem;
+ color: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000340}}
+ .card-banner .overlay.bottom {
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ width: 100%; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000341}}
+ .card-banner .overlay.top {
+ top: 0;
+ left: 0;
+ position: absolute;
+ width: 100%; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000342}}
+ .card-banner .overlay-cover {
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ position: absolute;
+ width: 100%; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000343}}
+ .card-banner .overlay.left {
+ top: 0;
+ left: 0;
+ bottom: 0;
+ position: absolute; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000345}}
+ .card-banner .text-bottom {
+ position: absolute;
+ left: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 10;
+ width: 100%;
+ padding: 7px 20px;
+ padding-top: 30px;
+ border-radius: 0 0 0.25rem 0.25rem;
+ background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.8)));
+ background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
+ color: #fff; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_cards-product\.scss}line{font-family:\0000353}}
+.banner-size-lg {
+ height: 350px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\000032}}
+.card .img-wrap {
+ overflow: hidden; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\000035}}
+.icontext {
+ display: -webkit-inline-box;
+ display: -ms-inline-flexbox;
+ display: inline-flex;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\000037}}
+ .icontext .icon-wrap {
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\000038}}
+ .icontext .text-wrap {
+ line-height: 1.2;
+ padding-left: 10px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\000039}}
+ .icontext small, .icontext .title {
+ display: block; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000312}}
+.price-new, .price {
+ margin-right: 5px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000313}}
+.price-old {
+ color: #999; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000315}}
+.notify {
+ position: absolute;
+ top: -4px;
+ right: -10px;
+ display: inline-block;
+ padding: .25em .6em;
+ font-size: 75%;
+ line-height: 1;
+ text-align: center;
+ border-radius: 3rem;
+ color: #fff;
+ background-color: #dc3545; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000324}}
+.icon-action {
+ margin-top: 5px;
+ float: right;
+ font-size: 80%; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000327}}
+.list-group .list-group-item {
+ padding-bottom: .5rem; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000328}}
+.list-group .title {
+ margin-top: 5px;
+ margin-bottom: 12px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000333}}
+.card-header .title {
+ margin-bottom: 0;
+ line-height: 1.5; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000336}}
+.card-group-item {
+ border-bottom: 1px solid #eee; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000337}}
+ .card-group-item .card-header {
+ border-bottom: 0;
+ background-color: #f9f9f9; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000338}}
+ .card-group-item:last-child {
+ border-bottom: 0; }
+
+/* ====================== shopping-cart ==================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000344}}
+.shopping-cart-wrap img {
+ max-width: 100px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000345}}
+.shopping-cart-wrap thead th {
+ border-top: 0;
+ border-bottom: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000346}}
+.shopping-cart-wrap .price {
+ color: #007bff;
+ font-size: 18px;
+ font-weight: bold;
+ margin-right: 5px;
+ display: block; }
+
+/* ====================== block ==================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000350}}
+.box {
+ padding: 1rem 1.2rem;
+ display: block;
+ background: #fff;
+ border-radius: 0.2rem;
+ -webkit-box-shadow: 0 1px 3px rgba(51, 51, 51, 0.1);
+ box-shadow: 0 1px 3px rgba(51, 51, 51, 0.1); }
+
+/* --------- media element --------*/
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000357}}
+.media .img-wrap {
+ margin-right: 1rem; }
+
+/* ================= ELEMENTS FOR PRODUCT =================== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000362}}
+.badge-new {
+ top: 7px;
+ left: 7px;
+ position: absolute;
+ display: block;
+ z-index: 10;
+ padding: 2px 7px;
+ font-size: 12px;
+ background-color: #ef5f5f;
+ color: #fff;
+ border-radius: 4px; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000369}}
+.badge-offer {
+ display: block;
+ position: absolute;
+ top: 0px;
+ right: 15px;
+ z-index: 2; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000371}}
+ .badge-offer b {
+ background: #ef5f5f;
+ padding: 4px;
+ font-family: 'Bebas';
+ font-weight: normal;
+ text-align: center;
+ color: #fff;
+ font-size: 16px;
+ display: inline-block;
+ height: 36px;
+ width: 50px;
+ position: relative; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000383}}
+ .badge-offer b:after {
+ border-top: 7px solid #ef5f5f;
+ border-left: 25px solid transparent;
+ border-right: 25px solid transparent;
+ content: "";
+ height: 0;
+ left: 0;
+ position: absolute;
+ top: 36px;
+ width: 0; }
+
+/* ================= RATINGS ============== */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000396}}
+.label-rating {
+ margin-right: 10px;
+ display: inline-block;
+ vertical-align: middle; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000398}}
+.stars-simple {
+ margin-bottom: 7px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\0000399}}
+ .stars-simple i {
+ color: orange; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003100}}
+ .stars-simple small {
+ color: #999;
+ margin-left: 5px; }
+
+/* rating-list */
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003104}}
+.rating-stars {
+ margin-right: 10px;
+ display: inline-block;
+ vertical-align: middle;
+ list-style: none;
+ margin: 0;
+ padding: 0;
+ position: relative;
+ line-height: 1;
+ white-space: nowrap;
+ clear: both; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003106}}
+ .rating-stars i {
+ font-size: 14px;
+ color: #ccc;
+ display: inline; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003107}}
+ .rating-stars li {
+ display: block;
+ text-overflow: clip;
+ white-space: nowrap;
+ z-index: 1; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003109}}
+ .rating-stars li.stars-active {
+ z-index: 2;
+ position: absolute;
+ top: 0;
+ left: 0;
+ overflow: hidden; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003110}}
+ .rating-stars li.stars-active i {
+ color: orange; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003114}}
+.divider-text {
+ position: relative;
+ text-align: center;
+ margin-top: 15px;
+ margin-bottom: 15px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003119}}
+ .divider-text:after {
+ content: "";
+ position: absolute;
+ width: 100%;
+ border-bottom: 1px solid #ddd;
+ top: 55%;
+ left: 0;
+ z-index: 1; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_elements\.scss}line{font-family:\00003127}}
+ .divider-text span {
+ background-color: #fff;
+ padding: 7px;
+ font-size: 12px;
+ position: relative;
+ z-index: 2; }
+
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\000031}}
+.menu-category {
+ margin: 0;
+ padding: 0; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\000032}}
+ .menu-category li {
+ position: relative;
+ display: block;
+ border-bottom: 1px solid #eee; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\000034}}
+ .menu-category > li > a {
+ display: block;
+ padding: 10px 15px; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\000036}}
+ .menu-category .submenu {
+ display: none;
+ margin: 0;
+ padding: 0;
+ -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.2);
+ box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.2);
+ z-index: 20;
+ position: absolute;
+ left: 100%;
+ top: 0;
+ width: 250px;
+ background: #fff; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\000038}}
+ .menu-category .submenu li {
+ list-style: none; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\0000310}}
+ .menu-category .submenu li a {
+ padding: 7px 15px;
+ display: block; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\0000313}}
+ .menu-category li:hover {
+ background: #f8f8f8;
+ -webkit-transition: all 0.3s;
+ transition: all 0.3s; }
+@media -sass-debug-info{filename{font-family:file\:\/\/\/Volumes\/UUI\/bootstrap-ecommerce-kit\/bootstrap-ecommerce\/main\/sass\/components\/_menu\.scss}line{font-family:\0000316}}
+ .menu-category li:hover .submenu {
+ display: block;
+ margin-left: 0px; }
+
+/*# sourceMappingURL=uikit.css.map */
\ No newline at end of file
diff --git a/frontend/web/themes/start/js/images.js b/frontend/web/themes/start/js/images.js
new file mode 100644
index 0000000..fcfc26a
--- /dev/null
+++ b/frontend/web/themes/start/js/images.js
@@ -0,0 +1,28 @@
+// MAIN PRODUCT LISTING IMAGE CHANGE
+/*imgChange = function (){
+ if ( device.desktop() ) {
+ $(document).on({
+ mouseenter: function(){
+ $(this).find(".img__2").stop().animate({"opacity": 1});
+ },
+ mouseleave: function(){
+ $(this).find(".img__2").stop().animate({"opacity": 0});
+ }
+ }, '.img_change');
+ }
+};
+$(window).load( imgChange );*/
+
+
+$(function() {
+ if ( device.desktop() ) {
+ $(document).on({
+ mouseenter: function() {
+ $(this).find(".img__2").stop().animate({"opacity": 1});
+ },
+ mouseleave: function(){
+ $(this).find(".img__2").stop().animate({"opacity": 0});
+ }
+ }, '.img_change');
+ }
+});
\ No newline at end of file
diff --git a/frontend/web/themes/start/layouts/code/assets/AppAsset.php b/frontend/web/themes/start/layouts/code/assets/AppAsset.php
index 284291c..9839bbb 100644
--- a/frontend/web/themes/start/layouts/code/assets/AppAsset.php
+++ b/frontend/web/themes/start/layouts/code/assets/AppAsset.php
@@ -11,16 +11,20 @@ use yii\web\AssetBundle;
class AppAsset extends AssetBundle
{
- public $basePath = '@webroot/themes/start';
- public $baseUrl = '@web/themes/start';
- public $css = [
- 'css/main.css',
- ];
- public $js = [
- ];
- public $depends = [
- 'yii\web\YiiAsset',
- BootstrapAsset::class,
- DeviceJsAsset::class,
- ];
-}
\ No newline at end of file
+ public $basePath = '@webroot/themes/start';
+ public $baseUrl = '@web/themes/start';
+ public $css = [
+ 'css/main.css',
+ 'css/uikit.css',
+ 'css/responsive.css',
+ 'css/ribbon.css',
+ ];
+ public $js = [
+ 'js/images.js'
+ ];
+ public $depends = [
+ 'yii\web\YiiAsset',
+ BootstrapAsset::class,
+ DeviceJsAsset::class,
+ ];
+}
diff --git a/frontend/web/themes/start/modules/blog/views/layouts/blog.php b/frontend/web/themes/start/modules/blog/views/layouts/blog.php
index fb14cd8..974e2ae 100644
--- a/frontend/web/themes/start/modules/blog/views/layouts/blog.php
+++ b/frontend/web/themes/start/modules/blog/views/layouts/blog.php
@@ -3,52 +3,53 @@
- = \yii\widgets\Breadcrumbs::widget([
- 'tag' => 'ul',
- 'itemTemplate' => '
{link} ' . "\n",
- 'activeItemTemplate' => '
{link} ' . "\n",
- 'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [],
- ]) ?>
+ = \yii\widgets\Breadcrumbs::widget([
+ 'tag' => 'ul',
+ 'itemTemplate' => '
{link} ' . "\n",
+ 'activeItemTemplate' => '
{link} ' . "\n",
+ 'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [],
+ ]) ?>
-
+
-
-
+
+
- = $content ?>
+ = $content ?>
-
+
-
-
+
+
-
-
- = \common\modules\blog\widgets\CategoriesWidget::widget() ?>
+ = \common\modules\blog\widgets\CategoriesWidget::widget() ?>
-
-
-
-
- You can put anything you want inside of these side widgets. They are easy to use, and feature the new Bootstrap 4 card containers!
-
-
+
+
+
+
+ You can put anything you want inside of these side widgets. They are easy to use, and feature the
+ new Bootstrap 4 card containers!
+
+
-
+
-
-
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/_list.php b/frontend/web/themes/start/modules/shop/views/catalog/_list.php
new file mode 100644
index 0000000..65f2502
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/_list.php
@@ -0,0 +1,72 @@
+
+
+
+
+ = Yii::t('shop_public', 'Sort by') ?>
+
+
+ Yii::t('shop_public', 'Default'),
+ //'name' => Yii::t('shop_public', 'Name (A - Z)'),
+ //'-name' => Yii::t('shop_public', 'Name (Z - A)'),
+ 'price' => Yii::t('shop_public', 'Price (Low > High)'),
+ '-price' => Yii::t('shop_public', 'Price (High > Low)'),
+ '-rating' => Yii::t('shop_public', 'Rating (Highest)'),
+ 'rating' => Yii::t('shop_public', 'Rating (Lowest)'),
+ ];
+ $current = Yii::$app->request->get('sort');
+ ?>
+ $label) : ?>
+ selected="selected">= $label ?>
+
+
+
+
+
+ = Yii::t('shop_public', 'Show') ?>
+
+
+ getPagination()->getPageSize();
+ ?>
+
+ selected="selected">= $value ?>
+
+
+
+
+
+
+
+
+ getModels() as $product) :
+ $itemClass = $i <= 3 ? $i : $i % 3;
+ ?>
+ = $this->render('_product', [
+ 'product' => $product,
+ 'itemClass' => 'item3_' . $itemClass,
+ ]) ?>
+
+
+
+
+
+ = LinkPager::widget([
+ 'pagination' => $dataProvider->getPagination(),
+ ]) ?>
+
+
= Yii::t('shop_public', 'Showing {count} of {total}', ['count' => $dataProvider->getCount(), 'total' => $dataProvider->getTotalCount()]) ?>
+
\ No newline at end of file
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/_product.php b/frontend/web/themes/start/modules/shop/views/catalog/_product.php
new file mode 100644
index 0000000..c52eea8
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/_product.php
@@ -0,0 +1,129 @@
+ $product->id]);
+$inCompare = in_array($product->id, Yii::$app->session->get('compare', []));
+
+// todo wishlist check
+$inWish = false; //Yii::$app->user->isGuest ? false : Yii::$app->user->identity->user->inWishlist($product->id);
+
+$priceNew = $product->getCalculatedNewPrice();
+$priceOld = $product->getCalculatedOldPrice();
+?>
+
+
+
+
+
+ label && $product->label > 0) : ?>
+
+ = ShopProductHelper::labelName($product->label) ?>
+
+
+
+
+ getCalculatedOldPrice()) : ?>
+ = round(100 - ($product->getCalculatedNewPrice() / $product->getCalculatedOldPrice()) * 100) ?>%
+
+
+
+
+
+
+ = Html::encode($product->translation->name) ?>
+
+
+
+
+
+ modifications) : ?>
+ = Html::a('
+
+
+
+ ',
+ ['/shop/cart/add', 'id' => $product->id],
+ [
+ 'class' => 'link-blue sjax',
+ 'title' => Yii::t('shop_public', 'Add to Cart'),
+ 'data-sjax-id' => 'sj-cart-widget',
+ 'data-sjax-method' => 'post',
+ 'data-sjax-type' => 'success',
+ 'data-sjax-message' => Yii::t('shop_public', 'Product added to cart.'),
+ ]
+ )
+ ?>
+
+ = Html::a('
+
+
+
+ ',
+ ['/shop/catalog/product', 'id' => $product->id],
+ [
+ 'class' => 'link-blue',
+ 'title' => Yii::t('shop_public', 'Specify options'),
+ ]
+ )
+ ?>
+
+
+ user->isGuest) : ?>
+
+ = Html::a('
+
+
+
+ ',
+ $inWish ? ['/shop/wishlist/delete', 'id' => $product->id] : ['/shop/wishlist/add', 'id' => $product->id],
+ [
+ 'class' => $inWish ? "link-red" . " sjax" : "link-blue" . " sjax",
+ 'title' => $inWish ? Yii::t('shop_public', 'Remove from Wish') : Yii::t('shop_public',
+ 'Add to Wish'),
+ 'data' => [
+ 'method' => 'post',
+ ],
+ 'data-sjax-id' => 'sj-favorite-' . $product->id,
+ 'data-sjax-method' => 'post',
+ 'data-sjax-type' => 'success',
+ 'data-sjax-message' => $inWish ? Yii::t('shop_public',
+ 'Product removed from wish list.') : Yii::t('shop_public', 'Product added to wish list.'),
+ ]
+ )
+ ?>
+
+
+
+
+
+ = PriceHelper::format($priceNew) ?>
+
+ = PriceHelper::format($priceOld) ?>
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/_subcategories.php b/frontend/web/themes/start/modules/shop/views/catalog/_subcategories.php
new file mode 100644
index 0000000..eca956a
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/_subcategories.php
@@ -0,0 +1,18 @@
+
+
+children) : ?>
+
+
\ No newline at end of file
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/brand.php b/frontend/web/themes/start/modules/shop/views/catalog/brand.php
new file mode 100644
index 0000000..6ac8d2d
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/brand.php
@@ -0,0 +1,24 @@
+title = $brand->getSeoTitle();
+
+$this->registerMetaTag(['name' =>'description', 'content' => $brand->meta->description]);
+$this->registerMetaTag(['name' =>'keywords', 'content' => $brand->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+$this->params['breadcrumbs'][] = $brand->name;
+?>
+
+= Html::encode($brand->name) ?>
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/category.php b/frontend/web/themes/start/modules/shop/views/catalog/category.php
new file mode 100644
index 0000000..1b856fe
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/category.php
@@ -0,0 +1,54 @@
+title = $category->getSeoTitle();
+
+$this->registerMetaTag(['name' =>'description', 'content' => $category->meta->description]);
+$this->registerMetaTag(['name' =>'keywords', 'content' => $category->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+foreach ($category->parents as $parent) {
+ if (!$parent->isRoot()) {
+ $this->params['breadcrumbs'][] = ['label' => $parent->name, 'url' => ['category', 'id' => $parent->id]];
+ }
+}
+$this->params['breadcrumbs'][] = $category->name;
+
+$this->params['active_category'] = $category;
+?>
+
+= Html::encode($category->getHeadingTile()) ?>
+
+= $this->render('_subcategories', [
+ 'category' => $category
+]) ?>
+
+description)) : ?>
+
+
+
+
+ = Yii::$app->formatter->asHtml($category->description, [
+ 'Attr.AllowedRel' => ['nofollow'],
+ 'HTML.SafeObject' => true,
+ 'Output.FlashCompat' => true,
+ 'HTML.SafeIframe' => true,
+ 'URI.SafeIframeRegexp'=>'%^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)%',
+ ]) ?>
+
+
+
+
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/index.php b/frontend/web/themes/start/modules/shop/views/catalog/index.php
new file mode 100644
index 0000000..ca685f8
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/index.php
@@ -0,0 +1,24 @@
+title = Yii::t('shop_public', 'Catalog');
+$this->params['breadcrumbs'][] = $this->title;
+?>
+
+= Html::encode($this->title) ?>
+
+
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/product.php b/frontend/web/themes/start/modules/shop/views/catalog/product.php
new file mode 100644
index 0000000..b04538a
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/product.php
@@ -0,0 +1,630 @@
+title = $product->translation->name;
+
+$this->registerMetaTag(['name' => 'description', 'content' => $product->translation->meta_description]);
+$this->registerMetaTag(['name' => 'keywords', 'content' => $product->translation->meta_keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+foreach ($product->category->parents as $parent) {
+ if (!$parent->isRoot()) {
+ $this->params['breadcrumbs'][] = [
+ 'label' => $parent->translation->name,
+ 'url' => ['category', 'id' => $parent->id]
+ ];
+ }
+}
+$this->params['breadcrumbs'][] = [
+ 'label' => $product->category->translation->name,
+ 'url' => ['category', 'id' => $product->category->id]
+];
+$this->params['breadcrumbs'][] = $product->translation->name;
+
+$this->params['active_category'] = $product->category;
+
+//\app\assets\ElevateZoomAsset::register($this);
+//\app\assets\BxSliderAsset::register($this);
+/*
+$js = <<registerJs($js, $this::POS_READY);
+*/
+
+$codeText = Yii::t('shop_public', 'Code');
+$quantityText = Yii::t('shop_public', 'Quantity');
+
+$formatJs = <<' +
+ '' +
+ '' + items[1] + ' ' +
+ '{$codeText}: ' + items[0] + ' ' +
+ '{$quantityText}: ' + items[3] + ' ' +
+ '
' +
+ '' + items[2] + '
' +
+'';
+if (repo.description) {
+ markup += '' + repo.description + ' ';
+ }
+ return '' + markup + '
';
+};
+
+var formatRepoSelection = function (repo) {
+ //return repo.full_name || repo.text;
+ var items = repo.text.split('||');
+ if (!items[1])
+ {
+ return '';
+ }
+ return items[1] + ' (' + items[2] + ')';
+}
+FJS;
+$this->registerJs($formatJs, $this::POS_HEAD);
+
+$inCompare = in_array($product->id, Yii::$app->session->get('compare', []));
+$inWish = Yii::$app->user->isGuest ? false : Yii::$app->user->identity->user->inWishlist($product->id);
+?>
+
+
+
+
+ photos[0]) ? $product->photos[0]->getThumbFileUrl('file',
+ 'catalog_origin') : '';
+ $mainProductImage = isset($product->photos[0]) ? $product->photos[0]->getThumbFileUrl('file',
+ 'catalog_product_main') : '';
+ ?>
+
+
+
+
+
+
+
+
+
+ photos[0])) : ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ photos as $i => $photo) : ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
= Html::encode($product->name) ?>
+
+
+
+
+
+ Default Title
+
+
+
+ Default Title - $80.00
+
+
+
+
+
+
= Yii::t('shop_public',
+ 'Weight') ?>:
+ = ShopWeightHelper::format($product->weight) ?>
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Categories') ?>:
+ = implode(', ', array_map(
+ function (ShopCategory $category) {
+ return Html::a(
+ Html::encode($category->translation->name),
+ ['/shop/catalog/category', 'id' => $category->id]
+ );
+ },
+ array_merge([$product->category], $product->categories)
+ )) ?>
+
+
+
+ = Yii::t('shop_public', 'Product Type') ?>: = Html::encode($product->type->name) ?>
+
+
+
+ = Yii::t('shop_public', 'Vendor') ?>: = Html::encode($product->brand->name) ?>
+
+
+
+ = Yii::t('shop_public', 'Tags') ?>:
+ tags as $tag) : ?>
+ = Html::encode($tag->name) ?>
+
+
+
+
+
+
+
+
+
+ = Yii::t('shop_public', 'Product Code: {code}', ['code' => $product->code]) ?>
+
+
+
+
+
+ user->isGuest) : ?>
+ = Html::a('
+
+
+
+ ',
+ $inWish ? [
+ '/shop/wishlist/delete',
+ 'id' => $product->id
+ ] : ['/shop/wishlist/add', 'id' => $product->id],
+ [
+ 'class' => $inWish ? 'link-red' . ' sjax' : 'link-blue' . ' sjax',
+ 'title' => $inWish ? Yii::t('shop_public',
+ 'Remove from Wish') : Yii::t('shop_public', 'Add to Wish'),
+ 'data' => [
+ 'method' => 'post',
+ ],
+ 'data-toggle' => 'tooltip',
+ 'data-sjax-id' => 'sj-compare-' . $product->id,
+ 'data-sjax-method' => 'post',
+ 'data-sjax-type' => 'success',
+ 'data-sjax-message' => $inWish ? Yii::t('shop_public',
+ 'Product removed from wish list.') : Yii::t('shop_public',
+ 'Product added to wish list.'),
+ ]
+ )
+ ?>
+
+
+
+
+ = Html::a('
+
+
+
+ ',
+ $inCompare ? [
+ '/shop/compare/delete',
+ 'id' => $product->id
+ ] : ['/shop/compare/add', 'id' => $product->id],
+ [
+ 'class' => $inCompare ? 'link-red' . ' sjax' : 'link-blue' . ' sjax',
+ 'title' => $inCompare ? Yii::t('shop_public',
+ 'Remove from compare') : Yii::t('shop_public', 'Add to compare'),
+ 'data' => [
+ 'method' => 'post',
+ ],
+ 'data-toggle' => 'tooltip',
+ 'data-sjax-id' => 'sj-compare-' . $product->id,
+ 'data-sjax-method' => 'post',
+ 'data-sjax-type' => 'success',
+ 'data-sjax-ids' => '["sj-compare-indicator"]',
+ 'data-sjax-message' => $inCompare ? Yii::t('shop_public',
+ 'Product successfully removed from comparison.') : Yii::t('shop_public',
+ 'Product successfully added for comparison.'),
+ ]
+ )
+ ?>
+
+
+
+
+
+
+ = PriceHelper::format($product->getCalculatedNewPrice()) ?>
+
+
+ getCalculatedOldPrice()) : ?>
+
+
+ = PriceHelper::format($product->getCalculatedOldPrice()) ?>
+ -= round(100 - ($product->getCalculatedNewPrice() / $product->getCalculatedOldPrice()) * 100) ?>
+ %
+
+
+
+
+
+
+ settings->data['shop']['quantity_use'] == 0 || Yii::$app->params['settings']['shop']['quantity_show'] == 0) : ?>
+ isAvailable()) : ?>
+ = Yii::t('shop_public', 'In stock') ?>
+
+ = Yii::t('shop_public', 'Out of stock') ?>:
+
+
+ = Yii::t('shop_public', 'Availability') ?>: = $product->quantity ?>
+
+
+
+
+ isAvailable()) : ?>
+
+ ['/shop/cart/add', 'id' => $product->id],
+ 'id' => 'add-cart-form',
+ ]) ?>
+
+ modificationsListSelect2()) : ?>
+
+
+ =
+ $form->field($cartForm, 'modification',
+ ['options' => ['tag' => null]])->widget(Select2::class, [
+ 'data' => $modifications,
+ 'options' => [
+ 'placeholder' => Yii::t('shop_public', '--- Select ---')
+ ],
+ 'pluginOptions' => [
+ //'allowClear' => true
+ 'minimumResultsForSearch' => -1,
+ 'escapeMarkup' => new JsExpression('function (markup) { return markup; }'),
+ 'templateResult' => new JsExpression('formatRepo'),
+ 'templateSelection' => new JsExpression('formatRepoSelection'),
+ ],
+ ]);
+ ?>
+
+
+
+
= Yii::t('shop_public', 'Quantity') ?>:
+
+
+ = $form->field($cartForm, 'quantity', [
+ 'template' => '{input}',
+ 'options' => ['tag' => null]
+ ])->textInput(['class' => 'quantity_input'])->label(false) ?>
+
+
+
+
+ = Html::submitButton(Yii::t('shop_public', 'Add to Cart'),
+ ['id' => 'add-to-cart', 'class' => 'btn btn-cart']) ?>
+
+ = $form->errorSummary($cartForm); ?>
+
+
+
+
+
+
+ = Yii::t('shop_public', 'The product is not available for purchasing right now. Add it to your wishlist.') ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ = Yii::$app->formatter->asHtml($product->description, [
+ 'Attr.AllowedRel' => array('nofollow'),
+ 'HTML.SafeObject' => true,
+ 'Output.FlashCompat' => true,
+ 'HTML.SafeIframe' => true,
+ 'URI.SafeIframeRegexp' => '%^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)%',
+ ]) ?>
+
+
+
+ = \kartik\detail\DetailView::widget([
+ 'model' => $product,
+ 'hAlign' => 'left',
+ 'attributes' => $characteristics,
+ 'bordered' => false,
+ 'striped' => false,
+ 'options' => [
+ 'class' => 'char_detail'
+ ],
+ ]) ?>
+
+
+
+
+
+
+
+
+
+ [
+ 'method' => 'POST',
+ 'timeout' => 7000
+ ]
+ ]); ?>
+ = \yii\grid\GridView::widget([
+ 'dataProvider' => $reviewProvider,
+ 'summary' => '',
+ 'showHeader' => false,
+ 'emptyText' => Yii::t('shop_public', 'There are no reviews. Be the first.'),
+ 'columns' => [
+ [
+ 'attribute' => 'vote',
+ 'format' => 'raw',
+ 'value' => function (
+ \common\modules\shop\entities\product\ShopReview $review
+ ) {
+ $starWidget = \kartik\rating\StarRating::widget([
+ 'name' => 'rating_' . $review->id,
+ 'value' => $review->vote,
+ 'pluginOptions' => [
+ 'displayOnly' => true,
+ 'size' => 'xs',
+ ]
+ ]);
+
+ return '' . $starWidget . ' ' . date('d-m-Y h:i',
+ $review->created_at);
+ },
+ 'options' => ['style' => 'width: 150px;'],
+ ],
+ [
+ 'attribute' => 'text',
+ 'format' => 'raw',
+ 'value' => function (
+ \common\modules\shop\entities\product\ShopReview $review
+ ) {
+ return '' . $review->user->username . ' ' . nl2br(Html::encode($review->text));
+ }
+ ]
+ ],
+ 'tableOptions' => ['class' => 'table'],
+ ]) ?>
+
+
+
+
= Yii::t('shop_public', 'Write a review') ?>
+
+ user->isGuest): ?>
+
+
+
+ = Yii::t('shop_public', 'Please {login} for writing a review.', [
+ 'login' => Html::a(Yii::t('shop_public', 'Log In'),
+ ['/users/auth/login'])
+ ]) ?>
+
+
+
+
+
+ 'form-review']) ?>
+
+ = $form->field($reviewForm,
+ 'vote')->widget(\kartik\rating\StarRating::classname(), [
+ 'pluginOptions' => [
+ 'size' => 'sm',
+ 'min' => 0,
+ 'max' => 5,
+ 'step' => 1,
+ 'showClear' => false,
+ 'showCaption' => false,
+
+ ]
+ ]) ?>
+ = $form->field($reviewForm, 'text')->textarea(['rows' => 5]) ?>
+
+
+ = Html::submitButton(Yii::t('shop_public', 'Send'), [
+ 'class' => 'btn btn-primary btn-lg btn-block',
+ 'style' => 'width:150px'
+ ]) ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+registerJs($js, $this::POS_READY);
+?>
\ No newline at end of file
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/search.php b/frontend/web/themes/start/modules/shop/views/catalog/search.php
new file mode 100644
index 0000000..9f0b8f2
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/search.php
@@ -0,0 +1,35 @@
+title = Yii::t('shop_public', 'Search');
+
+$this->params['breadcrumbs'][] = $this->title;
+?>
+
+
+
+ = Yii::t('shop_public', 'Found in categories') ?>
+
+
+
+ categories as $path): ?>
+ = Breadcrumbs::widget([
+ 'links' => isset($path) ? $path : [],
+ ]) ?>
+
+
+
+
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/tag.php b/frontend/web/themes/start/modules/shop/views/catalog/tag.php
new file mode 100644
index 0000000..89bdf24
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/tag.php
@@ -0,0 +1,24 @@
+title = $tag->name;
+
+//$this->registerMetaTag(['name' =>'description', 'content' => $brand->meta->description]);
+//$this->registerMetaTag(['name' =>'keywords', 'content' => $brand->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+$this->params['breadcrumbs'][] = $tag->name;
+?>
+
+= Html::encode($tag->name) ?>
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/catalog/type.php b/frontend/web/themes/start/modules/shop/views/catalog/type.php
new file mode 100644
index 0000000..cf761f6
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/catalog/type.php
@@ -0,0 +1,24 @@
+title = $type->getSeoTitle();
+
+$this->registerMetaTag(['name' =>'description', 'content' => $type->meta->description]);
+$this->registerMetaTag(['name' =>'keywords', 'content' => $type->meta->keywords]);
+
+$this->params['breadcrumbs'][] = ['label' => Yii::t('shop_public', 'Catalog'), 'url' => ['index']];
+$this->params['breadcrumbs'][] = $type->name;
+?>
+
+= Html::encode($type->name) ?>
+
+= $this->render('_list', [
+ 'dataProvider' => $dataProvider
+]) ?>
+
+
diff --git a/frontend/web/themes/start/modules/shop/views/layouts/catalog.php b/frontend/web/themes/start/modules/shop/views/layouts/catalog.php
new file mode 100644
index 0000000..6625a92
--- /dev/null
+++ b/frontend/web/themes/start/modules/shop/views/layouts/catalog.php
@@ -0,0 +1,59 @@
+beginContent('@frontend/web/themes/start/layouts/main.php') ?>
+
+
+
+
+ = \yii\widgets\Breadcrumbs::widget([
+ 'tag' => 'ul',
+ 'itemTemplate' => '
{link} ' . "\n",
+ 'activeItemTemplate' => '
{link} ' . "\n",
+ 'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [],
+ ]) ?>
+
+
+
+
+
+
+ = $content ?>
+
+
+
+
+
+
+
+
+
+ = \common\modules\shop\widgets\ShopCategoriesWidget::widget([
+ 'active' => $this->params['active_category'] ?? null
+ ]) ?>
+
+
+
+
+
+ You can put anything you want inside of these side widgets. They are easy to use, and feature the
+ new Bootstrap 4 card containers!
+
+
+
+
+
+
+
+
+
+
+endContent() ?>
+
diff --git a/vagrant/nginx/log/static-error.log b/vagrant/nginx/log/static-error.log
index c4cefcb..e6449cc 100644
--- a/vagrant/nginx/log/static-error.log
+++ b/vagrant/nginx/log/static-error.log
@@ -43,3 +43,5 @@
2018/07/25 23:51:14 [error] 1933#1933: *1497 open() "/app/static/cache/posts/thumb_gallery_view_83.png" failed (2: No such file or directory), client: 192.168.83.1, server: static.morework.local, request: "GET /cache/posts/thumb_gallery_view_83.png HTTP/1.1", host: "static.morework.local", referrer: "http://admin.morework.local/blog/manage/post/update?id=83"
2018/07/25 23:51:14 [error] 1933#1933: *1497 open() "/app/static/cache/posts/thumb_gallery_view_83.png" failed (2: No such file or directory), client: 192.168.83.1, server: static.morework.local, request: "GET /cache/posts/thumb_gallery_view_83.png HTTP/1.1", host: "static.morework.local", referrer: "http://admin.morework.local/blog/manage/post/update?id=83"
2018/07/26 15:10:09 [error] 1933#1933: *1523 open() "/app/static/cache/posts/thumb_gallery_view_83.png" failed (2: No such file or directory), client: 192.168.83.1, server: static.morework.local, request: "GET /cache/posts/thumb_gallery_view_83.png HTTP/1.1", host: "static.morework.local", referrer: "http://admin.morework.local/blog/manage/post/view/83"
+2018/09/25 09:36:44 [error] 1951#1951: *1806 open() "/app/static/robots.txt" failed (2: No such file or directory), client: 192.168.83.1, server: static.morework.local, request: "GET /robots.txt HTTP/1.1", host: "static.morework.local"
+2018/09/25 09:36:44 [error] 1951#1951: *1804 open() "/app/static/favicon.ico" failed (2: No such file or directory), client: 192.168.83.1, server: static.morework.local, request: "GET /favicon.ico HTTP/1.1", host: "static.morework.local", referrer: "http://static.morework.local/origin/products/1/1.jpg"